A course shop for one instructor is a short list: lessons with video, a paywall, quizzes, progress and a certificate PDF, and an agent can build that on Next.js with Stripe Checkout and a video host in a weekend. The cost sits around the edges: streaming video reliably (use a video service instead of your own server), email deliverability, VAT on digital goods, refunds and support. Subscriptions and installments, SCORM, live sessions, white-label academies and the mobile app are beyond a one-prompt build.
Before you buildLearnWorlds has no free plan, only a 30-day trial. If you have not sold a course yet, a free tier of another platform lets you test demand before you build or pay.
Build me a course shop for one instructor to replace LearnWorlds. Requirements: - Node.js 22 + TypeScript: Next.js (App Router) with `better-sqlite3` in ./data/school.db and Tailwind CSS. `npm run dev` serves http://localhost:3000; `npm run start` serves the production build. - Content: courses made of sections and lessons. A lesson is a video (Bunny Stream embed by video id, set with BUNNY_LIBRARY_ID in .env), Markdown text, or a downloadable PDF stored in ./data/files/. The admin page at /admin (one password in .env, signed cookie) edits courses, reorders lessons by drag and drop and marks lessons as free previews. - Quizzes: single and multiple choice with a pass mark per course; store each attempt and score. - Learners: sign-up by email with a magic link (`nodemailer` SMTP from .env), a "My courses" page with progress per lesson (resume where you stopped), and a certificate PDF (`pdfkit`) with a verifiable ID once all lessons are done and the quizzes passed. - Selling: Stripe Checkout (`stripe`, STRIPE_SECRET_KEY and STRIPE_WEBHOOK_SECRET in .env) for one-time purchases and coupons; the webhook grants access and sends a receipt email. Refund in Stripe removes access. Test mode first. - Admin: a learner list with progress and purchases, CSV export of both, and a button to grant or revoke access. - Pages: a sales page per course from Markdown with price and a Buy button; a catalogue page; a basic sitemap.xml. - Single instructor. No telemetry. Network only for Stripe, the video host and SMTP. - Out of scope: subscriptions and instalments, SCORM, live sessions, a community, affiliates, white-label multi-school, a mobile app, VAT and tax calculation (use Stripe Tax later). - README: setting up the Stripe webhook locally with the Stripe CLI, uploading videos to Bunny Stream, and a warning that selling to the EU needs VAT handling this app doesn't do.
Opens your agent with the prompt filled in, you press enter. Or copy it and paste it into an empty folder.
The first prompt builds the core. Run these one at a time in the same folder to grow it into your own LearnWorlds.
Extend the course shop in this folder. Requirements: - Per lesson, an optional "unlocks N days after purchase" value edited in the admin. - Learners see locked lessons with the unlock date; the server refuses locked lessons even by direct URL. - A daily job emails learners when a new lesson unlocks, with a link. - Tests for the unlock date maths across time zones and daylight saving. - Update the README.
Add recurring payments to the course shop in this folder. Requirements: - Per course, choose one-time, monthly subscription or N instalments (2 to 12), created as Stripe Prices. - Access follows the subscription status from webhooks (invoice.paid, customer.subscription.deleted, invoice.payment_failed); a failed payment gives 7 days of grace before access stops. - The learner page shows the plan and a link to the Stripe customer portal for cancelling. - Update the README with the webhook events to enable.
Add lesson comments to the course shop in this folder. Requirements: - A comment thread under each lesson for enrolled learners, one level of replies, newest first. - The instructor's replies are marked, and the instructor gets a daily digest email of new questions. - Escape all comment text, rate limit to 10 comments an hour per learner, and let the admin hide or delete comments. - Update the README.
Instructors want to sell courses, not run a video platform. LearnWorlds bundles hosting, a branded site, checkout, certificates, community and email, so a first course can go live in a day without anyone looking after the plumbing.
Estimate · A small VPS runs about $5 a month and video storage and delivery scale with your hours of video. Stripe takes its usual card fee on each sale. The build is token usage on your agent plan.
| Plan | Monthly | Annual, per month | What you get |
|---|---|---|---|
| Starter | $29 | $24 | 1,000 active learners a month, 1 admin, 300 AI credits; courses on your own domain, AI course builder and quizzes, Stripe or PayPal checkout, live 1:1 and group sessions, 24/5 email support. |
| Pro Trainer | $99 | $79 | 2,000 active learners, 5 admins, 500 AI credits, no enrollment fees; subscriptions, memberships and payment plans, unlimited courses and learning paths, certificates, up to 20 SCORM uploads, 50+ integrations. |
| Learning Center | $299 | $249 | 2,000 active learners, 25 admins, 1,000 AI credits; full white-label, up to 10 client groups, automations, scheduled course reports, 2 hours of setup help. |
| Corporate | custom | — | Custom learners, admins and client groups; 99.95% uptime, daily backups, optional SLA and data processing agreements, a success manager and 24/7 phone support. |
No free plan: a one-time 30-day trial with the core features.
Kinda. The core is a weekend build with the prompt on this page, but real gaps remain: Subscriptions, memberships, installments and bundles, Hosted video with interactive overlays, AI subtitles and translation.
About $29 a month on the Starter plan, $348 a year (checked 2026-10-19).
Subscriptions, memberships, installments and bundles; Hosted video with interactive overlays, AI subtitles and translation; SCORM and LTI packages, and live sessions through Zoom, Meet, Teams or Webex; The built-in community, affiliate program and funnel pages; Full white-label, client groups and the branded mobile app. If any of those matter to you, keep paying.
Yes: Frappe LMS (open source), Moodle (open source), Open edX (open source).