You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Menci e1972504bd Swap contest 'not started' and 'ended' color 8 years ago
models Fix status in contest page not updated when submit in NOI contests 8 years ago
modules Fix problem id and title in contest submissions page ajax 8 years ago
static Fixed class 'fixed' XSS 8 years ago
uploads Add uploads folder 8 years ago
views Swap contest 'not started' and 'ended' color 8 years ago
.babelrc Initial commit 8 years ago
.gitignore Use file to store session 8 years ago
LICENSE Initial commit 8 years ago
README.md Remove workaround for foreign keys 8 years ago
app.js Fix login will expire 8 years ago
config-example.json Add import problem 8 years ago
package.json Make block image in markdown center render 8 years ago
utility.js Make block image in markdown center render 8 years ago

README.md

SYZOJ 2

An OnlineJudge System for OI.

The UI is powered by Semantic UI.
Template designed & coded by Sengxian and Menci.

Deploying

There's currently no stable version of SYZOJ 2, but you can use the unstable version from git.

git clone https://github.com/syzoj/syzoj
cd syzoj

Install dependencies with npm install or yarn.

Copy the config-example.json file to config.json, and change the configures.

Database

SYZOJ 2 uses Sequelize, which supports many database systems, including MySQL and Sqlite.

By default it use the Sqlite database syzoj.db, you can change it in config.json

Security

You should change the session_secret and judge_token in config.json.

Administration

In the database, the is_admin field in user table describes whether a user is admin or not.

To make a user be an admin, the only way is via database.

Judge

SYZOJ 2 uses a Docker-based sandboxed judger. Please go to syzoj-judge.