开源 · 可私有化部署

让排版不再是
灵感的拦路虎

面向微信公众号的可视化编辑器。25 种内容区块109 个组件50 个 SVG 交互组件17 套文档模板—— 导出时自动做微信平台合规校验,素材与文档全部留在你自己的机器上。

162 MB 单文件压缩包,内置运行时,无需安装 Node.js · 当前开发版本 1.4.0

25种内容区块
109个组件 · 12 类
50个 SVG 交互组件
17套文档模板
0行 JavaScript(交互层)

为公众号排版而生的完整工具链

不是又一个富文本编辑器——从区块、组件到交互与导出,每一层都针对微信平台的实际约束设计。

25

25 种内容区块

段落、标题、引用、列表、图片画廊、代码、表格、卡片、时间轴、步骤、手风琴、按钮、SVG、Lottie、音视频、二维码、交互、HTML、分栏、微信生态、元素框……覆盖公众号常见排版形态。

109

109 个组件 · 12 类

标题 / 正文 / 卡片 / 列表 / 表格 / 引用 / 分割线 / 引导 / 交互 / 元素框 / 微信生态 / 组合,点选即插入,组件源码全部开放可读。

50

50 个 SVG 交互组件

滑块、刮刮卡、长按、翻牌、轮播、进度、跑马灯、点赞、评分、倒计时、烟花、飘雪……全部由 SVG SMIL 动画驱动,零 JavaScript,靠 begin="touchstart; click" 触发。

17

17 套文档模板

开箱即用的排版骨架,覆盖教程、资讯、活动、知识分享等常见场景,新建即带完整结构,不用从空白页开始堆。

导出即微信合规

自动剥离 positionidanimation:hover、伪元素与全部 JS,SVG 动画属性按微信白名单校验,粘贴进公众号后台即可用。

数据全在本地

本地 SQLite 存储文档与素材,内置文件管理器统一管文档与图片:去重、回收站、批量导入导出、反向引用。可完全离线运行,也可自行私有化部署。

交互不是截图,是真能点

微信公众号不允许执行 JavaScript,但允许 SVG 的 SMIL 动画。 InkForge 把交互做进 SVG:用 <animate> / <set> / <animateTransform> 描述状态变化,靠触摸与点击触发。

  • 点击 / 触摸双写触发,移动端稳定
  • fill="freeze" 保持终态,restart="never" 防止误触重置
  • 世界层 / 遭遇层 / 触发层编组,深层触发器不再被遮挡
  • 导出时逐条核对微信属性白名单

右侧是一个真实的 SMIL 交互——点一下试试。它没有任何 JavaScript。

点一下这块区域 已触发 ✓
<circle r="10" fill="none" stroke="#2C6BED">
  <animate attributeName="r"
    begin="ripple.click" dur="0.7s"
    from="10" to="130" fill="freeze"/>
</circle>

微信平台的坑,我们替你踩过了

公众号编辑器对 HTML 有严格限制。InkForge 在导出阶段逐条处理,而不是让你粘贴后反复试错。

完全不可用

position(absolute / fixed / relative 整行删除)、id 属性(含 SVG 内部)、animation / transition / @keyframes / @media:hover / :active / 伪元素、全部 JavaScript。

SVG 动画属性白名单

只能动 xywidthheightcxcyopacitydpointsstroke-widthstroke-dashoffsetfill 等;<set>visibilityanimateTransformtranslate / scale / rotate / skew

结构依赖

不使用 id / class / defs / embed,不用 hrefurl(#id) 做结构依赖,样式一律内联 style=""

那些小怪癖

连续空格会被合并(改用不换行空格);input 会被过滤(任务列表用 ☑ / ☐);SVG 必须显式写 width / height,否则 iOS 上不显示。

两种方式,一分钟跑起来

普通用户

便携包,开箱即用

  1. 下载 inkforge-1.3.0.zip(162 MB,内置运行时)
  2. 解压到任意目录
  3. Windows 双击 scripts/inkforge.bat;macOS / Linux 执行 ./scripts/inkforge.sh
  4. 浏览器打开 http://localhost:5173
开发者

从源码启动

bash
git clone https://github.com/Yichenlemon/inkforge.git
cd inkforge
npm install
npm run dev

前端 :5173,后端 API :5177。需要 Node.js 18+。

技术栈

前后端一体,单进程即可运行,无需外部数据库或云服务。

ViteReact 18TypeScript Expresstsxbetter-sqlite3 Zustanddnd-kitTiptap Tailwind CSSsharpShiki

现在就把排版这件事,交给工具

开源、可私有化、数据不出本机。下载即用,或直接看源码。