屿时是一个面向个人目标管理的 Web 应用,包含目标打卡、日程计划、执行记录、每日复盘、成就统计、积分愿望板和能量恢复工具。
- 按日期管理目标与阶段打卡
- 计划、执行与复盘时间轴
- 连续打卡与成就统计
- 积分账户和愿望兑换
- 能量库与任务分类
- 游客模式
- Supabase 账号登录与云端数据同步
- Next.js 16
- React 19
- TypeScript
- Supabase Auth 和 PostgreSQL
- Tailwind CSS
- Vercel
npm install
cp .env.example .env.local
npm run dev在 .env.local 中填写自己的 Supabase 项目配置:
NEXT_PUBLIC_SUPABASE_URL=
NEXT_PUBLIC_SUPABASE_ANON_KEY=
NEXT_PUBLIC_SUPABASE_ANON_KEY 是供浏览器使用的公开客户端密钥,安全边界依赖数据库 RLS。不要在仓库或前端代码中放入 service_role key、数据库密码、访问令牌或其他服务端密钥。
.env.local、其他本地环境变量文件、Vercel 本地配置和构建产物均已被 .gitignore 忽略。
数据库迁移位于 supabase/migrations。请按文件名顺序应用全部迁移,而不是只执行第一份迁移。
生产环境应确认:
- 所有公开 schema 表均启用 RLS
- 前端仅使用 anon key
service_rolekey 只保存在可信服务端环境- Supabase Auth 的站点 URL 和回调 URL 与部署域名一致
- 游客模式数据保存在当前浏览器的
localStorage中。 - 登录用户的数据保存在其连接的 Supabase 项目中。
- 仓库不包含生产数据库内容、用户账号、密码或真实环境变量。
- 将自己的部署提供给他人使用前,应根据实际运营方式补充隐私政策和数据删除说明。
npm run lint
npm run build项目可部署到 Vercel。需要在 Vercel Project Settings 中配置与本地相同的两个公开 Supabase 环境变量。
请勿在公开 Issue 中提交密钥、密码、用户数据或安全漏洞细节。安全问题请参阅 SECURITY.md。
当前项目未授予开源许可证。公开仓库仅代表代码可见,不代表允许复制、修改或再发布。若希望其他人自由使用或贡献,请在公开前选择并添加合适的开源许可证。