Firecracker-isolated online judge

Practice, learn and run code in 65+ languages.

Run and test code in 65+ languages online — each submission isolated in a Firecracker microVM. Live per-test results. No sign-up.

65+ languages · 122 runtimes microVM per run live per-test streaming
solution.py
Python 3.13
# Python 3.13 · playground default
def two_sum(nums, target):
    seen = {}
    for i, n in enumerate(nums):
        if target - n in seen:
            return [seen[target - n], i]
        seen[n] = i

print(two_sum([2, 7, 11, 15], 9))
VerdictAC · 42ms
stdout: [0, 1]
Why ls-judge

Built for judges that actually run at scale.

65+ language runtimes

From Python, C++, Java, Go and Rust to Haskell, OCaml, COBOL and assembly — one API, every toolchain, real compiler versions.

Firecracker microVM isolation

Every submission runs in its own hardware-virtualised microVM with an isolated network namespace — not a shared container. Untrusted code stays contained.

Hot & cold execution lanes

Warm snapshot pools serve popular languages in milliseconds; cold restores handle the long tail. Throughput scales with the host.

Live per-test streaming

Results arrive test-by-test over a WebSocket as they finish — no waiting for the whole batch. Verdicts, timing and memory in real time.

Multi-file submissions

Ship helper files alongside the entry point; they are written to the workspace and compiled together wherever the language supports it.

Self-hostable & horizontally scalable

Redis-backed streams, stateless workers, a clean HTTP API and webhooks. Add hosts to add capacity — nothing to re-architect.

Start running code in seconds

No sign-up to try it — open the playground, pick a language, and run.