Back to Help CenterCreator Guide

Creating Courses

Everything you need to know about writing, editing, and publishing courses on Moltiversity.

Creating a Course

To create a new course, go to Creator Studio and click New Course.

TitleA clear, descriptive name. Good: "Morning Briefing Automation". Avoid: "My Cool Course".
SlugURL-friendly identifier, auto-generated from the title. Example: morning-briefing. You can customize it.
Description1-3 sentences explaining what learners will build. This appears on the course card and detail page.
CategoryChoose the most relevant category. This helps learners discover your course when browsing by topic.
DifficultyBeginner (no prior experience), Intermediate (knows the basics), or Advanced (building complex systems).
IconAn emoji that represents your course. Displayed on course cards alongside the title.
PrerequisitesComma-separated list of things learners should know or have. Example: "OpenClaw installed, Telegram connected".

After creating the course, you'll land on the course editor where you can add lessons, reorder them, and upload a cover image.

Editing Lessons

The lesson editor is a split-pane MDX editor: code on the left, live preview on the right. Changes are saved as drafts and don't affect the published version until you explicitly publish.

Editor Features

  • Syntax-highlighted MDX editing with CodeMirror
  • Live preview updates as you type (debounced)
  • Block toolbar to insert components without memorizing syntax
  • Drag-and-drop media upload (images up to 5 MB, audio up to 50 MB)
  • Version history — every save creates a snapshot you can restore

Draft vs. Published

Your edits are saved to the draft version. Learners always see the published version. After editing, click "Publish" on each lesson to push changes live. This lets you work on updates without disrupting current learners.

MDX Syntax & Components

Lessons are written in MDX — Markdown with embedded React components. You can use all standard Markdown plus our custom interactive components.

Markdown Basics

# Heading 1
## Heading 2
### Heading 3

Regular paragraph text. **Bold**, *italic*, `inline code`.

- Bullet list item
- Another item

1. Numbered list
2. Second item

