Skip to main content
LeetVibe

Your AI pair programmer for LeetCode — a senior engineer in your terminal.

PyPI Downloads Python 3.11+ License: MIT

Quickstart · Modes · Playbook · Under the Hood · FAQ

Stop grinding alone. LeetVibe puts a senior engineer in your terminal who can teach, coach, or interview you — depending on how much help you want today.

LeetVibe Learn mode demo

🧠 Three Modes

🎓 Learn 🤝 Pair Programming 🎤 Interview
Who codes first Vibe You — (verbal only)
What happens Vibe solves it live in a strict 7-step workflow — reasoning out loud, running real code, measuring complexity Vibe tests your attempt, diagnoses exact lines, and coaches you with Socratic hints Alex, a senior engineer, runs a realistic mock interview — with voice via ElevenLabs
Reveals optimal ✅ always ✅ after coaching ❌ never

Every session is a live conversation: ask follow-up questions, push back, or go deeper at any point. The AI executes your code against real test cases, measures Big-O complexity from the AST, and explains algorithm patterns step by step.

📖 Playbook

An in-terminal algorithm reference covering 52 patterns — from Arrays and Binary Search to Network Flow, Segment Tree, and Digit DP. Every topic page breaks down:

  • 🧠 The intuition behind the technique, and how to recognise when to use it
  • 📐 Annotated code templates and their variants
  • ⚠️ Pitfalls, edge cases, and the pattern it's most often confused with
  • 🎤 The follow-up questions an interviewer would ask next

Ask AI about any pattern without leaving the guide, keep per-topic notes, and export it all to DOCX.

LeetVibe Playbook

✨ More Features

  • 📚 Problem browser — filter by difficulty, topic, or solved status; free-text search across 2,800+ LeetCode problems
  • 💡 Built-in solutions — 1,900+ problems ship with a written solution and explanation; a "Has Solution" filter surfaces them
  • ✏️ Inline code editor — write Python in the terminal and run it against the problem's test cases without leaving the app
  • 📋 Live test results — pass/fail output per test case, run in an isolated subprocess with a timeout so an infinite loop can't hang the session
  • 📊 Statistics screen — session counts, solved problem tracking, progress over time
  • ☁️ Cloud sync — optional account to persist progress across machines
  • 🧙 Onboarding wizard — first-run setup collects API keys interactively; nothing to configure by hand

🚀 Getting Started

Requires Python 3.11+.

# with uv (recommended)
uv tool install leetvibe

# with pip
pip install leetvibe
leetvibe

The onboarding wizard opens automatically on first launch. It will ask for your Mistral API key (required) and optionally your ElevenLabs key for voice narration. Keys are saved to ~/.leetvibe/.env and never touched again.

LeetVibe Onboarding

📚 Full Documentation

Architecture diagrams, the agent loop, keyboard shortcuts, and the full mode walkthroughs live in the GitHub README. Contributions are welcome — see the Contribution Guide.

💬 Feedback

Found a wrong solution, an unclear explanation, or have a feature idea? Sign in and hit the Feedback button on any problem screen — it arrives tagged with the problem you were on. Or open an issue on GitHub.

📄 License

MIT © 2026 Hiba Chaabnia — see LICENSE for the full text.

Download files

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

Source Distribution

leetvibe-0.2.0.tar.gz (2.4 MB view details)

Uploaded Source

Built Distribution

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

leetvibe-0.2.0-py3-none-any.whl (4.5 MB view details)

Uploaded Python 3

File details

Details for the file leetvibe-0.2.0.tar.gz.

File metadata

  • Download URL: leetvibe-0.2.0.tar.gz
  • Upload date:
  • Size: 2.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for leetvibe-0.2.0.tar.gz
Algorithm Hash digest
SHA256 a6f55e525005802d6be858e9a13526750ffa842ce34da865b0d9c518cec1a168
MD5 c9f1d46ad555a02cb69cc81d1f8a4e62
BLAKE2b-256 c90608825ce91810048fea95de7a1f5239c27519475f9a7c3c8ede799e112394

See more details on using hashes here.

File details

Details for the file leetvibe-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: leetvibe-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 4.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for leetvibe-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b030614bba0f20d79539075a9e06878e2f8f73278ba9c85ef79ba11f3153256a
MD5 2ba35c355edbc1775a7e57b63e4e1247
BLAKE2b-256 98cc71cde08518d3a642a76697c91062b9b66212718b52fe21d90b2b080ddf33

See more details on using hashes here.

Release history Release notifications | RSS feed

0.2.1

2 files

This release

0.2.0 This release

2 files

0.1.1

2 files

0.1.0

2 files

Supported by

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