Skip to main content

Little mans vibe coding assistant integrated into Thonny IDE.

Project description

Thonny LMvibe Assistant

LMvibe - Your "little man's vibe" coding assistant, seamlessly integrated into the Thonny IDE.

LMvibe brings the power of large language models directly into your favorite beginner-friendly IDE. It's designed to make coding a more creative, conversational, and less frustrating experience—a true "vibe."


Why is "Vibe Coding" with LMvibe in Thonny so Cool?

Thonny is the go-to IDE for learners, and LMvibe supercharges that experience. It's not just a chatbot; it's a coding partner that understands your context.

  • For Beginners and Kids: Coding can be intimidating. Getting stuck on a weird error message is frustrating. LMvibe turns that frustration into a learning opportunity. Instead of searching the web for cryptic errors, you can just ask your vibe assistant in plain English: "Why is this not working?" It makes coding feel less like a rigid science and more like a creative conversation.

  • For Embedded Systems Users (MicroPython/CircuitPython): Prototyping with microcontrollers is all about speed and iteration. LMvibe is a massive productivity booster. You can ask it to generate boilerplate code for a specific sensor (like an I2C BME280 sensor), explain a hardware protocol, or help you debug code that interacts with GPIO pins. It's like having an experienced hardware engineer by your side.


Installation

Installing LMvibe is simple using Thonny's built-in plug-in manager.

  1. In Thonny, navigate to Tools > Manage plug-ins....
  2. In the search bar, type thonny-lmvibe and press Enter.
  3. Click the Install button.
  4. Restart Thonny completely. You will now see the "LMvibe" panel at the bottom of the IDE.

Configuration

Before you can use the assistant, you need to configure it with your API key.

  1. Navigate to Tools > Options....
  2. Go to the LMvibe tab.
  3. Enter your Google AI API Key. You can get one from Google AI Studio.
  4. Click "Fetch Models" and select a suitable model (e.g., a gemini-pro model) from the dropdown.
  5. Click OK. You are now ready to start coding!

How It Works: The Power of Context

The most powerful feature of LMvibe is its context awareness. When you ask a "Code-aware" or "Error Follow-up" question, the assistant doesn't just see your question—it sees the entire, most recent version of your code in the active editor.

This is a game-changer. It means the AI understands all your variables, functions, and the overall structure of your script. This allows it to give you highly accurate, relevant answers that are specific to your project, not generic solutions you'd find online.

Make no mistake: in order to keep cost and complexity down, LMvibe is one file only, it will only keep track of your currently open and active code tab and is prompted to create on-file code only: exactly what you need for fast projects.

API and Future Development

Currently, LMvibe is powered by the Google Gemini API. It provides a fantastic balance of power and accessibility.

The architecture is designed to be flexible. In the future, support for other APIs (like those from OpenAI, Anthropic, or local models) could be added to give users more choice.


The 6 Main Functions

You can interact with LMvibe using six intuitive icon-based buttons. Each has a specific purpose to streamline your workflow.

Logo (Filename) Function Description
Single Question This is for general questions that don't relate to your code. Ask it anything from "How does a Python dictionary work?" to "Give me an idea for a fun beginner project."
Code-aware Question
(Shortcut: Ctrl+Enter)
This is the primary function. It sends your question along with the entire code from your current editor. Use this to ask "How can I optimize this function?" or "Add comments to explain my code."
Error Follow-up When you get an error in the Thonny shell, use this button. It sends your question, your full code, and the last 20 lines from the shell. Perfect for asking "What does this error mean and how do I fix it?"
Revert to Previous Code Made a change you don't like after asking a code-aware question? This button instantly reverts the code in your editor back to the version you had before the assistant made changes. It's a simple and safe undo.
Update Code in Editor If the assistant provides a Python code block in its answer, this button will automatically and completely replace the content of your editor with the new code. It's a fast way to apply the suggested fixes or additions.
Clear History This button clears the entire conversation history from the LMvibe panel. Use it to start a fresh conversation or to clean up the interface.

This project is licensed under the MIT License.

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

thonny_lmvibe-0.9.1.tar.gz (40.9 kB view details)

Uploaded Source

Built Distribution

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

thonny_lmvibe-0.9.1-py3-none-any.whl (40.1 kB view details)

Uploaded Python 3

File details

Details for the file thonny_lmvibe-0.9.1.tar.gz.

File metadata

  • Download URL: thonny_lmvibe-0.9.1.tar.gz
  • Upload date:
  • Size: 40.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.4

File hashes

Hashes for thonny_lmvibe-0.9.1.tar.gz
Algorithm Hash digest
SHA256 ee5ee59d40fbf10c34dcc0c5a86b4421997b11778360bbecc15554e6be34f10c
MD5 5e603ef7f9a51fafc68ca6c63e74a2a2
BLAKE2b-256 017540bcfb57dadde9da35712ea80c3900dc45ae81b4b8423a69594dbd885699

See more details on using hashes here.

File details

Details for the file thonny_lmvibe-0.9.1-py3-none-any.whl.

File metadata

  • Download URL: thonny_lmvibe-0.9.1-py3-none-any.whl
  • Upload date:
  • Size: 40.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.4

File hashes

Hashes for thonny_lmvibe-0.9.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e25fc47d4bfdf211948331249c11dbcc5865819ed38df1b5856ac9b1c6ac728c
MD5 85edc4f3600822830141436d53570f75
BLAKE2b-256 8733c613ba86f0892ed2ffb5929171692087f76e8cd98ae3c97a9ef27ba83277

See more details on using hashes here.

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