Get your first TeachRepo course live in under 10 minutes. You'll need: a GitHub repo with Markdown files, a TeachRepo account, and Stripe.
Install the TeachRepo CLI globally:
npm install -g @teachrepo/cliVerify the install:
teachrepo --versionLog in to your TeachRepo account:
teachrepo loginThis opens your browser to complete OAuth. Your API token is stored locally at ~/.teachrepo/config.json.
TeachRepo expects a course.yml at the root and Markdown lesson files:
my-course/
├── course.yml
├── lessons/
│ ├── 01-introduction.md
│ ├── 02-core-concepts.md
│ └── 03-advanced-topics.md
└── README.mdMinimal course.yml:
title: "TypeScript Deep Dive"
slug: "typescript-deep-dive"
price_cents: 2900
currency: "usd"
description: "Master TypeScript from fundamentals to advanced patterns."
repo_url: "https://github.com/yourname/typescript-deep-dive"Each lesson Markdown file needs YAML frontmatter:
---
title: "Introduction to TypeScript"
slug: "introduction"
order: 1
access: free # free = public preview
estimated_minutes: 15
---
# Introduction to TypeScript
Your lesson content here...Set access: paid on lessons you want to gate behind enrollment.
teachrepo import https://github.com/yourname/typescript-deep-diveThis pulls your repo, parses lessons, creates the course in TeachRepo, and returns a preview URL.
Go to Dashboard → Settings → Payments and connect your Stripe account. TeachRepo handles checkout, webhooks, and enrollment automatically.
Test mode is enabled by default — use Stripe test card 4242 4242 4242 4242.
In the dashboard, click Publish on your course. Your course is now live at https://teachrepo.com/courses/your-slug.
teachrepo publish typescript-deep-dive