• Public
  • Public/Protected
  • All



Algorithmics Animation Workshop

Algorithm and Data Structure Visualizations for educational purposes built with an intuitive api. Open to contributions.
A project hosted by the Dept. of Electrical Engineering and Computer Science, Lassonde School of Engineering, York University in Toronto.

Table of Contents

About The Project


In the year 2001, students Sotirios Stergiopoulos and Hang Thi Anh Pham created Algorithmics Animation Workshop (AAW) under the supervision of Prof. Andy Mirzaian. AAW is an invaluable resource for visualizing and understanding algorithms. However, since its inception, the Java applets used have become increasingly more difficult to run on modern browsers, with some lacking support completely, discouraging students from utilizing the platform.

Legacy Page

To be able to run the legacy applets, the Chrome web browser is required. Since most modern web browsers have stopped native java applet support, please install the Cheerpj Applet Runner extension to your Chrome web browser. Then you just go to the AAW legacy page and select an algorithm. Then click on the "puzzle piece" in the top right corner of the browser (which says " Extensions"). Give Cheerpj full permission. A page refresh maybe needed. The applet should start loading upon refresh.

A New Beginning...

AAW has been updated using modern web technologies in order to make it accessible once again and hopefully to preserve it long into the future.

Head over to the AAW website for access to visualizations.

Built With


Interested in making your own visualization(s) for fun or for deployment onto the AAW website?
The following is a tldr/concise summary:

  1. Get AAW running locally by following Getting Started
  2. Create your feature Branch (git checkout -b feature/yourVisualizationTitle)
  3. Code your Visualization using other visualization files in src/algs as an example. Read the Visualization template guide before you start, search for Visualization_Template in the docs!. Commit your Changes as you go (git commit -m 'Added yourVisualizationTitle). Add your Vizualization to visualizations.config.js to include it in the compilation.
  4. Push to the Branch (git push origin feature/yourVisualizationTitle)
  5. Open a Pull Request. Your changes will be reveiwed and hopefully merged to master and deployed to the website.

Getting Started

To get a local copy of AAW up and running follow these simple steps.



  1. Request access to the aaw-eecs group
    • You may want to notify someone to grant you access
  2. Fork the main repository


  1. Clone your forked repo
git clone https://gitlab.com/your_username_/aaw-main.git
  1. Install NPM packages
npm install
  1. Run the live compiler and development server
npm run dev


License to be added.


Jay Karon - github/jaykaron - jaykaron@my.yorku.ca
Nadav Hames - github/nadavhames - nadavh@my.yorku.ca
Professor Andy Mirzaian - http://www.cs.yorku.ca/~andy/ - andy@eecs.yorku.ca

Project Link: https://gitlab.com/aaw-eecs/aaw-main (this will eventually be moved)


Generated using TypeDoc