All starters
Available nowv1.0.1

NextJS Starter

Auth, billing, teams, admin.

Lifetime access

$99

This kit, every update, and every future Shipkitt release.

Product brief

What you get

The Next.js starter you're looking at right now: auth, billing, teams, and admin, ready to ship on.

Launch manifest

Everything inside

57 features across 9 areas

Auth & accounts

9 included

better-auth with verified email, Google sign-in, and the account screens users expect.

Email/password with verified addresses
Sign-in is blocked until the address is confirmed, so you never build on an unverified email column.
Google OAuth with trusted linking
Signing in with Google folds into an existing password account instead of quietly creating a duplicate.
Password reset and email change
Both flows are wired end to end, including the emails that carry them.
Active session management
Users see every signed-in device and can revoke any one of them without touching the others.
Linked accounts
Connect and disconnect OAuth providers from the security page.
Account deletion
Type-to-confirm, with a confirmation email — not a button that fires on the first click.
Roles, granted off the internet
A user/admin role column, granted by a CLI script run against the database — never through the app. There is no HTTP path to privilege escalation.
Ban, unban, and impersonation
Support staff can act as a user to reproduce a bug, with a persistent banner and one click back out.
Two-layer route gating
A cookie fast-path in the proxy for redirects, and real session verification in the data-access layer where the data is. Neither is trusted on its own.

Organizations

5 included

Multi-tenant workspaces with invitations, roles, and per-org settings — the part that takes a month.

Orgs with owner/admin/member roles
Any user can create one, belong to several, and switch between them and their personal account.
Email invitations
Invite by address with a role, revoke a pending invite, and a real accept-invitation flow for the recipient.
Member management
Change a member's role or remove them, with the permission checks already in place.
Org profile and logo
Per-organization settings and an uploaded logo, scoped so one org can never read another's.
Shared document shelf
Private file uploads scoped to the organization, available to every member.

Billing

6 included

Stripe subscriptions and one-time purchases, including the webhook edge cases nobody warns you about.

Subscription plans in one file
Tiers, monthly and annual pricing, and the gating rules all read from a single plans module.
Checkout and customer portal
Stripe-hosted, so card details never reach your servers and plan changes are self-serve.
Invoices, trials, promo codes, tax
An invoice list users can read, plus free trials, discount codes, and automatic tax behind config flags.
Idempotent webhooks
A claimed-events table makes replays a no-op. Stripe retries; this one does not double-charge or double-email.
Plan gating helpers
Ask whether an account has access rather than scattering tier comparisons through your features.
A dunning banner
Failed payments surface in the app instead of silently expiring the account.

Public API & webhooks

5 included

A versioned REST API with per-user keys, and signed outbound webhooks with a delivery log.

Versioned /api/v1
Bearer-key authentication instead of the session cookie, with two worked routes to copy from.
Per-user API keys
Users create their own, see the secret exactly once, and revoke it later. Each key is rate-limited on its own.
User-managed webhook endpoints
Your customers register their own URLs and subscribe each to the event types they care about.
HMAC-signed deliveries
Every payload is signed so the receiving end can prove it came from you.
Delivery log with retries
Status, attempt count, response code, and last error per delivery, with a redeliver button on the failures.

Files, notifications & email

5 included

Direct-to-S3 uploads, one notification dispatcher, and transactional email that already renders.

Presigned S3/MinIO uploads
Avatars, org logos, and documents go straight from the browser to storage — no file passes through your server.
Storage URLs that never leak
Downloads route through a stable app URL that redirects to a short-lived signed link, so bucket URLs stay private.
One notify() dispatcher
Always writes to the in-app bell, optionally emails too, honouring a per-user preference. Adding a notification is one call.
In-app notification bell
Polling rather than websockets — one fewer piece of infrastructure to run, and it survives a serverless deploy.
Transactional email that works
Resend plus React Email, with a finished template behind every email the app sends: welcome, verify, reset, invite, subscription changes, and more.

Marketing & content

6 included

The public site: MDX content, real SEO, waitlist mode, and consent-gated analytics.

MDX blog, changelog, and legal pages
Content lives in the repo and is reviewed like code, with syntax highlighting built in. No CMS to pay for.
SEO that is actually wired
Sitemap, robots, canonical and OpenGraph metadata, and Article JSON-LD — not a TODO in the layout.
Dynamic OG images
Generated per page and per post, so shared links do not all look identical.
Waitlist mode
Flip a switch to gate signups, approve people from the admin panel, and export the list as CSV.
Cookie consent and gated analytics
A consent banner that genuinely withholds the analytics script until it is accepted.
Landing, pricing, and contact pages
Including a contact form with bot protection and a newsletter signup.

Admin back office

8 included

The internal tool you would otherwise build twice: users, money, files, and an audit trail.

Overview dashboard
Real metrics from your own database, charted — not placeholder numbers.
User management
Search, inspect, and act on accounts with per-row actions including ban and impersonate.
Subscription list
See who is paying you, on what plan, and since when.
Waitlist review
Approve or reject signups and export the queue.
File browser
Every upload in the system, with its owner.
Filterable audit log
Sensitive account, org, and billing actions recorded with actor and target, filterable by action type.
Feature-flag toggles
Flip behaviour on and off from the UI, no deploy.
Contact inbox
Form submissions land somewhere you can read them.

Platform

7 included

Flags, an AI module, rate limiting, security headers, and error tracking — all optional, none crashing when off.

Database-backed feature flags
getFlag(key, default) with an admin toggle. No third-party flag service, no per-seat bill.
AI module with cost logging
An Anthropic SDK wrapper that records tokens and estimated USD per call, so your AI spend is visible from day one.
Rate limiting on auth and actions
Covering better-auth's endpoints and your own Server Actions, which most starters leave wide open.
Security headers and bot protection
CSP, HSTS, frame and referrer policy, plus optional Turnstile checks on signup and contact.
Sentry, health check, analytics hook
Error tracking on both server and client, an unauthenticated /api/health for uptime monitors, and one place to wire analytics.
A design system, not a theme
shadcn/ui on Base UI with a dark-first token set, a theme toggle, toasts, and mobile navigation already assembled.
Optional means optional
Google, Stripe, Resend, S3, Turnstile, Sentry, and AI each degrade to off when unconfigured. The app boots and builds with placeholder keys.

Developer experience

6 included

One command to a running stack, tests that already pass, CI, and a doc per feature.

Interactive setup CLI
npm run setup brings up Postgres and storage, runs migrations, and seeds data. You are signed in minutes later.
Docker Compose for local infra
Postgres and MinIO, so nothing about local development depends on a cloud account.
Tests you inherit rather than write
Vitest unit tests, database-backed integration tests, and Playwright end-to-end coverage of auth, access control, and the marketing pages.
CI and deployment
A GitHub Actions pipeline and a Dockerfile using standalone output, plus a Vercel path that needs no config file at all.
A documentation page per feature
Each one covers what it does, how to configure it, how it works, how to extend it — and how to delete it, because you will remove features as often as you add them.
Written to be handed to an agent
The docs and conventions are self-contained, so a coding agent can work in this codebase without reverse-engineering it first.

Version archive

Releases

Every version stays available to buyers — you're never forced onto a newer one.

v1.0.19/19/2026 · 551 KB