OpenSource-Hub
D

DOMjudge

886 stars·Developer Tools·SHA-256 checksum verified

An open-source programming contest jury system supporting ICPC and IOI scoring.

Smart Download

Visit Project Homepage

No installer available yet — head to the source repository

A self-hosted system to run programming contests with automatic judging and rankings.

Core Features

  • Supports both ICPC (binary) and IOI (partial) scoring models
  • Web-based jury interface for real-time monitoring and management
  • Automatic judging for multiple programming languages
  • Import/export problems in Kattis format
  • Multi-language team interface and printing service

What It Can't Do

  • Not a double-click app; requires a Linux server with web server and database – expect a learning curve.
  • Use the stable release tarball, not git clone, unless you are developing.
  • Test all problem data thoroughly before contest to avoid judging errors.
  • Default validator is from Kattis; custom validators need extra configuration.

Use Cases

  • University programming courses and training
  • ACM/ICPC regional or school contests
  • IOI-style practice for informatics olympiads
  • Corporate hackathons or technical recruitment

Detailed Introduction

DOMjudge is a full-featured system for running programming contests, from small training sessions to large international competitions. It supports both ICPC-style (binary scoring) and IOI-style (partial scoring) judging. The system includes a web-based jury interface for monitoring, automated grading, and real-time rankings. It is used by universities and organizations worldwide for hackathons and olympiads. Installation requires a Linux server with PHP and MySQL/MariaDB, but the documentation provides step-by-step guidance. The project has been actively maintained since 2004 with regular releases and a responsive community.

Troubleshooting & FAQ (1)

Troubleshooting
Why does DOMjudge show 'No negative values allowed in score key element' error after delaying contest start?

Known bug in DOMjudge 9.0. When the contest start is delayed, jury submissions trigger a 500 error with 'No negative values allowed in score key element'. Workaround: Resume the contest start (un-delay) to allow submissions. Track issue #3417 for a permanent fix.

GitHub Issue #3417

Tags

programming-contestjudge-systemicpcioiopen-sourcecompetitive-programming

Getting Started

1

Download installer

Click the button above to download the installer for your system

2

Install the software

Double-click the downloaded installer and follow the prompts

3

Step 1: Set up a Linux server with Apache, PHP, and MySQL/MariaDB

4

Step 2: Download the latest stable release tarball from domjudge.org and extract it

5

Step 3: Run `sudo ./install.sh` and follow the prompts to configure the database and admin account

Install Guide
  1. Step 1: Set up a Linux server with Apache, PHP, and MySQL/MariaDB
  2. Step 2: Download the latest stable release tarball from domjudge.org and extract it
  3. Step 3: Run `sudo ./install.sh` and follow the prompts to configure the database and admin account
File Integrity

Checksum not available

This project has not published a SHA-256 checksum on its GitHub Release page

SHA256 Checksum

No checksum available

Download directly from GitHub Releases and verify file integrity yourself

All SHA-256 checksums on this platform are extracted from the project's official GitHub Release page, without any modification. You can independently verify them on the GitHub Releases page.

Open Source Transparency

View GitHub Source
Environment Guide

Uninstall Info

Stop the web server, delete the DOMjudge installation directory, and drop the associated MySQL database and user.

No Extra Dependencies

Ready to use after download. No additional runtime required.

Project Info
LicenseGPL v2+
Last Updated2026-06-27 09:05:05
GitHub RepositoryOfficial Website

Having issues? Check the FAQ below

1 FAQ

Similar Projects