Course Platform Starter — Next.js + Payload Boilerplate
Choose a license
$99.00
After purchase we will send a download link to your email.
Ship your own course platform in a weekend — not in six months.
A production-ready, self-hosted boilerplate that gives you everything: a gated course player, a Stripe-powered digital-products store, lead magnets, a marketing site, a CMS admin panel, and a REST API for AI-agent content ingestion. Zero monthly SaaS fees. Your brand, your data, your rules.
Who it's for
- Indie educators and course creators who want to sell courses without paying 10–30% platform fees forever
- Developers building for clients who need a turnkey course/product platform they can customize and hand off
- Technical founders launching an info-product alongside a SaaS
- Agencies delivering branded learning portals
You need basic Next.js/React familiarity and a VPS or PaaS (Railway, Coolify, Render, Fly.io). The installer script handles the rest.
Why self-host instead of Teachable / Podia / Gumroad?
No monthly platform fee — you just pay your VPS (~$5–20/mo) — and no extra transaction cut beyond Stripe's. A custom domain and full white-labeling are standard, not locked behind a higher tier. You own the source code and the data, and you can modify anything.
Courses
- Phases + lessons structure with Lexical rich text (prose, video, images, callouts)
- Shiki server-side syntax highlighting for code blocks
- Anchored headings and a sticky table of contents on every lesson
- Per-user progress tracking with mark-complete and auto-advance to the next lesson
- A "Resume" link that jumps straight to the last incomplete lesson
- Enrollment via Stripe Checkout; gated access redirects unenrolled visitors
Digital products store
- One-time Stripe purchase → an HMAC-signed, expiring download link (no buyer account required)
- Use-count limiting on download grants
- Lead-magnet mode — free in exchange for an email via Brevo double opt-in
- Private file storage; only the grant-gated streaming route ever exposes the file
Payments & legal
- Stripe Checkout for both courses and digital products
- Consent capture at checkout (EU digital-goods right-of-withdrawal waiver)
- Webhook idempotency — duplicate Stripe events are detected and skipped
- Refund revocation — automatically removes course access or expires the download grant
- Terms of Service and Privacy Policy templates in PL and EN
Marketing site & CMS
- Block-based page builder (hero, features, testimonials, CTA, blog, contact)
- Blog with categories and rich text, plus a projects/portfolio collection
- Per-page SEO and an auto-generated sitemap
- Draft preview, CMS-managed redirects, full-text search
- Optional self-hosted Umami analytics
Architecture & DX
- Three isolated surfaces (
courses.*,apps.*, and the main site) served from a single Next.js process via host-rewrite middleware - PL/EN localization built in (Payload localized fields + typed UI translations)
- CSS-variable theming — swap a
theme.cssfile to re-skin without touching components - PostgreSQL 16 with Payload 3 migrations
- Admin RBAC (
admin/customerroles) - A token-authenticated external content REST API for headless / AI-agent ingestion
What's included
Full source code (Next.js 15, Payload CMS 3, Stripe, Brevo, Shiki, shadcn/ui), an installer script, a step-by-step SETUP guide, a canonical FEATURES reference, demo seed data, legal templates, an AGENTS.md re-skinning and customization guide, and a commercial license covering unlimited projects.