文件即真源
没有 SQL,没有向量库。正文是 HTML,元数据是 YAML sidecar。备份就是拷目录,迁移就是拷文件。
01
正文是 HTML
每篇笔记是一个独立 .html。用浏览器打开、用任何静态服务器托管、用编辑器改。它永远可读。
02
元数据是 YAML
标题、摘要、集合、标签、收藏、归档写在同名 .yml 里。纯文本,可 diff,可版本管理。
03
没有数据库
不跑 Postgres,不建索引。磁盘目录就是库。换机器、换容器,把 data/ 拷过去就完了。
一个工作台,管所有 HTML
导入、整理、阅读、编辑。界面只做这一件事,不做问答,不做生成。
筛选与排序
资料库视图、集合、标签(任一/全部)、只看收藏、六种排序。全部在浏览器里即时完成。
阅读与编辑
iframe 沙箱读原文;CodeMirror 改源码,或可视化改文字和样式。元数据随改随存。
归档与删除
归档锁定编辑、移出主视图;永久删除必须先归档。不会误删。
两种编辑器,都直接改文件
保存就是写盘,预览立刻刷新。没有发布按钮,没有同步延迟——你改的就是文件本身。
源码CodeMirror 源码编辑
面向结构和标记的完整控制。
- 行号列号、自动换行、全屏模式
- 未保存就关闭,会先确认
- 适合清理标记、调整结构、批量修正
可视化可视化文件编辑
不懂 HTML 也能改。在预览里点选,直接改。
- 点选文字或元素,改内容、颜色、背景
- 字号、行高、字重、对齐,加粗 / 斜体 / 下划线
- 撤销 / 重做;不支持的元素会明说
保存即生效
写盘后 iframe 立刻刷新。你看到的就是磁盘上的文件,没有中间状态。
保存前安全预检
每次保存先扫描;会影响安全分享的改动先提示,由你决定写不写。
写回核对
写完读回比对,不一致就报错。不会静默写坏一篇笔记。
一个容器,跑在你自己的机器上
独立 Docker 服务,默认端口 3000。和冻结的 1.x 并行,不替换、不共用数据目录。
# 2.0 独立服务
git clone https://github.com/JMoCoder/html-lore.git
cd html-lore && cp .env.example .env
docker compose up -d --build
# 从 1.x 拷文件库(不是 dump)
npm run migrate:1x -- /srv/v1/data ./data
默认无登录不设密钥就没有登录页。公网用 Cloudflare Access / Caddy 反代鉴权。
独立部署compose 项目 html-lore-v2,端口 3000。1.x 冻结在 legacy / v1.2.5,继续跑 8080。
文件迁移拷 content/ 和 meta/,跳过 AI 密钥和向量索引。未过期分享链接继续有效。
中英日界面中 / 英 / 日,亮暗主题。PWA 壳可离线回退。