Quickstart Guide

Get your first TeachRepo course live in under 10 minutes. You'll need: a GitHub repo with Markdown files, a TeachRepo account, and Stripe.

1

Install the CLI

Install the TeachRepo CLI globally:

npm install -g @teachrepo/cli

Verify the install:

teachrepo --version
2

Authenticate

Log in to your TeachRepo account:

teachrepo login

This opens your browser to complete OAuth. Your API token is stored locally at ~/.teachrepo/config.json.

3

Structure your repo

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.md

Minimal 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"
4

Add frontmatter to lessons

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.

5

Import your course

teachrepo import https://github.com/yourname/typescript-deep-dive

This pulls your repo, parses lessons, creates the course in TeachRepo, and returns a preview URL.

6

Connect Stripe

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.

7

Publish your course

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

Next Steps