Codapult
DocsBlogPricingPluginsDemo
Get Codapult
Logo

Build your SaaS with AI. Keep the architecture under control.

Get Codapult

Product

  • Pricing
  • Architecture
  • Modules
  • AI platform
  • Plugins

Developers

  • MCP
  • CLI
  • Documentation
  • Launch your SaaS
  • Build a B2B SaaS

Resources

  • Blog
  • FAQ

Connect

  • Contact
  • GitHub

Compare

  • SaaS template comparison
  • Codapult vs Supastarter
  • Codapult vs Makerkit
  • Codapult vs ShipFast
  • Codapult vs SaaSBold
  • Codapult vs Gravity
  • Codapult vs Nextbase
  • Codapult vs BuilderKit

Featured on

Codapult on LaunchNestCodapult on LaunchNestbetterlaunch.cobetterlaunch.coFeatured on LaunchBuffFeatured on LaunchBuffCodapult on PeerPushCodapult on PeerPushFeatured on LaunchItFeatured on LaunchIt
© 2026 Codapult·All rights reserved·Privacy Policy·Terms of Service
Full source code · One-time purchase · Self-host anywhere
All articles

Getting Started

  • Introduction
  • Quick Start
  • Your First 30 Minutes
  • Project Structure
  • License and Permitted Use
  • Starter Profiles and Recipes
  • Product Recipes

Configuration

  • Environment Variables
  • App Configuration
  • Which Modules Should I Enable?
  • Provider Matrix
  • Capability Coverage

Database

  • Database and Provider Guide
  • Database
  • Migrations

Authentication

  • Authentication
  • OAuth Providers
  • Two-Factor & Passwordless
  • Enterprise SSO (SAML)

Ai

  • AI Runtime Architecture and Evals
  • AI Features
  • Streaming Chat
  • RAG and Semantic Search
  • Quotas and Memory

Teams

  • Teams & Organizations
  • Permissions & RBAC
  • SCIM Provisioning

Security

  • Data Retention Policy
  • Security

Deployment

  • Enterprise E2E Evidence
  • Enterprise Production Readiness
  • Deployment, Backup, and Restore Runbook
  • Deployment
  • Troubleshooting

Payments

  • Payments & Billing
  • Stripe Setup
  • LemonSqueezy Setup
  • Polar Setup
  • Payment Webhooks

Api

  • API Layer
  • tRPC
  • GraphQL

Email

  • Email
  • Email Templates

Infrastructure

  • Infrastructure
  • Self-Hosting
  • File Storage
  • Docker
  • Background Jobs
  • Terraform & Pulumi
  • Kubernetes

Ui

  • UI & Theming

I18n

  • Internationalization

Content Management

  • Content Management

Admin

  • Admin Panel

Monitoring

  • Analytics & Monitoring

Modules

  • Module Architecture
  • Waitlist
  • Audit Log
  • White-Labeling
  • Workflow Automation
  • A/B Testing
  • Welcome Page
  • Referrals
  • GDPR Export and Deletion
  • Promotions
  • Outgoing Webhooks

Plugins

  • Plugin System
  • CRM Plugin
  • Helpdesk Plugin
  • Email Marketing Plugin

Upgrading

  • Upgrading Codapult

Developer Tools

  • AI Agents & IDEs
  • MCP Server
  • Testing
  • Build Your First Feature with Codapult MCP
  • How Guard Blocks an Architectural Regression
Getting Started

Quick Start

Install Codapult, configure environment variables, run the Next.js SaaS boilerplate locally, and verify auth, payments, database, and dashboard setup.

Prerequisites

  • Node.js 22.18.0 or later
  • pnpm — install via corepack enable && corepack prepare pnpm@latest --activate
  • Git with access to the private Codapult repository (SSH or a configured Git credential helper)
  • A database — local SQLite (file:local.db) is enough for development; use PostgreSQL or Turso for hosted environments
  • Access to the private Codapult template repository through your GitHub account

Installation

npx @codapult/create my-app
cd my-app

