A Nix-based framework for competitive programming problem authoring, analysis, and packaging.
Visit the documentation home page to learn more.
- Reproducible problem pipelines. Nix definitions connect programs, generated data, validation, official outputs, solution predictions, documents, and packages in one buildable problem model.
- First-class Typst integration. Build multilingual statements, technical overviews, and contest booklets from analyzed problem data, with automatic samples, subtasks, and validator-backed visualizations.
- Programmable judging workflows. Use built-in batch, interactive, and answer-only models, or define a custom judger for multi-stage evaluation, custom protocols, and specialized scoring.
- Extensible problem and contest targets. Package for supported judge systems and participant environments, or write a custom target for a project-specific output format.
- End-to-end parallel execution. Problem builds, contest builds, judging, and stress testing use available CPU parallelism by default. Artifact builds and packaging retain Nix's own parallel scheduling, allowing high-core-count servers to process large solution and testcase sets with high throughput.
- AI-agent-friendly authoring. Published Agent Skills,
llms.txt, Typst source mirrors, and generated option references give AI agents structured entry points for creating and maintaining complete Hull problems.
Copyright (c) 2025-present, rindag-devs