Getting started

From nothing to a course running in your browser in about ten minutes. You need to install two standard tools, run one command, and open your AI assistant.

What you need

  • Node.js 24 or newer: the runtime Tessera uses behind the scenes. You install it once and don't think about it again.
  • pnpm: the package manager that downloads and manages Tessera for you.
  • An AI coding assistant: Claude Code, Codex, or your agent of choice. This is who does the building.

Install Node.js and pnpm

Open the section for your system:

macOS

Open Terminal (press ⌘ Space, type Terminal, hit Enter). First install nvm, a small tool that manages Node.js versions:

terminal
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.8/install.sh | bash

Now close Terminal and open it again. This is required before the next command will work. Then install Node.js and pnpm:

terminal
nvm install 24
npm install -g pnpm
Windows

Open PowerShell (Start menu, type PowerShell, hit Enter) and install Node.js:

powershell
winget install OpenJS.NodeJS.LTS

Now close PowerShell and open it again. This is required before the next command will work. Then install pnpm:

powershell
npm install -g pnpm
Linux

Open your terminal. First install nvm, a small tool that manages Node.js versions:

terminal
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.8/install.sh | bash

Now close your terminal and open it again. This is required before the next command will work. Then install Node.js and pnpm:

terminal
nvm install 24
npm install -g pnpm

Create your workspace

One command creates a workspace, a folder that will hold all your courses, seeded with a starter course. Replace my-courses with whatever you want the folder called.

terminal
pnpm create tessera@latest my-courses
cd my-courses
pnpm install
pnpm dev starter-course

What each step does

  1. pnpm create tessera@latest my-courses

    Creates a new workspace folder named my-courses on your computer, seeded with one starter course under courses/. It lands wherever your terminal currently is, usually your home folder. To put it elsewhere, run cd ~/Desktop (or similar) first.

  2. cd my-courses

    Moves your terminal's focus into the new workspace folder. Any commands after this apply to it. Use the folder name you picked in step 1.

  3. pnpm install

    Downloads Tessera's dependencies once for the whole workspace. Takes a minute the first time, but it's ready to go after that.

  4. pnpm dev starter-course

    Starts a live preview of the named course; every Tessera command names the course it works on. Open the URL it prints (usually http://localhost:5173) in your browser and you're looking at a working, LMS-ready course. The page refreshes itself every time a file changes.

Hand it to your assistant

Launch your AI assistant inside the workspace folder and describe what you want. Every workspace points the assistant to the authoring guide that ships inside Tessera, so it already knows Tessera's conventions; you don't have to explain anything about the tool.

Ask your assistant

"Replace the starter course content with a three-lesson course introducing our workplace safety policy. The written copy and quiz questions are in workplace-safety.docx in my Documents folder."

Keep the preview open in your browser while the assistant works; you'll see the course take shape as it writes. From here, Authoring with AI covers how to get the most out of the loop.

The commands you'll actually use

terminal
pnpm tessera new product-101       # add another course
pnpm tessera duplicate product-101 product-201   # copy one as a starting point
pnpm dev product-101               # preview a course by name
pnpm validate product-101          # check for problems without building
pnpm check product-101             # validation + full accessibility audit
pnpm export product-101            # package it for your LMS

Those are the commands you'll use most often. Everything else happens in conversation with your assistant. If ever you're not sure, ask your AI agent, they have the context on all available commands.

If something goes wrong

  • command not found: pnpm: pnpm isn't installed, or the terminal was opened before it was. Run npm install -g pnpm, then close your terminal and open it again.
  • A warning about an unsupported engine or Node.js version: your Node.js is older than 24. Run node --version to check, then repeat the install steps above for your system.
  • Port 5173 is in use, trying another one...: another preview is still running, so this one moved to the next free port. Open the URL it prints, or close the other preview first.
  • Permission errors during pnpm install: don't retry with sudo; it leaves files behind that break later installs. Ask your assistant to fix the folder's permissions instead.
  • A blank page in the browser: open the browser's developer console (F12, then the Console tab) and paste the error to your assistant.

Good to know

  • Updating Tessera is a plain dependency bump: run pnpm add tessera-learn@latest from the workspace root (tessera-learn is the framework package behind the tessera command) and every course gets the latest framework. Some updates change how courses are written, so read the changelog first, or ask your assistant to apply it for you. An update can also reset learners' saved progress; see Upload to the real LMS.
  • Want a complete workspace to learn from? The example Tessera Learn workspace on GitHub is the one the site's demo courses are built from.
Copied