A monorepo template with web, mobile, desktop, Chrome extension, and Python apps.
bun install
bun run setupThe setup wizard will:
- Set your project name (replaces
@acme) - Choose which apps to keep
- Optionally remove authentication
Or run non-interactively:
bun run setup --name myapp --apps web,pyapp --no-authapps/web- TanStack Start web appapps/mobile- Expo React Native appapps/desktop- Electron desktop appapps/chrome- Chrome extensionapps/pyapp- Python app with FastAPI and Marimo notebooks (managed by UV)
packages/api- tRPC API routerpackages/auth- better-auth authenticationpackages/clients- Generated OpenAPI clients (TypeScript + React Query)packages/db- Prisma database clientpackages/ui- Shared UI components
bun dev # Start all apps
bun run build # Build all packages
bun run typecheckThe Python app uses UV for dependency management:
cd apps/pyapp
uv sync # Install dependencies
uv run python server.py # Start FastAPI server
uv run marimo edit notebooks/example.py # Open Marimo notebookGenerate TypeScript clients from OpenAPI specs:
bun run clients:codegen # Regenerate all clients
bun run clients:add # Add a new client (interactive)Usage:
import { pyapp, pyappQueries } from "@acme/clients";
// SDK
await pyapp.healthCheck();
// React Query
const { data } = useQuery(pyappQueries.healthCheckOptions());