docs:重构README和贡献者文档,完善项目架构说明和测试指南

- 重构README结构,按新开发者学习流程组织内容
- 更新项目架构图和技术栈说明,基于实际代码结构
- 创建CONTRIBUTORS.md,记录所有贡献者信息和统计
- 添加TESTING.md测试指南,支持无依赖快速测试
- 创建docs/ARCHITECTURE.md详细架构设计文档
- 优化.env.example配置,支持测试和生产环境切换
- 添加跨平台测试脚本(test-api.ps1/test-api.sh)
- 删除冗余测试文件,统一测试入口
- 更新所有链接为正确的Gitea仓库地址
- 添加MIT开源协议文件
This commit is contained in:
moyin
2025-12-18 15:03:09 +08:00
parent d322db242d
commit 7924cfb201
9 changed files with 1017 additions and 423 deletions

View File

@@ -1,30 +1,50 @@
# 环境配置模板
# 复制此文件为 .env 并根据需要修改配置
# 数据库配置
# DB_HOST=localhost
# ===========================================
# 测试模式配置(开发/测试环境推荐)
# ===========================================
# 使用以下配置可以在没有数据库和邮件服务器的情况下进行测试
# 1. 复制此文件为 .env
# 2. 保持数据库和邮件配置为注释状态
# 3. 运行 npm run dev 启动服务
# 4. 运行测试脚本:./test-api.ps1 (Windows) 或 ./test-api.sh (Linux/macOS)
# 应用配置
NODE_ENV=development
PORT=3000
LOG_LEVEL=debug
# JWT 配置
JWT_SECRET=test_jwt_secret_key_for_development_only_32chars
JWT_EXPIRES_IN=7d
# Redis 配置(测试模式:使用文件存储)
USE_FILE_REDIS=true
REDIS_HOST=localhost
REDIS_PORT=6379
REDIS_PASSWORD=
REDIS_DB=0
# ===========================================
# 生产环境配置(取消注释并填入真实数据)
# ===========================================
# 数据库配置(生产环境取消注释)
# DB_HOST=your_mysql_host
# DB_PORT=3306
# DB_USERNAME=your_db_username
# DB_PASSWORD=your_db_password
# DB_NAME=your_db_name
# 应用配置
NODE_ENV=production
PORT=3000
LOG_LEVEL=info
# Redis 配置(生产环境取消注释并设置 USE_FILE_REDIS=false
# USE_FILE_REDIS=false
# REDIS_HOST=your_redis_host
# REDIS_PORT=6379
# REDIS_PASSWORD=your_redis_password
# REDIS_DB=0
# JWT 配置(如果有的话
JWT_SECRET=your_jwt_secret_key_here_at_least_32_characters
JWT_EXPIRES_IN=7d
# Redis 配置(用于验证码存储)
# 生产环境使用真实Redis服务
USE_FILE_REDIS=false
REDIS_HOST=your_redis_host
REDIS_PORT=6379
REDIS_PASSWORD=your_redis_password
REDIS_DB=0
# 邮件服务配置
# 邮件服务配置(生产环境取消注释
# EMAIL_HOST=smtp.gmail.com
# EMAIL_PORT=587
# EMAIL_SECURE=false
@@ -32,5 +52,6 @@ REDIS_DB=0
# EMAIL_PASS=your_app_password
# EMAIL_FROM="Whale Town Game" <noreply@whaletown.com>
# 其他配置
# 根据项目需要添加其他环境变量
# 生产环境设置(生产环境取消注释)
# NODE_ENV=production
# LOG_LEVEL=info