create-stelle
v0.1.0
Published
Scaffolder for a Bun + SvelteKit + ElysiaJS fullstack starter
Maintainers
Readme
create-stelle

A CLI scaffolder for a Bun + SvelteKit + ElysiaJS fullstack starter.
Usage
bunx create-stelle
# or
npx create-stelleYou'll be prompted for a project name and features.
What you get
- SvelteKit for pages & SSR (port 5173 in dev)
- ElysiaJS in
src/server.tsas a separate Bun process (port 3000 in dev), serving HTTP + WebSockets natively - Vite proxy forwards
/api(including WebSocket upgrades viaws: true) to Elysia, so frontend code calls same-origin - Eden Treaty pre-wired in
src/lib/api.tsfor end-to-end type safety - A landing page with a working CRUD demo (in-memory
Map) and a realtime broadcast chat demo (open two tabs to chat with yourself) - Colored HTTP + WebSocket request logging on the Elysia server
- Optional: Tailwind v4, better-auth, Drizzle (SQLite/Postgres) or MongoDB
Feature toggles
| Feature | Default | | -------------------------------------------- | ------- | | Tailwind v4 | on | | better-auth | on | | Database setup (SQLite / Postgres / MongoDB) | on |
Database choice only scaffolds the client, schema, and config — the landing-page CRUD demo always uses an in-memory Map so the starter runs out of the box.
Dev
The generated project runs both processes together:
bun run dev # vite (5173) + elysia (3000) via concurrentlyProd
Two deploy shapes, your choice:
- Two processes behind a reverse proxy — standard fullstack setup.
- Single Bun process — have Elysia own the port and mount SvelteKit's built handler, so SSR, API, and WebSockets all share one server. One app container, plus your database. The generated README walks through this.
