dbe8ea546095a169d4265d60347dff451a603868
- 新增 Article 数据模型 + 迁移(title/subtitle/body/coverImage/caption) - 后端:公共 /api/articles 查询接口 + 管理端 CRUD/上传/二维码 - 前端:移动端 /article/:id 阅读页(Playfair + 纸张肌理 + 首行缩进) - Admin:新增文章管理三页(列表/表单/二维码)与侧栏入口 - 导入 6 篇点位解说词:朝天宫/七家湾/运渎/打钉巷/绒庄街/熙南里 - Admin 二维码页增加「复制链接(写入 NFC)」按钮 - 落地页步骤文案从扫码改为 NFC 触碰 - Dockerfile + entrypoint 增加 articles 图片回灌 - 修复 deploy-stamp skill 构建轮询卡住(pgrep 模式错误) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
CityWalk 图章收集系统
游客在城市不同点位扫描二维码,收集图章,集满兑换奖品。兑换后图章清空,可重复挑战。
快速开始
pnpm install
cp .env.example .env
pnpm db:push
pnpm db:seed
# 启动(需同时运行)
pnpm dev:server # API :3000
pnpm dev:web # 前端 :5173
- 用户端:http://localhost:5173
- 管理后台:http://localhost:5173/admin(密钥见
.env中ADMIN_API_KEY)
技术栈
| 前端 | 后端 | 数据库 |
|---|---|---|
| React 19 + Vite 8 + Tailwind CSS 4 | Express 5 + TypeScript | SQLite (Prisma) |
项目结构
packages/
shared/ Prisma client + 共享类型
server/ Express API(认证、图章、兑换、管理)
web/ React SPA(移动端 H5 + PC 管理后台)
prisma/
schema.prisma 数据模型(User, Stamp, Collection, RedemptionRule, Redemption)
Description
Languages
TypeScript
94.4%
CSS
3.9%
Dockerfile
0.8%
Shell
0.5%
HTML
0.4%