契约树是一款两人结伴坚持的契约打卡小程序:和朋友互立约定,每天拍照交证据,对方认可才算数——用「在乎对方怎么看」的方式,帮彼此把好习惯坚持下去。
点击空白处退出提示
语言技术
Java、TypeScript、小程序系统类型
小程序轻应用行业分类
游戏
契约树是一款两人结伴坚持的契约打卡小程序:和朋友互立约定,每天拍照交证据,对方认可才算数——用「在乎对方怎么看」的方式,帮彼此把好习惯坚持下去。
1.发起契约
从五个目标模板(健身 · 读书 · 戒烟 · 存钱 · 早起)一键带出标题和每日目标,也可完全自定义;契约周期可选 7 / 21 / 30 / 60 / 90 天,并设置每日打卡截止时间和违约惩罚,规则先讲清楚,坚持才有约束力。
2.邀请伙伴
契约生成 6 位邀请码,通过分享卡片一键发给好友;对方凭码加入后契约正式生效,双方共同履约。
3.拍照打卡
每天在截止时间前拍照上传证据(支持相机拍摄或相册选择,自动压缩流量);证据照片只对契约双方可见,打卡记录当天锁定,过了就补不了。
4.互相认可(核心机制)
打卡不自动算数——对方看了证据、点了认可,这次打卡才生效:
认可:记录通过,连击 +1
不认可:可附上原因退回,对方重新拍照提交,次数不限
超时兜底:次日 0 点仍无人处理时自动视为通过,不会互相卡住
5.坚持看得见
首页是双人契约空间:我今天的打卡状态、对方的打卡状态并列展示;每人有连续守约天数(连击)、本周七格日历、契约完成率进度条;待对方认可的打卡会在首页置顶提醒,一眼知道该谁行动。双方昵称默认脱敏显示,保护隐私。
6.我的
管理昵称、查看所有契约的汇总统计(进行中 / 已完成 / 累计打卡天数)。
1.产品与设计方向:提出“社交契约”产品概念,确定双人契约 + 拍照证据 + 互相认可的核心玩法;拍板视觉从自然绿升级为爱马仕橙主色系,并圈定 V1 范围(3 个核心页面先做,成就墙/证书/商店留 V2)。
2.技术栈
微信原生小程序(WXML/WXSS/JS,无跨端框架)+ WorkBuddy Cloud(PostgreSQL RLS、微信登录、对象存储签名 URL)+ 内置改造的云 SDK + 微信原生 API(chooseMedia/compressImage/wx.request 二进制 PUT)。测试是自研 Node 端体系(无 jest),104 项;发布走 WorkBuddy 托管通道。
架构
五层分离:pages / api.js 数据访问层(统一 {data, error}、显式列清单)/ logic.js 纯函数层(连击、七格、进度,零副作用可单测)/ ui.js 安全调用层(原生 wx 只当增强)/ platform-errors.js 错误翻译层。数据侧三条原则:权限收服务端(RLS + SECURITY DEFINER RPC)、判定在读时做(次日自动通过,无定时任务)、原生 UI 缺失不中断流程。



评论