# csbot-prototype Web a klientsky portal firmy zamerene na automatizace, voiceboty, integrace, dashboardy, tickety a incident management. Jedna aplikace v jednom containeru: Express obsluhuje API i zbuildovanou React aplikaci. Bezi v AppFactory za reverse proxy na `/apps/`. ## Rychly start ```bash npm install npm run build npm start ``` Aplikace nasloucha na `0.0.0.0:3000`. Lokalni vyvoj s hot reloadem (API na 3000, web na 5173): ```bash npm run dev ``` ## Povinne endpointy | Cesta | Ucel | | --------------- | --------------------------------------- | | `/health` | Health check pro AppFactory, vraci 200 | | `/docs` | Swagger UI | | `/openapi.json` | OpenAPI definice | Verejne pres proxy jako `/apps//health` a `/apps//docs`. ## Demo prihlaseni | E-mail | Heslo | Role | | ------------------ | ---------- | --------------- | | `admin@automia.cz` | `demo1234` | interni spravce | | `klient@firma.cz` | `demo1234` | klient | ## Environment variables | Promenna | Povinna | Vychozi | Popis | | ---------------- | -------------- | --------- | -------------------------------------------- | | `PORT` | ne | 3000 | Port containeru, urcuje AppFactory sablona | | `ROOT_PATH` | ne | prazdne | Prefix proxy, napr. `/apps/csbot-prototype` | | `JWT_SECRET` | ano v produkci | - | Podpis tokenu, bez nej aplikace nenastartuje | | `JWT_EXPIRES_IN` | ne | 8h | Platnost tokenu | | `PUBLIC_ORIGIN` | ne | prazdne | Verejna domena pro absolutni adresy webhooku | | `CORS_ORIGIN` | ne | localhost | Povolene originy, jen pro lokalni vyvoj | Secrets se nikdy nelogují ani neukladaji do kodu. ## Skripty | Prikaz | Co dela | | ------------------- | ------------------------------------ | | `npm run build` | Zbuilduje server i web do `dist/` | | `npm start` | Spusti zbuildovanou aplikaci | | `npm run dev` | Vyvoj s hot reloadem | | `npm run typecheck` | Kontrola typu bez generovani vystupu | ## Dokumentace Podrobnosti jsou ve slozce [documentation/](documentation/). Pred upravou projektu staci precist ji, neni nutne prochazet cely kod. Pravidla pro AI asistenty a nastroje jsou v [AGENTS.md](AGENTS.md).