极简 macOS 纯文本笔记工具。随手记,随手归档,自动消失。
- 纯文本 — 所有笔记以
.txt文件存储,无数据库,无私有格式 - Digital Disposable — 笔记归档后自动倒计时删除(7天/30天/永不)
- iCloud 同步 — 直接存入 iCloud Drive,跨设备自动同步
- macOS 14.0+
- Xcode 16+(Swift 6)
- iCloud 账号(可选,无账号时本地存储)
git clone <repo>
cd Mote
# 安装 xcodegen(只需一次)
brew install xcodegen
# 生成 Xcode 项目
xcodegen generate
# 打开项目
open Mote.xcodeproj首次打开后:
- 选中 Mote target → Signing & Capabilities
- 勾选 Automatically manage signing,选择你的 Team
- iCloud 配置已通过
project.yml预设,直接 Build & Run(⌘R)
Mote.xcodeproj由 xcodegen 自动生成,不提交到 git。修改项目结构时编辑project.yml,然后重跑xcodegen generate。
swift build # 编译
swift test # 运行单元测试(20个)| 操作 | 快捷键 |
|---|---|
| 新建笔记 | ⌘N |
| 归档 / 取消归档 | ⌘⇧A |
| 删除笔记 | ⌘⌫ |
| 搜索 | ⌘F |
| 偏好设置 | ⌘, |
- 在 Inbox 右滑可归档,左滑可删除
- 笔记标题 = 第一行文字;无内容时显示 "Untitled"
- 编辑后 500ms 自动保存
iCloud Drive / Mote / Documents /
├── Inbox/ # 当前笔记(UUID.txt)
└── Archive/ # 已归档笔记
iCloud 不可用时自动降级到 ~/Library/Application Support/Mote/Documents/。
Mote/
├── Package.swift
├── Sources/
│ ├── Shared/ # 跨平台业务逻辑(为将来 iOS 复用设计)
│ │ ├── Models/ # Note, NoteLocation, CleanupPeriod
│ │ ├── Services/ # 文件读写、归档、清理、iCloud 冲突处理
│ │ │ └── Protocols/ # 各 Service 的协议定义
│ │ ├── ViewModels/ # NoteListVM, NoteEditorVM, SettingsVM
│ │ └── Utils/ # NSFileCoordinator 封装, Logger, MoteError
│ └── Mote/ # macOS 专属
│ ├── App/ # 入口 + DependencyContainer
│ └── Views/ # SwiftUI 视图(侧边栏/列表/编辑器/设置)
└── Tests/SharedTests/ # 单元测试(20个)
swift test- iOS 版本:在
Sources/下新增MoteIOS/target,复用Shared/全部逻辑 - 标签 / 分组支持
- Markdown 预览