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 5916db2983 Fix default max score 8 years ago
models Fix hidden judge state 8 years ago
modules Fix default max score 8 years ago
static UI optimize 8 years ago
uploads Add uploads folder 8 years ago
views Fix hidden judge state 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 Remove workaround for foreign keys 8 years ago
config-example.json Add import problem 8 years ago
package.json Add CSS filter for XSS 8 years ago
utility.js Fix XSS with href or src 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.