令人焦头烂额的 AI 编辑器

2024-12-30

今天的工作任务毫无悬念就是调研那个 AI 编辑器,首先都把目光放在了 TipTap,有两款 AI 写作的竟品都在使用这款编辑器,它的迭代比较快,对 React 也有较好的原生支持,工具栏等组件都可以自定义,核心框架完全开源可商用。

但是想要使用它的拖拽排序功能以及原生的数学公式支持,是需要购买 Pro 授权的,虽然他的官网说是免费版也可以使用 Pro 插件,但是我注册账号之后通过私有 NPM 源请求安装它的私有包失败了,在同事的确认下,最终得到一条冷冰冰的提示,就是请升级您的授权!这不妥妥的骗人吗!

下午三四点又拉了一个会讨论,我们把目标放在了第二个选择 EditorJS 这款编辑器,也是维护良好的一款开源项目,交互形态类似,它所有功能完全免费,仅支持捐助。不过在实际创建 NextJS 的 Demo 后,发现它扩展插件使用的 Class,并且基本上都是原生技术。而我也并不知道如何完美使用 TypeScript 进行编码上的提示,如果想要认真打磨,估计还需要花费不少心思。短短一个星期,我不认为用它可以搞定...

于是目光又回到了 TipTap 上,但这款编辑器呢还是需要想办法将 Markdown 转换成 HTML 才可以使用,它本身也有支持 Markdown 导入的,但依旧也是付费,于是这块就只能自己做了。并且 UI 方面依旧是手搓,我还是不见得一周就能完整上线这个东西。

总的来说,这两款编辑器各有各的坑。下面我直接把它们的优缺点都列出来吧,无论最终什么时候做完,肯定是要照样做的,目前的计划还是继续使用 TipTap。

  • TipTap

    • 内置完整的 React / Vue 集成方案,无需额外处理可直接使用
    • 核心框架免费开源,部分扩展功能需要付费
    • 无内置 UI 样式,需要自行编写或参考 Demo 代码修改
    • 支持自行扩展语法,编写扩展渲染 React 组件
    • 默认仅支持 HTML 形式导入(你需要自行处理其他的兼容和转换
    • 拖拽、AI 工具等为收费功能
    • AI 工具为内部集成,甚至你并不需要自己接入后端
  • EditorJS

    • 默认不支持渲染 React / Vue 组件,需要自行封装和扩展
    • 完全免费开源,无功能限制,无隐性付费项,维护情况良好
    • 内置 UI 样式,可直接扩展功能而不需要自己编写
    • 编写插件的形式偏原生,扩展功能没良好的 TypeScript 支持(也可能是我不会用)
    • 默认使用 JSON 形式导入,也需要自行转换格式
    • 无 AI 工具等集成,均需要手动编写
多云 一般
概览页 时间轴
奇趣音乐盒 技术源于 Kico Player
Emmm,这里是歌词君