8e2f75aa77
Co-authored-by: Codex <codex@openai.com>
1.3 KiB
1.3 KiB
pozor
Dark-only shame board with a static Astro front end and a tiny Elysia admin/API.
Apps
apps/site: Astro public board. It reads published cards from the Elysia API.apps/api: Elysia admin/API. It owns cards, uploads, and the/adminpanel.
Local Development
bun install
bun run dev
Open:
- Site:
http://localhost:4321 - Admin:
http://localhost:3001/admin - API docs:
http://localhost:3001/docs - OpenAPI JSON:
http://localhost:3001/openapi.json
Environment
The API stores cards and uploads in apps/api/.data locally.
On Vercel, set BLOB_READ_WRITE_TOKEN to store cards and uploaded images in Vercel Blob.
Set these values locally and on Vercel:
ADMIN_PASSWORD=
API_URL=http://localhost:3001
PUBLIC_API_URL=http://localhost:3001
PUBLIC_SITE_URL=http://localhost:4321
BLOB_READ_WRITE_TOKEN=
For deployment, point the Astro app at the deployed API origin by setting API_URL and PUBLIC_API_URL to that origin.
Images
Cards support two image sources:
Image URL: direct public image URL.Upload image: stored locally in development or in Vercel Blob whenBLOB_READ_WRITE_TOKENis set.
Build
bun run build
The Astro app can be hosted on Vercel as a static/front-end project. The Elysia API can be hosted on Vercel as a separate backend project using the Bun runtime.