CPKit
v1.6.1
Introducing CPKit v1.6.0

Everything a Competitive Programmer Needs.

A modern, production-ready toolbox for Competitive Programming. Practice faster, debug smarter, generate custom edge cases, and lookup optimized library scripts in one place.

50+
Planned Tools
10
Algorithm Categories
100%
Open Source
Sub-50ms
Interactive Latency

Features Built for Contest Workflows

Every feature runs independently in the browser, providing offline capabilities and sub-millisecond execution times.

Popular

Contest Utilities

Parse problem files from competitive platforms and auto-generate clean boilerplate files.

Core

Debug Tools

Compare brute-force solutions with optimized approaches to stress test and isolate edge cases.

New

Test Generator

Create random grids, arrays, trees, and weights under custom numeric thresholds.

Graph Visualizer

Build and visualize dynamic graphs, DAGs, and shortest-path tree flows in real-time.

Number Theory

Fast exponents, prime sieve builders, combinatorics solvers, and modular inverse tools.

String Algorithms

Reference templates for KMP string search, Z-array, Trie nodes, and Suffix automatons.

Matrix Tools

Solve linear equations and perform matrix exponentiation in logarithmic time.

Quick Reference

Lookup standard code macros, time complexities, and fast I/O optimizations.

The Modern Developer Interface, Applied to Competitive Programming.

Old contest suites suffer from cluttered, outdated UI elements and slow loading speeds. CPKit introduces a sleek Notion-like editor structure integrated with a Raycast-style command menu to let you switch contexts instantly.

Lightning Fast

Built with Next.js Turbopack for optimal client response speeds.

Offline Ready

Cache templates and logic locally for seamless usage during offline practice.

100% Free

No subscriptions or locked features. Free for students and teams.

Developer Friendly

Clean keyboard navigation, console output copying, and theme toggling.

Fast stress_test.py generatorOffline Ready
Generating tests...
def generate_tree(n): parent = [i for i in range(n)] for i in range(1, n): parent[i] = random.randint(0, i - 1) return parent

Recent Updates & Roadmap

Track updates, upcoming releases, and feature completions.

v0.1.0Active Release

Project Foundation & Design System

Complete setup of Next.js configurations, HSL theme variable system, responsive sidebar shell layouts, and interactive command palette commands.

v0.2.0Upcoming

Contest Utilities & Debug Tools

Integrating browser-based file parsers to import problem test inputs, stress-test compiler hooks, and manual output comparisons.