Welcome to AlgoViz! 🎉 This is an interactive web app where you can explore and visualize key algorithms in action! Whether you're diving into sorting, pathfinding, or tree traversal, this tool brings algorithms to life with dynamic visuals and animations. Plus, it’s now even smarter with the AI Assistant 🤖 that can help you with all your algorithm-related questions! 🎉
🚀 Live Demo: Visit AlgoViz
This app uses the latest web technologies to deliver a smooth and engaging experience:
- React: For building beautiful user interfaces.
- Next.js 15: The backbone for server-side rendering and routing.
- Tanstack Query: For efficient data fetching and state management.
- TailwindCSS: For sleek, modern UI design.
Visualize popular sorting algorithms with smooth, dynamic animations! Choose from:
- Merge Sort
- Insertion Sort
- Quick Sort
- Heap Sort
Find the shortest path between nodes using different algorithms, and explore the new random maze generation:
- Breadth-First Search (BFS)
- Dijkstra's Algorithm
- A* Search
- Prim's Algorithm for generating random mazes 🎮
Explore various tree traversal methods, including:
- Inorder Traversal
- Preorder Traversal
- Postorder Traversal
- Level Order Traversal
The AI Assistant is here to help! You can now chat with the assistant for instant explanations of algorithms, code examples, and much more. It’s like having a personal tutor on standby. 🎓
Access the Settings Page to view technical details about the AI and, if you're an admin, manage the sources it uses to generate responses.
The AI Assistant and Settings Page rely on a backend to provide functionality. You can find the backend source code here:
GitHub: dsa_rag Backend
Demo: Backend Demo
Want to run the project on your machine? Here's how:
-
Clone the repository:
git clone https://github.com/your-repo-url.git
-
Install dependencies:
npm install
-
For the AI Assistant 🤖 and Settings Page ⚙️, you'll need to set up the backend:
- In your
.env
file, add the API URL (take inspiration fromenv.example
). - If you don't have a local backend running, you can use the demo backend URL as the
NEXT_PUBLIC_API_URL
in your.env
file:https://www.dsa-rag.api.abubeker.com/
.
-
Run the app:
npm run dev
-
Enjoy the app at
http://localhost:3000!
🎉
I’d love your help! If you'd like to improve the visualizations or add new algorithms, feel free to fork the repo and open a pull request.
This project is licensed under the MIT License.