Appearance
本地开发环境
各模块依赖的技术栈不同,建议提前准备好以下基础设施,并按照模块拆分管理:
通用依赖
- Git:保持三个业务仓库与文档仓库同步。
- Node.js ≥ 20:推荐使用
nvm或Volta管理版本。管理前端要求 Node 22,后端在 Node 18+ 测试通过。 - 包管理器:可选
pnpm(推荐)或npm。本文档默认使用pnpm。 - MySQL 8.x:用于存放后台管理、内容资源以及 App 配置数据,库名默认为
937bmovietest。 - Redis 6+:移动端首页存在缓存策略,默认本地
127.0.0.1:<REDIS_URL_PORT>。
建议使用 Docker Compose 管理 MySQL 与 Redis,或保持本地服务常驻。
移动端 App(movieappKT)
- Android Studio Koala+(支持
compileSdk 36)。 - Android SDK 21 起,目标 SDK 36。
- JDK 11:Gradle 构建已将
sourceCompatibility指向 Java 11。
启动步骤:
- 在 Android Studio 中打开
/Users/937bb/Documents/project/movieappKT。 - 同步 Gradle,确保
libs.versions.toml中的依赖成功下载。 - 使用
Run > Run 'app'在模拟器或真机上启动。
常见配置:
- 网络接口根地址在数据层(例如
HttpHomeApi)中维护,如需切换环境请统一封装。 docs/目录保留首页/筛选/搜索/播放的原始接口说明,更新接口后务必同步本仓库。
后端服务(movieappAdmin-backend)
- Node.js 18+ 与 pnpm:例如
pnpm install、pnpm start:dev。 - MySQL:执行
init.sql初始化基础权限、角色与视频表结构。 - Redis:用于首页缓存和弹幕数据转存,端口由
REDIS_URL_PORT控制。
启动流程:
bash
pnpm install
cp .env.example .env # 若无示例,可直接创建 .env.local
pnpm start:dev核心环境变量(参考 SharedModule):
| 变量名 | 说明 |
|---|---|
DB_HOST / DB_PORT | 数据库地址与端口,默认 127.0.0.1:3306。 |
DB_USER / DB_PWD | 数据库账号与密码。 |
DB_DATABASE | 使用的库名,默认 937bmovietest。 |
REDIS_URL_PORT | Redis 端口,例如 6379。 |
JWT_SECRET、JWT_EXPIRES_IN | 认证模块使用,需与前端保持一致。 |
输出日志包含接口访问记录(LoggerMiddleware),便于排查移动端与后台请求。
后台管理前端(movieappAdmin-frontend)
- 遵循
package.json中的 Volta 约束:Node.js 22.20.0。 - 安装与启动:
bash
pnpm install
pnpm dev- 接口基础地址在
src/service/request等配置文件中维护,切换环境时更新.env.*与后端保持一致。 - 登录前需确保后端
auth/captcha、auth/login可用。
文档与发布页(movieappDocs)
本仓库使用 VitePress。
bash
pnpm install
pnpm run docs:dev文档修改完成后执行 pnpm run docs:build 生成静态资源(输出 docs/.vitepress/dist),可结合任意静态站点托管方案部署。