← 全部作品
案例研究 · 创业项目

MatchMate

从浏览器里的原型,到正在接受 App Store 审核的应用,并围绕它打造了品牌、官网和后台管理系统。

问题
业余足球靠混乱的群聊来组织。
我的角色
联合创始人。负责产品方向、品牌、设计、开发和内容。
方法
把范围缩小到一项运动,先做成浏览器原型来验证,再在真实后端上重建,并进行安全审查。
交付内容
iOS 与 Android 应用、设计系统、官网、Instagram 内容,以及 Founder HQ。
成果
应用已于 2026 年 10 月 21 日重新提交 Apple。官网已上线。上线前 Reels 观看量超过 20 万。
A问题

组织一场球赛,不该比踢球本身还难。

业余足球全靠群聊。有人提议一个时间,回复散落在不同的对话里,有人前一晚临时退出,最后谁也说不清到底谁会来、球场在哪里。

MatchMate 把整场比赛放在一个地方:找到附近的比赛、报名加入、看看还有谁参加,组织者也不必再一个个去催人。

B范围决策

最有价值的工作,是决定哪些不做。

最初的计划很宽泛:所有运动、场地预订、支付、社交动态。要做出一个真正能用的版本,就必须有意识地做减法。

决策 1

先做足球

设计系统原本按六项运动来写。第一版只上线一项,确保每个界面都能认真开发和测试。

之前足球、板式网球、网球、篮球、跑步第一版足球
决策 2

应用内不收款

在应用内收款会带来监管、应用商店规则和风险。球员们在应用外自行结算,就像他们一直以来的做法。

之前原计划支持应用内支付第一版“费用直接与组织者商定。”
决策 3

少要数据

Apple 询问为什么注册时要填写出生日期和城市。这两项对踢球都不是必需的,于是全部删除。

之前注册时填写出生日期和城市现在只收集应用真正需要的信息
C品牌与设计系统

城市运动文化,加上高端产品的精致质感。

品牌方向融合了两种气质:Urban Premium 带来结构感与沉稳,Street Editorial 带来个性。默认使用深色模式,浅色模式作为备选。我把这一切写成了设计系统,让每个界面、帖子和页面都遵循同一套规则。

MatchMate 图标
MatchMate

默认深色模式 · 绿色用于操作 · 暖橙色用于社交时刻

背景#0B0F0C

表面#1E2B22

强调色#66D17A

暖色#FF6A2A

气质

大胆、有表现力,但不杂乱;高端、有条理,但不沉闷。

避免

千篇一律的创业公司模板、花哨的游戏风界面,以及未经授权的俱乐部官方队徽。

按钮

每个界面只有一个绿色主操作。暖橙色只用于社交亮点。

动效

快速、流畅、克制。只在关键时刻加强。

D应用

围绕一场比赛的完整过程来设计。

应用不是一张功能清单,而是跟随真实发生的过程:有人找到一场比赛,组织者凑齐人数,大家一起上场,而且即使和还不认识的人一起踢,每个人也都感到安心。

登录界面,可选 Apple、Google 或邮箱登录
01 · 登录

Apple、Google 或邮箱。第一个界面就可以切换语言。

「比赛」界面,显示一场 7 人制比赛和筛选条件
02 · 比赛

附近的比赛,可按公开范围和赛制筛选,按时间或距离排序。

创建比赛第一步:赛制、日期、时间和地点
03 · 创建

共三步。一开始就提示组织者:场地由其自行负责。

创建比赛的确认步骤,费用与组织者商定
04 · 确认

费用与组织者商定,应用里写得清清楚楚。

社群界面,包含聊天、比赛、成员和规则标签
05 · 社群

固定的球友圈有自己的比赛、聊天、成员和规则。

球员资料页,显示水平、参赛场次和评分
06 · 个人资料

技术水平、参赛场次,以及作为组织者和球员的分开评分。

来自 iOS 版本的真实界面 · 左右滑动 →

发现
  • 发现附近的比赛
  • 比赛和球场地图
  • 仅在应用打开时使用位置
组织
  • 几步就能创建比赛
  • 用邀请码邀请球员
  • 比赛满员时的候补名单
  • 组织者管理名单的工具
一起踢球
  • 面向所有参赛者的比赛聊天
  • 拥有独立聊天和规则的社群
  • 组织者和球员评分
信任与安全
  • 举报和屏蔽
  • 私密资料与关注申请
  • 头像经审核后才会显示
  • 可在应用内直接注销账户
英文版「比赛」界面
欧洲葡萄牙语版「比赛」界面
EN · PT-PT

每个界面都有英语和欧洲葡萄牙语版本,用户在第一个界面就能切换语言。

使用 Apple 或 Google 登录 · 可用 Face ID 锁定手机上的账户设置 · 仅在应用打开时使用位置。

E开发过程

从“看起来像应用”到“真正像应用一样运转”。

第一版看起来已经完成,其实没有:任何人输入任意邮箱就能进入,数据也只存在手机上。那天的项目笔记写得很直白。

“如果一个小孩输入任意邮箱就能进去,那就不是真正的登录系统。”MatchMate 项目笔记,2026 年 4 月 · 译自英文
  1. 在 Expo Snack 中做原型

    在安装任何东西之前,先在浏览器和手机上验证想法。

  2. 正式的工程项目

    本地开发、Git,以及面向 Apple 和 Google 的构建配置。

  3. 真实账户与真实后端

    使用 Supabase 实现登录、数据库和服务器函数,并通过数据库规则决定谁能查看和修改哪些内容。

  4. 安全审查

    分阶段审查权限、通知和照片存储,每一轮都记录成文后再进入下一步。

  5. 发布关卡

    为提交前的最后几个构建设定严格规则,避免最后关头混入新内容。

