All Projects → Linzecong → Lpoj

Linzecong / Lpoj

Licence: mit
An open source online judge system base on Django REST framework and Vue.js !

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Lpoj

Cmdb
CMDB 配置管理系统 资产管理系统
Stars: ✭ 747 (+512.3%)
Mutual labels:  django, django-rest-framework, element-ui
Django Vue Admin
基于RBAC模型权限控制的中小型应用的基础开发平台,前后端分离,后端采用django+django-rest-framework,前端采用vue+ElementUI,移动端采用uniapp+uView(可发布h5和小程序).
Stars: ✭ 157 (+28.69%)
Mutual labels:  django, django-rest-framework, element-ui
Paperweekly forum
paperweekly's forum
Stars: ✭ 118 (-3.28%)
Mutual labels:  django, django-rest-framework
Django Auth0 Vue
A Django REST Framework + Vue.js CRUD Demo Secured Using Auth0
Stars: ✭ 99 (-18.85%)
Mutual labels:  django, django-rest-framework
Wq.db
☁🌐 wq's db library, extending Django REST framework to support apps for geospatial field data collection, citizen science, and crowdsourcing.
Stars: ✭ 101 (-17.21%)
Mutual labels:  django, django-rest-framework
Django rest Vuejs Auth
An Authentication project using JWT Tokens, Vuejs(frontend) and Django-Rest(backend).
Stars: ✭ 92 (-24.59%)
Mutual labels:  django, django-rest-framework
Work At Olist
Apply for a job at Olist's Development Team: https://bit.ly/olist-webdev
Stars: ✭ 93 (-23.77%)
Mutual labels:  django, django-rest-framework
Awx
AWX Project
Stars: ✭ 10,469 (+8481.15%)
Mutual labels:  django, django-rest-framework
Cride Platzi
REST API project used to teach Django on Platzi
Stars: ✭ 88 (-27.87%)
Mutual labels:  django, django-rest-framework
Everbug
Django debug tool for browser
Stars: ✭ 114 (-6.56%)
Mutual labels:  django, django-rest-framework
Crudl Example Django
CRUDL with Django, DRF/Graphene and SQLite
Stars: ✭ 113 (-7.38%)
Mutual labels:  django, django-rest-framework
Bag Of Holding
An application to assist in the organization and prioritization of software security activities.
Stars: ✭ 114 (-6.56%)
Mutual labels:  django, django-rest-framework
Tutorialdb
A search 🔎 engine for programming/dev tutorials, See it in action 👉
Stars: ✭ 93 (-23.77%)
Mutual labels:  django, django-rest-framework
Django Rest Framework Api Key
An extra layer of authentication for Web APIs made with Django REST Framework
Stars: ✭ 92 (-24.59%)
Mutual labels:  django, django-rest-framework
Iotdashboard
Fast Django server for IOT Devices
Stars: ✭ 95 (-22.13%)
Mutual labels:  django, django-rest-framework
Grand Challenge.org
A platform for end-to-end development of machine learning solutions in biomedical imaging
Stars: ✭ 89 (-27.05%)
Mutual labels:  django, django-rest-framework
Drf Cheat Sheet
Cheat sheet / quick reference guide for Django REST Framework.
Stars: ✭ 99 (-18.85%)
Mutual labels:  django, django-rest-framework
Hydroshare
HydroShare is a collaborative website for better access to data and models in the hydrologic sciences.
Stars: ✭ 117 (-4.1%)
Mutual labels:  django, django-rest-framework
Drf Datatable Example Server Side
DataTables Example (server-side) - Python Django REST framework
Stars: ✭ 84 (-31.15%)
Mutual labels:  django, django-rest-framework
Django Rest Swagger Docs
Beginners approach to Django Rest Swagger
Stars: ✭ 86 (-29.51%)
Mutual labels:  django, django-rest-framework

LPOJ

Python Django Rest Framework vue travis-ci Join-QQ-Group

一个基于Vue.js和Django的轻量级在线评测系统

目前应用于广东外语外贸大学

演示地址:oj.lpoj.cn

说明文档:docs.lpoj.cn

简述

  • 轻量级,易于部署和自定义定制
  • 前后端分离,提高服务器性能
  • 支持多机器多进程判题,判题更高效
  • 支持 C/C++/Java/Python2/Python3和Swift5.1语言
  • 支持 Special Judge和选择题判题
  • 丰富的API,开放的源代码
  • 一键保存和导出代码模板
  • 支持类似LeetCode的模板题判题功能
  • 新增班级管理与布置作业功能
  • 现代化的界面 + 手机适配
  • 实时爬取自定义用户的博客和其他OJ的做题数
  • 丰富的算法知识和体系化的套题训练

模块列表

使用Docker部署

环境准备

1. 安装必要的依赖

sudo apt-get update
sudo apt-get install -y git
sudo apt install docker.io -y
sudo apt install docker-compose -y

2. 开始安装

git clone https://github.com/Linzecong/LPOJ.git && cd LPOJ

请修改docker-compose.yml中的数据库密码(所有的 DB_PASSWORD,MYSQL_ROOT_PASSWORD 字段)和一些你认为必要的设置

请确保机器上 4406 8080 8000~8002 9906 端口没有被占用!

sudo docker-compose up -d --scale judger=3

以上命令默认开启3个判题机,可以自行修改数量

根据网速和配置情况,大约10到20分钟就可以自动搭建完成,全程无需人工干预。

等命令执行完成,然后运行 sudo docker ps -a 当看到所有的容器的状态均为 Up 就代表 OJ 已经启动成功。

3. 准备工作

  1. 安装成功后,先通过IP:8080访问OJ,注册一个用户

  2. 然后进入 IP:8000/admin 以用户名admin 密码admin 登录后台(请及时修改后台密码,这个后台作用仅用于修改管理员权限,因此没有样式)

  3. 修改User表中,你注册的超级用户的type为3,使得你注册的用户变为超级管理员

  4. 以管理员登录,右上角进入管理员页面,然后在网站设置标签,提交一次设置

4. 更新OJ

如要更新OJ只需在LPOJ目录下执行如下步骤

git pull # 如果你修改了代码,自行解决merge得到情况
sudo docker-compose stop
sudo docker-compose pull
sudo docker-compose up -d --scale judger=3

容器运行时产生的数据会保存在对应的文件夹中,如数据库文件,题目数据等

自定义OJ

首先先下载源代码

git clone https://github.com/Linzecong/LPOJ.git && cd LPOJ

然后随意修改你要修改的地方,修改完毕后,使用如下命令重新部署

sudo docker-compose -f docker-compose-build.yml up -d --build --scale judger=3

同样的,您需要修改docker-compose-build.yml中的配置,详见开始安装

由于会重新构建整个系统,而不是拉去已构建好的镜像,所以花的时间会比较长~请耐心等待

网站的静态文件可以放在 ./Frontend/dist/img中,比如存放题目所用的图片

如无意外,部署成功!

具体使用,请参阅使用文档

更新日志

3.3 更新类似LeetCode的模板题功能

3.4 更新班级管理和布置作业功能,可以在比赛中添加选择题

代办功能

  1. 封榜功能
  2. 更优秀的排行榜显示(现在人数多了会卡)

部分截图

image1

image2

image3

image4

image5

image6

或者你可以直接访问我们 oj.lpoj.cn

浏览器支持

Modern browsers(chrome, firefox)

特别感谢

许可

The MIT License

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].