logo

Sorting Visualizer

Animated visualizer showing each step of various sorting algorithms.

2022

What is it?

This project is visualising how sorting algorithms work. A sorting algorithm is an algorithm that puts elements of a list into order. There are many sorting algorithms, and this project visualises their steps. It helps to understand each step. Users can pause the visualisation at any moment and go both forward and backward step by step.

sorting visualizer

Implemented algorithms:

  • Bubble sort

  • Selection sort

  • Insertion sort

  • Merge sort

  • Quick sort

Controls

While other sorting visualisers can be found online, I couldn’t find any that allowed users to pause and manually navigate each step. As a result, I implemented it and believe it will help to understand how each sorting method is performed.

Furthermore, the animation can be sped up or slowed down during playback.

controls

Animations and design

To make the animations visually attractive I used Framer Motion as the animation library. It simulates spring physics for realistic motion. To keep the algorithmic layer separate from visualisation it works in a way that the given set is first sorted by the algorithm and each step is saved in an array that later on is iterated with Framer Motion to draw the animation.

The user interface is built with Chakra UI library.

intro

Technologies

ReactChakraUIFramer MotionGitHub Pages

My projects

Take a look at my portfolio projects.

Pixel-perfect website and CMS for Travel Agency. A seamless client facing experience and easy to use CMS. Working on the entire development as a solo one-man army freelancer.

NextJS 14TypeScriptDirectus CMSDocker

Comprehensive platform for car auction searches with over one million entries, developed for a client, featuring advanced filtering, multi-language support, and a dynamic blog.

NextJS 14TypeScriptTailwindCSSPostgreSQL

A copy of PacMan game. Keyboard or screen navigation and "inteligent" ghosts following the PacMan thanks tu A* pathfinding algorithm.

Next.jsReactTailwindCSSTypeScript
Project PacMan logo

PacMan

Jan 2023

It’s an online shop designed for businesses that sell multiple products, typically purchased in quantities greater than one.

ReactNext.jsTailwindCSSPrismaImgixNext AuthStripe

This project is visualising how sorting algorithms work. It helps to understand each step. Users can pause the visualisation and go forward or backward step by step.

ReactChakraUIFramer MotionGitHub Pages

Do you remember playing Snake Game on Nokia 3210? I do! And that’s why decided to recreate the game as one of my portfolio projects.

ReactTailwind CSSFirestoreFirebase Hosting

I built this site to present myself and some of my projects in an interesting way.

NextJSReactFramer MotionContentfulGraphQL