Courses and learning

Full-stackReleased · PreviewDependent

Add courses and learning tools to your React app.

BTST adds CMS-backed courses, lessons, enrollment, progress, scored quizzes, and student and instructor pages while you own hosting, access, and payment verification.

Best for

Teams adding customer education, training, or a course library to an existing React product.

Requires
The CMS plugin with SCHOOL_COURSE_CONTENT_TYPE; A BTST database adapter
External service boundary
Optional adopter-owned payment, video, and certificate services
Ownership boundary
Course content and learning records stay in your database. You host videos and resources, authorize student and instructor access, verify paid enrollment, and supply optional certificate generation.
BTST School course catalog displaying a sample course in a generated app.
School's course catalog in a generated Next.js app with sample course content. Video hosting and payment verification remain application-owned.

BTST supplies

  • A CMS-backed course catalog, lesson player, and instructor dashboard
  • Enrollment, progress, scored quizzes, and certificate verification
  • Student course portal and lifecycle hooks for payments and certificates

You supply

  • A database adapter, CMS registration, and application identity and authorization rules
  • Hosted lesson videos and resources
  • Payment verification for paid enrollment and optional certificate generation

You own and customize

Course content and learning records stay in your database. You host videos and resources, authorize student and instructor access, verify paid enrollment, and supply optional certificate generation.

Compatibility and dependencies

Maintained integrations
Next.js 15+ App Router · React Router v7 · TanStack Start
Requires
The CMS plugin with SCHOOL_COURSE_CONTENT_TYPE; A BTST database adapter
External services
Optional adopter-owned payment, video, and certificate services

From registration to result

The shipped workflow

This is the feature path BTST supplies—not a claim that your app needs no integration work.

  1. Compose a course

    Register the CMS course type, then create sections and text, video, or quiz lessons.

  2. Enroll learners

    Apply your identity and enrollment rules, including payment verification for paid courses.

  3. Track learning

    Record lesson progress and quiz results; connect completion hooks to your certificate workflow.

Continue your task

Move from evaluation to the right implementation boundary.