bun-monorepo-vite-elysia-spa
maintained by NeverSight
star
66
account_tree
19
verified_user
MIT License
name: bun-monorepo-vite-elysia-spa description: "Scaffold or regenerate a Bun fullstack monorepo using official generators only: bun create elysia@latest for backend and bun create vite@latest --template react-ts for SPA frontend, then apply core backend wiring (Better Auth, Drizzle, MCP, OpenAPI, CORS, and security defaults). Use when creating or resetting a Bun workspace monorepo to latest generator versions."
Bun Workspace Vite Elysia SPA
Overview
Create a Bun workspace monorepo with latest generator output, not manual scaffolding. Use official generators first, then apply backend wiring and security defaults.
Required Workflow
- Confirm target path and whether existing
apps/backendorapps/frontendshould be replaced. - Run official generators only:
-
bun create elysia@latest apps/backend -
bun create vite@latest apps/frontend --template react-ts
- Install required backend dependencies and dev dependencies with Bun.
- Apply backend wiring using
references/elysia-core-backend-reference.md(copied fromelysia-core-backend) for Better Auth, Drizzle, Postgres, MCP endpoint, OpenAPI docs, CORS allowlist, CSRF middleware, and security headers. - Keep frontend as SPA (Vite React TS) unless explicitly requested otherwise.
- Wire root Bun workspace scripts using Bun filters (
bun run --filter "*" <script>). - Provide run steps and env vars required for local development.
Hard Rules
- Do not hand-roll generated app baselines when Bun is available.
- Do not keep stale/legacy package versions from old manual scaffolds.
- Do not clobber existing apps without explicit confirmation.
- Prefer replacing app folders (
apps/backend,apps/frontend) over patching old generated output when user asks for latest versions.
Backend Wiring Checklist
- Better Auth mounted and configured with Drizzle adapter.
- Drizzle schema and config present.
- Postgres connection via env
DATABASE_URL. - MCP plugin wired through
elysia-mcp(not rawMcpServerplugin use). - OpenAPI docs route enabled.
- CORS allowlist bound to frontend origin env.
- CSRF protection on non-auth cookie-based mutation routes.
- Security headers middleware enabled.
Frontend SPA Checklist
- React + TypeScript Vite template.
-
vitescripts present (dev,build,preview) withdevbinding host for LAN/WSL access. - Simple SPA entrypoint validated.
Run and Verify
-
bun install - Run all workspaces:
bun run --filter "*" dev - Run one workspace:
bun run --filter frontend devorbun run --filter backend dev - Frontend default port:
3000. Backend default port:8000. - For frontend direct run, use
bun run dev --host 0.0.0.0 --port 3000. - For backend direct run, ensure
src/index.tslistens on8000. -
bun run db:generateandbun run db:migratein backend when DB is configured.
References
- Read
references/workflow.mdfor exact commands, package lists, and file expectations. - For any backend work, read
references/elysia-core-backend-reference.mdfirst (copied fromelysia-core-backend). - Upstream reference implementation:
ahmed-lotfy-dev/elysia-core-backend.
chat Comments (0)
Sign in to join the discussion and leave a comment.
Skill Details
GitHub Stars
66
GitHub Forks
19
Created
Mar 2026
Last Updated
3 months ago
tools
tools automation tools
Related Skills
Build your own?
Join 12,000+ developers contributing to the Claude ecosystem.
No comments yet. Be the first to share your thoughts!