Files
recflare/apps/api/README.md
T
2026-06-29 23:16:42 -04:00

25 lines
1.0 KiB
Markdown

# api
Game API Worker served on the `api` subdomain. A Hono app serving the game's
API surface. Database-backed queries and on-disk JSON files are stubbed for now
— no real bindings yet.
## Behavior
- **Auth-gated routes** validate the Bearer JWT issued by the `auth` worker
(same dev secret, see `src/jwt.ts`) and 401 when it's missing/invalid.
- **Static data** is served verbatim:
- `src/default-avatar-items.ts``GET /api/avatar/v4/items`
- `src/default-settings.ts``GET /api/settings/v2`
- **DB-backed reads** return empty collections / not-found.
- **File-backed reads** return empty placeholders, each marked `TODO: hydrate`
in `src/api.app.ts` (Workers have no filesystem — these will move to a binding
or inline JSON later).
## TODO before production
- Wire a DB binding (D1/DO) for rooms, avatars, settings, gifts, balances, etc.
- Hydrate the `TODO: hydrate` endpoints with real config/JSON.
- Move the JWT secret to a shared secret binding (shared with `auth`).
- Persist uploads from `POST /api/images/v4/uploadsaved` (e.g. R2).