Skip to content

eigenvue/eigenvue

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

30 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation


Eigenvue

Interactive Dissection Platform for deep learning, generative AI, and quantum algorithms

Interactive, step-by-step visualizations with synchronized code highlighting,
plain-language explanations, and educational content β€” in the browser and in Python.


PyPI versionΒ  npm versionΒ  CI statusΒ  MIT LicenseΒ  Python 3.10+Β  Node 18+


Live App Β· Documentation Β· PyPI Β· npm Β· GitHub



Why Eigenvue?

Understanding algorithms requires building spatial and temporal intuition that textbooks and static diagrams cannot provide. Existing tools are domain-specific β€” one for sorting, another for attention mechanisms, yet another for quantum circuits. None offer a unified visual language across these domains, and none bridge web-based exploration with programmatic workflows.

Eigenvue solves this with:

  • One platform, four domains β€” classical algorithms, deep learning, generative AI, and quantum computing under a single interaction model.
  • Dual distribution β€” explore in the browser at eigenvue.web.app, or pip install eigenvue for Jupyter notebooks and research scripts.
  • Real code, not config β€” algorithms are defined as TypeScript and Python functions, making them testable, debuggable, and contributor-friendly.

Algorithms

Classical (7)

  • Binary Search
  • Bubble Sort
  • QuickSort
  • Merge Sort
  • Breadth-First Search
  • Depth-First Search
  • Dijkstra's Algorithm

Deep Learning (5)

  • Perceptron
  • Feedforward Network
  • Backpropagation
  • 2D Convolution
  • Gradient Descent

Generative AI (5)

  • Tokenization (BPE)
  • Token Embeddings
  • Self-Attention
  • Multi-Head Attention
  • Transformer Block

Quantum Computing (5)

  • Qubit Bloch Sphere
  • Quantum Gates
  • Superposition & Measurement
  • Grover's Search
  • Quantum Teleportation

22 algorithms with step-by-step animated visualizations, synchronized code highlighting (pseudocode, Python, JavaScript), key concepts, common pitfalls, quizzes, and further resources.

Browse the full catalog: Algorithm Reference β†’

Quick Start

Web App

Explore all visualizations instantly β€” no installation required:

πŸ‘‰ eigenvue.web.app

Python

pip install eigenvue
import eigenvue

# List all available algorithms
eigenvue.list()

# Open an interactive visualization in your browser
eigenvue.show("binary-search")

# Get step data programmatically
steps = eigenvue.steps("self-attention")

# Use in a Jupyter notebook  (pip install eigenvue[jupyter])
eigenvue.jupyter("transformer-block")

Node.js / TypeScript

npm install eigenvue
import { list, steps, show } from "eigenvue";

// List all available algorithms
list();

// Get step data programmatically
const result = steps("binary-search");

// Open an interactive visualization in your browser
show("self-attention");

Features

Feature Description
▢️ Step-by-Step Playback Play, pause, step forward/back through every algorithm state
πŸ–ŠοΈ Synchronized Code See exactly which line executes at each step β€” in pseudocode, Python, or JavaScript
πŸŽ›οΈ Custom Inputs Provide your own arrays, graphs, or parameters and watch the algorithm adapt
πŸ“– Educational Content Key concepts, common pitfalls, quizzes, and curated external resources per algorithm
πŸ““ Jupyter Integration Embed interactive visualizations directly in notebooks with eigenvue.jupyter()
πŸ”— Shareable URLs Every visualization state is URL-encoded β€” share a specific step with a link
βœ… Cross-Language Parity TypeScript and Python generators produce identical step sequences (CI-enforced)
πŸ“¦ Minimal Dependencies npm package: zero runtime deps. Python package: only Flask

Architecture

Eigenvue follows a clean three-layer architecture:

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  Generator Layer       TypeScript & Python functions     β”‚
β”‚                        that produce Step sequences       β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚  Step Format           Universal JSON contract (v1.0.0)  β”‚
β”‚                        between generators & renderers    β”‚
β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
β”‚  Rendering Layer       Canvas 2D engine with layouts,    β”‚
β”‚                        animation, and playback controls  β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

