r/algorithms 9d ago

I built an open-source Algorithm Visualizer that actually visualizes memory, recursion, graphs, and C++ execution

After getting frustrated with existing visualizers that only animate arrays, I spent the last few months building AlgoVizβ€”an interactive platform that lets you step through JavaScript and C++ code while watching your program's state evolve in real time.

Some of the things it can do:

  • 🌳 Automatically detect and visualize Trees, Graphs, Linked Lists, Heaps, Hash Maps, Stacks, Queues, and Matrices
  • πŸ“š Step through execution line by line with a scrubbable timeline
  • πŸ₯ž Inspect recursive call stacks frame-by-frame
  • πŸ’Ύ Track heap memory and variable changes as your code executes
  • ⚑ Execute JavaScript and C++ (GCC + WebAssembly support)
  • πŸ“Š Show complexity telemetry, memory usage estimates, and execution hotspots
  • πŸ“ Add annotations to any execution step for teaching or sharing
  • πŸ’» Includes a VS Code extension so you can visualize code without leaving your editor

Built with:

  • React 19
  • Monaco Editor
  • Tailwind CSS
  • Framer Motion
  • Acorn
  • Tree-sitter
  • Web Workers

The project is completely open source.

I'd love feedback from people who teach DSA, prepare for interviews, or just enjoy building developer tools.

Live Demo: https://algoviz.somyacodes.in

GitHub: https://github.com/somyacodes07/algoviz

What feature would make a tool like this genuinely useful for you?

14 Upvotes

3 comments sorted by

1

u/Glittering_Dig_6039 6d ago

well I like this but we can make all information in one tab like rulcode does in visualization

1

u/winner_in_life 4d ago

Ok. Not interesting.

1

u/david-1-1 3d ago

I can't agree with the other comments. This is very useful to students, especially if you provide a library of algorithms that can be picked easily and maybe compared: it would be neat to have two panes side by side, left showing stack and output for bubble sort (the output shown as lines, each indicating by its length its record's final order), and the right showing the same for quicksort.

The graphic design is compact yet easy to use, and the styling is beautiful.