/Algolizer

A web application built with TypeScript, CSS, HTML, and React for the frontend, and Node.js for the backend, that visualizes graph and sorting algorithms for enhanced understanding.

Primary LanguageTypeScript

🌟 Algolizer

Algolizer is a full-stack web application designed to visualize and explore various algorithms. With an interactive platform, users can dive into sorting and graph algorithms, view detailed visualizations, and control the algorithm execution to gain a deeper understanding.

Made with HTML Made with JavaScript Made with CSS Made with TypeScript Made with React Made with Node.js

πŸš€ Features

Frontend:

  • Built with React, TypeScript, JavaScript, HTML, and CSS.

Backend:

  • Powered by Node.js.

API Library:

  • Utilizes Axios for API interactions.

Algorithms Visualized:

  • Graph Algorithms:

    • Depth-First Search (DFS) πŸ•΅οΈβ€β™‚οΈ
    • Breadth-First Search (BFS) πŸ”
    • Dijkstra's Algorithm 🚦
  • Sorting Algorithms:

    • Bubble Sort πŸ’§
    • Quick Sort ⚑
    • Insertion Sort ✨
    • Selection Sort πŸ†
    • Heap Sort 🏰

User Controls:

  • Reset πŸ”„
  • Speed Up ⏩
  • Pause ⏸️
  • Resume ▢️
  • Auto Generate πŸ”„
  • Manual Generate πŸ› οΈ

Additional Screens:

  • Info Screen: Provides detailed information about the algorithm, including pseudocode and additional references. πŸ“š
  • Complexity Screen: Explains algorithmic complexity and its significance. πŸ“Š

πŸ“Έ Screenshots

Split Screen

Sort Screen

Graph Screen

Info Screen

Complexity Screen

🌐 Live Demo

You can check out the live version of Algolizer at Live Demo.

πŸ› οΈ Installation

  1. Clone the repository:
git clone https://github.com/yourusername/algolizer.git
cd algolizer
  1. Frontend Setup:
  • Navigate to the frontend directory:
cd frontend
  • Install dependencies:
npm install
  • Start the frontend:
npm run dev
  1. Backend Setup:
  • Navigate to the backend directory:
cd ../backend
  • Install dependencies:
npm install
  • Start the backend:
npm run dev