MastriaDocs

Course settings

Course settings live in three places, one job each. Course settings in the outline rail (or click the course name at the top of the outline, or ⌘K → "Course settings: …") opens the first; tabs at the top switch between them:

  • Course page — what learners read: title, short description, the About page, the course card, search preview, the recommended next course — plus duplicate, save as template, and delete at the very bottom. A live preview at the top shows the course card and the course-page header exactly as the fields below will render them.
  • Access — who can open the course and where it shows: visibility, featured, account access, coming soon / open to new learners, the waitlist, catalogs, learning paths.
  • Completion — certificates.

Each tab has one Save that applies everything on it, immediately. On a published course, learners see it right away.

Important

Lesson text and titles are different: they wait for publishing. Course settings don't — a saved title, description, or access change is live the moment you save it.

Two people can't silently overwrite each other. If anything on the page changed in another tab since yours loaded — details, About, access, lifecycle, catalogs, certificates, or the course was published there — Save applies nothing, shows the current values, keeps the fields you edited (still unsaved), and asks you to check them before saving again. A Save is all-or-nothing: the description and the access change you made together land together or not at all. While a save is running you can keep typing; whatever you change meanwhile stays unsaved until the next Save, never reverted. Unsaved fields also hold you on the page: a click elsewhere in the workspace asks you to Save or Discard changes first.

Details

  • Title — rename anytime. The course URL never changes, so links you've shared keep working.
  • Short description (up to 500 characters) — the plain-text line shown on the course card and under the course title.
  • About this course — a full markdown page (the same editor as lessons) shown on the course page: what learners will build, who it's for, prerequisites. While you type, the text is kept safe automatically, but nothing becomes visible to learners until you press Save; edits left unsaved show a notice the next time you open the page.

Tip

Three About headings get special treatment. Write ## What you'll be able to do (or ## What you'll learn), ## Who this is for, and ## Before you start (or ## Prerequisites), and the course page renders them as designed sections: the outcomes become a highlighted checklist card, and the audience and prerequisites become side-by-side cards. Everything else appears as normal prose under "About this course" — the headings are a convention, not a requirement. You don't have to remember them: new courses start with the section template in place, an emptied About offers Insert section template, and the chips under the editor light up as you write each section.

The template's prompt lines ("Describe the learner…", "Start each outcome with a verb…") are guidance for you, never content: any of them still in the text when you Save is left off the course page, and a heading with nothing else under it is left off too. So you can fill one section today and the others later — learners only ever see what you wrote. An About that is still just the template counts as no About at all.

Course card

What your academy home shows for the course:

  • Card image — paste an https image URL (your CDN, your repo's raw URL — roughly 16:9 crops best). Leave it empty and, with the default cover card style, the course gets a generated cover in your brand color, made from the course itself: the first lines of its first lab (setup or starter code, labelled with the lab's language), or, for a course without a lab, its lesson titles in order. The same cover appears on the course page, so a row of cards lines up whether or not every course has an image. (With Compact cards — see Brand & appearance — the image is a small mark beside the title, and a book mark stands in when there is none.)
  • Level (Beginner / Intermediate / Advanced) and duration ("~2 h") — shown on the card and the course page next to the lesson count; leave either empty to not show it. You don't have to guess the duration: once three or more learners have finished the course, the field shows the median time real finishers took, computed from their lesson-by-lesson activity, and Use this adopts it. It's a suggestion, not an override: what you type wins, on the course page and the course card alike.
  • Tags — type a tag and press Enter; it becomes a chip you can remove with its ×. While typing, tags your other courses already use are suggested — pick from the list to keep spellings consistent. Lowercased, up to 8. Learners filter by tag in the sidebar of All courses and of catalog pages, and once two or more courses share a tag the academy home grows a chip for it (unless its group is hidden). Admin → Course tags sets the name learners see for each tag and the sidebar group it sits under (Course tags & filters). Typing a level (beginner) or labs as a tag gets a nudge: those are built-in filters already.
  • Recommended next course — learners who finish see "Continue with …". A suggestion, never a gate: hard prerequisites block learners; a pointer doesn't. The field opens with a short suggested list (courses sharing this one's tags first), and typing searches every course by title or tag — built for academies with many courses. Rows are flagged when a pick wouldn't reach learners yet (draft, hidden, closed to new learners), and the suggestion is withheld while its target course is hidden or outside the learner's access.
  • Search & social preview (collapsed) — link previews and search already use your title, description, and card image; override them only when search should say something different.

Note

Link previews come free: sharing a course URL on Slack or LinkedIn uses the card image and short description automatically. Without a card image, the preview is a generated banner in your academy's colors: the course title and its facts (lessons, labs, level, duration).

Access

Who sees the course:

  • Visibility — three states:
    • Listed — shown on the academy home, in catalogs, and in search.
    • Unlisted — still published, but reachable only by direct link. For partner betas, early access, and retiring a course without breaking links.
    • Hidden — fully withdrawn: listed nowhere, and the direct link returns a 404 for everyone but staff. For pulling a published course out of circulation without unpublishing it — learner progress and issued certificates stay intact, and switching back restores everything, including any account restriction you had configured.
  • Featured on the academy home — the course's own card, shown large: at the top of the automatic home, or wherever the Featured course row sits on a customized one. One course per academy; featuring a course un-features the previous one. When a customized home has no Featured course row (or it's paused), a line under the checkbox says the featured course shows nowhere and links to Admin → Home — amber while this course is the featured one. (Home has the same control as a searchable picker — inside the Featured course row on a customized home — and course order lives on its Course order tab.)
  • Who can access — Everyone, or Only some accounts: every account of a type (Partners), every account carrying a tag (enterprise), named accounts, or any mix — an account matching any of them gets in (private onboarding, paid training, a partner track). It follows the accounts live: tag an account and its learners see the course at once. Learners outside get a 404; someone opening the link signed-out is asked to sign in with their work email, and account detection does the rest. For the accounts that may see it, the course appears on their home like any other.
  • Coming soon (draft courses) — tease a course on the academy home before it opens: its page shows your About pitch and a waitlist signup. The emails are yours (list + CSV in settings, still there after you publish — that's when you'll want them); Mastria never emails your learners for you. Publishing turns the tease off.
  • Open to new learners (published courses) — turn it off to retire a course: anyone who already started keeps full access, everyone else sees a friendly closed page pointing at the recommended next course. Links keep working; nothing 404s.
  • Catalogs and Learning paths — place the course in every catalog and path it belongs to in one Save; see Home & catalogs.

Note

A draft course stays invisible to learners regardless of these settings. A Coming-soon tease is the one deliberate exception.

Completion

Turn on Issue certificates and learners who finish every published lesson get a shareable, publicly verifiable certificate page — details in Certificates. Optionally set a Certificate title; empty uses the course title. Once certificates are on, a second toggle — Also require passing every lab check — upgrades the Certificate of completion to an Assessed certificate: reading isn't enough, every lab check has to pass cleanly, and the credential says so by name. It matters only on courses with labs; a course with the switch on but no lab yet issues a certificate of completion.

Actions, templates, and repo courses

Duplicate course, Save as template…, and Delete course live at the bottom of the Course page tab; the outline rail keeps only what you reach for while writing. Save as template… asks for the template's name first (a unique suggestion is filled in) and says what the copy carries; see Course templates for the whole story.

On a template, this page is titled Template settings and holds the Course page fields only — they are the defaults every course created from the template starts with, never anything learners see.

For repo-synced courses the content fields — title, description, course card — come from course.yaml and show read-only, while Access and Completion stay editable right here: who may see a course and whether it certifies are operational calls, not content. See Courses as code.