A SOCIAL APP FOR AMATEUR TENNIS · BUILT WITH AGI

把你的网球水平
变成 可信 的名片 Tennisor — your tennis credential, on a verifiable card.

约球前不知道对方水平,是网球社交里最大的摩擦成本。 Tennisor 把 NTRP 评分 + 球友互证 + 六维能力图,做成一张你可以拿出来 / 分享出去的水平凭证。

6 维能力图
3 登录路径
50+ 界面设计
9 实施 Plan
LV. 3  STREET PLAYER
街区好手
3.5
N T R P
张明
上海 · 徐汇网球中心
12 位球友确认
72% 置信
SCROLL
THE PROBLEM

为什么我们需要一张
球场上的"身份证"?

网球是一项对匹配精度要求极高的运动 —— NTRP 差 0.5 就可能完全打不起来。但现有约球方式中,对方的真实水平完全是个黑箱。

PAIN POINT A · 信息不对称

"约了一场,打完才发现完全不在一个水平。"

微信群、口头介绍里的"3.5 水平"是自我评估、没有约束力。每一次约球都要反复试探、打完才知道合不合适 —— 这是网球社交里最大的摩擦。

PAIN POINT B · 关系散落

"打过 30 个球友,没有一个能整理出来。"

线下网球高度依赖社交网络 —— 球友是球场认识的、朋友推荐的、群里约的。但每个人的球友关系、打球记录、口碑都散在群聊和私信里,没法沉淀。

THE APPROACH

用三件事改变这个状态

水平凭证是抓手,球友档案是差异化,AI 叙述者是冷启动的解法 —— 三者合力,把线下散落的关系搬到线上。

CREDENTIAL

水平凭证 · LevelCard

NTRP 评分 + 6 维能力雷达 + 球友互证 + 置信度,集成在一张分享出去就让人懂的"水平名片"。

  • 段位称号比数字更适合传播
  • 置信度让"3.5"不再是一句空话
  • 双层卡片,Apple Wallet 既视感
PLAYER PROFILES

球友档案 · 拉新引擎

你可以为认识的球友建档(私密 → 协作 → 公开 → 认证四阶段)。真人注册时,发现"已有 3 位朋友为我建档"是关键转化点。

  • 多人共建 + 相似度合并
  • 真人认领即继承段位与关系
  • 承诺条款 + 头像本人上传防滥用
AI NARRATOR

AI 档案叙述者 · 中道派

AI 是档案的"叙述者",不是球友的"扮演者"。它做统计、做趋势、做第三人称叙述;它绝不冒充本人、不主动约球、不私聊。

  • 明确标注"档案 AI ✦"前缀
  • 基于真实记录,不捏造内容
  • 合规优先,避免肖像权/品牌风险
DESIGN PHILOSOPHY

5 条不可妥协的原则

这不是好看与否的判断,是"什么不做"的纪律。一旦定下,所有屏幕共同遵守。

01
减法美学
每一个元素都有目的,可有可无的就去掉。卡片的四角角标比一整圈描边更克制。
02
字重对比
段位中文 700 / NTRP 数字 600 / 副标题 500 —— 差 100 是节奏点,差 300 是焦点抢夺。
03
颜色克制
单屏橄榄青 ≤ 4 处,单屏色相数 ≤ 4 种。主色场域是中性白 + 深绿墨,绿色只在节奏点。
04
网球语言
不靠插图、奖章、球拍讲网球。用四角球场角标 + 六维雷达 + 橄榄青 —— 几何与排版讲故事。
05
阴影柔和
英雄卡 + 内容卡两层浮起,像 Apple Wallet 一样自然贴附。没有重投影、没有 3D。
DESIGN SYSTEM

活的设计令牌

不是 Figma 里的色板,是工程实施时直接消费的 token。每个 hex、每个像素、每个圆角都有名字。

配色
PALETTE
卡片白#FFFFFF
页面底#F2F2F7
主文字
深绿墨#1A3527
次文字
灰绿#4A6051
点缀
橄榄青#94B83A
pill 文字
深橄榄#6F8B22
弱文字
iOS 灰#8E8E93
链接
iOS 蓝#007AFF
字体
TYPOGRAPHY
3.5
56 · 600 · -1.5px
tabular-nums
街区好手
28 · 700 · -0.5px
PingFang SC
张明
17 · 600
用户名
LV. 3  STREET PLAYER
10 · 700 · 2px
橄榄绿小标
圆角枚举
RADII
4
12
14
18
22
28
40
100
DESIGN EVOLUTION

LevelCard 的 5 个版本
怎么走到今天这一张

"克制"不是一开始就有的,是反复试错试出来的。下面是水平名片从激进 → 收敛的 5 个真实版本,每一版的决策点都被记录下来。

游戏卡牌派
第一稿走"球员卡 / 收藏卡"路线 —— 渐变 + 全息光泽 + ★NTRP CERTIFIED 徽章。视觉刺激强,但太"嗨",丢掉了高级感。
深林绿精修
删掉全息和徽章,换成深林绿底 + 米白文字。问题:颜色太重,整张卡显得"压"。
暖米白派
把深绿翻成米白,绿色退到点缀。明度抬升一大截。问题:米色仍偏暖,不够"原生 iOS"。
字重加粗
数字从 light 300 升到 semibold 600。问题修复:3.5 不再"飘",与段位名 700 形成 100 级差节奏。
纯白主调(定稿)
外屏改 iOS systemGroupedBackground,卡片纯白。绿色作为节奏点保留 3 处。这就是今天 hero 上漂浮的那张。
AGI CO-CREATION

