月理
以“月”为节奏的个人兴趣追踪应用
背景与问题发现
毕业后,我在整理自己的日常生活时,发现一个现象:市面上的个人管理工具,从 Notion 到 TickTick,几乎都围绕着效率和生产力构建。它们以天为单位,强调截止日期、完成率,带着一种“你必须完成任务”的紧迫感。
但我的生活里,大量快乐来自阅读、玩游戏、看剧、学一些感兴趣的知识——这些活动承载着生活的趣味。我试过用效率工具来记录这些,但每次打开都感到压力:红色的未完成标记、每天的通知提醒,让记录变成一件被管理的事。
这让我开始思考:为什么记录个人兴趣生活,就一定要像工作一样严肃?
我和 8 位有类似记录习惯的朋友聊了聊,发现三个共性:
- 很多人会用碎片化工具记录——备忘录、Excel、豆瓣的“想看/看过”功能,但这些工具彼此割裂,无法形成整体回顾。
- “月”是自然的思考单位——月初大家会想“这个月打算玩什么”,月末会感叹“这个月看了好多剧”。没有人以天来规划休闲活动。
- 对年度回顾有期待,但没工具满足——大家希望年底能看到一张热力图或总结卡片,但现有工具要么没有,要么藏在复杂的配置里。
产品的机会就藏在这个空白地带:介于“什么都不记”和“用生产力工具严格管理”之间。 为此,我设计并独立开发了 月理(Monthley)——一款以“月”为节奏的轻量兴趣记录与回顾工具。
从“不做什么”开始定义产品
在动手设计之前,我先明确了月理的边界,并写下三条核心原则:
- 帮助用户享受生活,而非督促完成:不强制每日打卡、不根据完成率给用户“打分”、不把休闲计划变成待办绩效。
- 数据完全属于用户:不强制注册账号、不收集个人信息、随时可以导出全部数据。
- 功能保持单层克制:只做一条纵向时间线,不做“项目 / 文件夹”式的多层级嵌套,避免把轻量工具做重。
与典型生产力工具的差异,可以用一张表概括:
| 维度 | 生产力工具 | 月理(Monthley) |
|---|---|---|
| 驱动力 | 外部要求、责任感 | 内在兴趣、好奇心 |
| 时间感 | 截止日期、线性推进 | 月份节奏、循环回顾 |
| 成功标准 | 完成率、产出量 | 持续记录、生活满足感 |
| 情感基调 | 紧张、严肃 | 轻松、愉悦 |
这个边界定义成了后续所有设计决策的“锚点”。每当犹豫一个新功能要不要加,我都会回来看它是否违背了这些原则。比如曾有人建议加入“每日提醒”,但因为违背了“不制造压力”的初衷,我直接放弃了。
四个关键设计决策
围绕“月初记下想做的事、月中随情况调整、月末与年底回顾、偶尔跨设备同步”的真实使用路径,我做出了四个核心设计决策:
决策一:以“月份卡片”作为空间与时间容器
既然大家对休闲生活的思考是以“月”为单位的,我就把每个月份设计成一张可展开、可收起的独立卡片。当前月份默认展开——这是当下最关心的;已经过去的月份可以随时折叠——减少视觉干扰,让整条时间线既有纵深感,又不会显得杂乱。
决策二:收敛为“学、玩、看、读”四种类型
访谈中大家提到的兴趣活动,几乎都能归入四个类别:学(技能、知识)、玩(游戏)、看(影视剧)、读(书籍)。固定为这四类刚好覆盖核心场景,又省去了用户自己建标签、管分类的麻烦。每种类型对应独立的图标与柔和色彩,靠视觉直觉就能快速区分。
决策三:用跨月拖拽化解“计划赶不上变化”
在传统工具里,推迟一项计划往往需要“点开编辑 $\rightarrow$ 修改日期 $\rightarrow$ 保存”三步。但在兴趣生活里,“这个月太忙来不及看,挪到下个月吧”是非常高频且自然的念头。因此我把计划转移做成直觉式的跨月拖拽——按住条目直接拖进下个月的卡片即可,贴合移动端的触控直觉。
决策四:用“同步密钥”代替传统账号体系
大多数时候我在手机上顺手记一笔,但偶尔也想在电脑上整理时间线。跨设备同步是刚需,可一旦引入传统账号体系,就意味着注册、登录、找回密码和隐私合规,对一个轻量小工具来说太重了。
我的解法是端到端加密的同步密钥:用户生成一串 8–32 位的密钥自行保管,数据在本地用该密钥加密后上传云端。密钥即身份,密钥即密码。 唯一需要重点处理的是在首次开启同步时做好引导,并提供二维码方便在新设备上扫码填入,降低抄写与遗失密钥的风险。
交互细节里的分寸感
如何让“轻松记录”不只是一句口号,很大程度上取决于具体交互细节的分寸:
- 对“未完成”的温和态度:过去的月份里如果有计划没完成,月理不会弹窗催促、不标刺眼的红点,也不强制你立刻处理。它只会在该月份卡片的右上角安静地显示一个温和的提示点,并在对应条目旁留下一条细彩线。你可以顺手把它拖到这个月继续,也可以就这样留在过去——生活不是 KPI,计划没做完不代表失败。
- 筛选状态下的自动展开:当我想筛选查看“所有在读的书”时,原本折叠的历史月份只要包含匹配条目,就会自动展开,省去手动逐月翻找的繁琐。
- 搜索结果的一步定位:搜索列表不仅展示条目名称,还带有类型图标与所属月份;点击结果后会直接滚动定位到时间线上的对应月份并高亮该条目,从“搜到”到“回到上下文”一步完成。
落地实现与待探索的张力
月理目前已完整上线(支持 PWA 安装到手机桌面),实现了月度时间线、跨月拖拽、多维筛选搜索、统计热力图、年度回顾海报生成、深色模式及端到端加密云同步。
在技术实现上:
- 前端基于 Vue 3(Composition API)+ TypeScript + Pinia 构建,使用 vuedraggable 处理跨月拖拽,html2canvas 生成年度回顾分享卡片;
- 云端同步基于 Supabase Storage,客户端通过原生 Web Crypto API(AES-GCM) 在本地完成加解密,密钥永不离开用户设备。
每项设计取舍背后都有对应的代价。随着自己和身边朋友的日常使用,有三个设计张力是我接下来持续观察与迭代的重点:
- “不打扰”与“被遗忘”的平衡:去掉所有红点和推送提醒后,用户确实没有了打开 App 的焦虑感;但硬币的另一面是,当生活忙起来时,一个完全安静的工具也更容易被遗忘。如何在不制造压迫感的前提下保留温和的连接(例如仅在月初/月末提供可选的轻量回顾入口),是接下来值得尝试的方向。
- 单月容器与跨月长周期活动的兼容:“月”很好地承接了大多数影视和短篇阅读,但像《博德之门 3》或一本大部头专著往往会跨两三个月。目前靠“跨月拖拽”虽然能把未完结条目挪到新月份,却冲淡了“上个月其实也在玩它”的轨迹。后续计划探索更自然的“跨月延续”表达。
- 无账号隐私与密钥保管的摩擦:同步密钥免去了注册登录的繁琐,但要求用户自己记住或妥善保存一串字符,本质上是把账号管理的责任转交给了用户。如何在保持零隐私收集的同时进一步降低跨设备配对的门槛,仍有打磨空间。