Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
c6efca2
Add Focus View with cosmic illustration and AI task recommendations
lyeka Jan 28, 2026
60a728d
Update planet design to flat color illustration style
lyeka Jan 28, 2026
5ffcf6a
Add interactive planet selection in focus view
lyeka Jan 28, 2026
7f4f5b5
Add focus mode with pomodoro timer and constellation system
lyeka Jan 28, 2026
1a6013b
Fix constellation line parsing for star position values
lyeka Jan 28, 2026
d6e4c76
Add depth layers and parallax effect to FocusCircle
lyeka Jan 28, 2026
18f89e4
Refactor OrbitPaths to use randomly distributed short arcs
lyeka Jan 28, 2026
de9b6d2
Add perspective effect to focus view orbit paths
lyeka Jan 28, 2026
6200720
Optimize focus view performance and visual design
lyeka Jan 28, 2026
e343510
Optimize FocusView data flow and parallax performance
lyeka Jan 28, 2026
dc368b4
Optimize focus view performance by reducing particle counts and blur
lyeka Jan 28, 2026
cdf45b0
Remove hover tooltip and MiniInfo from focus view
lyeka Jan 29, 2026
149052d
Replace AI task recommendation with star-based planet system in Focus
lyeka Jan 29, 2026
7159e3e
Refine focus view empty and overdue states with nebula design system
lyeka Jan 29, 2026
e8eab67
Add TimerPlanet with NASA textures to FocusMode
lyeka Jan 29, 2026
aaf6224
Improve focus view context menu with nebula styling and boundary
lyeka Jan 30, 2026
cecd940
Simplify Planet context menu to focus on core actions
lyeka Jan 30, 2026
fb79561
Remove task selection feature from Focus view
lyeka Jan 30, 2026
0640011
Refactor focus mode to use shared planet material system
lyeka Jan 30, 2026
9ff41bc
Fix calendar grid to always show 5-6 rows in one screen
lyeka Jan 30, 2026
92e046f
Add project board view with drag-and-drop functionality
lyeka Jan 30, 2026
278dc79
Fix project board layout overflow issues
lyeka Jan 30, 2026
39ac56a
Add task editing panel support to project board view
lyeka Jan 30, 2026
13e45d0
Remove GTD list tags from project task cards and add updatedAt field
lyeka Jan 30, 2026
e36bfb7
Add progress bar and completed task sorting to project columns
lyeka Jan 30, 2026
2af8b5d
Add ProjectGallery with circular progress and context menu
lyeka Jan 31, 2026
ec438b7
Add column drag-and-drop reordering to project board
lyeka Jan 31, 2026
9362ccd
Improve project board visual hierarchy and hover states
lyeka Jan 31, 2026
d6b3440
Refactor sidebar to use collapsible groups with persistent state
lyeka Jan 31, 2026
8e9f283
Add elegant scrollbar styling to sidebar and drawer
lyeka Jan 31, 2026
45e2007
Add elegant-scroll class to overflow containers
lyeka Jan 31, 2026
446d1db
Improve sidebar collapse behavior with smooth animations
lyeka Feb 1, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
57 changes: 49 additions & 8 deletions CLAUDE.md
Original file line number Diff line number Diff line change
@@ -1,20 +1,21 @@
# GTD 时间项目管理 (跨平台版)
Tauri 2.0 (桌面端) + Capacitor 8.0 (移动端) + Vite 7 + React 19 + TailwindCSS v4 + shadcn/ui + Framer Motion + react-i18next
Tauri 2.0 (桌面端) + Capacitor 8.0 (移动端) + Vite 7 + React 19 + TailwindCSS v4 + shadcn/ui + GSAP + react-i18next

<directory>
src/
├── components/
│ ├── ui/ - shadcn 组件库
│ └── gtd/ - GTD 业务组件 (22文件: QuickCapture, Sidebar, Settings, SyncSettings, ConflictDialog, FolderPicker, TaskItem, TaskList, CalendarView, CalendarGrid, CalendarCell, CalendarTaskChip, UnscheduledPanel, NotesPanel, Drawer, ActionSheet, JournalNowView, JournalPastView, JournalItem, JournalChip, AIPromptCard, AISettings)
├── stores/ - 状态管理 (4文件: gtd.js, calendar.js, journal.js, ai.js)
│ └── gtd/ - GTD 业务组件 (37文件: QuickCapture, Sidebar, Settings, SyncSettings, ConflictDialog, FolderPicker, TaskItem, TaskList, CalendarView, CalendarGrid, CalendarCell, CalendarTaskChip, UnscheduledPanel, NotesPanel, Drawer, ActionSheet, JournalNowView, JournalPastView, JournalItem, JournalChip, AIPromptCard, AISettings, FocusView, FocusGreeting, FocusRecommendCard, FocusTaskItem, FocusOverdueCard, FocusEmptyState, ProjectList, ProjectSettings, ProjectBoard, ProjectColumn, ProjectTaskCard, SortableTask)
├── stores/ - 状态管理 (6文件: gtd.js, project.js, calendar.js, journal.js, ai.js, editor.js)
├── hooks/ - React Hooks (2文件: useFileSystem.js, useSync.js)
├── lib/ - 工具函数 (5文件: utils.js, motion.js, platform.js, tauri.js(废弃), i18n.js)
├── lib/ - 工具函数 (6文件: utils.js, motion.js, platform.js, haptics.js, tauri.js(废弃), i18n.js)
│ ├── ai/ - AI 功能模块 (3文件: crypto.js, prompts.js, openai.js)
│ ├── fs/ - 文件系统抽象层 (5文件: adapter.js, tauri.js, capacitor.js, web.js, index.js)
│ ├── format/ - 数据格式处理 (3文件: task.js, journal.js, index.js)
│ └── sync/ - 云同步功能 (3文件: conflict.js, webdav.js, index.js)
│ ├── format/ - 数据格式处理 (4文件: task.js, journal.js, project.js, index.js)
│ ├── sync/ - 云同步功能 (3文件: conflict.js, webdav.js, index.js)
│ └── planet/ - 共享星球素材系统 (3文件: index.js, svgs.js, colors.js)
├── locales/ - 国际化翻译文件 (2文件: zh-CN.json, en-US.json)
├── App.jsx - 应用入口,支持列表/日历/日记视图切换,集成跨平台功能
├── App.jsx - 应用入口,支持专注/列表/看板/日历/日记视图切换,集成跨平台功能
├── main.jsx - React 挂载点,初始化 i18n
└── index.css - 全局样式 + CSS 变量

