InkForge v1.1.0
InkForge v1.1.0 版本介绍
一句话:InkForge 是一个面向微信公众号的全栈可视化编辑器,把「写、排、存、导、发」整成一条流水线——Markdown 互转、浮动图文混排、微信生态组件、精细字号控制、数据库持久化与历史、商业级模板、一键部署,开箱即用。
基本信息
| 项目 | 内容 |
|---|---|
| 版本号 | 1.0.0 |
| 发布日期 | 2026-09-03 |
| 许可协议 | MIT |
| 运行环境 | Node.js ≥ 18(推荐 22)、npm ≥ 9 |
| 默认端口 | API / 生产前端 5177;开发前端 5173 |
| 数据库 | better-sqlite3(本地文件,无需额外服务) |
这个版本能做什么
1. 可视化块编辑器
- 20+ 种内容块:标题、段落、引用、列表、图片、图集、代码、表格、分割线、卡片、标注、时间线、步骤、折叠、按钮、SVG、Lottie、视频、音频、二维码、互动、自定义 HTML、多列、微信生态。
- 基于 dnd-kit 的区块拖拽排序。
2. 浮动图文混排(图片不再是独占一行)
- 图片布局三态:通栏 / 左浮动 / 右浮动,与正文自然环绕,画布与导出一致。
- 图片支持缩放(百分比宽度)、画布内拖动、旋转、水平翻转,均不污染历史记录(拖拽过程中静默更新,松手记一步)。
3. 字号与排版精细控制
- 每个块独立设置字号、行高、字间距、对齐、缩进、颜色、背景、圆角、阴影、边框。
- 已修复:早期版本块级字号会被主题默认值静默覆盖(CSS 同属性取最后声明)。现块级样式优先于主题默认,引用 / 列表 / 标题 / 段落的字号均正确生效。
4. Markdown 模式(双向、可往返)
- 导入:粘贴 Markdown → 实时预览 → 追加到文末 / 转为区块(替换全文)。标题、列表、引用、代码、表格、图片都会变成真实可编辑 Block。
- 导出:当前文档导出为 Markdown,可复制或下载
.md。 - 已修复导出缺陷:分隔线不再丢失;表格正确转为 GFM 表格(不再泄漏原始
<table>HTML)。
5. 微信生态组件(真实可用)
- 三类:小程序 / 视频号 / 微信小店。
- 后端可抓取已发布文章中的
<mp-miniprogram>元数据回填;导出生成符合微信规范的组件代码注释,回公众号后台即可恢复原生渲染。 - 纯 SMIL + CSS、零 JS,可过微信白名单清洗。
6. 文档持久化与历史(非一次性草稿)
- better-sqlite3 本地库,自动保存。
- 历史记录面板:查看每步快照、跳转到任意历史状态(撤销 / 重做 / 定点回滚)。
- 支持手动快照、复制副本、删除。
7. 壹伴样式库(16,000+ 微信兼容样式,开箱即用)
- 内置从壹伴样式中心抓取的 16,245 条完整样式(40MB 数据随包附带,离线可用),覆盖 81 个分类:底色 / 二维码 / 边框 / 双图 / 单图 / 线框 / 顶部关注 / 在看 / 编号 / 饰物 / 动态 / 引用 / 轴线总结等。
- 左侧面板「样式库」标签页:关键词搜索 + 分类筛选 + 分页浏览,每个样式带实时缩略预览。
- 点击即插入为原生 HTML 块,内联样式原样保留,直接通过微信合规导出链路。
8. 产品级首页与模板库
- 首页:Hero Banner、真实数据卡片、最近文档封面、模板库(分类筛选)。
- 9 套可直接商用的文档级模板(资讯 / 情感 / 干货 / 活动 / 招聘 / 测评 / 教程 / 长文 / 空白),新建即带封面、章节、引导关注等结构。
9. 菜单栏与命令面板
- 文件 / 编辑 / 插入 / 视图 / 帮助 五类菜单;
⌘K/Ctrl+K命令面板。
10. 一键部署脚本
scripts/inkforge.sh:数字菜单执行 检测环境 / 一键部署 / 启动 / 结束 / 卸载 / 清理,兼容 Git Bash / WSL / macOS / Linux。
11. 微信公众平台合规
wechatify清洗管线:剥离<script>/ JS /onclick/ CSSanimation/transition/@keyframes/id/position,保留 SMIL、<details>、:active/:checked。
12. 本轮重大增强(编辑器体验全面升级)
自首个 1.0.0 发布后,围绕「悬浮工具栏 / 全局设置 / 图片编辑 / 大纲 / 右侧功能区 / 顶栏 / 状态栏 / 图源」做了一轮系统性补齐,以下能力均已随最新提交合入
main。
- 悬浮工具栏大扩容:新增独立字号 / 段落样式 / 对齐控制;「插入」支持四类资源——区块 / 组件 / 样式库 / 素材,一键插入到选中块之后,不再只能嵌套当前块。
- 全局设置面板重构:界面主题(浅色
light/ 纸张paper/ 暗色dark,CSS 变量驱动)、强调色、默认作者、正文字体 / 字号 / 行高、自动保存、导出图片压缩与质量,全部持久化到本地。新建文档自动套用默认设置。 - 图片编辑器(全新):亮度 / 对比度 / 饱和度 / 色相 / 旋转 / 模糊 / 灰度 / 反相 / 智能抠图,服务端实时预览(
/api/assets/image/preview返回 dataURL,不落盘),确认后生成新素材并替换区块。右侧「图片」区块一键唤起。 - 大纲面板增强:支持拖拽排序 + 圆形编号样式 + 单块上移 / 下移 / 删除,长文结构一目了然。
- 右侧功能区增强:区块上移 / 下移 / 复制 / 删除快捷键;图片区块一键进入图片编辑器;「文章信息」页新增字数 / 图片数 / 区块数统计。
- 顶栏文件名重构:点击文件名即重命名(修复此前点击白屏);文章信息补全年份 + 作者,未署名时回退默认作者。
- 底部状态栏:实时显示字数 / 缩放比例 / 选中区块信息,并支持撤销 / 重做。
- 在线图源切换为国内免费源:告别不稳定外链;图标接入 IconPark 中文图标库,搜索即插。
- 壹伴帮助页能力落地:收藏样式 / 一键排版 / 深色预览 / 文章背景,从帮助页提取为可用功能。
- 修复:悬浮工具栏若干交互 bug;设置对话框输入异常;
newDoc默认设置未注入;在线源const重赋值导致运行时报错;文件名点击白屏等。
技术架构
前端 (Vite + React18 + TS) ──HTTP/JSON──▶ 后端 (Express + tsx)
区块视图 / 首页 / 菜单栏 文档 API · 编译 · 转换 · 微信清洗
Zustand 状态 better-sqlite3 持久化
▲ │
└──── 编译产物(HTML)回传,wechatify 清洗后用于公众号 ────┘
- 前端构建产物
dist/由 Express 在生产模式下直接托管(单端口 5177)。 - 开发模式:
npm run dev同时拉起 API(5177) 与 Vite(5173),Vite 代理/api。
安装与运行
# 1. 安装依赖
npm install # 或 npm ci
# 2A. 开发模式
npm run dev # 打开 http://localhost:5173
# 2B. 生产模式
npm run build # 生成 dist/
npm start # 打开 http://localhost:5177使用管理脚本(推荐)
./scripts/inkforge.sh # 数字菜单
./scripts/inkforge.sh deploy # 一键部署
./scripts/inkforge.sh start # 启动
./scripts/inkforge.sh stop # 结束版本发布包内容(releases/inkforge-1.0.0.zip · 便携版)
自包含、解压即跑,目标机器无需安装 Node / npm。
- ✅ 内置 Node.js 运行时
runtime/(Windows 版随包提供,约 180 MB) - ✅ 完整
node_modules(含 tsx / vite / better-sqlite3 等全部依赖与预编译原生模块) - ✅ 已构建
dist/前端产物 - ✅ 完整前端 / 后端源码 +
scripts/(含inkforge.sh与 Windowsinkforge.bat) - ✅
README.md/RELEASE_NOTES.md/LICENSE/VERSION
便携版运行方式
- 解压
inkforge-1.0.0.zip - Windows:双击
scripts/inkforge.bat;macOS / Linux / Git Bash:bash scripts/inkforge.sh - 菜单选 3) 启动服务,待出现
http://localhost:5177 - 浏览器打开 http://localhost:5177 即可使用
- 菜单 4) 结束服务 或关闭窗口停止
管理脚本会优先使用内置 runtime/node,仅在缺失时回退系统 Node。若需自行从源码运行,仍是 npm install && npm run build && npm start。
已知限制
- 微信互动效果需使用 SMIL(
<animate>/<animateTransform>/<set>),不支持 JS 驱动的复杂逻辑。 - 当前为单机本地存储,未做多用户 / 云端同步(见路线图)。
- 第三方素材(如 E2.COOL 案例图)可能带版权声明,请勿商业二次模板化。
升级说明
从源码运行无需额外迁移;数据库表结构由 server/db.ts 自动建表(SCHEMA_VERSION 演进时请备份 data/inkforge.db)。
v1.1.0 新增内容
在 1.0.0 基础上,本轮重点补齐编辑器体验与微信生态能力(全部经真实 compile→wechatify 管线校验,可正常发布):
- 图片编辑器:亮度 / 对比度 / 饱和度 / 色相 / 旋转 / 模糊 / 灰度 / 反相 / 智能抠图。服务端实时预览、确认后落新素材并替换区块;右侧图片区块一键唤起。
- 右侧功能区增强:区块 上移 / 下移 / 复制 / 删除;文章统计(字数 / 图片数 / 区块数)。
- 全局设置重构并持久化:主题(浅色 / 纸张 / 暗色,CSS 变量驱动)、强调色、默认作者、字体 / 字号 / 行高、自动保存、导出压缩与质量;新建文档自动套用。
- 大纲拖拽排序 + 编号样式。
- 顶栏文件名重命名 + 年份 / 作者(修复点击白屏);底部状态栏实时字数 / 缩放 / 撤销重做。
- 在线图源切换为国内免费源 + IconPark 图标。
- 交互组件扩容:新增 图片轮播 / 进度条 / 跑马灯 三种 SVG-SMIL 组件(无 JS、过微信白名单);全库交互组件经真实管线校验零非预期错误。
下载包
inkforge-1.1.0.zip为内置 Node 运行时的便携版,解压即跑。