# @creaditor/course-starterkit 中文文档

规范地址：https://npmcn.com/package/%40creaditor/course-starterkit/

版本：0\.14\.4
npm 元数据更新时间：2026-11-09T16:13:38.015Z
中文译文更新时间：2026-11-10T23:44:42.777Z
软件包许可：ISC

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40creaditor/course-starterkit
原文对照：https://npmcn.com/package/%40creaditor/course-starterkit/?lang=original
项目主页：https://github.com/Creaditor/frontend#readme
源码仓库：https://github.com/Creaditor/frontend

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：175 kB，31 个文件
- 模块格式：ES Module
- TypeScript 类型：未声明
- 运行依赖：1 个
- 首次发布：2026-08-14T17:06:38.102Z
- 最新版本发布：2026-11-09T16:13:37.829Z
- 近 30 天下载量：2638（2026-10-11 至 2026-11-09，npm 官方下载统计）
- 已发布版本数：25（近 12 个月 25 个）

## 中文简介

Creaditor Course 构建器 - 一个课程通道: 单元的侧边栏和课目, 每个课目与 Creaditor 编辑

## 安装

```sh
npm install @creaditor/course-starterkit
```

也可以使用：`pnpm add @creaditor/course-starterkit`、`yarn add @creaditor/course-starterkit`、`bun add @creaditor/course-starterkit`

## README

# @creaditor/ course- starterkit (英语)

A 类 **课程频道** 用于读取器 — 端点为 `@creaditor/web-starterkit` 财务报告和审定财务报表 `@creaditor/newsletter-starterkit`。当编辑单个页面时,此页面将构建一个 **课程**: 单位(拖拉机)和经验教训的侧边栏,每个课为一 读取器页面.

## 建筑

三层,干净地分离:

```
@creaditor/course-core        headless · offline · framework-agnostic
  Course → Section → Lesson{ status, access, drip, doc }
  CRUD + events (lesson:created, content:changed, settings:changed, …) + guards

CourseBuilder (this package)  binds course-core ⇄ one Creaditor instance
  openLesson()  → setContent()   editor onSave → setLessonContent()

UI shell (this package)       <course-sidebar> · <lesson-settings> · <course-settings>
  "מבנה הקורס" (manage)  ⇄  "עריכת שיעור" (the Creaditor takes the screen)
```

-   **课程核心是开发者表面.** 它从不触及DOM; 每 突变释放出持续/跟踪的事件,加 `before*` 守卫的钩子 生产可以执行"锁住"在核心,而不仅仅是UI.
-   A 类 **课是网页**,因此,经验教训会与现有网络编辑 元素目录( e)`channel: "web"`——不需要新的元素类型.
-   **一个编辑实例,每个课的内容互换.** 每一课的一页是 `commands.toJSON()` 以课程核心进行简介,保持整个课程 连锁和离线.

## 两种写作模式

| 模式 | 拥有屏幕 | 对于 |
| --- | --- | --- |
| **מבנה** | 课程铬(曲线+课程设置) | 安排单位,设置为 @ @ @ @ @ @\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ |
| **עריכת** | 阅读器 + 其自身的设计面板 | 编辑课程页面内容 |

课程设置 _管理_ 模式; 页面设计活在 Creaditor 中——所以 两个检查员小组从不争夺同样的优势.

## 课程类型

增加一课打开一个三行菜单—— **שיעור** (收声) **בוחן** (安静) **סרטון** (video)——选择被存储为 `lesson.type`时 `save-course-structure`,在重新装入后幸存.