技术说明:发布关卡与自动检查
Build 27

在真实手机上完整测试

只有在代码中已无已知阻塞问题时才会创建。

Build 28

只修复问题

Build 27 之后不再添加新功能。

提交之前

对照最新规则检查

届时重新阅读 Apple 和 Google 的要求,而不是凭记忆。

一条命令在构建前运行 18 项自动检查

syntaximportshooksauthauth callbacksecurityprivileged functionsi18nlegalnotificationsmapslinksprofile navratingsuxaccessibilityandroid targetscope

我如何使用 AI:我借助 AI 编程助手(ChatGPT、Codex 和 Claude)开发了 MatchMate。方向由我来定,产品和设计决策由我来做,工作由我审核,并在真机上测试。大部分代码由助手编写,但上线的内容由我负责。

FApp 审核

Apple 提出了一个合理的问题。

审核期间,Apple 指出注册流程收集了出生日期和城市。MatchMate 运行并不需要这两项。我删除了这两个字段,并于 2026 年 10 月 21 日重新提交。应用目前再次处于审核中。

修改前的注册界面,要求填写城市和出生日期 已删除 已删除
审核前的注册界面 · 真实截图

注册 · 重新提交的版本

全名用户名邮箱密码确认密码继续

保留的字段 · 示意图

我带到客户项目中的经验:表单上的每一个字段,都是对“为什么需要这项数据”的承诺。如果给不出好的理由,这个字段就该删掉。

G网站

少一点安排,多一点上场。

官网的任务是在应用上线前让人一眼看懂这个想法:一句话讲清问题,一段随滚动逐步组建比赛的介绍,以及一个可以在浏览器里直接点击体验的应用演示。

网站还收录了 Apple 和 Google 要求的文件:使用条款、隐私、安全、联系方式,以及公开的账户注销页面,提供英语和葡萄牙语版本。这些法律页面与应用内显示的内容出自同一来源,因此两者永远不会互相矛盾。设计经过多轮迭代,包括早期在 Wix 上的尝试,最后迁移到 Cloudflare 托管。

matchmateapp.app
MatchMate 官网首屏:“Less planning. More playing.”,旁边是一部显示应用的手机
首屏

用四个词说清承诺,旁边就是真实的应用。

比赛流程
动画球场版块:“Enough talk. Let's play.”
比赛流程

随着滚动组建比赛:球员一步步填满动画球场,直到开球。

差异所在
宣言版块:“Less time chasing. More time playing.”
差异所在

一个明亮、海报式的停顿,直截了当地说明好处。

互动演示
互动演示版块:“Try it yourself”,手机上显示应用的登录界面
亲自试试

浏览器内的演示账户。无需安装,不保存也不发送任何数据。

H内容与成果

十条 Reels,超过 20 万次观看,上线前 960 位关注者。

我用 Canva 制作了 MatchMate 的 Instagram:葡萄牙语和英语的短 Reels,把幽默、场边画面和在群聊里约球的那种熟悉的混乱结合在一起。每条 Reels 都使用了 Instagram 自带的推广功能,而账号是在应用还标着“即将推出”时成长起来的。

960关注者
20 万+10 条 Reels 总观看量
40,745最热门 Reels 观看量
438该条带来的新关注
MatchMate 的 Instagram 主页,960 位关注者
@matchmatept
MatchMate 十条 Reels 的网格及各自观看量
10 条 Reels · 每条的观看量
最热门 Reels 的推广数据:40,745 次观看,覆盖 34,989 个账户
最热门 Reels · 推广数据
最热门 Reels

“POV: pre-game passes with bro”

时长 19 秒,8 月 24 日发布。

观看次数
40,745
覆盖账户
34,989
点赞
1,001
新关注
438
最近一次推广花费
€5.93
带来的主页访问
133
每次访问成本
€0.04

数据来自 Instagram Insights(一年视图),采集于 2026 年 10 月 27 日。所示花费仅为最热门 Reels 最近一次推广的费用。

I我的收获

如今我带到每个项目中的经验。

  • 看起来完成,不等于真的完成。

    精致的界面背后,也可能是假的登录或根本没有真实数据。我会检查那些看不见的部分。

  • 测试与正式环境绝不互通。

    测试版本只连接测试资源,因此测试永远不会改动真实数据。

  • 只收集必要的信息。

    每多一个字段,就多一个日后要向用户和审核方解释的隐私问题。

  • 电脑不是手机。

    滚动、安全区域和通知在真实 iPhone 上表现不同。所以我在真机上测试。

下一个案例Founder HQ →
联系

聊聊您的项目吧。

一封邮件就可以开始。点击按钮会打开一份简短的模板,方便您填写。我的工作语言是英语和葡萄牙语。

发邮件咨询项目 →

更习惯用 LinkedIn?欢迎在那里给我留言。

接下来会怎样

  1. 01我会在两个工作日内回复。
  2. 02我们进行 30 分钟的免费沟通,聊聊您的业务和需求。
  3. 03您会收到一份写明固定价格和日期的书面方案。在您同意之前,没有任何约束。

最好告诉我

您的业务是做什么的、需要什么、希望何时上线,以及大致预算。

申请免费项目

请介绍一下您的业务。我会在两个工作日内回复。申请不保证入选:将按契合度和范围挑选两个项目。

项目类型
企业做什么?网站需要实现什么目标?

隐私。MONFORTE 仅将您的申请用于评估和回复。申请会被安全保存,只发送到我本人的邮箱,绝不出售或分享。未入选的申请会在 180 天后自动删除,您也可以随时要求删除。