tostada
Scaffold a Phoenix + Vite project — pick your client framework, get real-time channels and auth wired in, and start building.
npx tostada-cli create MyApp A full-stack boilerplate with a headless Phoenix backend, a JSON + WebSocket auth flow, and four ready-to-ship client variants.
What you get
- Phoenix backend — JSON API, WebSocket channels, HttpOnly session cookies, password reset
- Four client variants — pick at scaffold time:
sveltekit-threlte(default) — SvelteKit + Threlte 3D, the original Tostada stacksveltekit— plain SvelteKit + Phoenixsveltekit-sv— SvelteKit vianpx sv create+ Phoenix overlayreact-shadcn— Vite + React + Tailwind + shadcn/ui
- Shared backend across all variants — auth, sockets, Makefile orchestration are identical
- Per-variant
/login+/registerSPA routes — auth UI is the client’s job; Phoenix stays headless - One command to scaffold, install, and start coding
Quick start
# Interactive — pick variant + addons from prompts
npx tostada-cli create
# Or non-interactive:
npx tostada-cli create MyApp --variant react-shadcn
cd my_app
make install
make db.setup
make dev Vite serves your client on localhost:5173; Phoenix runs on localhost:4000 and gets the proxied /api/* + /socket traffic. Open the dev URL and click the login icon — the form POSTs to /api/auth/login, Phoenix sets an HttpOnly session cookie, and you’re in.
Next steps
- Installers — pick the right variant for your project
- Getting Started — full architecture walkthrough
- Auth System — JSON endpoints, cookies, socket tokens
- Channels + Stores — build real-time features