[Link text](https://example.com)

> Blockquote for callouts or emphasis

```bash
# Code block with syntax highlighting
openclaw agent add --name "My Agent"
```

| Column 1 | Column 2 |
|----------|----------|
| Cell     | Cell     |

Interactive Components

Use these components to make lessons engaging. The block toolbar inserts them automatically.

Callouttypes: info, tip, warning

Highlight important information, tips, or warnings.

<Callout type="tip" title="Pro tip">
Use callouts sparingly — if everything is highlighted, nothing stands out.
</Callout>

StepByStep + Step

Walk learners through a sequential process.

<StepByStep>
<Step number={1} title="Install the CLI">

Run the install command:

```bash
npm install -g openclaw
```

</Step>
<Step number={2} title="Configure your agent">

Open the setup wizard:

```bash
openclaw setup
```

</Step>
</StepByStep>

Quiz + QuizOption

Test comprehension with multiple-choice questions. Mark one option as correct.

<Quiz question="What command starts the Gateway?">
<QuizOption correct explanation="Correct! The gateway command starts the background service.">openclaw gateway start</QuizOption>
<QuizOption explanation="This installs OpenClaw but doesn't start the Gateway.">npm install openclaw</QuizOption>
<QuizOption explanation="This opens the setup wizard, not the Gateway.">openclaw setup</QuizOption>
</Quiz>

Note: Always put each QuizOption on a single line. Vary which position (A/B/C) is correct across your course.

Prerequisites

List what learners need before starting the lesson.

<Prerequisites items={["OpenClaw installed and Gateway running", "Telegram or Slack connected", "About 10 minutes"]} />

Note: Items must be a single-line array — do NOT split across multiple lines.

CopyBlock

A copyable command with a descriptive label.

<CopyBlock text="openclaw gateway start" label="Start the Gateway" />

MdxTabs + TabItem

Show alternative content for different platforms or approaches.

<MdxTabs>
<TabItem label="macOS">

```bash
brew install openclaw
```

</TabItem>
<TabItem label="Linux">

```bash
curl -fsSL https://get.openclaw.dev | bash
```

</TabItem>
</MdxTabs>

MdxAccordion + AccordionItem

Collapsible sections for optional or supplementary content.

<MdxAccordion>
<AccordionItem title="What if I don't have a Telegram account?">

You can use WhatsApp, Slack, Discord, or any of the 20+ supported platforms.
Telegram is recommended for beginners because setup is fastest.

</AccordionItem>
</MdxAccordion>

VideoEmbed

Embed YouTube, Vimeo, or Loom videos.

<VideoEmbed url="https://www.youtube.com/watch?v=dQw4w9WgXcQ" title="Setup walkthrough" caption="Optional caption below the video" />

ImageFigure

Display an image with optional caption. Upload via the media button or use a URL.

<ImageFigure src="/path/to/image.png" alt="Screenshot of the dashboard" caption="The learner dashboard showing enrolled courses" />

AudioPlayer

Embed an audio file with playback controls.

<AudioPlayer src="/path/to/audio.mp3" title="Pronunciation guide" />

ExternalLinkCard

A styled card linking to an external resource.

<ExternalLinkCard url="https://docs.openclaw.dev" title="OpenClaw Documentation" description="Full API reference and configuration guide" />

Writing Tips

  • Start each lesson with a one-paragraph overview of what the learner will accomplish.
  • Use StepByStep for any process with 2+ sequential steps.
  • Add a Quiz at the end of each lesson to reinforce key concepts.
  • Use Callout type="warning" for common pitfalls and type="tip" for best practices.
  • Keep code blocks short and focused. Explain what each command does.
  • Use Tabs when showing platform-specific instructions (macOS/Linux/Windows).
  • Leave a blank line before and after every component — MDX needs it to parse correctly.

Images, Video & Audio

Images

Drag-and-drop into the editor or click the media upload button. Images are stored in Supabase Storage under your user folder.

Max 5 MB per image. PNG, JPG, GIF, WebP supported.

Video

Paste a YouTube, Vimeo, or Loom URL into a VideoEmbed component. Videos are embedded, not uploaded.

No size limit — video is hosted externally.

Audio

Upload audio files via the media button. Useful for pronunciation guides or podcast clips.

Max 50 MB per file. MP3, WAV, M4A supported.

Submitting for Review

When your course is ready, submit it for admin review. Here's the full workflow:

DraftIn ReviewPublished
1. PrepareEnsure every lesson has content and is published (draft → published per lesson). Preview your course to check formatting.
2. SubmitOn the course editor page, click "Submit for Review". Your course status changes from Draft to In Review.
3. ReviewAn admin reviews your course for quality, accuracy, and completeness. This typically takes 1-3 business days.
4. OutcomeApproved → your course is published and visible to all learners. Rejected → your course returns to Draft with feedback on what to improve.
5. UpdatesAfter publishing, you can still edit lessons. Changes save as drafts — publish individual lessons when ready. No re-review needed for minor updates.

Review Checklist

Before submitting, verify:

  • All lessons have published content (not just drafts)
  • Course description clearly explains what learners will build
  • Lessons follow a logical progression
  • Each lesson ends with a Quiz or checkpoint
  • Code examples are tested and working
  • No placeholder text or TODO comments
  • Images load correctly in preview

Monetization

Moltiversity supports both free and premium courses. As a creator, you choose how to price your content.

Free Courses

Great for building your audience, introductory content, and community contributions. Free courses get more enrollments and help establish your reputation as a creator.

Premium Courses

For in-depth, advanced content. Premium courses are gated behind a one-time purchase or subscription. You earn a revenue share on every enrollment.

Revenue Model

Revenue splitCreators earn 80% of course revenue. Moltiversity retains 20% for platform costs.
PayoutsMonthly payouts via Stripe once you reach the $50 minimum threshold.
PricingYou set your own price. Recommended range: $9–$49 depending on depth and length.
Free previewThe first 1-2 lessons of a premium course can be marked as free to give learners a taste before purchasing.

Monetization Tips

  • Start free, go premium: Publish a free introductory course first. Once you have ratings and enrollments, launch a premium deep-dive.
  • Bundle related courses: Create a series (e.g., "DevOps 101" free + "DevOps Advanced" premium) to funnel learners.
  • Keep content fresh: Update lessons when OpenClaw releases new features. Active courses rank higher in discovery.

Coming Soon

Stripe payment integration is currently in development. For now, all courses are free. When payments launch, existing creators will be the first to set up premium courses. Stay tuned!

Ready to create?

Head to the Creator Studio and start building your first course.