Degree-个人效率工具
项目介绍
Degree — 个人效率工具
一个纯前端单文件应用,集成任务管理、倒数日、纪念日三大模块,所有数据存储在浏览器本地,无需后端服务器。
功能
任务清单
- 当日任务 / 长期任务 双类型
- 长期任务支持子任务拆分、日期区间、每日跳过
- 补全任务:过往日期添加当日任务自动完成,长期任务可填写已完成的子任务或标记"当日无任务"
- 逾期确认:补完成时弹窗询问"按时完成"还是"择日补完"
- 日期范围筛选:年月日—年月日滚动选择器,精确过滤任务列表
- 分类标签、搜索、拖拽排序
- 日历栏:月度日历,颜色标记(绿=全部完成、黄=部分完成、红=有未完成)
- 今日记录(日记):每日独立存储,跨日自动切换
- 浅色 / 深色主题
倒数日
- 目标日期倒计时
- 按剩余天数升序排列
- 自定义属性标签(如"生日""项目截止")
纪念日
- 记录过去 100 年内的重要日期
- 自动计算下一个周年(如"下一个 6 周年纪念日就在 365 天后")
- 当天即显示 🎉 庆祝提示
- 自定义属性标签(如"结婚""毕业")
使用方式
本地打开
直接双击 todo.html 用浏览器打开即可使用。
部署分享
单文件零依赖,拖到任意静态托管平台即可:
| 平台 | 操作 |
| -------------------- | ------------------------------------------------------------ |
| GitHub Pages | 仓库 Settings → Pages → 选 main 分支 → 保存 |
| Cloudflare Pages | 连接 GitHub 仓库 → 一键部署 |
| Vercel | vercel 或拖拽部署 |
| Netlify | 拖拽 todo.html 到 netlify.com/drop |
注意:数据存储在浏览器
localStorage,换设备或清缓存会丢失。后续可扩展为云端同步。
技术栈
- 纯 HTML / CSS / JavaScript(零框架、零依赖)
- CSS 自定义属性实现主题切换(
[data-theme="dark"]) localStorage持久化(4 个独立键)- IIFE 模块隔离
- 事件委托 + 拖拽 API
数据存储
| 键名 | 内容 |
| ---------------------- | ---------------------- |
| todoAppDataV2 | 任务列表 + 主题 |
| todoAppCountdowns | 倒数日列表 |
| todoAppAnniversaries | 纪念日列表 |
| journal_YYYY-MM-DD | 每日日记(按日期分键) |
License
MIT