A high-performance, batteries-included starter template for modern web applications.
Start on Steroids is a comprehensive boilerplate built to accelerate your development workflow. It combines the power of TanStack Start with a robust backend and a beautiful, modern UI system. Designed for scalability, performance, and developer experience.
- Full-Stack Power: Built on TanStack Start for efficient server-side rendering and client-side interactivity.
- Robust Authentication: Secure and flexible auth system powered by Better Auth.
- Database Ready: Type-safe database interactions with Drizzle ORM and PostgreSQL.
- Modern Styling: Sleek, responsive UI with Tailwind CSS v4 and a custom design system.
- Component Library: Includes a set of high-quality, accessible components (integrating Base UI & Shadcn concepts).
- Code Quality: Pre-configured with Biome for fast linting and formatting.
- Type Safety: End-to-end type safety with TypeScript and Zod.
- Framework: TanStack Start (React)
- Database: PostgreSQL (via Drizzle ORM)
- Authentication: Better Auth
- Styling: Tailwind CSS v4, Motion
- Validation: Zod
- Package Manager: Bun
- Testing: Vitest
- Tools: Biome, Docker
Follow these steps to get your project up and running locally.
- Bun (latest version)
- Node.js & npm (optional, mainly for npx commands)
- PostgreSQL database (or use the provided Docker Compose)
-
Clone the repository
git clone https://github.com/your-username/start-on-steroids.git cd start-on-steroids -
Install dependencies
bun install
-
Environment Setup
Copy the example environment file and update the variables.
cp .env.example .env
Update
.envwith your database credentials and other secrets. -
Database Setup
Run the migrations to set up your database schema.
bun run db:migrate
-
Run the Development Server
bun run dev
Open http://localhost:3000 with your browser to see the result.
| Script | Description |
|---|---|
bun run dev |
Starts the development server. |
bun run build |
Builds the application for production. |
bun run start |
Runs the built application. |
bun run test |
Runs the test suite with Vitest. |
bun run lint |
Lints the codebase using Biome. |
bun run format |
Formats code with Biome. |
bun run db:generate |
Generates Drizzle migrations based on schema changes. |
bun run db:migrate |
Applies migrations to the database. |
bun run db:studio |
Opens Drizzle Studio for visual database management. |
We welcome contributions! Please see our Contributing Guidelines for details on how to submit pull requests, report issues, and suggest features.
This project is licensed under the MIT License - see the LICENSE file for details.
We are committed to providing a welcoming and inspiring community for all. Please be sure to read our Code of Conduct.