SDUOJ / OnlineJudge

:sparkles: Open source online judge system (based on Microservice). SDUOJ 开源在线评测系统(基于微服务架构)。开源社区QQ群 808751832。示例网站 https://demo.sduoj.com

Home Page:https://docs.sduoj.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

简体中文 | English


如果觉得对您有帮助或者对该产品感兴趣,请您给点一个 Star,谢谢!

Java WebSite Spring Boot Spring Cloud Spring Cloud Alibaba MySQL Vue License Github Star

SDUOJ 是一款开源在线评测系统(Online Judge, OJ)

→ 查看文档


多业务场景

评测模板、一题多面、虚拟评测、国际赛制(ICPC/OI/IOI),广泛适用于实验训练、学生测试、赛事举办等场景

分布式架构

基于微服务设计,模块细分更适合业务迭代,分布式架构为高并发、高容错、高可用提供支持

容器级交付

提供 Docker 镜像,公有云或物理机,均可一键部署,一键扩缩容,以应对不同的流量场景和评测压力

概览

  • 基于 Docker,公有云或物理机,均可一键部署!
  • 前后端分离,分布式微服务架构,可单独对某个服务动态扩缩容以应对不同场景的流量压力!
  • 评测机的多核平台调度方案,单点评测、多点评测,按需配置!
  • 多种国际赛制支持(ICPC/OI/IOI)!
  • 评测模板,可自定义添加多语言支持!更有进阶模式支持数据结构课设、汇编语言实验、操作系统课设等个性化评测场景!
  • 一题多面,同一道题目,可有多个题面!可支持中文、英文、俄文等多语言!可支持复杂、精炼、变形题面等多形式!
  • Markdown & HTML 题面支持,随意创作丰富多彩的题面!
  • 动态评测,提交后每个评测点实时返回评测结果!
  • 多评测点,单独赋分,动态调整测试点的顺序,直接选取测试点作为题面样例点!
  • 虚拟评测,支持世界上多个知名 OJ 系统的远程提交,让训练数据沉淀到一方系统,为未来传承宝贵的数据资产!

项目仓库

仓库 描述
SDUOJ/OnlineJudge 产品主仓库、文档、Issue Tracker
SDUOJ/sduoj-server 后端代码仓库
SDUOJ/sduoj-web 用户前端代码仓库
SDUOJ/sduoj-manage 管理员前端代码仓库
SDUOJ/sduoj-judger 评测机代码仓库
SDUOJ/sduoj-sandbox 安全沙箱代码仓库
SDUOJ/sduoj-deploy 部署代码仓库,含 Docker Compose 脚本

网站截图

用户使用手册

更多截图,点击展开

搭建指南

架构图:

如何基于 Docker Compose 快速部署?

浏览器支持

For Vue frontend:

  • Modern browsers (chrome, firefox) 和 Internet Explorer 10+.

For React frontend:

  • Microsoft Edge (85+), Google Chrome (85+), Mozilla Firefox (79+), Apple Safari (13.4+), Internet Explorer is not supported

Star History

Star History Chart

技术团队


zhangt2333
Leader, Backend

yhf2000
Leader, Frontend

jesHrz
Leader, Sandbox

koi2000
Honorary MBR.

HYLazy
Honorary MBR.

zhaoyifan0528
Honorary MBR.

OldAtaraxia
Honorary MBR.

zhr2001
Honorary MBR.

sys16384
Honorary MBR.

GeneLiuXe
Honorary MBR.

suxb201
Honorary MBR.

Xrvitd
Honorary MBR.

开源许可

基于 GNU Affero General Public License v3.0 开源协议。

About

:sparkles: Open source online judge system (based on Microservice). SDUOJ 开源在线评测系统(基于微服务架构)。开源社区QQ群 808751832。示例网站 https://demo.sduoj.com

https://docs.sduoj.com

License:GNU Affero General Public License v3.0


Languages

Language:Java 81.7%Language:MDX 18.3%