feat: add macOS task board widget app
This commit is contained in:
@@ -0,0 +1,35 @@
|
||||
# UTrello
|
||||
|
||||
一个运行在 macOS 桌面的本地 Trello 风格任务看板,附带 WidgetKit 小组件。
|
||||
|
||||
## 功能
|
||||
|
||||
- 三列任务看板:待办、进行中、完成
|
||||
- 新增、移动和删除任务
|
||||
- 桌面小组件显示未完成任务及其数量
|
||||
- 任务数据只保存在本机;主应用和 Widget 通过 App Group 共享数据
|
||||
- 主应用更新任务后,主动请求系统刷新小组件
|
||||
|
||||
## 技术要求
|
||||
|
||||
- macOS 14 Sonoma 或更高版本
|
||||
- Xcode 15 或更高版本
|
||||
- 可用于代码签名的 Apple 开发团队
|
||||
|
||||
## 本地运行
|
||||
|
||||
1. 在 Mac 上用 Xcode 打开 `UTrello.xcodeproj`。
|
||||
2. 选择 `UTrello` target,在 **Signing & Capabilities** 中选择开发团队。
|
||||
3. 对 `UTrelloWidget` target 重复上一步。
|
||||
4. 在两个 target 的 App Groups capability 中,将 `group.com.example.utrello` 改为该开发团队已注册的 App Group 标识。
|
||||
5. 将 [TaskStore.swift](UTrello/Shared/TaskStore.swift) 中的 `groupIdentifier` 改为同一个标识。
|
||||
6. 选择 `UTrello` scheme 后运行。首次运行成功后,在 macOS 的组件库中将 **UTrello Tasks** 添加到桌面。
|
||||
|
||||
## 数据与刷新
|
||||
|
||||
任务以 JSON 形式写入 App Group 的 `UserDefaults`。Widget 会在任务变更时请求刷新,并会由系统每 15 分钟兜底刷新一次;实际刷新时机仍由 macOS 调度。
|
||||
|
||||
## 当前限制
|
||||
|
||||
- 这是纯本地应用,不会同步真实 Trello 服务。
|
||||
- Widget 以浏览为主,复杂操作在主应用内完成。
|
||||
Reference in New Issue
Block a user