Об этом проекте

Tessera — это JavaScript-фреймворк для создания интерактивных электронных курсов, предназначенный для разработки с помощью ИИ. Он работает в любой LMS, поддерживающей SCORM 1.2, SCORM 2004, cmi5, xAPI или статический веб. Фреймворк построен на Svelte и Vite, где страницы представлены в виде файлов `.svelte`. Он разработан для использования с ИИ-ассистентами для программирования, такими как Claude Code или Codex, которые читают файл `AGENTS.md`, создаваемый в каждом проекте, для руководства созданием курса. Ключевые особенности включают: - **Структура рабочего пространства**: Один пакет может содержать несколько курсов в `courses/<name>/`, а также общую дизайн-систему `shared/`, импортируемую как `$shared`. Каждый курс экспортируется независимо. - **Контракт данных LMS**: Tessera обрабатывает отслеживание, завершение, оценку, навигацию и сохранение, автоматически сообщая результаты в LMS. - **Экспорт одной командой**: Создает курсы в форматах SCORM 1.2, SCORM 2004, cmi5, xAPI 1.0.3 или статические веб-пакеты из одного и того же исходного кода. - **Встроенные компоненты**: Включает `Callout`, `Image`, `MultipleChoice` и другие в качестве примеров, но не требует определенного вида или макета. - **API хуков**: `useQuestion`, `useQuiz`, `useNavigation`, `useProgress`, `useCompletion`, `usePersistence`, `useXAPI` для создания пользовательских компонентов. - **Проверка и доступность**: `pnpm validate` проверяет структуру, `pnpm a11y` запускает аудит axe-core, а `pnpm check` объединяет оба. Быстрый старт: `pnpm create tessera@latest my-courses`, затем `pnpm dev starter-course`. Требуется Node.js 24+ и pnpm. Фреймворк распространяется под лицензией MIT и приветствует вклад сообщества.