Scaffold frontend/modules/loyalty with types, API client, design system, feature pages, and thin App Router routes. Wire all screens to backend Loyalty service via BFF proxy. Add loyalty docs and update progress. Co-authored-by: Cursor <cursoragent@cursor.com> |
||
|---|---|---|
| .. | ||
| app | ||
| components | ||
| docs | ||
| hooks | ||
| lib | ||
| modules | ||
| public | ||
| scripts | ||
| shared | ||
| src | ||
| styles | ||
| .dockerignore | ||
| .eslintrc.json | ||
| Dockerfile.dev | ||
| next-env.d.ts | ||
| next.config.mjs | ||
| package-lock.json | ||
| package.json | ||
| postcss.config.mjs | ||
| README.md | ||
| tailwind.config.ts | ||
| tsconfig.json | ||
| tsconfig.tsbuildinfo | ||
Frontend (Next.js)
اپلیکیشن frontend کاملاً جدا از backend است.
Responsibilities
- UI, Dashboard, Forms, Pages, Components
- State management, API clients, Theme (white-label)
Rules
- No FastAPI, SQLAlchemy, Alembic, or business logic in this folder.
- Talk to backend only through REST APIs.
- Primary typed client:
lib/api.ts. Helper client may also exist aslib/api-client.ts. - Brand from
public/theme.config.jsonand/or public tenant theme APIs — never hardcode.
Run
Preferred (full stack):
# from repo root
docker compose up -d --build
UI-only debug:
cd frontend
npm install
npm run dev
Frontend: http://localhost:3000
Stack
- Next.js 15.5.18
- React 19, TypeScript, TailwindCSS
Structure
frontend/
├── app/ # Next.js App Router
├── components/
├── hooks/
├── lib/ # api.ts, auth, theme, tenant-host
├── styles/
└── public/