Math++ 是一个全面的数学学习和竞赛准备平台,专注于提供高质量的数学教育资源和在线练习系统。
- 分类展示(几何、代数、数论等)
- 支持数学公式的优雅渲染
- 中英双语内容支持
- 知识点学习进度追踪
- 按难度和类型分类的题库
- 实时答题反馈
- 详细的解答说明
- 个人练习记录追踪
- 75分钟标准化测试
- 自动计时和提交
- 实时进度追踪
- 完整的成绩报告
- 国际数学竞赛信息
- 按国家分类的竞赛介绍
- 中英双语竞赛说明
- 详细的竞赛准备指南
- 学习进度追踪
- 个性化设置
- 订阅管理
- 账户信息管理
- 面向非技术用户的简化界面
- 向导式规则创建流程
- 内置规则类型说明与推荐
- 实时数据验证测试
- 技术/简易模式自由切换
- 支持所有JSON Schema验证规则类型
- 前端框架: React 19
- 构建工具: Vite 6
- UI 组件:
- Ant Design 5.x
- Ant Design Pro Components
- ProCard, ProTable 等高级组件
- 状态管理: React Hooks + Redux Toolkit
- 路由: React Router v7
- 数学公式渲染: KaTeX
- Markdown 渲染: Marked + Highlight.js
- HTTP 请求: Axios
- 样式处理: CSS Modules
src/
├── api/ # API 接口
├── components/ # 可复用组件
│ ├── common/ # 通用组件
│ └── ErrorPages/ # 错误页面
├── i18n/ # 国际化资源
└── pages/ # 页面组件
- 安装依赖
npm install- 启动开发服务器
npm start- 构建生产版本
npm run build- 预览生产构建
npm run preview- 运行测试
# 运行所有测试
npm test
# 运行特定测试
npm run test:single "测试名称"
# 运行特定文件的测试
npm run test:file path/to/test/file.test.js项目使用Vite的环境变量系统,详细请参见VITE_MIGRATION_GUIDE.md。
环境变量应在代码中通过以下方式访问:
import { getEnv } from './utils/envHelper';
// 使用环境变量,提供默认值
const apiUrl = getEnv('VITE_APP_API_URL', 'http://localhost:8888');- Node.js >= 14.0.0
- npm >= 6.14.0
- 账号密码登录
- 手机验证码登录
- 自动登录保持
- Token 基础认证
- 分类浏览
- 详情展示
- 学习进度跟踪
- 公式渲染
- 分类题库
- 实时答题
- 自动批改
- 解答详情
- 计时考试
- 自动提交
- 进度保存
- 成绩分析
- 竞赛介绍
- 分类浏览
- 详细说明
- 备考指南
项目使用 RESTful API,主要包括:
/api/login: 用户认证/api/knowledge/*: 知识点相关/api/problems/*: 试题相关/api/exam/*: 考试相关/api/competitions/*: 竞赛相关
- Fork 本仓库
- 创建特性分支
- 提交更改
- 发起 Pull Request