# CityWalk 图章收集系统

游客在城市不同点位扫描二维码，收集图章，集满兑换奖品。兑换后图章清空，可重复挑战。

## 快速开始

```bash
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）
```
