作为独立开发者,我用 SwiftUI 写了一个精力记账 App——元气手账

起因:记录精力比记录情绪更适合我

去年有段时间状态很差,每天下班回家瘫在沙发上,脑子里隐约觉得被掏空了,但说不清是哪件事把自己耗干的。开了三个会?午饭后那段低效摸鱼?还是下午临时加塞的需求评审?只记得一整天都在"忙",却没法指出精力到底花在了哪里。

我试过情绪日记,写了两天就放弃——描述感受需要措辞,措辞本身又消耗精力。也试过习惯打卡类 App,但打卡只告诉我"做了没做",不能回答"这件事让我更累还是更有劲"。市面上能解决这个问题的工具几乎没有,于是我自己动手做了一个,就是元气手账。它只管一件事:精力的加减。

设计思路:电池电量隐喻 + 胶囊交互

打开 App,你看到的不是日历也不是待办列表,是一块电池。满电 100%,每记录一件事,电量实时变动。充电的事让电量回升,耗电的事让电量下降,剩余电量就是当前的精力余额。

比如早起跑了 20 分钟,+15;上午写了两小时代码进入心流,+25(产出型活动也可以是充能的);下午被拉进一场没有结论的会议,-30。到晚上回顾时,电池显示剩余 42%,立刻知道今天过得紧不紧绑、还剩多少余裕。数值大小完全由用户自己定义,App 不会替你判断"开会应该扣多少分"。我觉得这比那些预设权重的量化工具更诚实——毕竟同一件事在不同状态下对人的消耗是不同的。

记录的交互我做成了「胶囊」的形式:预设好常见的充能/耗能场景(午睡、深度工作、通勤、社交闲聊等),每个场景是一颗胶囊,点一下就完成记录。不用打字,不用纠结措辞,手指点几下,电池数字自动算好。如果某天遇到新场景,长按可以快速新建一颗胶囊,设定它是充能还是耗能、默认多少点数。

这个设计让记录的阻力降到很低。我之前用备忘录手动记精力流水账,坚持了不到一周;换成胶囊打卡之后,连续用了三周没断。

技术选型聊几句

整个项目用 SwiftUI 搭建,数据层走 SwiftData 做本地持久化。电量计算的核心逻辑其实很简单,大致是这样的:

struct EnergyLedger {
    var entries: [EnergyEntry] = []
    
    var currentLevel: Int {
        let base = 100
        let total = entries.reduce(0) { $0 + $1.delta }
        return min(max(base + total, 0), 100)
    }
    
    mutating func record(_ capsule: Capsule) {
        let entry = EnergyEntry(
            capsule: capsule,
            delta: capsule.isCharging ? capsule.points : -capsule.points,
            timestamp: .now
        )
        entries.append(entry)
    }
}

电池 UI 那块用的是 SwiftUI 的 GeometryReader 配合动画,根据 currentLevel 实时渲染填充高度和颜色渐变。胶囊列表本身就是一个 LazyVGrid,点击触发 haptic feedback,体感非常轻快。

选 SwiftUI 的原因很简单:一个人做,UI 和状态管理能少写很多胶水代码,而且电池这种动效用声明式写起来很自然。

数据积累后的洞察:吸血鬼与绿洲

积累一段时间数据后,App 会自动生成两个维度的排行:

吸血鬼 TOP —— 累计消耗精力最多的事项排行。我的前三名是:无议程会议、睡前刷短视频超过 30 分钟、以及周一早晨的周报撰写。看到排名的那一刻挺扎心的,但也挺有用——至少知道该对哪些事动手术。

绿洲 TOP —— 累计给你充能最多的事项排行。我的是:独处散步、写技术博客(没错,输出型活动反而充电)、和朋友打羽毛球。

这两个榜单不需要额外操作,只要持续记录,它自己就会浮现。比手动做周复盘高效得多,因为数据是连续的,不是某个周日下午努力回忆才拼凑出来的。

实际使用一个月的体感

我现在的用法是:早上醒来看一眼昨天的电量收盘(类似看昨天的步数),晚上睡前花 40 秒到 1 分钟做当日记录。周末偶尔翻翻吸血鬼/绿洲排行,看看有没有新的发现。

用了将近一个月,有几个变化比较明显。我开始主动给自己安排"充能事项"了。以前觉得午休 15 分钟是在摸鱼,现在看到它每次稳定 +10,就不再有负罪感。另外,我把周报撰写从周一早上挪到了周五下班前——因为数据显示它在周一的耗电值比周五高出近一倍,大概是周一本身精力储备就低,叠加上写周报的消耗就格外痛苦。

当然也有局限。App 目前没有提醒功能,如果你本身没有睡前回顾习惯,容易忘记记录。另外,数值全靠主观赋分,不同日子之间的横向对比有时候并不精确——今天的 -20 和上周三的 -20 可能体感完全不同。不过精力管理本就是模糊的、主观的,趋势比数字重要。

适合谁

日常脑力消耗大、经常感觉"累但说不清为什么"的人。考研复习期需要分配有限精力的学生,密集开会的职场新人,或者每天在写代码、回消息、处理杂事之间反复切换的独立开发者——如果你想搞清楚精力花在哪儿了,这个工具的颗粒度刚好够用,又不至于繁重。如果你需要的是情绪觉察和书写疗愈,或者习惯养成和连续打卡的成就感,那这不是它的赛道。元气手账只做一件事:帮你看见精力的流向。

下载

元气手账现已上架 App Store,iOS 平台,免费下载,基础功能完整可用。高级洞察功能(吸血鬼/绿洲排行、趋势图表)通过内购解锁。如果你和我一样,受够了"莫名其妙累了一天"却找不到原因的状态,花一分钟试试,至少比继续糊涂着强。

posted @ 2026-08-09 18:05  samexxx  阅读(14)  评论(0)    收藏  举报