Do you have a ready NodeJs MVC script (databases (MariaDB)..)
Budget: $250 – $750 USD
Multi-lingual support
Geolocation features
Mobile app + responsive mobile web version
Page system (static, node-driven, external)
Multi-admin roles
Clear documentation for adding pages (like Flynax/Smarty system)
Here’s the streamlined plan for a freelancer:
Freelancer Roadmap (Essential Scope Only)
Milestone 1 — Scaffolding & Standards
Deliverables
Monorepo (NestJS backend + Next.js frontend + Expo mobile app).
Docker Compose (MariaDB + Redis).
Shared linting/TS config.
Acceptance
pnpm dev runs backend, web, and mobile.
Health check endpoint working.
Milestone 2 — Multi-Admin Roles
Deliverables
Prisma schema: User, Role, UserRole.
Roles: MASTER, ADMIN, VENDOR.
Auth flows (login, logout, password hashing).
Role-guarded routes on API + web.
Acceptance
Admin can log in and create another admin/vendor.
Vendor cannot access admin-only routes.
Milestone 3 — Page System
Deliverables
Page Registry (Page table with slug, type, layout, visibility).
Page types: STATIC (content), NODE (data from controller), EXTERNAL (proxy/embed).
Layouts & partials (header/footer).
Admin UI for “Add/Edit Page”.
Acceptance
From Admin, add each type of page and see it live.
Switching layout or disabling page works instantly.
Milestone 4 — Multi-Lingual & Geolocation
Deliverables
next-intl integration on frontend.
Translation model (Translation table for entities).
Locale switcher in UI.
GeoIP middleware: suggest locale/currency based on user IP.
Acceptance
Page content changes with selected locale.
Visiting from FR IP defaults to French version.
Milestone 5 — Mobile & Responsive Web
Deliverables
Next.js responsive design (Tailwind breakpoints).
Expo mobile app: login → list pages/products (read-only at first).
Shared authentication (same API).
Acceptance
Web looks good on desktop + mobile.
Mobile app loads same data via API.
Milestone 6 — Documentation & Handover
Deliverables
Admin Guide: step-by-step for adding static, node, or external pages.
Developer Guide: how to add a new controller + view while respecting MVC.
Example Pages pre-created:
/about-us (STATIC)
/blog/[slug] (NODE)
/docs (EXTERNAL)
Acceptance
Following docs, a non-dev can add a static page.
A junior dev can follow the guide to add a controller-driven page.
Documentation Pack (must deliver)
1. Adding a Static Page
Admin → Pages → New → Type = STATIC.
Enter slug /about-us, choose layout, add Markdown content.
Save & publish.
2. Adding a Node (Dynamic) Page
Step 1: Create NestJS controller endpoint.
Step 2: Register page in Admin as NODE, attach endpoint.
Step 3: Next.js SSR page fetches from API.
3. Adding an External Page
Admin → Pages → New → Type = EXTERNAL.
Slug /docs, URL https://docs.example.com.
Rendered via iframe or proxy handler.
4. Layouts
All layouts in apps/web/src/layouts/.
Select layout when creating page (e.g. Main, Marketing, Blank).
5. Permissions
Each page can be Public, Auth-only, or Role-restricted (Master/Admin/Vendor).
Team & Time (est.)
One strong full-stack freelancer can deliver this in ~8 weeks.
Breakdown:
1 week → setup
1 week → multi-admin
2 weeks → page system
1 week → i18n + geo
→ responsive + mobile
→ documentation & handover
Geolocation features
Mobile app + responsive mobile web version
Page system (static, node-driven, external)
Multi-admin roles
Clear documentation for adding pages (like Flynax/Smarty system)
Here’s the streamlined plan for a freelancer:
Freelancer Roadmap (Essential Scope Only)
Milestone 1 — Scaffolding & Standards
Deliverables
Monorepo (NestJS backend + Next.js frontend + Expo mobile app).
Docker Compose (MariaDB + Redis).
Shared linting/TS config.
Acceptance
pnpm dev runs backend, web, and mobile.
Health check endpoint working.
Milestone 2 — Multi-Admin Roles
Deliverables
Prisma schema: User, Role, UserRole.
Roles: MASTER, ADMIN, VENDOR.
Auth flows (login, logout, password hashing).
Role-guarded routes on API + web.
Acceptance
Admin can log in and create another admin/vendor.
Vendor cannot access admin-only routes.
Milestone 3 — Page System
Deliverables
Page Registry (Page table with slug, type, layout, visibility).
Page types: STATIC (content), NODE (data from controller), EXTERNAL (proxy/embed).
Layouts & partials (header/footer).
Admin UI for “Add/Edit Page”.
Acceptance
From Admin, add each type of page and see it live.
Switching layout or disabling page works instantly.
Milestone 4 — Multi-Lingual & Geolocation
Deliverables
next-intl integration on frontend.
Translation model (Translation table for entities).
Locale switcher in UI.
GeoIP middleware: suggest locale/currency based on user IP.
Acceptance
Page content changes with selected locale.
Visiting from FR IP defaults to French version.
Milestone 5 — Mobile & Responsive Web
Deliverables
Next.js responsive design (Tailwind breakpoints).
Expo mobile app: login → list pages/products (read-only at first).
Shared authentication (same API).
Acceptance
Web looks good on desktop + mobile.
Mobile app loads same data via API.
Milestone 6 — Documentation & Handover
Deliverables
Admin Guide: step-by-step for adding static, node, or external pages.
Developer Guide: how to add a new controller + view while respecting MVC.
Example Pages pre-created:
/about-us (STATIC)
/blog/[slug] (NODE)
/docs (EXTERNAL)
Acceptance
Following docs, a non-dev can add a static page.
A junior dev can follow the guide to add a controller-driven page.
Documentation Pack (must deliver)
1. Adding a Static Page
Admin → Pages → New → Type = STATIC.
Enter slug /about-us, choose layout, add Markdown content.
Save & publish.
2. Adding a Node (Dynamic) Page
Step 1: Create NestJS controller endpoint.
Step 2: Register page in Admin as NODE, attach endpoint.
Step 3: Next.js SSR page fetches from API.
3. Adding an External Page
Admin → Pages → New → Type = EXTERNAL.
Slug /docs, URL https://docs.example.com.
Rendered via iframe or proxy handler.
4. Layouts
All layouts in apps/web/src/layouts/.
Select layout when creating page (e.g. Main, Marketing, Blank).
5. Permissions
Each page can be Public, Auth-only, or Role-restricted (Master/Admin/Vendor).
Team & Time (est.)
One strong full-stack freelancer can deliver this in ~8 weeks.
Breakdown:
1 week → setup
1 week → multi-admin
2 weeks → page system
1 week → i18n + geo
→ responsive + mobile
→ documentation & handover