@lessonkit/cli
v1.7.3
Published
LessonKit CLI — init, dev, build, and package learning experiences.
Downloads
4,593
Maintainers
Readme
@lessonkit/cli
Scaffold, develop, build, and package LessonKit courses.
Install
npm install -g @lessonkit/cli
# or one-shot (recommended for new courses):
npx @lessonkit/cli init my-courseNode.js: 20.19+ recommended for init (Vite 8 scaffold). 18+ minimum for dev, build, and package.
Commands
lessonkit init my-course # scaffold Vite + React project (runs npm install)
lessonkit dev # Vite dev server
lessonkit build # production build → dist/
lessonkit package --target scorm12 # LMS artifactInit flags
| Flag | Purpose |
| --- | --- |
| --here | Scaffold in the current directory |
| --force | With --here: scaffold in a non-empty directory; conflicting template files (e.g. .gitignore, README.md) are backed up to .lessonkit-init-backup/ before overwrite. Non-conflicting files are kept. |
| --skip-install | Skip npm install after copying the template |
Package targets
| Target | Output |
| --- | --- |
| react-vite | Vite build only |
| scorm12, scorm2004 | SCORM package |
| standalone | Self-contained web bundle |
| xapi, cmi5 | xAPI / cmi5 packages |
Every project includes a root lessonkit.json manifest (schemaVersion: 1).
Subprocess timeout defaults to 30 minutes (LESSONKIT_CMD_TIMEOUT_MS).
Common issues
| Symptom | Fix |
| --- | --- |
| lessonkit: command not found | Use npx @lessonkit/cli or npm run dev in a scaffolded project |
| init fails on Node version | Use Node 20.19+ for Vite 8 scaffold |
| SCORM zip not at project root | Default path: .lxpack/course/.lxpack/out/course-scorm12.zip — trust CLI stdout |
| ID parity errors on package | Align courseId, lessonId, checkId between React and lessonkit.json |
Docs
5-minute guide · CLI reference · LMS Go-Live · Packaging guide · Published template (monorepo source: templates/vite-react)
License
Apache-2.0
