This commit is contained in:
2026-06-10 16:56:59 +03:00
commit 01538b7e69
81 changed files with 6412 additions and 0 deletions

28
README.md Normal file
View File

@@ -0,0 +1,28 @@
# ЭКСА — Admin Frontend
Standalone admin panel for ЭКСА, extracted from the main `elcsa-gitea2/frontend` app
into its own microservice. React 19 + Vite, Feature-Sliced Design.
## Commands
```bash
npm install # installs deps (lockfile committed)
npm run dev # dev server on port 3001
npm run build # tsc -b && vite build
npm run preview # preview production build
npm run lint # ESLint
```
## Notes
- **Auth is fully independent** of the user app. The admin API lives at
`https://app.admin.elcsa.ru` (hardcoded in `src/features/admin/api/adminApi.ts`),
with its own in-memory access token + localStorage-backed refresh token. No CSRF.
- **Routes** are preserved from the original app: the panel is served under the
obscured path `/sys-c7f29a4e-d81b-4630-ops-console`. See `src/shared/config/routes.ts`.
On a dedicated admin host this could be simplified to `/` — left unchanged to
preserve existing behavior.
- Path aliases (`@app/*`, `@pages/*`, `@widgets/*`, `@features/*`, `@shared/*`) match
the FSD layers, same as the parent project.
- Only the shared UI primitives the admin actually uses were copied
(`Button`, `FormField`, `Notification`, `PrimaryButton`).