DOMjudge
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)
TroubleshootingWhy 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.
Tags
Getting Started
Download installer
Click the button above to download the installer for your system
Install the software
Double-click the downloaded installer and follow the prompts
Step 1: Set up a Linux server with Apache, PHP, and MySQL/MariaDB
Step 2: Download the latest stable release tarball from domjudge.org and extract it
Step 3: Run `sudo ./install.sh` and follow the prompts to configure the database and admin account
- Step 1: Set up a Linux server with Apache, PHP, and MySQL/MariaDB
- Step 2: Download the latest stable release tarball from domjudge.org and extract it
- Step 3: Run `sudo ./install.sh` and follow the prompts to configure the database and admin account
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 SourceUninstall 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.
Having issues? Check the FAQ below
1 FAQ
Similar Projects
godot
Godot Engine is a free, open-source, cross-platform 2D and 3D game engine with a unified editor. Unlike Unity or Unreal, it's entirely MIT-licensed and community-driven, offering a lightweight yet powerful node-based workflow that runs on a single executable.
Hoppscotch
Open source API development ecosystem with a lightweight, fast, and feature-rich interface for testing HTTP, WebSocket, GraphQL, and more.
lazygit
A simple terminal UI for git commands