Skip to content

shi-yang/jnoj

Folders and files

NameName
Last commit message
Last commit date

Latest commit

a9795c3 · Feb 21, 2023
Dec 9, 2022
Dec 17, 2019
Sep 6, 2018
Jul 7, 2022
Jul 7, 2022
Dec 10, 2022
Dec 11, 2022
Feb 21, 2023
Dec 11, 2022
Mar 1, 2019
Dec 26, 2019
Dec 17, 2019
Dec 26, 2019
Dec 11, 2022
Nov 24, 2022
Dec 11, 2022
Apr 5, 2018
Apr 5, 2018
Dec 9, 2022
Dec 10, 2022
Dec 9, 2022
Dec 9, 2022
Dec 9, 2022
Jan 16, 2021
Apr 5, 2018
Feb 21, 2023
Apr 5, 2018
Dec 9, 2022
Dec 9, 2022
Dec 10, 2022
Apr 5, 2018
Jun 4, 2018

Repository files navigation

Jiangnan Online Judge


江南在线评测系统(Jiangnan Online Judge),是一个在线的判题系统。 用户可以在线提交程序多种程序(如C、C++、Java)源代码,系统对源代码进行编译和执行,并通过预先设计的测试数据来检验程序源代码的正确性。

在线体验

JNOJ Demo

新版 V2 (暂未稳定,仅供体验)

JNOJ V2 Doc

新版采用 Golang、React 前后端分离开发,全新架构,用户在线运行测试,全新的用户体验、题目数据共享下载。

可参考文档切换至 v2 分支进行体验。

Online Judge Online Judge

功能特性

  • OI 模式 - 支持 OI 模式判题,子任务判题
  • 滚榜 - 在比赛结束后,提供滚动榜单的功能
  • VIP用户机制 - 可以将题目设为仅 VIP 用户可见
  • 小组功能 - 用户可以创建小组,并在小组内举办比赛
  • Testlib 特判 - 支持使用 testlib.h 来写特判程序
  • 线上线下赛场景 - 为线下举办的比赛增加限制:如限制参加比赛的账户,参加比赛的账户不能自己修改个人信息
  • 线下赛打印功能 - 为线下赛提供打印代码的功能
  • 题目打印功能 - 创建比赛后,可以将题目信息一键导出为 PDF,以供打印。
  • 下载比赛的提交 - 可用于查重
  • 公告弹窗提示 - 在比赛过程中,发布公告时可以给所有在线用户发布弹窗提示有新公告
  • 记录出错数据 - 可以查看提交方案的出错数据
  • 新闻门户首页 - 首页显示新闻,各种公告等
  • 支持多语言 - 现支持 C、C++、Java、Python3
  • 支持(Katex)数学公式
  • 题目描述多组样例 - 在一道题目的样例描述中,可以提供多组样例
  • 对比赛发布题解
  • 问题标签 - 给问题添加标签,方便查询
  • 基于 MVC 框架开发 - 开发便于上手
  • 多边形出题系统 - 一个功能完善的出题系统。出题目,生成数据,验题等。
  • Web 在线管理题目数据 - 在线对题目测试数据进行增删改查
  • 排行榜 - 对用户解题数量等进行排行
  • 积分榜 - 对参加比赛的用户进行积分结算,并进行排名

帮助文档

  1. 安装教程
  2. 更新教程
  3. https://github.com/shi-yang/jnoj/wiki

开发者支持

Issues: https://github.com/shi-yang/jnoj/issues

Wiki: https://github.com/shi-yang/jnoj/wiki

QQ、微信:

QQ & Wechat

参与贡献

https://www.jnoj.dev/contribute.html

目录结构

  assets/             资源文件的定义
  commands/           控制台命令
  components/         Web 应用程序组件
  config/             Web 应用程序配置信息
  controllers/        控制器(Controller)文件
  docs/               文档目录
  judge/              判题机所在目录
  judge/data          判题数据目录
  mail/               发邮件时的视图模板
  messages/           多语言翻译
  migrations/         数据库迁移时的各种代码
  models/             模型(Model)文件
  modules/admin       Web 后台应用
  modules/polygon     多边形出题系统
  runtime/            Web 程序运行时生成的缓存
  tests/              各种测试
  vendor/             第三方依赖
  views/              视图(View)文件
  web/                Web 入口目录
  widgets/            各种插件
  socket.php          用于启动 Socket,提供消息通知功能