Puneet Kumar

CodeCharm - Generate emoji-rich code comments & refactor using AI

byβ€’
CodeCharm is an AI-powered VS Code extension that adds clean, emoji-rich inline comments or refactors your messy code using Google Gemini models β€” all with a simple shortcut. 🎯 ✨ It's like Grammarly, but for your code β€” with vibes.

Add a comment

Replies

Best
Puneet Kumar
Maker
πŸ“Œ
πŸ‘‹ Hey Product Hunt! I'm Puneet, the dev behind CodeCharm πŸ‘¨β€πŸ’» I built this to make my coding cleaner (and cooler 😎) β€” with instant inline comments powered by AI. It works locally, respects your API key privacy, and lets you refactor & document code without touching the mouse. Would love to hear your feedback, thoughts, or roast-level bug reports πŸ’₯ Here’s the full repo if you want to peek under the hood: πŸ”— https://github.com/DeveloperPune... Cheers, and keep your code charming πŸ’«
Mu Joe
🧐 Good find

This is truely awesome! The whole "no mouse" thing for refactoring and documenting is kinda genius imo. I hate context switching, so anything that lets me stay in the code flow is a huge win. So slick! Does it work with Python as well?

Puneet Kumar

@mujoeΒ Yes, it works!
And fr, same β€” the whole β€œno-mouse refactoring” vibe is low-key genius. Staying locked into the flow without hopping around like a caffeinated squirrel? Peak productivity.
And yup, it plays nicely with Python too. Smooth as butter.

Alexis Luo
🧐 Good find

This looks interesting! Love the idea of adding inline comments with just a shortcut. How well does it handle different coding styles?

Puneet Kumar

Hey @alexis_luo , thanks! πŸ™Œ

CodeCharm actually adapts pretty well β€” it’s not just a one-size-fits-all generator.

Since it’s powered by Gemini, it reads the selected snippet in context and tries to match your style:

If your code uses single-line concise comments, it’ll keep them short.

If you prefer descriptive multi-line comments, it adjusts accordingly.

Works across Python, JS, C++, Java, and more without breaking indentation.

I even built model fallback, so if one model struggles with a style, it tries the next β€” keeps results consistent.

Want me to drop a quick GIF here showing it handling two totally different styles? 😏