The boilerplate that
ships real products.
A full-stack monorepo with an interactive setup CLI. Clone, run one command, start building your product. Not a template — a production system we use ourselves.
Backend
Elysia.js — the fastest
Bun-native framework.
Your API isn't an afterthought bolted onto Next.js routes. It's a standalone Elysia.js server — type-safe end-to-end, with validation at the edge and zero code generation. Change an API response, TypeScript catches it in the frontend instantly via the Eden client.
- End-to-end type safety (Elysia + Eden Treaty)
- Built-in request validation via TypeBox schemas
- Redis-powered rate limiting per route
- OpenAPI documentation in one line
- Webhook handlers pre-configured for Polar.sh
Authentication
Better Auth — self-hosted,
zero vendor lock-in.
Not Clerk. Not Auth0. No monthly fees, no data leaving your server. Better Auth runs alongside your app with a plugin system for advanced features. Login, signup, password reset, and admin RBAC — all pre-configured with pages included.
- Email/password + social providers (Google, GitHub)
- RBAC with admin, user, and custom roles
- Session management with secure cookies
- Ready-made login/signup pages for web + admin
- 2FA, multi-tenancy, multi-session via plugins
Payments
Polar.sh — payments
without Stripe complexity.
Checkout, webhook handler, subscription tracking in the database — all three wired together. Monthly and annual pricing with a toggle. Most boilerplates give you checkout. We give you the full revenue flow, tested with real money.
- One-click checkout via Polar.sh API
- Webhook handler with signature verification
- Subscriptions table in Drizzle schema
- Monthly/annual toggle on pricing page
- Subscription status check middleware
Developer Experience
Interactive CLI —
zero manual config.
Built with Ink (React for terminals). Run bun run cli and the setup wizard walks you through everything: database connection, .env generation, schema push, and admin user creation. No copy-pasting from docs, no forgetting environment variables.
- Interactive prompts for DB host, port, credentials
- Auto-generates .env in all required directories
- Pushes Drizzle schema to your database
- Creates admin user with hashed password via Better Auth
- Generates BETTER_AUTH_SECRET automatically
Admin Panel
A real admin panel,
not a dashboard page.
A separate Next.js app at apps/admin with its own auth gate, RBAC middleware, and sidebar layout. User management, role assignment, and admin-only routes — isolated from your public frontend by architecture, not by if (role === 'admin').
- Separate app with dedicated auth gate
- RBAC middleware (admin, user, custom roles)
- Sidebar layout with navigation
- User management out of the box
- Runs on its own port — independent deployments
apps/web
Public frontend, landing pages, auth UI, user-facing features
apps/admin
Protected admin panel, RBAC, user management, sidebar
apps/api
Elysia.js REST API, webhooks, rate limiting, business logic
packages/*
auth, db, cache, ui, email, entities — shared across all apps
AI-Native Development
Your AI assistant
already knows the codebase.
CLAUDE.md documents the full architecture, coding rules, and 11 production pitfalls. The .claude/skills/ directory has step-by-step guides for deployment, design decisions, and payment integration. Claude Code and Cursor start productive from the first prompt.
- CLAUDE.md — structured context for AI assistants
- 4 skills: deploy, dev workflow, design, payments
- 11 production bug rules AI won't repeat
- Works with Claude Code, Cursor, Windsurf
Also included
Everything else you'll need.
Each feature was added because we hit a wall without it while building real products.
i18n (3 languages)
next-intl configured for server and client. Locale routing built in. Add a language in minutes, not hours.
Dark Mode
Semantic color tokens everywhere. next-themes with system detection. Both themes actually tested. No hardcoded whites.
SEO
Dynamic sitemap.xml, robots.txt, JSON-LD structured data, per-page metadata. Canonical URL bug already fixed.
Drizzle ORM
Type-safe SQL with zero ORM overhead. Schema defined once, shared across all apps. Migrations via drizzle-kit.
Redis Caching
ioredis configured with prefix-based isolation. Rate limiting, session cache, usage tracking — ready to use.
React Email
Beautiful email templates with React components. Resend delivery configured. Transactional emails out of the box.
shadcn/ui + Tailwind v4
Accessible, composable components. Shared UI package across all three apps. One design system, no drift.
Turborepo
Parallel builds with caching. Change one package — only affected apps rebuild. CI goes from 5 min to 40 sec.
Landing Templates
Hero, features, pricing, FAQ, CTA, footer — semantic tokens, fully responsive. Customize content, keep structure.
Battle-tested
11 production bugs. All fixed.
We shipped 4 apps with this boilerplate and documented every mistake. Your AI assistant has these rules built in.
Double /api/ path
Better Auth appends /api/auth internally. Using API URL as baseURL causes /api/api/auth/. Fixed.
Hardcoded colors
bg-white, text-slate-900 break dark mode. Every component uses semantic tokens now.
Canonical URL in layout
Hardcoding canonical to homepage tells Google every page is a duplicate. Per-page canonicals now.
Checkout without webhook
Payment received, subscription not activated. Now includes checkout, webhook, and status check.
Default black --primary
shadcn default primary is black. Buttons and accents look wrong. Marked with "CHANGE THIS".
Admin vs Web confusion
Dashboards in apps/web = no auth gate. Admin panel exists for a reason.
+ 5 more fixes documented in CLAUDE.md.
Social proof
9 production apps. One boilerplate.
From call center analytics to restaurant kitchen management — real teams ship real products with ShipKit every day.
Call center analytics for Asterisk. 30+ real-time charts, agent performance tracking, queue monitoring.
Analytics SaaSRunning analytics app with Strava integration. Workout analysis, world standard comparisons, goal tracking.
Fitness AppE-commerce store for grooming products in Uzbekistan. Full catalog, cart, checkout, order management.
E-CommerceEducational platform for children. Learning through games, progress tracking, interactive exercises.
EdTechScreenshot mockup generator. Upload a screenshot, get a beautiful device mockup for social media and portfolios.
Design ToolImage toolkit: compress, resize, convert, crop, rotate, watermark, remove background. All in the browser.
Image Processing14+ developer utilities: color converter, Tailwind palette, formatters, encoders, and more.
Dev UtilitiesTime Tracker
Employee time tracking, attendance, overtime management, payroll calculation, and Telegram notifications.
HR / InternalChef Task
Kitchen task management for restaurants. Portion tracking, cook productivity analytics, recurring tasks.
Restaurant / InternalPricing
$49. Once. Done.
Full source code. Private GitHub repo. Unlimited projects.
Everything in the repo. No tiers, no upsells, no “pro” version hiding behind another paywall.
- Full source code (3 apps + 8 packages)
- Private GitHub repository access
- Interactive setup CLI (zero manual config)
- Auth, payments, admin panel, i18n, SEO
- AI skills for Claude Code & Cursor
- Landing page templates
- Deployment guides (nginx, systemd, SSL)
- Lifetime updates
- Unlimited projects, commercial use
Payments via Polar.sh · 7-day refund policy
FAQ
Common questions.
Start building your product today.
The setup is done. Auth works. Payments work. Just add your idea.
Get ShipKit — $49About ShipKit
ShipKit is a production-ready SaaS boilerplate built by DavrApps, an independent software studio. We built ShipKit because we were tired of spending weeks on auth, payments, and i18n before writing a single line of product code.
The same boilerplate powers our own products: Picefy, ImgTools, and DevTools — all built and deployed using ShipKit.
Stack: Next.js 16, Elysia.js (2.4M req/s on Bun), Better Auth, Polar.sh payments, Drizzle ORM, shadcn/ui, next-intl, Turborepo monorepo. One command to set up, one command to deploy.