Files.md静态托管指南:把Web应用发布到GitHub Pages等任意静态服务器
【免费下载链接】files.md🌱 Private, quiet space for thinking. Simple app for .md files.项目地址: https://gitcode.com/GitHub_Trending/fi/files.md
Files.md 是一个本地优先(local-first)的 Markdown 笔记 Web 应用(PWA),它的整个前端没有构建系统、没有打包步骤,入口就是 web/index.html 一个文件。这意味着:把web/目录原样拷贝到 GitHub Pages、Nginx、Caddy 或任何一台静态服务器上,就能得到一个完整的在线笔记应用。本文是一份面向新手的 Files.md 静态托管教程,全程只需要复制文件,不写一行后端代码。
为什么 Files.md 可以被静态托管
很多人以为带"同步"功能的笔记应用必须依赖后端,Files.md 把两者拆开得很干净:
| 部分 | 目录 | 运行方式 |
|---|---|---|
| 前端 Web 应用 | web/ | 纯静态文件,任意静态服务器可托管 |
| 同步 / 机器人服务端 | cmd/server/server.go | 单个 Go 二进制,可选 |
| 端到端测试 | tests/ | 开发用,与托管无关 |
静态托管时,你的笔记通过浏览器的 File System Access API 保存在本地文件夹里,数据不出设备,隐私性拉满。只有在需要"多设备同步"时,才需要额外启动那个单文件 Go 服务(server/sync/webserver.go)。
第一步:获取 Files.md 代码
git clone https://gitcode.com/GitHub_Trending/fi/files.md下载完成后,只需关注仓库根目录的web/文件夹——里面包含 app.js、files.js、hypermd.js 等全部前端资源。项目坚持"无构建系统"原则(见 README.md 中的前端指南),所以你不需要安装 Node.js,也不需要npm install。
第二步:发布到 GitHub Pages(3 步点选)
- 新建一个用于静态托管的仓库,把
web/目录内的全部文件上传到该仓库根目录; - 进入仓库的Settings → Pages,在 Source 中选择分支,并指定刚上传的目录;
- 等待一两分钟,访问
https://<你的用户名>.github.io/<仓库名>/即可打开应用。
💡 GitHub Pages 自带 HTTPS,非常适合个人知识库托管。首次打开后按浏览器地址栏的"安装"按钮,可以把 Files.md 作为 PWA 装到桌面/主屏幕。
第三步:部署到 Nginx、Caddy 等任意静态服务器
如果你有 VPS 或家里的服务器,Files.md 同样适用。以 Nginx 为例,核心配置只有三行:
server { listen 80; root /var/www/files.md/web; # 指向 web 目录即可 index index.html; }Caddy 用户则只需一行:site.address { root * /var/www/files.md/web; file_server }。
也可以直接运行官方 Docker 镜像(Dockerfile 已把web/打进镜像):
docker compose up # 等价于 make compose_up,见 [Makefile](https://link.gitcode.com/i/fcef843a833b3dba5ab5bb20fe9950bb)可选:给静态站点加上多设备同步
静态托管 = 数据存在各自设备。想跨设备同步时,在 compose.yaml 中把API_URL那一行取消注释,再提供一个持久的CERT_DIR(用于自动签发 HTTPS 证书),重启容器即可。完整的自建服务器流程(systemd、Telegram 机器人、数据迁移)写在官方文档 docs/your-own-server.md 中:
make init_server host=user@example.com salt=<随机字符串>—— 初始化目录与配置;make deploy_systemd host=<你的主机>—— 一键构建、上传并部署。
同步协议本身很轻量:按文件 mtime 比对、追加式日志处理重命名/删除,细节可参考 docs/sync-flow.md。
托管成功后的快速上手
- 打开应用后,先"打开本地文件夹"(选择任意存放
.md文件的目录),所有修改才会持久化; - 按
Cmd/Ctrl + Enter打开聊天框,像发消息一样丢笔记、任务、待办,再点"保存到文件"归档(结构约定见 web/AGENTS.md); - 偶尔按
Cmd/Ctrl + Shift + R强制刷新,拉取你更新后的前端代码。
静态托管常见问题 FAQ
哪些浏览器支持最好?Chromium 系(Chrome、Edge、Brave 等)对 File System Access API 支持最完善。
没有服务器能用吗?能。纯本地模式下,web/甚至可以直接双击index.html打开,数据完全留在设备里。
需要安装 Go 吗?托管静态应用不需要。只有启用同步服务器或 cmd/ 下的辅助脚本(如 backlink、shifttime)时才需要 Go。
如何更新版本?拉取仓库最新代码,把web/覆盖到服务器上即可,无需重新构建。
一句话总结:Files.md 的web/目录就是一个即拷即用的静态站点——今天就能发到 GitHub Pages,明天也能无缝迁到任何静态服务器,数据始终是你自己的.md文件。
【免费下载链接】files.md🌱 Private, quiet space for thinking. Simple app for .md files.项目地址: https://gitcode.com/GitHub_Trending/fi/files.md
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考