Overview
Frond (working title) is an infinite-canvas drawing application in the same family as Endless Paper, Infinite Zoom Art, and InfiniPaint: you can zoom in forever and keep drawing smaller and smaller, with every stroke staying vector-crisp at every scale.
Repository layout
| Path | What it is |
|---|---|
apps/app | The canvas application (Vite + React + TypeScript) |
apps/web | Marketing website (Astro, static) |
apps/docs | This documentation site (Astro Starlight, static) |
packages/engine | The infinite-zoom canvas engine (zero runtime dependencies) |
packages/client | Typed API client for the backend |
packages/config | Runtime configuration schema + loader (no hardcoded domains) |
services/api | Backend API — AWS Lambda behind API Gateway (Cognito, DynamoDB, S3) |
infra | AWS CDK — multi-account, multi-environment infrastructure + CI/CD |
Environments
Every environment is a separate AWS account, deployed by a CI/CD account:
| Environment | Account | Hosts | Deploys on |
|---|---|---|---|
| dev | dev | dev.frond.cntnus.app, api.dev.…, auth.dev.…, docs.dev.…, www.dev.… | every push to main (automatic) |
| stage | stage | stage.frond.cntnus.app, … | manual approval |
| prod | prod | frond.cntnus.app, app.frond.…, api.…, auth.…, docs.… | manual approval |
All domains above are placeholders — the product brand and domain will be assigned later, and every value is configuration-driven. See Configuration & domains.