Logo
Home
Projects
Blog

Ready to create
something amazing?

Company logo

Ali Benkarrouch

Software Engineering student at ETS

Get upDownload my CV
LinkedInGithubEmail

Contact me

© 2026 Ali Benkarrouch. All rights reserved.
0%
All projects
Progression - Visualization
February 2025

Progression - Visualization

During my final semester at Cégep de Rosemont, I contributed to Progression, a large-scale programming learning platform similar to "LeetCode" developed by the department. Working within a team of seven developers, our mission was to enhance the educational experience by adding a visual dimension to problem-solving. The goal was to enable students to move beyond just reading code and instead understand the dynamic behavior of their algorithms in real-time.

Contribution

I specialized in the interface logic layer responsible for translating execution data into visual representations. I developed the transformation modules that retrieve states from user-submitted code to generate interactive animations. Specifically, I designed the visualization for sorting algorithms (represented by animated blocks) and created a dynamic grid system for pathfinding problems, where the path is traced in real-time while identifying obstacles and traps.

Project Gallery

Visual Overview

Progression - Visualization screenshot 1

Approach

My approach focused on creating a seamless bridge between the execution engine and the rendering engine. Working in a large-scale environment, I had to ensure that retrieving debugging data did not impact the application's performance. I relied on a reactive data structure so that each step of the user's algorithm triggers a precise interface update, transforming abstract data streams into a consistent and educational visual experience.

Features

  • Real-time algorithm visualization
  • Dynamic sorting animations
  • Interactive grid path tracing
  • mmediate pedagogical visual feedback

Stack

JavascriptJavascriptPHPPHPVueVuePythonPython

Sources

Gitlab
Gitlab

More Projects

Explore Other Work

Memo-mate

Memo-mate

I developed Memo-mate as part of my Programming 2 course. The goal was to create a functional clone of the Notepad application to put into practice the fundamental concepts of object-oriented programming and file manipulation. It was an excellent exercise in understanding how to transform word processing logic into a concrete utility application.

May 2023

Spritelab

Spritelab

I designed Spritelab to address a specific need in the workflow of game developers and pixel artists: efficient management and transformation of spritesheets. The goal was to create a lightweight and intuitive tool to automate repetitive slicing and organizing tasks, saving time when integrating visual assets into game engines.

March 2025

ArtSync

ArtSync

As part of my Web Application 2 course in college, I had the opportunity to work in a team on the design and on the development of a full-stack application. We created ArtSync, a platform where users can publish, explore, and share artistic content. The project took us through all stages of development: requirements analysis, UML diagram, relational database design, interface design with Figma, and development using Java, Spring Boot, Thymeleaf, and Angular. It was a great experience to put our knowledge into practice in an agile environment, with regular follow-ups and a workflow that felt very close to a real professional project.

May 2024

View All Projects