这不是"AI 帮我写代码"
是"AI 是我的产品合伙人"

我(创作者)是一名网络安全公司的技术总监,懂安全、懂研发、懂 AI。Tennisor 是我用 AGI 一边设计一边实现的项目 —— 下面是 AI 的真实参与方式。

PHASE 1

头脑风暴

从两个用户需求开始,反复对话 ~20 轮,把产品打磨成今天这个形态。AI 提出了"球友档案"的合规边界设计、"中道派 AI 叙述者"的概念。

AGI 贡献
  • 风险识别(肖像权 / AI 模拟伦理 / 滥用风险)
  • 方案重命名("虚拟账号" → "球友档案")
  • 三阶段可见性设计
PHASE 2

UI 设计

用 Claude Design 出图。先写设计 prompt(颜色 token、字重对比、单屏 olive ≤ 4 等硬约束),再让 AI 出每一屏的高保真稿。LevelCard 反复 5 版才定。

AGI 贡献
  • 11 款 App 图标方向探索
  • 水平名片 + 球友列表 + 对局详情 + 动态流
  • 注册登录三路径(手机 + 微信 + Apple)全流程
PHASE 3

实施代码

Claude Code 跑 TDD 节奏:每个任务先写失败测试、看到失败、最小实现、看到通过、提交。整个 backend skeleton(含 PG / Redis / Docker / CI)由 subagent-driven 流程跑完。

AGI 贡献
  • Plan 0:仓库骨架 + 12 任务 24 提交
  • 每任务双轮 review(spec 合规 + 代码质量)
  • 设计的所有偏差都同步回 plan 文档
诚实地说

AI 不是替代我,是放大我。 所有产品判断、所有商业取舍、所有视觉品味的最终决定都是我做的。 AI 替我跑细节、替我做 reviewer、替我写 boilerplate、替我盯纪律。 当 AI 出错时(它会出错,比如 Plan 文档里曾经的 5 个 bug),我修; 当 AI 自作主张越界时(它会越界,比如曾擅自停掉无关容器),我把它叫停。 协作不是甩手掌柜,是更密集的对话。

TECH ARCHITECTURE

三端独立 + 一份后端

iOS 原生 + 微信小程序两端共享一套 Python/FastAPI 后端。Apple Silicon 本地开发,腾讯云生产部署,DeepSeek-V3 提供 AI 叙述能力。

CLIENT · iOS
SwiftUI App

iOS 16+,Apple Silicon 原生构建,iPhone 17 Pro 模拟器为本地目标。xcodegen 维护项目,SwiftUI 严格并发模式。

Swift 5.9 SwiftUI iOS 16+ Xcode 26 xcodegen
SERVER · BACKEND
FastAPI

Python 3.12 + 异步 SQLAlchemy 2.0 + Alembic + Pydantic v2。uv 管理依赖、ruff 统一代码、mypy strict 检查类型、pytest 跑 TDD。

FastAPI 0.118 SQLAlchemy 2.0 PostgreSQL 15 Redis 7 uv 0.5.11 Docker ruff · mypy
CLIENT · MINI PROGRAM
微信小程序

原生 WXML/WXSS/JS。仅做"轻量入口" —— 看名片、扫码加好友、分享落地。深度功能(创建档案、AI 互动)引导到 iOS。

WXML / WXSS 原生小程序 订阅消息
ROADMAP

从基础设施到最终上线
需要 9 个 Plan

每个 Plan 一个子系统,对应一个 feature 分支 + PR + Code Review 流程。Plan 0 已并入 main,Plan 1 在执行中。

0
✓ MERGED
Foundation
仓库骨架、CI、Docker、ICP 备案 / 软著 / 腾讯云清单。Plan 0 已完整落地 main。
1
🚧 IN PROGRESS
Backend · Auth & User
手机号 / 微信 / Apple 三条登录路径,JWT + 旋转 refresh,球场字典。20 任务进行中。
2
⏳ NEXT
Backend · Profile & Rating
球友档案、互评、NTRP 加权计算、置信度、信誉值。差异化核心。
3
Backend · Profile Lifecycle
相似度匹配 + 合并 + 真人认领 + 防滥用 + 申诉流程。
4
Backend · Social & AI
Feed、评论、关注、通知。DeepSeek 接入 AI 叙述者。分享卡片图片生成。
5
iOS · Scaffold + LevelCard
Xcode 项目 + 设计 token + LevelCard 像素级实现(mock 数据先行)。
6
iOS · Auth + Onboarding
网络层 + 登录 + 注册引导流程。承接已完成的 onboarding 设计。
7
iOS · Full Features
创建档案 + 互评 + Feed + 社交 + 通知。Phase 1 MVP 完整功能集。
8
Mini Program + 联调 + 灰度
小程序轻量入口 + E2E 测试 + 200 人内测 + 公测灰度。