无头架构
逻辑与视觉彻底解耦:core 只算状态,主题只管渲染。同一套编辑器代码,换一个 CSS 就是另一种风格。
扩展目录自包含、可整体裁剪;项目特定能力一律注入,不绑架你的工程。
逻辑与视觉彻底解耦:core 只算状态,主题只管渲染。同一套编辑器代码,换一个 CSS 就是另一种风格。
内置 default(shadcn 标准)与 sketch(手绘)两种皮肤,消费方复制一个 CSS 覆盖变量即可自定义。
上传、附件、KaTeX 等项目特定能力全部通过 EditorDeps 注入,内核零外部服务依赖,天然可测试。
直接粘贴 Markdown,或输入 #、- 、1. 即时转为对应节点,写作体验顺滑。
输入 / 唤起可搜索的分组面板,21 种内容节点开箱即用,也可按需裁剪扩展。
表格、数学公式、分栏、折叠块、目录、附件、代码块高亮……覆盖常见编辑场景。
从空项目到可用的富文本编辑器,只需要三步。
安装聚合包与主题,一行命令搞定。
pnpm add @tipkit/editor @tipkit/extensions @tipkit/ui @tipkit/components @tipkit/themes一行组件,得到完整编辑器:工具栏、斜杠菜单、浮层、块手柄。
import { TipKitEditor } from "@tipkit/editor";
import { createBasicExtensions, createAdvancedExtensions } from "@tipkit/extensions";
import "@tipkit/themes/default.css";
export default function App() {
return <TipKitEditor extensions={[...createBasicExtensions(), ...createAdvancedExtensions()]} />;
}主题 = 换一个 CSS。甚至可以在运行时切换,无需重载编辑器。
// 手绘风格,其余代码一行不改
import "@tipkit/themes/sketch.css";
<div className="tk-theme-sketch">
<TipKitEditor extensions={[...createBasicExtensions(), ...createAdvancedExtensions()]} />
</div>