Inspiration

As students ourselves, we noticed a recurring problem in programming classes: students often write syntactically correct code that simply does not do what they intended. The logic is broken, but nothing tells them where or why. Debugging becomes frustrating and slow. We also know from learning science that people understand complex ideas much faster through visuals than through text

What it does

FlowViz is a PyCharm plugin that generates an interactive flowchart of your Python code in real time, directly inside the IDE. As you write, the diagram updates instantly — no need to run the code. It supports bidirectional navigation: clicking a line of code highlights the corresponding node in the diagram, and clicking a node in the diagram jumps to the exact line in the editor. Nested structures like if-inside-if are rendered smaller and with attenuated colors to reflect their depth visually.

How we built it

We built FlowViz using Claude Code, which generated the entire codebase from our descriptions. The plugin is written in Kotlin using the IntelliJ Platform Plugin SDK. Claude Code built a custom Python parser, a Mermaid.js diagram generator, and an embedded browser panel inside PyCharm. It also implemented the bidirectional sync between the editor and the diagram.

Challenges we ran into

Sometimes the plugin did not behave exactly as we intended. Getting the diagram to render correctly in all cases, especially with nested structures and special characters, required many iterations until it worked the way we envisioned.

Accomplishments that we're proud of

The plugin actually works. You open a Python file, start typing, and the flowchart appears live on the right side of the screen.

What we learned

We also discovered how to effectively use AI tools to accelerate development, and how to guide them precisely to get exactly what you want.

What's next for La Hiper

Win Hackathons.

Built With

  • claude
  • intellij-platform-plugin-sdk
  • jbcefbrowser
  • kotlin
  • mermaid.js
  • pycharm
Share this project:

Updates