https://github.com/talkgo/tgoj
TalkGo Online Judge
https://github.com/talkgo/tgoj
Last synced: 2 months ago
JSON representation
TalkGo Online Judge
- Host: GitHub
- URL: https://github.com/talkgo/tgoj
- Owner: talkgo
- License: mit
- Created: 2021-01-16T07:13:52.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2021-02-23T07:01:32.000Z (over 4 years ago)
- Last Synced: 2024-04-14T09:04:47.209Z (about 1 year ago)
- Language: Go
- Homepage: https://talkgo.org/c/algo/21
- Size: 33.2 KB
- Stars: 8
- Watchers: 2
- Forks: 2
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# TGOJ(TalkGo Online Judge)
属于TalkGo自己的Online Judge。目前正处于开发阶段。#### 工作提要
预期有三到四轮的迭代,每次两到三周
| 阶段 | 内容 | 完成情况 | 备注 |
| :--------: | :----------------------------------------------------------: | :------: | :--: |
| 第一次迭代 | 1. 后端架构设计
2. 判题系统设计与实现 | 完成 | |
| 第二次迭代 | 1. 实现基本前端页面
2. 数据库搭建以及相关表的设计
3. 登录注册模块
4. 前后端数据交互 | 进行中 | |
| 第三次迭代 | 题目录入模块,前端界面优化,鉴权.... | 计划 | |
| 第四次迭代 | 比赛,题解...... | 计划 | |#### 具体需求
| 需求 | 详情 | 进度 |
| :---------------------------: | :----------------------------------------------------------: | :----: |
| 1. 判题系统设计与实现 | 需要对用户提交的代码进行编译,运行,评测并返回结果 | 完成 |
| 2. 实现基本的前端页面 | 登录注册界面,题目列表界面,写题界面 | 进行中 |
| 3. 数据库搭建以及相关表的设计 | 数据库搭建以及用户表,题目表的设计 | 进行中 |
| 4. 登录注册模块 | 用户的登录注册,最好实现能用github账户直接登录,也支持用户邮箱注册登录 | 进行中 |
| 5. 前后端数据交互 | 实现前后端数据交互,如返回题目列表,用户提交代码并进行判题 | 进行中 |
| 后续待补充.... | | |#### 1. 第一次迭代
##### 1.1 架构设计
整个项目分为前端,后端,以及判题机三大部分。

##### 1.2 判题机(judger)设计
判题系统是整个项目的核心以及难点,需要对代码的运行时间,内存,CPU进行限制,以及运行中的各种错误进行处理,并在此基础上防止恶意代码对系统的攻击。
具体实现[在这](https://github.com/talkgo/tgoj/blob/main/judger/README.md)
##### 2. 第二次迭代
.....