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 3f1786ddea Remove pagination box-shadow 8 years ago
models Add user privilege manage 8 years ago
modules Add user privilege manage 8 years ago
static Change MathJax CDN to staticfile.org 8 years ago
uploads Add uploads folder 8 years ago
views Remove pagination box-shadow 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 Fix XSS with node-xss 8 years ago
utility.js Disable <video> and <audio> HTML tag 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.