Skip to content

API reference

Generated from the source at build time, one page per module. Everything here is cross-linked: type names in signatures and backticked references inside docstrings resolve to the pages that define them.

For the hand-written guides -- how to use the client, the managers and the CLI -- start from the documentation home.

  • Protocol — The JSON-serializable dataclasses that mirror CodinGame's own API payloads. These describe the wire format: what the server sends, what it accepts, and which fields are optional because the server genuinely omits them.
  • Client services — One method per CodinGame API endpoint, plus the helpers that layer retries and polling on top. These speak the protocol directly and do no bookkeeping.
  • Client core — Transport, authentication, credential storage and the raw request machinery the service wrappers are built on.
  • Contribution manager — Authoring and maintaining a contribution: the working directory, the git repository backing data/, and the fetch/merge/push state machine.
  • Puzzle manager — Solving an existing puzzle: the working directory, local test execution, and the per-language server-side code CodinGame keeps for you.
  • Languages and toolchains — Per-language build, run and debug behaviour, and the composable container toolchain that makes it work without a local compiler.