Skip to content

This is a web application built with Next.js, TypeScript, and Tailwind CSS that allows you to visualize various sorting algorithms in action.

License

Notifications You must be signed in to change notification settings

fvucemilo/sorting-visualizer

Repository files navigation

Sorting Visualizer

This is a web application built with Next.js, TypeScript, and Tailwind CSS that allows you to visualize various sorting algorithms in action.

Sorting Algorithms

  • Bubble Sort
  • Selection Sort
  • Quick Sort
  • Insertion Sort
  • Merge Sort
  • Heap Sort
  • Radix Sort

Features

  • Visualize sorting algorithms in real-time.
  • Adjust the speed of the visualization.
  • Generate random arrays to sort.
  • Select different sorting algorithms to compare their performance.

Getting Started

  1. Clone this repository.
  2. Install dependencies by running npm install.
  3. Start the development server with npm run dev.
  4. Open http://localhost:3000 to view the app in your browser.

Usage

  • Select a sorting algorithm from the dropdown menu.
  • Click the "Generate Array" button to create a random array.
  • Click the "Sort" button to visualize the selected sorting algorithm.
  • Use the speed slider to adjust the animation speed.

Technologies Used

  • Next.js - React framework for building server-rendered applications.
  • TypeScript - A superset of JavaScript that adds static typing.
  • Tailwind CSS - A utility-first CSS framework for quickly building custom designs.

Preview

Sorting Visualizer Preview

Click the image to see it in action.

Contributing

Contributions are welcome! If you'd like to contribute to this project, please follow these steps:

  1. Fork the repository.
  2. Create your feature branch (git checkout -b feature/your-feature-name).
  3. Commit your changes (git commit -am 'Add some feature').
  4. Push to the branch (git push origin feature/your-feature-name).
  5. Open a pull request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Author

Filip Vučemilović-Grgić