功能概览
NaviHive 是一个功能丰富的网站导航管理系统,集成了现代化的 UI、强大的管理功能和企业级安全特性。本页面概览所有功能模块。
核心功能
分组管理
组织您的网站链接到不同分类。
- 创建分组:添加新的导航分类
- 编辑分组:修改分组名称和属性
- 删除分组:移除不需要的分类(级联删除所属站点)
- 拖拽排序:可视化调整分组显示顺序
- 折叠/展开:控制分组的显示状态
- 公开/私有:控制访客是否可见该分组(v1.1.0)
应用场景
- 开发工具
- 设计资源
- 学习网站
- 工作平台
- 娱乐休闲
站点管理
添加和管理您喜爱的网站链接。
- 添加站点:输入 URL 自动获取网站信息
- 编辑站点:修改名称、描述、备注等
- 删除站点:移除不需要的链接
- 拖拽排序:调整站点在分组内的顺序
- 图标管理:
- 自动获取网站 favicon
- 支持自定义图标 URL
- 支持 Data URL 格式
- 详细信息:
- 站点名称
- 站点链接
- 描述信息
- 备注说明
- 公开/私有:控制访客是否可见该站点(v1.1.0)
图标来源
系统优先从以下位置获取图标:
- 网站根目录的 favicon.ico
- HTML 中的 icon/apple-touch-icon 链接
- Google Favicon 服务(备用)
拖拽排序
直观的拖拽交互,轻松调整顺序。
- 分组排序:拖动调整分组的显示顺序
- 站点排序:拖动调整站点在分组内的顺序
- 实时预览:拖动过程中即时显示新位置
- 批量保存:一次性保存所有排序更改
- 取消操作:支持放弃更改,恢复原顺序
操作步骤:
- 点击 "编辑排序" 按钮
- 拖动卡片到目标位置
- 点击 "保存排序" 持久化更改
访客模式(v1.1.0)
允许未登录用户查看公开内容,同时保护私有信息。
核心特性
双模式切换:
- 访客模式:允许查看公开内容
- 完全认证模式:所有内容需要登录
细粒度控制:
- 分组级别:控制整个分类的可见性
- 站点级别:控制单个链接的可见性
性能优化:
- 数据库索引加速查询
- 仅传输必要数据
使用场景
公开导航站:
- 分享常用资源给团队或公众
- 保留管理功能需要登录
- 部分内容设为私有
混合使用:
- 公开内容:开发文档、学习资源
- 私有内容:工作平台、内部工具
完全私有:
- 设置
AUTH_REQUIRED_FOR_READ=true - 所有内容需要认证
主题与样式
个性化您的导航站外观。
内置主题
- 浅色主题:清爽明亮,适合白天使用
- 深色主题:护眼舒适,适合夜间使用
- 自动切换:可手动切换或跟随系统
自定义样式
自定义 CSS:
- 完整的 CSS 支持
- 最大 50KB 限制
- 自动安全过滤
- 实时预览效果
可定制元素:
- 背景颜色/渐变
- 卡片样式
- 字体大小/颜色
- 间距和布局
- 动画效果
示例样式:
css
/* 彩虹渐变背景 */
body {
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
}
/* 毛玻璃卡片 */
.MuiCard-root {
backdrop-filter: blur(10px);
background: rgba(255, 255, 255, 0.8);
}
/* 悬停动画 */
.site-card:hover {
transform: translateY(-4px);
box-shadow: 0 12px 24px rgba(0, 0, 0, 0.15);
}数据管理
灵活的数据导入导出功能。
数据导出
- JSON 格式:标准化的数据格式
- 完整导出:包含所有分组、站点和配置
- 版本标记:记录导出时的版本信息
- 时间戳:记录导出时间
导出内容:
json
{
"version": "1.1.0",
"exportDate": "2025-01-XX",
"groups": [...],
"sites": [...],
"configs": {...}
}数据导入
智能合并:
- 分组按名称匹配,存在则复用
- 站点按 URL 匹配,存在则更新
- 配置完全替换
格式验证:
- 结构验证
- 类型检查
- URL 格式验证
错误处理:
- 详细的错误提示
- 支持部分导入(跳过错误项)
导入提示
导入前建议先导出当前数据作为备份。导入操作会修改现有数据。
认证与安全
企业级的安全保护机制。
用户认证
JWT 令牌:
- Web Crypto API 签名(HMAC-SHA256)
- HttpOnly Cookie 存储(防 XSS)
- 可配置过期时间(7天/30天)
密码安全:
- bcrypt 哈希存储(10轮盐值)
- 永不存储明文密码
- 强密码策略建议
"记住我" 功能:
- 标准:7天有效期
- 记住我:30天有效期
安全防护
多层安全机制:
- SQL 注入防护:参数化查询
- XSS 防护:输出转义 + CSS 过滤
- SSRF 防护:URL 白名单
- 速率限制:5次/15分钟(登录)
- CORS 配置:来源白名单
- 输入验证:严格的数据验证
- 错误处理:不泄露敏感信息
- 类型安全:TypeScript 严格模式
安全认证:
- 14 个安全修复(v1.1.0)
- 覆盖 OWASP Top 10 风险
- 定期安全审计
配置管理
全局设置和系统配置。
站点信息
- 站点标题:浏览器标签页显示的标题
- 站点名称:页面顶部显示的名称
- Logo/图标:自定义站点图标
系统配置
认证设置:
- 启用/禁用认证
- 访客模式开关
- 用户凭证管理
数据库配置:
- D1 数据库绑定
- 连接参数
性能设置:
- 请求大小限制
- 缓存策略
环境变量
通过 wrangler.jsonc 配置:
jsonc
{
"vars": {
// 认证配置
"AUTH_ENABLED": "true",
"AUTH_REQUIRED_FOR_READ": "false",
"AUTH_USERNAME": "admin",
"AUTH_PASSWORD": "$2a$10$...",
"AUTH_SECRET": "your-secret-key"
}
}响应式设计
适配各种设备和屏幕尺寸。
桌面端
- 多列布局:充分利用宽屏空间
- 悬停效果:丰富的交互反馈
- 快捷键:(未来计划)
平板端
- 自适应列数:根据屏幕宽度调整
- 触摸优化:适配触摸操作
移动端
- 单列布局:优化小屏幕显示
- 触摸友好:按钮和链接适合手指点击
- 底部导航:(未来计划)
PWA 支持(未来计划)
- 离线访问
- 添加到主屏幕
- 推送通知
开发特性
面向开发者的便捷功能。
双 API 模式
Mock 模式(默认):
- 内存模拟数据
- 无需后端启动
- 快速开发和测试
真实 API 模式:
- 连接实际后端
- 完整功能测试
- 通过环境变量切换
热模块替换(HMR)
- 代码更改即时生效
- 保留应用状态
- 快速迭代开发
类型安全
- TypeScript:完整的类型定义
- 严格模式:捕获潜在错误
- 智能提示:优秀的开发体验
代码质量
- ESLint:代码规范检查
- Prettier:自动格式化
- Git Hooks:提交前检查
性能特性
高性能的用户体验。
边缘计算
- Cloudflare Workers:全球 200+ 边缘节点
- 低延迟:就近处理请求
- 高可用:自动故障转移
数据库优化
- 索引优化:在关键字段上创建索引
- 查询优化:仅查询必要数据
- 批量操作:减少数据库往返
前端优化
- 代码分割:按需加载
- 资源压缩:Gzip/Brotli 压缩
- CDN 缓存:静态资源加速
- 懒加载:延迟加载图片和组件
性能指标
- 首次内容绘制(FCP):< 1s
- 最大内容绘制(LCP):< 2.5s
- 累积布局偏移(CLS):< 0.1
- 首次输入延迟(FID):< 100ms
国际化(未来计划)
多语言支持。
- 中文(简体/繁体)
- 英语
- 日语
- 其他语言
可访问性(未来计划)
符合 WCAG 2.1 AA 标准。
- 键盘导航
- 屏幕阅读器支持
- 高对比度模式
- 语义化 HTML
功能对比表
| 功能 | 访客 | 管理员 |
|---|---|---|
| 查看公开分组和站点 | ✅ | ✅ |
| 查看私有分组和站点 | ❌ | ✅ |
| 使用深色/浅色主题 | ✅ | ✅ |
| 查看自定义样式 | ✅ | ✅ |
| 创建/编辑/删除分组 | ❌ | ✅ |
| 创建/编辑/删除站点 | ❌ | ✅ |
| 拖拽排序 | ❌ | ✅ |
| 修改全局配置 | ❌ | ✅ |
| 自定义 CSS | ❌ | ✅ |
| 导出数据 | ❌ | ✅ |
| 导入数据 | ❌ | ✅ |
即将推出
我们正在开发更多功能:
- 搜索功能:快速查找站点
- 标签系统:为站点添加标签
- 收藏夹:标记常用站点
- 统计分析:访问统计和热门站点
- 浏览器扩展:快速添加当前网页
- 书签导入:从浏览器导入书签
- 多用户支持:团队协作功能
- API 文档:完整的 API 参考
- 移动应用:iOS 和 Android 客户端
关注 GitHub 仓库 获取最新进展!
功能请求
如果您有功能建议,欢迎:
- 在 GitHub 提交 Feature Request
- 在 Discussions 中讨论
- 贡献代码实现功能
我们重视每一个反馈!