Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

ojkit: Online Judge Kit

A lightweight command-line toolkit for competitive programming.

ojkit lets you browse Codeforces problems by rating, create a ready-to-use C++ workspace, fetch sample test cases, and run your solution against them.

Alpha: ojkit is currently under active development. Features and CLI behavior may change.

Features

  • Browse Codeforces problems by rating
  • Fuzzy-search problems from the terminal
  • Automatically create a C++ source file
  • Automatically fetch sample test cases
  • Compile solutions using g++
  • Run solutions against all sample tests
  • Simple ojkit run workflow
  • Cross-platform Python CLI

Installation

ojkit requires Python 3.10 or newer.

pip install --pre ojkit

A C++ compiler (g++) is currently required for running solutions.

Usage

Find a problem

ojkit

By default, ojkit searches for 800-rated Codeforces problems.

Specify another rating with:

ojkit -r 1200

Select a problem using the fuzzy finder and ojkit will create a workspace such as:

~/codeforces/4/A/
├── A.cpp
└── tests/
    ├── input1.txt
    ├── output1.txt
    ├── input2.txt
    └── output2.txt

Run a solution

Enter the generated problem directory:

cd ~/codeforces/4/A

Then run:

ojkit run

ojkit will compile the C++ solution using g++ and run it against the downloaded sample test cases.

Example:

✓ Compiled successfully
Test 1: PASS
Test 2: PASS

Development

Clone the repository:

git clone https://github.com/YOUR_USERNAME/ojkit.git
cd ojkit

Install it in editable mode:

pip install -e .

Changes to the Python source will then be reflected immediately when running:

ojkit

Status

ojkit is currently in alpha.

Current version:

0.1.0a1

The initial releases focus on Codeforces and C++ support. More online judges, languages, configuration options, and runner improvements may be added later.

License

MIT Online Judge Kit

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ojkit-0.1.0a1.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ojkit-0.1.0a1-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file ojkit-0.1.0a1.tar.gz.

File metadata

  • Download URL: ojkit-0.1.0a1.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.7

File hashes

Hashes for ojkit-0.1.0a1.tar.gz
Algorithm Hash digest
SHA256 7150932a50d5a739defffb6934a01f5f697fa25734a85d173071e68ffec516dd
MD5 dfd27769187c0c6184c10f9dedb20384
BLAKE2b-256 4c65cedb77abcbedadb64864ffd9464f2657ad89fbcb4739186b90975eb2139e

See more details on using hashes here.

File details

Details for the file ojkit-0.1.0a1-py3-none-any.whl.

File metadata

  • Download URL: ojkit-0.1.0a1-py3-none-any.whl
  • Upload date:
  • Size: 6.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.7

File hashes

Hashes for ojkit-0.1.0a1-py3-none-any.whl
Algorithm Hash digest
SHA256 3ca3e603d6cbf9ccf85d26eb8ba8e0fc396e3f73ddc84da1c6a45c21e7b260f2
MD5 83fb772c1ba1abf4932a6d5224138414
BLAKE2b-256 a41705b29924aede48c2dd4936eda5b8d6896573f3c7a0f4d02fe5dfc46dde7a

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.0a1 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page