HTMlore

自托管 · 无数据库 · 无 AI

你的笔记,
就是 HTML 文件。

HTMlore 2.0 是一个 HTML 知识工作台。导入、筛选、阅读、编辑、安全分享——笔记始终是磁盘上的 HTML + YAML,不锁进数据库,不经过任何模型。

文件即真源

没有 SQL,没有向量库。正文是 HTML,元数据是 YAML sidecar。备份就是拷目录,迁移就是拷文件。

01

正文是 HTML

每篇笔记是一个独立 .html。用浏览器打开、用任何静态服务器托管、用编辑器改。它永远可读。

02

元数据是 YAML

标题、摘要、集合、标签、收藏、归档写在同名 .yml 里。纯文本,可 diff,可版本管理。

03

没有数据库

不跑 Postgres,不建索引。磁盘目录就是库。换机器、换容器,把 data/ 拷过去就完了。

一个工作台,管所有 HTML

导入、整理、阅读、编辑。界面只做这一件事,不做问答,不做生成。

筛选与排序

资料库视图、集合、标签(任一/全部)、只看收藏、六种排序。全部在浏览器里即时完成。

阅读与编辑

iframe 沙箱读原文;CodeMirror 改源码,或可视化改文字和样式。元数据随改随存。

归档与删除

归档锁定编辑、移出主视图;永久删除必须先归档。不会误删。

两种编辑器,都直接改文件

保存就是写盘,预览立刻刷新。没有发布按钮,没有同步延迟——你改的就是文件本身。

源码CodeMirror 源码编辑

面向结构和标记的完整控制。

  • 行号列号、自动换行、全屏模式
  • 未保存就关闭,会先确认
  • 适合清理标记、调整结构、批量修正

可视化可视化文件编辑

不懂 HTML 也能改。在预览里点选,直接改。

  • 点选文字或元素,改内容、颜色、背景
  • 字号、行高、字重、对齐,加粗 / 斜体 / 下划线
  • 撤销 / 重做;不支持的元素会明说

保存即生效

写盘后 iframe 立刻刷新。你看到的就是磁盘上的文件,没有中间状态。

保存前安全预检

每次保存先扫描;会影响安全分享的改动先提示,由你决定写不写。

写回核对

写完读回比对,不一致就报错。不会静默写坏一篇笔记。

安全分享,两种模式

每条链接一个 token,磁盘只存哈希。过期、撤销、原文归档后,对外就是 404。

safe消毒静态

去掉脚本、表单、iframe 和危险标签,只留可读内容。过不了扫描会自动生成一份消毒副本再分享。

适合:从第三方收藏的 HTML。来源不可控,消毒后再分享才放心。

  • 脚本 / 内联事件 / javascript: 一律剥离
  • 密钥形态文本拦截或脱敏
  • 默认模式,始终可用

interactive互动沙箱

按原文跑,iframe 只给 allow-scripts,不给 same-origin。过不了安全扫描就直接拒绝,不做副本。

适合:自己生成、内容可控的 HTML。知根知底,保留交互原样分享。

  • 保留交互,但关在沙箱里
  • 私网引用需二次确认
  • 可用环境变量整体关掉

一个容器,跑在你自己的机器上

独立 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 壳可离线回退。