习惯生长树:把每天的坚持,种成一棵会生长的树
打卡不该只是列表里的一个勾。习惯生长树把连续打卡的天数变成枝叶的长度——你坚持得越久,树就长得越高越茂密。
使用指南:三步种下你的第一棵习惯树
第一步,创建习惯:在输入框写下你想坚持的事,建议从「小到不可能失败」的开始,比如「读一页书」「喝一杯水」,而不是「每天读书一小时」。第二步,每天打卡:点一下树下的「今日打卡」按钮,系统会记录日期并计算连续天数(streak)。第三步,看着树长大:种子 → 发芽 → 幼苗 → 小树 → 成树 → 开花 → 参天,7 个成长阶段全部由连续打卡天数驱动,漏卡会让连续中断,树会停留在当前阶段等你回来。
一个小技巧:同时维护 2-3 棵树比只种一棵更容易坚持——不同习惯占用不同的意志力账户,互相不受影响。每棵树的形状由习惯的创建时间决定,即使两棵树的连续天数一样,它们也不会长成同一个样子。
技术原理与隐私保护说明
习惯生长树是一个纯静态网页应用,树的形状由确定性分形算法生成:以习惯 ID 作为随机数种子,用 SVG 递归绘制树干与分枝,同样的种子永远得到同样的树——这意味着你的树今天和明天看到的是同一棵,只是长大了。连续天数(streak)按本地日期逐日回溯计算,今天尚未打卡时从昨天起算,保证你在晚上打卡前不会看到「归零」的挫败感。
隐私方面:所有习惯和打卡记录都保存在你浏览器本地的 IndexedDB 数据库中,没有任何服务器、没有账号、没有埋点上传。清空浏览器数据会连同记录一起删除,建议定期使用导出功能备份一份 JSON 文件;换设备时导入备份即可让树继续生长。
FAQ 常见问题解答
Q: 漏打卡一天,树会枯萎吗?
A: 树不会枯萎,只是停止生长:连续天数中断后树停留在当前阶段,重新打卡会从 1 天重新累计。宽容的规则比严苛的规则更能让人坚持。
Q: 数据存在哪里?换手机怎么办?
A: 数据存在浏览器本地的 IndexedDB 里。换设备前请先导出 JSON 备份,在新设备上导入即可恢复全部习惯和打卡历史。
Q: 一天能打卡多次吗?
A: 每个习惯每天只记录一次,多次点击不会重复计数。当日误打卡可以撤销。
Q: 树的样子能自己选吗?
A: 树的形状由习惯创建时自动生成,每个习惯独一无二——这也是「这棵树只属于你的坚持」的意义所在。