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 9ed960b9fa New pagination UI 8 years ago
models Fix problem content not updated when change problem id 8 years ago
modules Fix login will expire 8 years ago
static Add Chinese font to fallback list 8 years ago
uploads Add uploads folder 8 years ago
views New pagination UI 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.