LeetCode Contest Rating Predictor 安装和配置指南
1. 项目基础介绍和主要编程语言
LeetCode Contest Rating Predictor 是一个用于预测 LeetCode 周赛和双周赛评分的开源项目。该项目的主要目的是帮助用户在比赛结束后快速获取预测的评分结果。项目的主要编程语言是 Python,并且使用了多种现代技术和框架来实现其功能。
2. 项目使用的关键技术和框架
该项目使用了以下关键技术和框架:
- Python: 作为主要的编程语言,用于实现核心算法和后端逻辑。
- FastAPI: 用于构建高效的 RESTful API。
- Numba: 通过 Just-In-Time (JIT) 编译器加速 Elo 评分算法的执行。
- Fast Fourier Transform (FFT): 用于加速评分预测的算法。
- MongoDB: 作为 NoSQL 数据库,用于存储和管理数据。
- Beanie: 作为 MongoDB 的对象文档映射器 (ODM)。
- React: 用于构建前端用户界面。
- TailwindCSS 和 DaisyUI: 用于设计和实现现代化的 CSS 框架和组件库。
3. 项目安装和配置的准备工作和详细安装步骤
准备工作
在开始安装之前,请确保您的系统上已经安装了以下软件和工具:
- Python 3.10 或更高版本
- Node.js 和 npm(用于前端开发)
- Git(用于克隆项目仓库)
- MongoDB(用于数据库服务)
详细安装步骤
3.1 克隆项目仓库
首先,使用 Git 克隆项目仓库到本地:
git clone https://github.com/baoliay2008/lccn_predictor.git
cd lccn_predictor
3.2 配置 MongoDB
确保 MongoDB 服务已经启动,并在项目目录下创建一个配置文件:
cp config.yaml.template config.yaml
vi config.yaml
在 config.yaml
文件中填写您的 MongoDB 连接信息。
3.3 安装后端依赖
创建并激活虚拟环境,然后安装后端依赖:
python3.10 -m venv venv
source venv/bin/activate
pip3 install -r requirements.txt
3.4 启动后端服务
使用以下命令启动后端服务:
python main.py
uvicorn api.entry:app --host 0.0.0.0 --port 55555
3.5 安装前端依赖
进入前端目录并安装前端依赖:
cd client
npm install
3.6 配置前端
编辑前端配置文件,将 baseUrl
指向您的本地后端服务:
vi src/data/constants.js
将 baseUrl
设置为 "http://localhost:55555/api/v1"
。
3.7 启动前端开发服务器
使用以下命令启动前端开发服务器:
npm start
3.8 构建前端项目
如果您准备发布项目,可以使用以下命令构建前端项目:
npm run build
4. 总结
通过以上步骤,您已经成功安装并配置了 LeetCode Contest Rating Predictor 项目。现在您可以在本地运行该项目,并根据需要进行进一步的开发和定制。