# Build an Online Education Platform in Lovable

- Tool: Lovable Prompts
- Last updated: June 2026

## TL;DR

Paste the starter prompt into Lovable Agent Mode and get a working course platform: public catalog, Stripe-paid enrollments, enrolled-only lesson access with video gating via Storage RLS, progress tracking, and an instructor dashboard. Full build takes 1-2 days with the eight follow-up prompts. Expected credit burn: 150-250 on a Pro $25/mo plan.

## Frequently asked questions

### How do I stop students from sharing video URLs with friends?

The enrolled-only Storage RLS policy and signed URLs together handle this. When LessonPlayer calls createSignedUrl, Supabase checks the enrolled-only policy at sign time — only enrolled students get a valid signed URL. Even if a student copies the signed URL and shares it, that URL expires after 1 hour. The critical thing is that your lesson-videos bucket must NOT be public, and the policy must join through the enrollments table (not just check auth.uid() IS NOT NULL).

### What does it actually cost when one of my courses goes viral?

The cost spike comes from video egress, not from Lovable or Stripe. Supabase Free gives 5GB egress total. A 100MB lesson video watched by 100 students = 10GB — double the Free tier limit. At that point you're looking at Supabase Pro ($25/mo, 250GB bandwidth) or migrating to Cloudflare R2 ($0 egress). Plan for the R2 migration before launch if you expect meaningful traffic. The R2 follow-up prompt in this kit handles the migration.

### Should I use Supabase Storage or move video to Mux or R2 from day one?

Start with Supabase Storage — it's zero config and the enrolled-only RLS is easy to test. Switch to Cloudflare R2 (zero egress cost) once you hit 50+ active students, or Mux (video CDN with adaptive bitrate, closed captions, analytics) if video quality is core to your brand. R2 migration takes 2-3 hours with the follow-up prompt. Mux adds ~$0.005/min streamed but handles the video player, transcoding, and thumbnail generation for you.

### Can I do recurring subscriptions instead of per-course payments?

Yes, but the subscription-system kit is better suited for that. Instead of Stripe Checkout in payment mode, use subscription mode with a price ID. The enrollment logic is different: instead of apply_enrollment on checkout.session.completed, you gate on invoice.paid for the recurring period. The membership-site kit in this library covers exactly this pattern — combine it with the course platform starter for a hybrid per-course + subscription model.

### How do I issue certificates of completion?

Add a certificate-generation follow-up after the quiz kit is in place. When a student completes all lessons (and passes any quizzes), trigger a generate-certificate Edge Function that uses @pdf-lib to render a certificate PDF with the student's name, course title, and completion date. Store the PDF in a public certificates bucket (no enrollment RLS needed — certificates are meant to be shared), and send the download link via Resend. You can add a /certificate/:uuid public page that renders the certificate for sharing on LinkedIn.

### Does the Stripe integration handle EU VAT?

Stripe itself handles VAT collection if you enable Stripe Tax ($0.50 per transaction once you have >$500/mo in volume). In your create-enrollment-checkout Edge Function, add automatic_tax: {enabled: true} to the Checkout session params. Stripe calculates and collects VAT based on the student's IP location. You still need to configure your tax registrations in Stripe Dashboard → Tax → Registrations for each jurisdiction. For VAT invoicing, Stripe Invoicing (separate from Checkout) generates compliant VAT invoices automatically.

### When does it make sense to hire RapidDev instead of staying on Teachable?

If your build outgrows this prompt kit and you need custom architecture, RapidDev builds production-grade Lovable apps at $13K-$25K — book a free 30-minute consultation at rapidevelopers.com.

---

Source: https://www.rapidevelopers.com/lovable-prompts/lovable-prompts-for-building-online-education-platform
© RapidDev — https://www.rapidevelopers.com/lovable-prompts/lovable-prompts-for-building-online-education-platform
