A modern, interactive web application that brings data structures and algorithms to life through stunning visualizations.
Perfect for students, educators, and developers who want to understand how algorithms work under the hood.
๐ Visit Live Site โข ๐ Documentation โข ๐ค Contribute โข ๐ Report Bug
- Bubble Sort - Watch bubbles rise to find their place
- Selection Sort - See the selection process in action
- Insertion Sort - Observe elements finding their sorted position
- Merge Sort - Visualize the divide and conquer approach
- Quick Sort - Experience the power of partitioning
- Heap Sort - Understand heap-based sorting
- Count Sort - See counting sort's linear time magic
- Bucket Sort - Watch elements distributed into buckets
- Radix Sort - Observe digit by digit sorting
- Binary Search - See the power of divide and conquer
- Linear Search - Watch sequential searching in action
- Binary Search Tree - Interactive BST operations
- Linked Lists - Single and double linked list operations
- Hash Tables - Understand hashing and collision resolution
- Heaps - Visualize heap structure and operations
- Real-time Animation - Smooth, customizable animation speeds
- Step-by-step Visualization - Control the pace of learning
- Custom Input - Test with your own data sets
- Random Data Generation - Quick testing with random arrays
- Responsive Design - Works on desktop and mobile devices
- Framework: Next.js 14 (React)
- Styling: Tailwind CSS
- Animations: Custom animation engine with p5.js
- UI Components: Shadcn/ui
- Deployment: Vercel
- Website: visuallearner.org
.
โโโ LICENSE
โโโ README.md
โโโ app
โ โโโ algorithms
โ โ โโโ bst
โ โ โโโ hash-table
โ โ โโโ heap
โ โ โโโ linked-list
โ โ โโโ search
โ โ โโโ sorting
โ โโโ globals.css
โ โโโ layout.js
โ โโโ page.js
โโโ components
โ โโโ Animator.js
โ โโโ Animator2.js
โ โโโ CodeBlock.js
โ โโโ Footer/
โ โโโ Header/
โ โโโ NumberInput.js
โ โโโ Tideon.js
โ โโโ phoneScreenBlocker.js
โ โโโ ui/
โโโ components.json
โโโ eslint.config.mjs
โโโ jsconfig.json
โโโ lib/
โโโ next.config.mjs
โโโ package-lock.json
โโโ package.json
โโโ postcss.config.mjs
โโโ public/- Node.js 18+ installed
- npm, yarn, pnpm, or bun package manager
-
Clone the repository
git clone https://github.com/simonMat21/algorithm-visualizer.git cd algorithm-visualizer -
Install dependencies
npm install # or yarn install # or pnpm install
-
Run the development server
npm run dev # or yarn dev # or pnpm dev
-
Open your browser Navigate to http://localhost:3000 to see the application.
- Visit the Website - Go to visuallearner.org
- Select an Algorithm - Choose from sorting, searching, or data structure categories
- Input Your Data - Enter custom numbers or generate random data
- Customize Settings - Adjust animation speed and visualization preferences
- Watch & Learn - Observe the algorithm in action with real-time animations
- Experiment - Try different inputs to see how algorithms behave
We love contributions! Whether you're fixing bugs, adding new algorithms, improving documentation, or enhancing the UI, your help is greatly appreciated.
- ๐ Bug Reports - Found a bug? Let us know!
- ๐ก Feature Requests - Have an idea? We'd love to hear it!
- ๐ง Code Contributions - Submit pull requests for new features or fixes
- ๐ Documentation - Help improve our docs and examples
- ๐จ Design - Enhance the user interface and experience
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Make your changes
- Test thoroughly
- Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Follow the existing code style and conventions
- Add comments for complex algorithms
- Test your changes across different browsers
- Update documentation when needed
- Keep animations smooth and educational
This project is designed to help:
- Computer Science Students understand algorithm complexity and behavior
- Educators teach algorithms in an engaging, visual way
- Developers refresh their knowledge of fundamental algorithms
- Interview Candidates practice and visualize common algorithm questions
The visualization engine is highly customizable:
- Adjust colors and themes
- Modify animation speeds
- Add new visualization styles
- Extend with new algorithms
- Chrome (recommended)
- Firefox
- Safari
- Edge
- Built with โค๏ธ using Next.js and React
- Animations powered by p5.js
- UI components from Shadcn/ui
- Hosted at visuallearner.org
- Special thanks to all contributors who help make this project better
- Live Website: visuallearner.org
- GitHub Repository: github.com/yourusername/algorithm-visualizer
- Issues: Report bugs or request features
If you encounter any issues or have questions:
- Visit visuallearner.org to use the live version
- Open an issue on GitHub
- Check existing documentation
- Join our community discussions
Made with โค๏ธ for the developer community. Happy learning! ๐
Experience live at visuallearner.org