Expand Down Expand Up @@ -45,13 +46,49 @@ package.json - 包含 tauri:dev/tauri:build (桌面端) 和 cap:android/c
- 将来/也许 (Someday): 暂时搁置
- 已完成 (Done): 归档

## 专注视图 (Focus View)

- **设计哲学**:专注是一种"主动选择",而非"被动提醒";减法设计,屏蔽干扰
- **视觉风格**:柔性宇宙插画,SVG filter 手绘行星 + 椭圆轨道带 + GSAP 动画
- **轨道带**:多条同心椭圆(像土星环),深蓝紫色,-15度倾斜
- **手绘行星**:SVG feTurbulence + feDisplacementMap 实现不规则边缘,玻璃球高光
- **独立视图**:与列表/日历/日记并列,作为侧边栏第一个入口
- **时间感知问候**:根据早中晚显示不同问候语 + 今日任务数量
- **星标功能**:任务可标记星标,星标任务优先显示在主角位置(中间大行星)
- **星球筛选**:只显示有截止日期且为今天或过期的任务,最多 6 个
- **排序规则**:星标优先 → 过期优先 → 创建时间
- **溢出任务**:超过 6 个任务时,底部折叠卡片显示剩余任务
- **过期任务处理**:折叠卡片显示过期任务,支持快速操作(今天/明天/删除)
- **空状态引导**:无任务时引导用户去收集箱选择

## 专注模式 (Focus Mode)

- **极简设计**:深邃黑色 + 一个发光的 SVG 手绘星球 = 唯一视觉焦点
- **共享素材**:使用 lib/planet/ 共享素材系统,与主视图星球风格一致
- **有机运动**:GSAP 呼吸动画(scale 1→1.02,5秒循环)+ 轻微漂移(x/y ±8px,12秒循环)
- **进度表达**:星球随进度增大(140px → 280px),无进度环
- **暂停状态**:呼吸幅度加大(1.04),表示"等待"
- **极简背景**:纯色背景 + 20个极微星点,无星云、无辉光、无噪点
- **信息层级**:星球(视觉焦点)→ 时间 + 任务标题(上下文)→ 控制按钮(最小化)

## 看板视图 (Board View)

- **设计理念**:长期目标跟进系统,项目驱动而非 GTD 列表驱动
- **双重归属**:任务同时属于项目和 GTD 列表,互不干扰
- **自定义列**:每个项目可定义自己的状态流(默认:待办/进行中/完成)
- **拖拽流转**:任务在列之间拖拽改变 columnId,不影响 GTD list 归属
- **视觉区分**:项目颜色标识,GTD 归属标签显示
- **职责定位**:长期目标管理和进度追踪,与 GTD 系统并行不悖

## 日历视图

- **经典设计**:固定 5-6 行一屏显示,自适应行高,不可滚动
- 月视图/周视图切换
- 拖拽任务设置日期
- 无日期任务面板
- 点击日期快速添加任务
- 日记显示:日历格子内显示当天日记(虚线边框区分)
- **职责定位**:纯粹的时间导航器,用于查看整月安排、拖拽任务设置日期、查看历史日记

## 日记功能

Expand All @@ -66,12 +103,13 @@ package.json - 包含 tauri:dev/tauri:build (桌面端) 和 cap:android/c
## AI 功能

- **智能问题生成**:根据用户指导方向、任务完成情况和历史日记,动态生成个性化引导问题
- **任务推荐**:分析任务紧急性、重要性、可行性,推荐最应该优先处理的任务
- **用户指导方向**:用户输入指导性提示词(如"我想探讨人生的哲理和意义"),AI 据此生成问题
- **上下文感知**:结合今日任务、最近日记、时间上下文(周几、早中晚)生成问题
- **优雅交互**:问题卡片轻量非侵入,点击插入、悬停删除、支持刷新
- **隐私优先**:用户自己配置 OpenAI API Key,加密存储在本地
- **完全可选**:默认关闭,用户完全控制
- **优雅降级**:API 失败时使用通用开放式问题
- **优雅降级**:API 失败时使用通用开放式问题或本地排序

## 跨平台特性

Expand Down Expand Up @@ -105,6 +143,9 @@ package.json - 包含 tauri:dev/tauri:build (桌面端) 和 cap:android/c
│ ├── inbox.json
│ ├── today.json
│ └── done/ # 按月归档
├── projects/ # 项目数据 (JSON)
│ ├── proj-xxx.json
│ └── proj-yyy.json
└── journals/ # 日记数据 (Markdown)
└── 2026/01/
```
Expand Down
193 changes: 193 additions & 0 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading