Architektura
Aplikace
Co dělá každá aplikace a balíček v monorepu care.
Aplikace
| Aplikace | Účel | Stack | Doména |
|---|---|---|---|
| web | Marketingová landing page a veřejný audit webu (zapisuje do audits a leads). | Astro | care.codebros.cz |
| api | Jádro: autentizace, data pro portál a admin, příjem monitoring webhooků a příchozích e-mailů. | Hono na Cloudflare Workers, better-auth, Hyperdrive do Postgresu | api.care.codebros.cz |
| portal | Klientský portál: dostupnost, zálohy, provedené práce (klientsky viditelné záznamy), karty a detail skupin webů. Přístup vzniká pozvánkou z adminu; grant může mířit na celého klienta, jednu skupinu, nebo jeden web (tabulka user_grants), jeden účet může mít granty u více klientů. | Next.js (OpenNext) | portal.care.codebros.cz |
| admin | Interní správa: klienti, weby, fronta úkolů pro agenty a jejich dohled. | Next.js (OpenNext) | admin.care.codebros.cz |
| agents | Vykonává schválené úkoly agentní smyčkou (Anthropic SDK): audit, aktualizace, opravy, funkční kontroly. | Worker s Anthropic SDK, běží u zákazníka | bez veřejné domény |
| docs | Tato dokumentace. | Next.js + Fumadocs (OpenNext) | docs.care.codebros.cz |
Balíčky
| Balíček | Účel |
|---|---|
| packages/db | Drizzle schéma a migrace. Enumy v Postgresu jsou odvozené z konstant v packages/shared. |
| packages/shared | Sdílené TypeScript typy a Zod schémata (validace vstupů, enumy). Enumy se ukládají do Postgresu, takže se nikdy nepřejmenovávají, jen přidávají. |
API skupiny rout
/api/auth/*: better-auth (session)./api/webhooks/kuma: příjem monitoring událostí./api/sites/*: data webů (za přihlášením)./api/admin/*: interní správa (za přihlášením)./api/agent/*: rozhraní pro agenty.
api zároveň přijímá e-maily (Cloudflare Email Routing), viz e-mail roundtrip.