feat: deliver Persian merchant analytics dashboard

This commit is contained in:
2026-08-20 19:47:33 +03:30
parent c719a11ad7
commit d8c7e7263c
8 changed files with 825 additions and 0 deletions

View File

@@ -4,6 +4,29 @@ Persian RTL merchant analytics panel built with SvelteKit 2, Svelte 5, strict Ty
Current state: design, specifications, implementation plan, and task list are approved. Phase 4 frontend implementation is authorized.
## Local development
The dashboard is a client-rendered static SvelteKit application. During development, Vite serves it at `http://127.0.0.1:5173` and proxies same-origin `/api` requests to the Go backend at `http://127.0.0.1:8080`. This preserves the backend-owned secure session model without storing credentials in browser storage.
```powershell
Copy-Item .env.example .env
npm ci
npm run dev -- --host 127.0.0.1
```
Open `http://127.0.0.1:5173`. The demo merchant credentials are created by the backend importer/bootstrap process; they are intentionally not stored in this repository.
Quality commands:
```powershell
npm run generate:api
npm run check
npm test
npm run build
```
`PUBLIC_API_BASE_URL` is public routing configuration, not a secret. Keep its default `/api/v1` for the local Vite proxy and the production same-origin Nginx proxy.
- [`DESIGN.md`](DESIGN.md): visual language, interaction rules, responsive behavior, and current design-system state.
- [`docs/DASHBOARD-SPEC.md`](docs/DASHBOARD-SPEC.md): approved product requirements and acceptance criteria for implementation planning.
- [`docs/DASHBOARD-UX-SPEC.md`](docs/DASHBOARD-UX-SPEC.md): detailed screen map, RTL layouts, async states, data presentation, accessibility, and authorized export workflows.