面向科技数码爱好者的发布会信息聚合平台。追踪全球科技品牌发布会时间表、新品信息,支持线索提交和积分系统。
- 发布会列表 — 按日期、品牌、类型筛选,支持收藏
- 日历视图 — 月历形式浏览发布会日程
- 发布会详情 — 品牌、日程、产品发布、直播链接
- 用户认证 — 微信登录 + 手机号注册/登录
- 线索提交 — 用户提交发布会线索,管理员审核采纳
- 积分系统 — 线索被采纳可获积分,排名奖励
- 管理后台 — 发布会 CRUD、品牌分类管理、线索审核
| 层级 | 技术 |
|---|---|
| 前端 | uni-app(微信小程序 + H5) |
| 后端 | Node.js + Express |
| 数据库 | MongoDB (Mongoose) |
- Node.js >= 18
- MongoDB >= 6.0
cd backend
cp .env.example .env # 编辑环境变量
npm install
npm start # 默认端口 3001使用 HBuilderX 打开 frontend/ 目录,选择运行到微信小程序或 H5。
├── backend/
│ ├── server.js # 入口 + 中间件配置
│ ├── models.js # Mongoose 模型
│ ├── utils.js # 工具函数
│ ├── seed.js # 种子数据
│ ├── routes/
│ │ ├── auth.js # 用户认证
│ │ ├── admin.js # 管理员接口
│ │ ├── events.js # 发布会 + 类型 + 上传
│ │ ├── brands.js # 品牌分类 + 品牌
│ │ ├── submissions.js # 线索提交
│ │ └── points.js # 积分
│ └── middleware/
│ ├── auth.js # requireUser / requireAdmin
│ └── rateLimit.js # 限流中间件
├── frontend/
│ ├── pages/ # 页面
│ ├── components/ # 组件
│ └── common/ # api.js, config.js, utils.js
└── _deprecated/ # 废弃的云函数和 gitviz
| 变量 | 说明 | 默认值 |
|---|---|---|
MONGODB_URI |
MongoDB 连接字符串 | mongodb://localhost:27017/fabuhui |
PORT |
服务端口 | 3001 |
NODE_ENV |
运行环境 | development |
ADMIN_TOKEN |
管理员 API Token | 开发环境有默认值 |
ADMIN_PASSWORD |
管理员登录密码 | 开发环境有默认值 |
CORS_ORIGINS |
CORS 白名单(逗号分隔) | 不设置则允许所有 |
WX_APPID |
微信小程序 AppID | — |
WX_SECRET |
微信小程序 AppSecret | — |
MIT