Commit Graph

19 Commits

Author SHA1 Message Date
imbytecat d3f2088fc8 refactor: 移除 Recovery Key 机制,简化单 owner 认证流程
Recovery Key 对自托管场景多余 —— owner 必有服务器访问权限,CLI 重置足够。
- 删除 /recover 路由、systemSettings 表、completeSetup/recoverAccount functions
- /setup 创建完直接跳转,去掉 Recovery Key 步骤
- /login 去掉恢复密钥链接
- 修复跨目录相对路径 → @/ 别名(drizzle schema 链除外)
2026-03-31 18:55:13 +08:00
imbytecat 830714c94f feat: 单 owner 认证模型 — 替换注册为一次性设置向导 + Recovery Key + CLI 密码重置
自托管 Life OS 不应有公开注册。改为:
- /setup 一次性初始化向导(创建唯一 owner + 生成 Recovery Key)
- /recover 通过 Recovery Key 重置密码
- /login 未初始化时重定向到 /setup,去掉注册链接
- Better Auth databaseHooks 阻止额外用户注册
- citty CLI: bun run cli auth reset-password
- 删除 /signup 路由
- 新增 system_settings 表存储 recovery key hash
- 修复 drizzle.config.ts 非空断言 + sidebar.tsx cookieStore API
- 更新 AGENTS.md shadcn/ui 组件编辑规则
2026-03-31 18:33:16 +08:00
imbytecat d67aaa723e docs: 重新梳理 AGENTS.md — 精简去重 + 修正过时模式 + 新增 DnD/Virtual 文档
- 根 AGENTS.md 242→135 行,去掉冗余 compile 命令和重复目录树
- server AGENTS.md 408→220 行,移除与根重复的 Code Style 章节
- 修正 ORPC 契约/路由路径(定义在模块内,非 server/api/)
- 新增 @dnd-kit/helpers move()、@tanstack/react-virtual、MutationCache 模式
2026-03-31 17:42:56 +08:00
imbytecat 001d171111 feat: 重写图标选择器 — 全量 lucide 图标 + 虚拟滚动 + 可清除
- 动态获取所有 ~1500 个 lucide-react 图标,替代硬编码 57 个
- 引入 @tanstack/react-virtual 虚拟滚动,流畅渲染大量图标
- 使用 useState callback ref 解决 Dialog 内 virtualizer 初始化问题
- 新增清除图标按钮,允许将图标置空
- 搜索覆盖全量图标,输入时自动滚回顶部
2026-03-31 17:25:27 +08:00
imbytecat 46e4486d7d fix: 修复拖拽排序持久化 + 恢复 package.json catalog 引用
- 引入 @dnd-kit/helpers,使用 move() 替代手工 splice 排序逻辑
- 恢复 apps/server/package.json 中所有依赖的 catalog: 引用
- 简化 ORPC client,移除 experimental_defaults,改用 MutationCache
- route loaders 改用 fetchQuery 确保数据刷新
2026-03-31 17:01:47 +08:00
imbytecat ba8224e81e feat: 重设计 UI/UX — 展示/管理分离 + shadcn/ui + Admin 后台
- 引入 shadcn/ui(base-nova 风格,Tailwind v4,14 个组件)
- 新增 Admin 后台路由架构:/admin(总览)、/admin/bookmarks(管理)
- 重写首页为纯展示书签导航(BookmarkCard + CategoryGrid)
- 新增 Admin 侧边栏导航(AdminSidebar + SidebarProvider)
- 书签管理页:双栏布局 + Dialog 表单 + DnD 排序 + Toast 通知
- 修复 IconPicker overflow 裁切(改用 Dialog portal)
- 修复嵌套 button hydration 错误(base-ui render prop)
- 删除旧组件(CategorySection/BookmarkItem/IconPicker)和旧路由
- 所有新依赖归入 root catalog
- 更新 AGENTS.md 文档(目录结构、shadcn 模式、render prop 规范)
2026-03-30 22:54:01 +08:00
imbytecat 430c0b0c64 refactor: 统一表命名规范,简化 DB 单例
- 去掉所有 Drizzle 表变量的 Table 后缀(userTable→user 等)
- 修复 Better Auth adapter 找不到 schema model 的问题
- DB 实例从 IIFE 闭包工厂简化为模块级导出
- db middleware 重命名为 dbMiddleware 避免与 db 实例冲突
- 添加 babel-plugin-react-compiler 依赖
2026-03-30 21:53:30 +08:00
imbytecat 8c3425359d chore: 生成初始 Drizzle 迁移和路由树 2026-03-30 21:28:57 +08:00
imbytecat 3ce981a06a feat: 添加 Dashboard 和书签页面 2026-03-30 21:28:44 +08:00
imbytecat 309eb8ac7e feat: 添加书签模块 UI 组件 2026-03-30 21:28:25 +08:00
imbytecat 1494492b95 feat: 添加书签模块 API,移除 Todo 示例 2026-03-30 21:28:10 +08:00
imbytecat 1f3028c25b feat: 添加书签模块 schema 和关联 2026-03-30 21:27:58 +08:00
imbytecat 58b70dd1e8 feat: 添加认证页面和路由守卫 2026-03-30 21:27:26 +08:00
imbytecat df485b54c9 feat: 添加认证 API 路由和中间件 2026-03-30 21:27:10 +08:00
imbytecat 8b754f9fe6 feat: 集成 Better Auth 服务端 2026-03-30 21:26:52 +08:00
imbytecat 50472dbba7 feat: 添加模块注册系统 2026-03-30 21:26:41 +08:00
imbytecat ab713ba5bc feat: 添加 Better Auth 认证 schema 2026-03-30 21:26:25 +08:00
imbytecat da3ce1d2dd chore: 配置数据库和依赖 2026-03-30 21:26:10 +08:00
imbytecat c552dabbdd Initial commit 2026-03-30 19:59:31 +08:00