First Commit
This commit is contained in:
commit
bac95bdb2e
154 files changed
+26610
No files matched your search
@@ -0,0 +1,66 @@
|
||||
# Auth Portal
|
||||
|
||||
Единый auth-портал для CFDM, VPS Tracker и EvoBGP (`auth.shnt.top`).
|
||||
|
||||
## Стек
|
||||
|
||||
- Monorepo: pnpm workspaces + turbo
|
||||
- `apps/web` — Vite + React 19 + TanStack Router/Query + shadcn/ui + ReUI
|
||||
- `apps/api` — Fastify 5 + JWT + SQLite (better-sqlite3 / Drizzle)
|
||||
- `packages/ui` — `@authportal/ui` (shadcn primitives)
|
||||
- `packages/shared` — Zod-контракты
|
||||
- `packages/db` — схема и клиент SQLite
|
||||
|
||||
## Быстрый старт
|
||||
|
||||
```bash
|
||||
pnpm install
|
||||
cp .env.example .env
|
||||
# ReUI PRO key уже в apps/web/.env.local (gitignored) — или скопируйте из другого проекта
|
||||
pnpm --filter @authportal/api dev # :8080
|
||||
pnpm --filter web dev # :5175
|
||||
```
|
||||
|
||||
## Интеграция с VPS Tracker
|
||||
|
||||
См. [`docs/integrate-vps-tracker.md`](docs/integrate-vps-tracker.md) — SSO handoff (`return_to` + `#access_token`), общий `JWT_SECRET`, RBAC `vps:*`.
|
||||
|
||||
Корень:
|
||||
|
||||
```bash
|
||||
pnpm dev # turbo: api + web
|
||||
pnpm build
|
||||
pnpm test
|
||||
pnpm lint
|
||||
```
|
||||
|
||||
## ReUI PRO
|
||||
|
||||
```bash
|
||||
cd apps/web
|
||||
# нужен REUI_LICENSE_KEY в .env.local
|
||||
pnpm dlx shadcn@latest add @reui/auth-13 --yes
|
||||
```
|
||||
|
||||
`components.json` → registry `@reui` с `Authorization: Bearer ${REUI_LICENSE_KEY}`.
|
||||
|
||||
## Docker / Gitea CI
|
||||
|
||||
- Workflow: `.gitea/workflows/docker.yml` (как CFDM)
|
||||
- Secrets: `ACTIONS_PAT`, `GITEA_TOKEN`
|
||||
- Образ: `git.shts.su/denozord/auth-portal`
|
||||
|
||||
```bash
|
||||
docker compose up -d --build
|
||||
```
|
||||
|
||||
## Структура
|
||||
|
||||
```
|
||||
apps/web/src/ # SPA (routes, components/reui, reui-kit)
|
||||
apps/api/src/ # Fastify
|
||||
packages/ui/ # shadcn CLI output
|
||||
packages/shared/ # contracts
|
||||
packages/db/ # drizzle schema
|
||||
.gitea/workflows/ # CI/CD
|
||||
```
|
||||
Reference in new issue
Block a user