**`lesson` 财务报告和审定财务报表 `quiz` 有真正的编辑; `video` 还没有.** 拾取视频 设置类型并在侧边栏显示其图标,但打开普通页面 编辑。 答题课在真正的答题作者表面开始——见 [测试元素](https://npmcn.com/package/%40creaditor/course-starterkit/#readme-the-quiz-element-and-the-shape-it-stores) 见下文.

要求数 `@creaditor/course-core@^0.2.0`打开 `^0.1.0` 发动机下降 `type` 静静地,没有任何错误.

## 测试元素及其储存的形状

此软件包拥有测试元素, 因此存储的形状是这里 定义。 一个测验就是一个 **课程页面上的读取器元素** - 不是一个新的 文档类型——从课程侧通过编辑器注册 `plugins` 列表中选择一个选项。 看起来 **仅在课程构建器中**; 网络和 通讯编辑们从来没有看到它.

一个问题类型:单答多选择. 元素节点是 `type: "quiz"`它拥有的一切都生活在 `props.questions`数字 :

```json
{
  "questions": [
    {
      "id": "q_48c9574f",
      "text": "What is the capital of France?",
      "options": [
        { "id": "o_959bda38", "text": "Lyon", "correct": false },
        { "id": "o_178416ec", "text": "Paris", "correct": true },
        { "id": "o_855cfa0f", "text": "Marseille", "correct": false }
      ]
    }
  ]
}
```

一个很好的问题 **2至6个选项** 与 **一个** 标记 `correct`,且关于问题和每个选项的非空白文本(仅空白) 输入为 `""`) (中文(简体) ). 这些协议是在授权过渡时执行的,而不是在 数据元素没有写入——一个到达其外部的问题使得 它现在和现在的标记都不完整,因为开设一门课绝不能改写它 存储内容.

给学习者们讲两句话:

-   **`text` 是任意的创建者授权的内容.** 跟你一样逃脱 任何其他丰富的字段。 元素是逐字存储的,永远不会 把它变成表面的标记 越过边界它是你的.
-   **这个 `correct` 旗帜在有效载荷中.** 运送整个经验教训文件 给一个学习者的浏览器,然后把答案键分级.

**只写作.** 正确答案被存储,因为它是作者内容; 这个元素评价什么也没有——没有得分,没有学生回答,没有年级本.

`@creaditor/cdtr-course-builder`'README'是集成化的复制:它 文档 `save-lesson-data` 带它的东西.

## 现状模型(与市场搭配)

-   **生命周期** —— 说 `draft → published`
-   **访问** —— 说 `free` (检讨) `locked` (需要入学人数)

独立轴:可以是一个教训 _已出版_ 不过 _锁定_。 。 。 .

## 状态

-   ✅ `@creaditor/course-core` 发动机+测试(`npm test`(中文(简体) )
-   ✅ `CourseBuilder` – 编辑器绑定主机( 此文件)
-   UI贝壳—— `<course-sidebar>` + 键 `<lesson-settings>` + 键 `<course-settings>`,香草网络组件
-   \* 所记录的课程类型(`lesson` 编号 : `quiz` 编号 : `video`(中文(简体) )
-   QQ 问讯元素——单答多选项,仅作者
-   QQ 视频课编辑器 + 补全显示设置
-   \* 生产成品/安保部门改革,执行锁定内容

## 常见问题

### @creaditor/course-starterkit 是什么？

Creaditor Course 构建器 - 一个课程通道: 单元的侧边栏和课目, 每个课目与 Creaditor 编辑

### 如何安装 @creaditor/course-starterkit？

在项目目录运行 npm install @creaditor/course-starterkit，或使用 pnpm add / yarn add / bun add。

### @creaditor/course-starterkit 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/creaditor\_\_course-starterkit 是否存在。

### @creaditor/course-starterkit 支持 ESM 还是 CommonJS？

以 ES Module 形式发布，推荐使用 import 引入。在 CommonJS 项目中，Node\.js 20\.19\+ / 22\.12\+ 可以直接 require\(\) 不含顶层 await 的 ES Module，更早的版本需要改用动态 import\(\)。

### @creaditor/course-starterkit 可以商用吗？

@creaditor/course-starterkit 使用 ISC 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @creaditor/course-starterkit 的下载量有多少？

根据 npm 官方下载统计，@creaditor/course-starterkit 在 2026/10/11 – 2026/11/09 这 30 天内被下载 2,638 次，日均约 88 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @creaditor/course-starterkit 还在维护吗？

最新版本 0\.14\.4 发布于 2026/11/10（1 天前）；至今共发布 25 个版本，其中过去 12 个月发布了 25 个；首次发布于 2026/08/15。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

