Judge0
Judge0 is an open-source online code execution system that enables the robust, fast, scalable, and sandboxed execution of AI-generated code, with support for multiple languages and frameworks.
Smart Download
Visit Project Homepage
No installer available yet — head to the source repository
Self-hostable online code sandbox for executing untrusted code safely, with 90+ languages and simple HTTP API.
Core Features
- Self-hostable (Docker Compose) or fully managed SaaS
- Support for 90+ programming languages
- Sandboxed compilation and execution via containers
- Simple HTTP JSON API and official Python SDK
- Multi-file program execution (projects)
What It Can't Do
- •Self-hosting requires Docker & sysadmin skills. 2. Default sandboxing uses containers; for production strengthen security (seccomp, AppArmor). 3. Free CE version has fewer languages than Extra CE (60 vs 90+). 4. High concurrency needs proper resource scaling. 5. Community support is moderate; complex issues may need GitHub Issues.
Use Cases
- AI agents executing generated code
- Competitive programming platforms (Online Judges)
- E-learning and coding assessment systems
- Candidate recruitment coding tests
- Online code editors and IDEs
- Internal code sandboxing for security validation
Detailed Introduction
Judge0 (pronounced "judge zero") is a robust, scalable, and open-source online code execution system. It allows you to run untrusted code in isolated sandboxes (containers) with configurable time, memory limits, and compiler options. It provides a simple HTTP JSON API and official Python SDK, making integration into any application straightforward. Supports execution of multi-file programs (projects) and additional input files. Detailed execution results include stdout, stderr, exit code, and system signals. Includes webhooks for asynchronous callbacks. Can be self-hosted via Docker Compose or Kubernetes, or used as a managed SaaS. Under the hood it uses a modular architecture with Redis queues, PostgreSQL, and sandboxed workers. It is widely used in competitive programming platforms, e-learning systems, coding assessments, AI agents, and online IDEs.
Troubleshooting & FAQ (2)
TroubleshootingWhy is the settings.json file missing after Docker Desktop update on macOS? How to set deprecatedCgroupv1?
Starting with Docker Desktop 4.34, the settings file was renamed from settings.json to settings-store.json. To apply deprecatedCgroupv1, edit ~/Library/Group Containers/group.com.docker/settings-store.json and manually add the property "deprecatedCgroupv1": true, then restart Docker. This file location is documented in Docker Desktop settings management. If you're using an older version (below 4.34), continue to use settings.json at the same path.
TroubleshootingHow to fix 'chown: cannot access '/box': No such file or directory' error in Judge0 Docker?
Ensure a host directory is mounted to /box in the container. Add -v /path/on/host:/box to your docker run command, or define the volume in docker-compose. If using the prebuilt image, create the directory in an entrypoint script or use a version where /box is auto-created. See GitHub issue #325 for community workarounds.
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: Install Docker and Docker Compose
Step 2: Clone repo: git clone https://github.com/judge0/judge0.git && cd judge0
Step 3: Run deployment script: ./deploy.sh (or follow manual steps in CHANGELOG)
- Step 1: Install Docker and Docker Compose
- Step 2: Clone repo: git clone https://github.com/judge0/judge0.git && cd judge0
- Step 3: Run deployment script: ./deploy.sh (or follow manual steps in CHANGELOG)
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 and remove containers: docker-compose down -v; delete the project folder to fully remove.
No Extra Dependencies
Ready to use after download. No additional runtime required.
Having issues? Check the FAQ below
2 FAQs
Similar Projects
traefik
Traefik is a modern HTTP reverse proxy and load balancer that makes deploying microservices easy.
code-server
Run VS Code in your browser, on any device with a consistent development environment.
pocketbase
PocketBase is an open source Go backend that includes embedded SQLite with realtime subscriptions, built-in file & user management, admin dashboard UI, and simple REST API. Can be used as standalone app or Go framework.