This shallow-clones the template without its history, runs the setup wizard, and installs dependencies. You do not need to run the setup wizard again. If you cloned the template manually, run npx @codapult/cli setup before writing custom code.

For a named starting point, see Starter Profiles and Recipes.

Configuration

Copy the example environment file and fill in the required values:

cp .env.example .env.local

At minimum, set these variables for the default adapters:

VariableValue
TURSO_DATABASE_URLYour Turso database URL (e.g. libsql://my-db-org.turso.io) or file:local.db for a local file
BETTER_AUTH_SECRETGenerate with openssl rand -base64 32 (must be ≥32 characters)
STRIPE_SECRET_KEYStripe secret key from the Stripe dashboard (use test key for development)

TURSO_AUTH_TOKEN is also required when using Turso cloud (not needed for file:local.db). All other variables are optional and documented in .env.example.

Tip: To skip auth and payments setup, set APP_MODE="landing" — only TURSO_DATABASE_URL is required. This runs Codapult in marketing-only mode.

If you prefer PostgreSQL

Turso is the default because local setup is fast and a SQLite file works without external services. If your team prefers PostgreSQL, switch the database provider in .env.local:

DB_PROVIDER="postgres"
DATABASE_URL="postgresql://user:password@host:5432/dbname?sslmode=require"

When DB_PROVIDER=postgres, pnpm db:* commands use the PostgreSQL Drizzle schema and connection string automatically. Keep TURSO_DATABASE_URL only if you plan to switch back to the default Turso/LibSQL provider.

Database Setup

Push the schema to your configured database — this creates all tables in one step:

pnpm db:push

Optionally seed sample data (users, organizations, plans) for local testing:

pnpm db:seed

Start the Dev Server

pnpm dev

Open http://localhost:3000. You should see the Codapult landing page. Click Sign Up to create your first account.

Interactive Setup Wizard

When using @codapult/create, this wizard already ran during project creation. Run it manually only for a project cloned or downloaded without the creator:

npx @codapult/cli setup

The wizard walks you through the supported removal groups (authentication, AI surfaces, blog, teams, GraphQL, API docs, and other listed project capabilities) and removes the groups you do not need. It does not expose every capability as a separate prompt.

Review the generated change: The setup wizard updates the codebase by deleting files and routes mapped to disabled module groups and applying supported prune markers. Review shared schema, imports, and dependencies before generating migrations or writing custom code. This gives you a focused source tree for the product you are building.

Connect an AI coding agent

The CLI provides project setup, generators, health checks, and the Codapult MCP integration:

npx @codapult/cli doctor
npx @codapult/cli mcp doctor

Configure the generated .cursor/mcp.json in your editor, then ask the agent to inspect the project before changing it. For example:

Use Codapult MCP to inspect the current organization, database, and dashboard conventions.
Generate a protected dashboard page for saved reports and run the project checks.

Add architecture control with Guard

Guard adds architecture discovery and change verification to the Codapult workflow. It discovers the architecture that already exists and verifies changes against explicitly approved rules; it does not replace TypeScript, lint, or tests.

npx @codapult/cli guard init
npx @codapult/cli guard propose
npx @codapult/cli guard verify --json

Keep Guard state and policy review in the project repository. See the Guard documentation for the proposal, review, waiver, and CI lifecycle.

Useful Commands

CommandDescription
pnpm devStart dev server (Turbopack)
pnpm buildProduction build
pnpm lintRun ESLint
pnpm formatFormat with Prettier
pnpm testRun Vitest unit tests
pnpm test:e2eRun Playwright E2E tests
pnpm db:generateGenerate Drizzle migration
pnpm db:pushPush schema to database
pnpm db:seedSeed sample data
npx @codapult/cli setupInteractive module setup wizard

Next Steps

  • Project Structure — understand the directory layout and config files
  • Authentication — configure sign-in methods, 2FA, and SSO
  • Payments & Billing — set up subscription tiers and billing
  • Customization — theming, branding, and white-label options
IntroductionYour First 30 Minutes