| 01 | Getting Started | Introduction to Programming and Tools of the Trade | Learn the basic underpinnings behind most programming languages and about software that helps professional developers do their jobs | [Intro to Programming Languages and Tools of the Trade](../../../getting-started-lessons/tree/main/1-intro-to-programming-languages) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | Jasmine |
| 01 | Getting Started | Introduction to Programming and Tools of the Trade | Learn the basic underpinnings behind most programming languages and about software that helps professional developers do their jobs | [Intro to Programming Languages and Tools of the Trade](../../getting-started-lessons/tree/main/1-intro-to-programming-languages) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | Jasmine |
| 02 | Getting Started | Basics of GitHub, includes working with a team | How to use GitHub in your project, how to collaborate with others on a code base | [Intro to GitHub](../../../1-getting-started-lessons/tree/main/2-github-basics) | ✅ | ✅ | ✅ | ✅ | ✅ | 🛑 | Floor |
| 02 | Getting Started | Basics of GitHub, includes working with a team | How to use GitHub in your project, how to collaborate with others on a code base | [Intro to GitHub](../../1-getting-started-lessons/tree/main/2-github-basics) | ✅ | ✅ | ✅ | ✅ | ✅ | 🛑 | Floor |
| 03 | Getting Started | Accessibility | Learn the basics of web accessibility | [Accessibility Fundamentals](../../../1-getting-started-lessons/tree/main/3-accessibility) | ✅ | ✅ | ✅ | ✅ | ✅ | 🛑 | Christopher |
| 03 | Getting Started | Accessibility | Learn the basics of web accessibility | [Accessibility Fundamentals](../../1-getting-started-lessons/tree/main/3-accessibility) | ✅ | ✅ | ✅ | ✅ | ✅ | 🛑 | Christopher |
| 04 | JS Basics | JavaScript Data Types | The basics of JavaScript data types | [Data Types](../../../2-js-basics/tree/main/1-data-types) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | Jasmine |
| 04 | JS Basics | JavaScript Data Types | The basics of JavaScript data types | [Data Types](../../2-js-basics/tree/main/1-data-types) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | Jasmine |
| 05 | JS Basics | Functions and Methods | Learn about functions and methods to manage an application's logic flow | [Functions and Methods](../../../2-js-basics/tree/main/2-functions-methods) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | Jasmine and Christopher |
| 05 | JS Basics | Functions and Methods | Learn about functions and methods to manage an application's logic flow | [Functions and Methods](../../2-js-basics/tree/main/2-functions-methods) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | Jasmine and Christopher |
| 06 | JS Basics | Making Decisions with JS | Learn how to create conditions in your code using decision-making methods | [Making Decisions](../../../2-js-basics/tree/main/3-making-decisions) | ✅ | | ✅ | ✅ | ✅ | ✅ | Jasmine |
| 06 | JS Basics | Making Decisions with JS | Learn how to create conditions in your code using decision-making methods | [Making Decisions](../../2-js-basics/tree/main/3-making-decisions) | ✅ | | ✅ | ✅ | ✅ | ✅ | Jasmine |
| 07 | JS Basics | Arrays and Loops | Work with data using arrays and loops in JavaScript | [Arrays and Loops](../../../2-js-basics/tree/main/4-arrays-loops) | ✅ | | ✅ | ✅ | ✅ | ✅ | Jasmine |
| 07 | JS Basics | Arrays and Loops | Work with data using arrays and loops in JavaScript | [Arrays and Loops](../../2-js-basics/tree/main/4-arrays-loops) | ✅ | | ✅ | ✅ | ✅ | ✅ | Jasmine |
| 08 | [Terrarium](../../../3-terrarium/tree/main/solution) | HTML in Practice | Build the HTML to create an online terrarium, focusing on building a layout | [Introduction to HTML](../../../3-terrarium/tree/main/1-intro-to-html) | ✅ | ✅ | ✅ | ✅ | ✅ | 🛑 | Jen |
| 08 | [Terrarium](../../3-terrarium/tree/main/solution) | HTML in Practice | Build the HTML to create an online terrarium, focusing on building a layout | [Introduction to HTML](../../3-terrarium/tree/main/1-intro-to-html) | ✅ | ✅ | ✅ | ✅ | ✅ | 🛑 | Jen |
| 09 | [Terrarium](../../../3-terrarium/tree/main/solution) | CSS in Practice | Build the CSS to style the online terrarium, focusing on the basics of CSS including making the page responsive | [Introduction to CSS](../../../3-terrarium/tree/main/2-intro-to-css) | ✅ | ✅ | ✅ | ✅ | ✅ | 🛑 | Jen |
| 09 | [Terrarium](../../3-terrarium/tree/main/solution) | CSS in Practice | Build the CSS to style the online terrarium, focusing on the basics of CSS including making the page responsive | [Introduction to CSS](../../3-terrarium/tree/main/2-intro-to-css) | ✅ | ✅ | ✅ | ✅ | ✅ | 🛑 | Jen |
| 10 | [Terrarium](../../../3-terrarium/tree/main/solution) | JavaScript Closures, DOM manipulation | Build the JavaScript to make the terrarium function as a drag/drop interface, focusing on closures and DOM manipulation | [JavaScript Closures, DOM manipulation](../../../3-terrarium/tree/main/3-intro-to-DOM-and-closures) | ✅ | ✅ | ✅ | ✅ | ✅ | 🛑 | Jen |
| 10 | [Terrarium](../../3-terrarium/tree/main/solution) | JavaScript Closures, DOM manipulation | Build the JavaScript to make the terrarium function as a drag/drop interface, focusing on closures and DOM manipulation | [JavaScript Closures, DOM manipulation](../../3-terrarium/tree/main/3-intro-to-DOM-and-closures) | ✅ | ✅ | ✅ | ✅ | ✅ | 🛑 | Jen |
| 11 | [Typing Game](../../../4-typing-game/tree/main/solution) | Build a Typing Game | Learn how to use keyboard events to drive the logic of your JavaScript app | [Event-Driven Programming](../../../4-typing-game/tree/main/typing-game) | ✅ | 🛑 | ✅ | ✅ | ✅ | ✅ | Christopher |
| 11 | [Typing Game](../../4-typing-game/tree/main/solution) | Build a Typing Game | Learn how to use keyboard events to drive the logic of your JavaScript app | [Event-Driven Programming](../../4-typing-game/tree/main/typing-game) | ✅ | 🛑 | ✅ | ✅ | ✅ | ✅ | Christopher |
| 12 | [Green Browser Extension](../../../5-browser-extension/tree/main/solution) | Working with Browsers | Learn how browsers work, their history, and how to scaffold the first elements of a browser extension | [About Browsers](../../../5-browser-extension/tree/main/1-about-browsers) | ✅ | ✅ | ✅ | ✅ | ✅ | 🛑 | Jen |
| 12 | [Green Browser Extension](../../5-browser-extension/tree/main/solution) | Working with Browsers | Learn how browsers work, their history, and how to scaffold the first elements of a browser extension | [About Browsers](../../5-browser-extension/tree/main/1-about-browsers) | ✅ | ✅ | ✅ | ✅ | ✅ | 🛑 | Jen |
| 13 | [Green Browser Extension](../../../5-browser-extension/tree/main/solution) | Building a form, call and API and storing variables in local storage | Build the JavaScript elements of your browser extension to call an API using variables stored in local storage | [APIs, Forms, and Local Storage](../../../5-browser-extension/tree/main/2-forms-browsers-local-storage) | ✅ | 🛑 | ✅ | ✅ | ✅ | ✅ | Jen |
| 13 | [Green Browser Extension](../../5-browser-extension/tree/main/solution) | Building a form, call and API and storing variables in local storage | Build the JavaScript elements of your browser extension to call an API using variables stored in local storage | [APIs, Forms, and Local Storage](../../5-browser-extension/tree/main/2-forms-browsers-local-storage) | ✅ | 🛑 | ✅ | ✅ | ✅ | ✅ | Jen |
| 14 | [Green Browser Extension](../../../5-browser-extension/tree/main/solution) | Background processes in the browser, web performance | Use the browser's background processes to manage the extension's icon; learn about web performance and some optimizations to make | [Background Tasks and Performance](../../../5-browser-extension/tree/main/3-background-tasks-and-performance) | ✅ | 🛑 | ✅ | ✅ | ✅ | 🛑 | Jen |
| 14 | [Green Browser Extension](../../5-browser-extension/tree/main/solution) | Background processes in the browser, web performance | Use the browser's background processes to manage the extension's icon; learn about web performance and some optimizations to make | [Background Tasks and Performance](../../5-browser-extension/tree/main/3-background-tasks-and-performance) | ✅ | 🛑 | ✅ | ✅ | ✅ | 🛑 | Jen |
| 15 | [Space Game](../../../6-space-game/tree/main/solution) | More Advanced Game Development with JavaScript | Learn about Inheritance using both Classes and Composition and the Pub/Sub pattern, in preparation for building a game | [Introduction to Advanced Game Development](../../../6-space-game/tree/main/1-introduction) | ✅ | 🛑 | ✅ | ✅ | ✅ | 🛑 | Chris |
| 15 | [Space Game](../../6-space-game/tree/main/solution) | More Advanced Game Development with JavaScript | Learn about Inheritance using both Classes and Composition and the Pub/Sub pattern, in preparation for building a game | [Introduction to Advanced Game Development](../../6-space-game/tree/main/1-introduction) | ✅ | 🛑 | ✅ | ✅ | ✅ | 🛑 | Chris |
| 16 | [Space Game](../../../6-space-game/tree/main/solution) | Drawing to canvas | Learn about the Canvas API, used to draw elements to a screen | [Drawing to Canvas](../../../6-space-game/tree/main/2-drawing-to-canvas) | ✅ | 🛑 | ✅ | ✅ | ✅ | 🛑 | Chris |
| 16 | [Space Game](../../6-space-game/tree/main/solution) | Drawing to canvas | Learn about the Canvas API, used to draw elements to a screen | [Drawing to Canvas](../../6-space-game/tree/main/2-drawing-to-canvas) | ✅ | 🛑 | ✅ | ✅ | ✅ | 🛑 | Chris |
| 17 | [Space Game](../../../6-space-game/tree/main/solution) | Moving elements around the screen | Discover how elements can gain motion using the cartesian coordinates and the Canvas API | [Moving Elements Around](../../../6-space-game/tree/main/3-moving-elements-around) | ✅ | 🛑 | ✅ | ✅ | ✅ | 🛑 | Chris |
| 17 | [Space Game](../../6-space-game/tree/main/solution) | Moving elements around the screen | Discover how elements can gain motion using the cartesian coordinates and the Canvas API | [Moving Elements Around](../../6-space-game/tree/main/3-moving-elements-around) | ✅ | 🛑 | ✅ | ✅ | ✅ | 🛑 | Chris |
| 18 | [Space Game](../../../6-space-game/tree/main/solution) | Collision detection | Make elements collide and react to each other using keypresses and provide a cooldown function to ensure performance of the game | [Collision Detection](../../../6-space-game/tree/main/4-collision-detection) | ✅ | 🛑 | ✅ | ✅ | ✅ | 🛑 | Chris |
| 18 | [Space Game](../../6-space-game/tree/main/solution) | Collision detection | Make elements collide and react to each other using keypresses and provide a cooldown function to ensure performance of the game | [Collision Detection](../../6-space-game/tree/main/4-collision-detection) | ✅ | 🛑 | ✅ | ✅ | ✅ | 🛑 | Chris |
| 19 | [Space Game](../../../6-space-game/tree/main/solution) | Keeping score | Perform math calculations based on the game's status and performance | [Keeping Score](../../../6-space-game/tree/main/5-keeping-score) | ✅ | 🛑 | ✅ | ✅ | ✅ | 🛑 | Chris |
| 19 | [Space Game](../../6-space-game/tree/main/solution) | Keeping score | Perform math calculations based on the game's status and performance | [Keeping Score](../../6-space-game/tree/main/5-keeping-score) | ✅ | 🛑 | ✅ | ✅ | ✅ | 🛑 | Chris |
| 20 | [Space Game](../../../6-space-game/tree/main/solution) | Ending and restarting the game | Learn about ending and restarting the game, including cleaning up assets and resetting variable values | [The Ending Condition](../../../6-space-game/tree/main/6-end-condition) | ✅ | 🛑 | ✅ | ✅ | ✅ | 🛑 | Chris |
| 20 | [Space Game](../../6-space-game/tree/main/solution) | Ending and restarting the game | Learn about ending and restarting the game, including cleaning up assets and resetting variable values | [The Ending Condition](../../6-space-game/tree/main/6-end-condition) | ✅ | 🛑 | ✅ | ✅ | ✅ | 🛑 | Chris |
| 21 | [Banking App](../../../7-bank-project/tree/main/solution) | Layout and Route a Web Site | Learn how to create the scaffold of a multipage website's architecture using routing | [Layouts and Routes](../../../7-bank-project/tree/main/1-template-route) | ✅ | 🛑 | ✅ | ✅ | ✅ | ✅ | Yohan |
| 21 | [Banking App](../../7-bank-project/tree/main/solution) | Layout and Route a Web Site | Learn how to create the scaffold of a multipage website's architecture using routing | [Layouts and Routes](../../7-bank-project/tree/main/1-template-route) | ✅ | 🛑 | ✅ | ✅ | ✅ | ✅ | Yohan |
| 22 | [Banking App](../../../7-bank-project/tree/main/solution) | Build a Login and Registration Form | Learn about building forms and handing validation routines | [Forms](../../../7-bank-project/tree/main/2-forms) | ✅ | 🛑 | ✅ | ✅ | ✅ | ✅ | Yohan |
| 22 | [Banking App](../../7-bank-project/tree/main/solution) | Build a Login and Registration Form | Learn about building forms and handing validation routines | [Forms](../../7-bank-project/tree/main/2-forms) | ✅ | 🛑 | ✅ | ✅ | ✅ | ✅ | Yohan |
| 23 | [Banking App](../../../7-bank-project/tree/main/solution) | Methods of Fetching and Using Data | How data flows in and out of your app, how to fetch it, store it, and dispose of it | [Data](../../../7-bank-project/tree/main/3-data) | ✅ | 🛑 | ✅ | ✅ | ✅ | ✅ | Yohan |
| 23 | [Banking App](../../7-bank-project/tree/main/solution) | Methods of Fetching and Using Data | How data flows in and out of your app, how to fetch it, store it, and dispose of it | [Data](../../7-bank-project/tree/main/3-data) | ✅ | 🛑 | ✅ | ✅ | ✅ | ✅ | Yohan |
| 24 | [Banking App](../../../7-bank-project/tree/main/solution) | Concepts of State Management | Learn how your app retains state and how to manage it programmatically | [State Management](../../../7-bank-project/tree/main/4-state-management) | | 🛑 | | | | | Yohan |
| 24 | [Banking App](../../7-bank-project/tree/main/solution) | Concepts of State Management | Learn how your app retains state and how to manage it programmatically | [State Management](../../7-bank-project/tree/main/4-state-management) | | 🛑 | | | | | Yohan |