Adding a new algorithm never requires modifying the rendering engine. Improving the renderer never requires touching algorithm logic. Cross-language parity is CI-enforced to Β±1e-9 tolerance.

πŸ“ Architecture docs β†’

Project Structure

eigenvue/
β”œβ”€β”€ algorithms/          # Shared algorithm definitions (meta.json per algorithm)
β”‚   β”œβ”€β”€ classical/       # Binary Search, Bubble Sort, QuickSort, …
β”‚   β”œβ”€β”€ deep-learning/   # Perceptron, Feedforward Network, …
β”‚   β”œβ”€β”€ generative-ai/   # Tokenization, Self-Attention, …
β”‚   └── quantum/         # Grover's Search, Quantum Gates, …
β”œβ”€β”€ web/                 # Next.js web application (Canvas 2D, Tailwind CSS)
β”œβ”€β”€ python/              # Python package (pip install eigenvue)
β”œβ”€β”€ node/                # npm package (zero runtime dependencies)
β”œβ”€β”€ shared/              # Shared types, schemas, and constants
β”œβ”€β”€ docs/                # Documentation site (Astro / Starlight)
β”œβ”€β”€ scripts/             # Build, codegen, and maintenance scripts
β”œβ”€β”€ tests/               # Cross-platform integration tests
└── .github/             # CI/CD workflows

Development Setup

Prerequisites: Node.js 22+, Python 3.10+, Git

Web Application
cd web
npm install
npm run dev          # β†’ http://localhost:3000
Python Package
cd python
pip install -e ".[dev]"
pytest
Node Package
cd node
npm install
python ../scripts/bundle-node-data.py
npm run build
npm test
Documentation Site
cd docs
npm install
npm run build

Documentation

Full documentation is available at eigenvue.web.app/docs.

Section What's Inside
Getting Started Web app, Python package, Jupyter integration
User Guide UI controls, playback, sharing & URLs, FAQ
API Reference Python API, TypeScript API, Step Format, Layout System
Architecture System overview, design decisions, rendering engine
Algorithm Reference All 22 algorithms with detailed documentation
Contributing Dev setup, adding algorithms, Generator API, style guide
Research & Citation Project overview, comparison, how to cite

Contributing

Contributions are welcome! Please read the Contributing Guide for development setup, branching strategy, and commit conventions.

Adding a new algorithm? Follow the step-by-step guide: Adding an Algorithm β†’

Resource Link
Development Setup Docs β†’
Generator API Docs β†’
Step Format Spec Docs β†’
Code Style Guide Docs β†’
Writing Tests Docs β†’
Cross-Language Parity Docs β†’

Tech Stack

Layer Technology
Web App Next.js 15 Β· React 19 Β· Canvas 2D Β· Tailwind CSS 4
Python Package Python 3.10+ Β· Flask Β· hatchling
Node Package TypeScript Β· tsup Β· zero runtime deps
Testing Vitest Β· pytest Β· JSON Schema validation
CI/CD GitHub Actions β€” lint, typecheck, test, build, deploy
Docs Astro + Starlight
Hosting Firebase

Citation

If you use Eigenvue in research or teaching, please cite:

@article{eigenvue2026,
  title   = {Eigenvue: A Visual Learning Platform for Algorithms,
             AI Architectures, and Quantum Computing},
  author  = {Mishra, Ashutosh},
  year    = {2026},
  url     = {https://eigenvue.web.app}
}

See the full Citation guide β†’

License

MIT Β© 2026 Ashutosh Mishra


Built with care for learners, educators, and researchers.

Website Β· Docs Β· Report a Bug Β· Request a Feature

About

[Open-Source] Interactive Dissection Platform for deep learning, generative AI, and quantum algorithms

Topics

Resources

License

Contributing

Stars

10 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors