{"repo":"Y80/bmm","free":true,"listed":false,"github":"https://github.com/Y80/bmm","clone":"git clone https://github.com/Y80/bmm.git","description":"🤵 BMM - Your Personal Bookmark Manager | 你的专属书签管家","language":"TypeScript","stars":341,"topics":["bookmarks","next","bookmark-manager","bookmarks-manager","tagging","react","nextjs","project","web","webapp"],"license":"MIT","category":"auth-billing-email","readme_excerpt":"BMM 收纳、整理、搜索与分享网站书签的开源全栈应用。 面向个人与团队的书签管理器，支持公开展示、用户空间、后台维护，以及 AI 辅助整理流程。 在线体验 · GitHub · 快速开始 简体中文 English 概览 BMM 是一个用于管理网站书签的开源应用。它把“收藏网页”“按标签整理”“公开展示优质网站”“在后台持续维护数据”放到同一套系统里，并为书签录入提供自动抓取与 AI 辅助能力。 你可以把它当作： - 个人书签仪表盘 - 团队内的知识导航站 - 对外公开的优质网站目录 核心能力 - 公开页、用户空间、管理后台三套使用场景共存，适合从个人使用逐步扩展到公共导航站。 - 支持导入浏览器导出的书签文件，能把目录结构转为标签关联，降低迁移成本。 - 支持标签与书签的多对多关系、拖拽排序、关键词检索与拼音检索。 - 自动抓取网站标题、描述、图标，并补充常见图标路径探测能力。 - 支持 GitHub OAuth 与邮箱密码登录。 - 通过 AI 自动分析网站信息、推荐标签，并为标签生成关联建议与主题色。 - 响应式界面同时覆盖桌面端与移动端，支持亮色与暗色主题。 计划中的功能 - [ ] 多功能卡片，例如天气与资讯 - [ ] 浏览器扩展插件 - [ ] 书签可用性检测 - [ ] 稍后阅读系统 技术栈 类别 技术 ------ -------------------------------------------------------------------- 框架 Next.js 16 + React 19 语言 TypeScript 样式 Tailwind CSS 4 UI HeroUI + Ant Design 数据库 SQLite / PostgreSQL / Turso ORM Drizzle ORM 认证 NextAuth v5 beta AI Vercel AI SDK + OpenAI-compatible provider 测试 Vitest 快速开始 环境要求 - Node.js = 24.0.0 - pnpm = 10.24.0 [!TIP] 首次本地启动默认使用 SQLite。 pnpm dev 、 pnpm build 和 pnpm start 都会先执行数据库初始化脚本，通常不需要手动建库。 本地开发 启动后访问 http://localhost:3000 。 常用命令 命令 说明 ----------------- ------------------------------------------------ pnpm dev 启动开发环境，并在启动前执行数据库初始化 pnpm build 生产构建 pnpm start 运行生产构建 pnpm lint 执行 ESLint pnpm test 运行 Vitest 测试 pnpm db:test 检查数据库是否可连接 pnpm db:migrate 生成并执行数据库迁移 pnpm db:push 直接根据 schema 推送数据库变更，可能导致数据风险 pnpm studio 打开 Drizzle Studio 环境变量 完整示例可参考 .env 。 [!TIP] 如果你只想先把项目跑起来，本地开发通常只需要默认 SQLite 配置。AI 供应商在管理员后台配置，不需要环境变量。 变量 用途 -------------------- ------------------------------------------ DB DRIVER 数据库驱动，支持 sq","default_branch":null,"files":null,"tree":[],"storefront":"/r/Y80","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/Y80/bmm/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}