NOJ 是一个基于 PHP+Laravel 的现代化在线测评系统,评测机部分使用 Docker。
上一个版本的 NOJ 已经有十年历史了,bug 无数,最初是和 NUAA 合作的但是被人家甩了,所以去年年底我们终于下定 决定重构一个现代话的版本,一扫垃圾 UI。
所以寒假里,我一个人从除夕写道开学,搞了一个全新的 NOJ。经过多次版本迭代,NOJ 目前已经非常成熟了。多个校级比赛已经采用 NOJ 进行了,可惜的是今年省赛我们还是使用了 DOMJudge。
目前我们校队的训练中大量使用了 Virtual Judge,于是 NOJ 顺水推舟继承了 Virtual Judge 功能,未来 NOJ 将会以每周一个 OJ 的速度上线一个新的 OJ。
当然,作为一个 OJ,必要的功能也是不能少的,NOJ 使用 Docker 作为判题核心,采用了网站服务评测机分离的模式,同时我们也支持了评测机集群,还有一个虚假的负载均衡(误
目前 NOJ 的技术栈主要有 PHP+Laravel+MySQL+Redis,评测部分 Go+Docker,还有一些例如测试用例生成使用了 python 实现,甚至,甚至还有为了兼容 Windows 而写的 vbs......
NOJ 已经在开源社区 GitHub 上线,收获了 100+star,欢迎大家来 Star,Fork 或者提 Issue 哦~
GitHub: ZsgsDesign/NOJ
Wiki: ZsgsDesign/NOJ/wiki (非常不全)
Demo: NOJ (最近一周晚上封外网,只能白天访问)
有什么问题或者建议欢迎在下面回复。
谢谢啦~
1
azh7138m 2019-06-06 10:44:25 +08:00
先 O 了。
判题端使用的 https://github.com/MarkLux/JudgeServer 吗? |
2
zsgsdesign OP @azh7138m 基于那个版本二次开发,其实开发中包括 [QingdaoU/JudgeServer]( https://github.com/QingdaoU/JudgeServer) 也有参考,以后可以一起开个源。
|
3
azh7138m 2019-06-06 10:59:46 +08:00
docker 是方便呐
借楼安利下一个 win 下的判题实现 https://github.com/Azure99/OpenJudger |
4
jsnjfz 2019-06-06 11:01:31 +08:00
南邮校友支持一波,真的不错
|
5
msrcatn203 2019-06-06 11:21:17 +08:00 via Android
ZLBNB (
|
6
xiang578 2019-06-06 12:11:46 +08:00
帮定,之前只能忍受 hustoj 的界面,可惜现在用不到 oj。
|
8
zsgsdesign OP @azh7138m HustOJ 同时代的感觉都很古老了,感觉都可以重构一个下一代版本了。话说是 HustOJ 开发者?
|
9
azh7138m 2019-06-06 13:01:07 +08:00
@zsgsdesign 呃,算是老用户,平时主要回答一些如何重启判题姬的问题(
也在试着给 hustoj 打 deb 包 |
10
cctv1005s927 2019-06-06 13:14:18 +08:00
不错👍🏾,但是从前端的角度上来说,交互上还是需要提升的。
就比如说 status 中的 table 翻页,可能是为了复用 loading,才导致整个 dom 要重新渲染的。 实际上 Table 翻页不应该出现白屏的 |
11
zsgsdesign OP @cctv1005s927 我们在考虑 ajax 化翻页,目前是因为 paginate 组件纯后端的缘故,改写的话可能要花点时间。同时 PJAX 支持也已经在计划中了,不过估计距离完全实现还有一段时间。
|
12
cctv1005s927 2019-06-06 14:58:18 +08:00
@zsgsdesign 浏览器一般有支持的,如果是新的请求 dom 和原来的差不多,就不会完全白屏,所以我建议你们可以在 Table 那里把 Loading 取消
|
13
mrcn 2019-06-06 18:10:28 +08:00 via Android
不错
|
14
JC1027 2019-06-06 18:31:23 +08:00
希望加一个 hustoj 迁移到 noj 的功能,现在好多学校都在用 hustoj (我校也是 ),感觉本 oj 最大优势是集成了 vj。
|
15
iovo7 2019-06-06 21:00:12 +08:00
装了下,不错,star。
不过这后台在哪进,没弄明白。 |
16
JohnChiu 2019-06-06 21:28:20 +08:00
UI 很漂亮,支持一下
|
17
zsgsdesign OP @JC1027 可以啊,可以提 issue 呀,假如喜欢的话 PR 也可以哦。我们可能会在未来直接支持 HustOJ 的 FPS 格式,也可能推出自己的标准,都还在讨论中。
|
18
zsgsdesign OP @JohnChiu 谢谢哦,现在的 UI 都是我一个人设计的,同学说有点性冷淡 2333,我们最近扩招了全职前端,以后会更棒哦⊙∀⊙!
|
19
zsgsdesign OP @iovo7 现在还是半成品还不太适合用作生产,麻烦谅解哦,目前我们的后台还在开发中,地址是 /admin,需要手动在数据库添加用户,以后我们写了安装脚本后会一键生成,不过目前还不行的,可能会有些麻烦。(其实我们自己都是改数据库维护的)
|