项目地址:wangwangit/nav: 一个优雅的书签收藏与分享平台,基于Cloudflare Workers构建
项目介绍
一个优雅、快速、易于部署的书签(网址)收藏与分享平台,完全基于 Cloudflare 全家桶构建。
功能特性
- 📱 响应式设计:完美适配桌面、平板和手机等各种设备。
- 🎨 主题美观:界面简洁优雅,支持自定义主色调。
- 🔍 快速搜索:内置站内模糊搜索,迅速定位所需网站。
- 📂 分类清晰:通过分类组织书签,浏览直观高效。
- 🔒 安全后台:基于 KV 的管理员认证,提供完整的书签增删改查后台。
- 📝 用户提交:支持访客提交书签,经管理员审核后显示。
- ⚡ 性能卓越:利用 Cloudflare 边缘缓存,实现秒级加载,并极大节省 D1 数据库读取成本。
- 📤 数据管理:支持书签数据的导入与导出,格式兼容,方便迁移。
网页截图
安装部署
创建 D1 数据库
- 在 Cloudflare 控制台,进入
Workers & Pages
->D1
。 - 点击
创建数据库
,数据库名称输入book
,然后创建。

进入数据库的控制台
,执行下方的 SQL 语句来快速创建所需的表结构。(注意移除中文注释)

-- 创建已发布网站表 CREATE TABLE sites ( id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL, url TEXT NOT NULL, logo TEXT, "desc" TEXT, catelog TEXT NOT NULL, status TEXT, sort_order INTEGER NOT NULL DEFAULT 9999, create_time DATETIME DEFAULT CURRENT_TIMESTAMP, update_time DATETIME DEFAULT CURRENT_TIMESTAMP ); -- 创建待审核网站表 CREATE TABLE pending_sites ( id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL, url TEXT NOT NULL, logo TEXT, "desc" TEXT, catelog TEXT NOT NULL, status TEXT, create_time DATETIME DEFAULT CURRENT_TIMESTAMP );
创建 KV 存储
- 在 Cloudflare 控制台,进入
Workers & Pages
->KV
。 - 点击
创建命名空间
,名称输入NAV_AUTH
。

3.创建后,为此 KV 添加两个条目,用于设置后台登录的 用户名 和 密码。
- admin_username: 你的管理员用户名(例如
admin
) - admin_password: 你的管理员密码

创建并部署 Worker
- 回到
Workers & Pages
,点击创建应用程序
->创建 Worker
。 - 为你的 Worker 指定一个名称(例如
my-nav
),然后点击部署
。

3.部署后,点击 编辑代码
。将本项目 worker1.js
文件中的所有代码复制并粘贴到编辑器中,替换掉原有内容。点击 部署
保存代码。

绑定服务
- 进入你刚刚创建的 Worker 的
设置
->变量
。 - 在 D1 数据库绑定 中,点击
添加绑定
:- 变量名称:
NAV_DB
- D1 数据库: 选择你创建的
book
- 变量名称:
- 在 KV 命名空间绑定 中,点击
添加绑定
:- 变量名称:
NAV_AUTH
- KV 命名空间: 选择你创建的
NAV_AUTH
- 变量名称:

开始使用
- 访问你的 Worker 域名(例如
my-nav.your-subdomain.workers.dev
)。首次访问会提示没有数据。 - 访问
你的域名/admin
进入后台,使用你在 步骤 2 中设置的用户名和密码登录。 - 在后台添加第一个书签后,首页即可正常显示。
- 建议绑定一个自定义域名,cf提供的域名在国内不可访问。

发布者:木木,转载请注明出处:https://blog.mmcoo.de/8282.html