Skip to main content

Adaptive coding interview practice powered by Claude

Project description

autocurricula CI License: MIT Python 3.11+ PyPI Website

Adaptive technical interview practice, powered by Claude. Problems are generated on-the-fly based on your role and skill level, with real-time code execution, structured test results, and AI-driven feedback.

Covers coding, algorithms, math, probability, statistics, and brainteasers.

Installation

pip install autocurricula

Prerequisites: Claude CLI must be installed and authenticated.

Quick start

autocurricula

This opens the app in your browser at http://localhost:8420.

On first launch, create a workspace by choosing a role (e.g. "ML Engineer", "Quant Researcher", "Backend Developer"). Claude generates problems tailored to that role and adapts difficulty as you progress.

A sandboxed virtual environment is automatically created at ~/.autocurricula/.sandbox_venv with numpy, pandas, scipy, torch, and pytest for executing solutions.

How it works

autocurricula uses a self-adjusting curriculum loop:

  1. Claude generates a problem matched to your role, category, and current difficulty level.
  2. You solve it in the built-in editor with full autocompletion and live test feedback.
  3. Claude reviews your submission, gives a verdict (solved / retry / move on), and explains the reasoning.
  4. The system tracks your solve rate and self-rated difficulty to calibrate what comes next.

Categories rotate automatically to ensure broad coverage.

Features

Problem types

Type Description
Code Write a function, run open tests, then submit for hidden tests and Claude review.
Derivation Written answers for math proofs, probability puzzles, system design reasoning, and conceptual questions.

Code editor

Monaco editor with Python syntax highlighting, autocompletion, hover documentation, and function signatures powered by Jedi. Supports numpy, pandas, scipy, and torch out of the box.

Test runner

Each code problem includes an open test suite (visible while solving) and a hidden test suite (run on submit). Tests execute in an isolated sandbox with a 30-second timeout. Results show structured pass/fail/error status with expandable failure details.

Scaffolding

Stuck? Request a scaffold and Claude generates an easier prerequisite targeting the specific concept you're missing. Solve it, then return to the original problem.

Theory

Each problem comes with background material covering relevant formulas, derivations, algorithmic intuitions, and worked examples. Rendered with LaTeX support.

Chat

Ask Claude for hints without getting the answer. Claude sees your current code and problem statement for context. Chat history is preserved per problem.

Progress tracking

Track solve counts, attempt counts, and success rates across all categories. Rate each solved problem's difficulty (1–5) to help the system calibrate. Problems solved but rated as hard are flagged for revisiting.

Workspaces

Maintain separate workspaces for different roles, each with its own problem history, progress state, and difficulty curve.

Configuration

Option Default Description
--port, -p 8420 Port for the web server

License

MIT — free to use, modify, and distribute.

Project details


Download files

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

Source Distribution

autocurricula-0.5.0.tar.gz (56.7 kB view details)

Uploaded Source

Built Distribution

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

autocurricula-0.5.0-py3-none-any.whl (63.5 kB view details)

Uploaded Python 3

File details

Details for the file autocurricula-0.5.0.tar.gz.

File metadata

  • Download URL: autocurricula-0.5.0.tar.gz
  • Upload date:
  • Size: 56.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for autocurricula-0.5.0.tar.gz
Algorithm Hash digest
SHA256 98280c868287fb4ed47627c54748b4788399521ea60efe089cacc3270a3a99b3
MD5 e3e9a8f42ff44dd597e18882c9eb113e
BLAKE2b-256 ad4eef05fc56e6c59a79f9b7df556a485e93b63731ac730a79d3e80686396351

See more details on using hashes here.

Provenance

The following attestation bundles were made for autocurricula-0.5.0.tar.gz:

Publisher: publish.yml on RobinLmn/autocurricula

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file autocurricula-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: autocurricula-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 63.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for autocurricula-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8b92238bf81e06bd6784dedf00ba2fef7fa8e3e526d672f246811ab6c7dd00d5
MD5 88df5ad1a403108c13cfd7f46f656f81
BLAKE2b-256 451add1af2c963be842b0c7fe93552fb4c0aee6390756532eef09a628833dedd

See more details on using hashes here.

Provenance

The following attestation bundles were made for autocurricula-0.5.0-py3-none-any.whl:

Publisher: publish.yml on RobinLmn/autocurricula

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page