Introduction
Welcome to Starterbase, a production-ready app template that combines FastAPI and Next.js to help you build modern web applications quickly.
What is Starterbase?
Starterbase is a full-stack template that provides everything you need to launch your product:
- Complete Authentication System - JWT tokens with refresh token rotation, social login (Google, Microsoft, Apple), 2FA (TOTP), invitation system
- Billing Integration - Stripe subscriptions and one-time payments, webhooks, customer portal
- Role-Based Access Control - Flexible permission system with comprehensive admin panel
- Multi-Tenant Organizations - Built-in organization management with member roles
- AI-Native (MCP Server) - Model Context Protocol server for AI assistant integration
- Modern Tech Stack - FastAPI (Python) backend + Next.js 16 (React 19) frontend
- Production Ready - Docker support, database migrations, testing setup
Who is this for?
Starterbase is perfect for:
- Indie makers building their next project
- Startups needing a solid foundation to iterate quickly
- Developers who want to learn modern full-stack patterns
- Teams looking for a consistent architecture
Key Features
Backend (FastAPI)
- Async Database Operations - SQLAlchemy 2.0 with asyncpg for PostgreSQL
- 3-File Module Pattern - Clean separation of routes, logic, and validation
- Complete Auth System - JWT, OAuth (Google/Microsoft/Apple), 2FA, invitations
- Stripe Integration - Subscriptions, one-time payments, webhooks, customer portal
- MCP Server - AI assistant integration (Claude Desktop compatible)
- Multi-Tenant Organizations - Organization-scoped data isolation
- Admin API - Comprehensive back-office with analytics and management
Frontend (Next.js)
- Next.js 16 App Router - Server Components by default for optimal performance
- 50+ UI Components - Buttons, forms, tables, modals, charts, and more
- 18 Landing Components - Hero, pricing, testimonials, FAQ, and conversion-focused sections
- 55+ Icons - Essential icons for any application
- TanStack Query - Smart server state management with caching
- Type-Safe API Client - Full TypeScript support
- Protected Routes - Authentication and permission-based routing
- Full i18n Support - Internationalization with next-intl
Developer Experience
- Hot Reload - Fast iteration with Turbopack (frontend) and uvicorn (backend)
- Type Safety - Pydantic (backend) and TypeScript (frontend)
- Testing - Pytest fixtures and comprehensive test suite
- Docker - One command to run the entire stack
- Migrations - Alembic for database schema management
- Email System - Transactional emails via Resend
Architecture Overview
┌─────────────────────┐
│ OAuth Providers │
│ Google/Microsoft/ │
│ Apple │
└──────────┬──────────┘
│
┌──────────────────────────────┼──────────────────────────────┐
│ │ │
│ ┌───────────────────────────▼────────────────────────────┐ │
│ │ Frontend │ │
│ │ Next.js 16 + React 19 │ │
│ │ (Port 3000 - http://localhost:3000) │ │
│ │ │ │
│ │ • 50+ UI Components • 18 Landing Components │ │
│ │ • TanStack Query • i18n Support │ │
│ │ • Admin Back-Office • Dark Mode │ │
│ └───────────────────────────┬────────────────────────────┘ │
│ │ │
│ │ REST API (JSON) │
│ │ │
│ ┌───────────────────────────▼────────────────────────────┐ │
│ │ Backend │ │
│ │ FastAPI + SQLAlchemy 2.0 │ │
│ │ (Port 8000 - http://localhost:8000) │ │
│ │ │ │
│ │ • Auth (JWT, OAuth, 2FA) • Multi-Tenant Orgs │ │
│ │ • MCP Server (AI) • Admin API │ │
│ │ • Billing (Stripe) • Email (Resend) │ │
│ └──────┬─────────────┬─────────────┬─────────────┬──────┘ │
│ │ │ │ │ │
│ ▼ ▼ ▼ ▼ │
│ ┌────────────┐ ┌────────────┐ ┌────────────┐ ┌──────────┐ │
│ │ PostgreSQL │ │ Redis │ │ Stripe │ │ Resend │ │
│ │ Port 5432 │ │ Port 6379 │ │ (Billing) │ │ (Email) │ │
│ └────────────┘ └────────────┘ └────────────┘ └──────────┘ │
│ │
│ Docker Compose │
└─────────────────────────────────────────────────────────────┘
┌─────────────────────┐
│ AI Assistants │
│ (Claude Desktop │
│ via MCP Server) │
└─────────────────────┘
Getting Started
Ready to dive in? Head over to the Quick Start Guide to get Starterbase running in 5 minutes.
Documentation Structure
This documentation is organized into several sections:
- Quick Start - Get up and running quickly
- Features - Deep dives into specific features
- Backend - Backend architecture and patterns
- Frontend - Landing page components
- UI Components - 50+ reusable UI components (Button, Input, Card, Table, etc.)
Technology Stack
Backend
| Technology | Purpose |
|---|---|
| FastAPI | Modern Python web framework |
| SQLAlchemy 2.0 | Async ORM for PostgreSQL |
| Alembic | Database migration tool |
| Pydantic | Data validation and serialization |
| Stripe | Payment processing |
| Resend | Transactional emails |
| Redis | Caching and sessions |
| pytest | Testing framework |
Frontend
| Technology | Purpose |
|---|---|
| Next.js 16 | React framework with App Router |
| React 19 | UI library with Server Components |
| TanStack Query | Server state management |
| Tailwind CSS | Utility-first CSS framework |
| TypeScript | Type safety |
| Zod | Schema validation |
Infrastructure
| Technology | Purpose |
|---|---|
| Docker | Containerization |
| PostgreSQL | Relational database |
| Redis | In-memory data store |
| Stripe | Payment processing |
| Resend | Transactional emails |
| nginx | Reverse proxy (optional) |
Philosophy
Starterbase is built with these principles in mind:
- Deployment First - Docker-ready from day one, production configs included
- Agentic First - Built-in MCP server for AI assistant integration
- Simplicity First - Clear patterns over clever abstractions
- Type Safety - Catch errors at development time
- Developer Joy - Fast feedback loops and great DX
- Production Ready - Security, testing, and deployment best practices
- Flexible - Easy to customize and extend
License
Starterbase is released under a commercial license. See the LICENSE file for details.
Support
Need help? Here's how to get support:
- Documentation - You're already here!
- Support - Report bugs or ask questions
Next Steps
Continue to the Quick Start Guide to get Starterbase running on your machine.