‣

# 1. Variables

Variables keep track of quantities that change such as position, size, and color.

Sliding Square

Sliding Square

Draw interactive shapes and compute their area dynamically

Exploding Star

Exploding Star

Draw interactive shapes and compute their area dynamically

Rocket - Mouse Movement

Rocket - Mouse Movement

Build a rocket that moves along with the mouse

Sunrise

Sunrise

Simulate a sunrise over the mountains

Avatar [Python 🐍]

Avatar [Python 🐍]

Animate your own game avatar

Moonlight Meteor

Moonlight Meteor

Simulate a meteor as it streaks across the night sky

Area Calculator

Area Calculator

Draw interactive shapes and compute their area dynamically

Analog Clock [Python 🐍]

Analog Clock [Python 🐍]

Create a colorful analog clock with ratios and rotation

Rocket - Mouse Movement [🐍 Python]

Rocket - Mouse Movement [🐍 Python]

Build a rocket that moves along with the mouse

‣

# 2. Functions

Functions make it easy to bundle related instructions together and to map inputs to outputs.

Retro Screensaver using Shapes 🐍

Retro Screensaver using Shapes 🐍

A cool retro screen saver that has many shapes and Perlin noise

Christmas Tree Using Functions 🐍

Christmas Tree Using Functions 🐍

A decorated Christmas tree created using functions

Strive - Rocket Blast Off 🐍

Strive - Rocket Blast Off 🐍

Create Rocket that blasts off into space.

Avatar Studio [Python 🐍]

Avatar Studio [Python 🐍]

Build a simple studio for Designing Game Avatars

Function Viewer [🐍 Python]

Function Viewer [🐍 Python]

Create a simple graphing calculator by defining functions

Pythagoras' Proof [🐍 Python]

Pythagoras' Proof [🐍 Python]

Build an interactive version of Pythagoras' proof of his theorem

Function tree 🐍

Function tree 🐍

See the power of writing a function by calling it from within itself

Basic Introduction to Functions

Basic Introduction to Functions

A very simple project to show beginners the absolute basics of what a function is

City Generator [🐍 Python]

City Generator [🐍 Python]

Make a lovely city with houses, hospitals, buildings, and streets

‣

# 3. Logic

Boolean algebra is the logical foundation for computers, and we use it to make decisions using conditional statements.

3D Solar System

3D Solar System

Take a look at our Solar System in 3 dimensions. Create our Sun and the 8 planets that orbit around it.

Art Sketchpad - Group class

Art Sketchpad - Group class

Apply geometry and uniform probability distributions to make art

🆕 Braided Trigonometry [🐍 Python]

🆕 Braided Trigonometry [🐍 Python]

Create a Braids and use them to form a heart shape, using Trigonometry, analytically!

Painting Mashup [🐍 Python]

Painting Mashup [🐍 Python]

Conditional statements to use inequalities to make a color mix-match.

🆕[3D] Working Satellite [🐍 Python]

🆕[3D] Working Satellite [🐍 Python]

Move and rotate the satellite & control its body and wings

🆕[3D] Satellite [🐍 Python]

🆕[3D] Satellite [🐍 Python]

Use solid shapes to draw a simple satellite in 3D. It has a body, solar panels, dish, and antennas

🆕[3D] Trapped Ball in a Crazy Box [🐍 Python]

🆕[3D] Trapped Ball in a Crazy Box [🐍 Python]

Make a Ball that bounces off the internal walls of a crazy flashing Box!

🆕[3D] Strive Dice [🐍 Python]

🆕[3D] Strive Dice [🐍 Python]

Create a rotating 3D Dice with different coloured sides

Art Sketchpad Trial class [Python 🐍]

Art Sketchpad Trial class [Python 🐍]

Apply geometry and uniform probability distributions to make art

Zork [🐍 Python]

Zork [🐍 Python]

Classic text-based adventure awaits

Straight Lines [🐍Python]

Straight Lines [🐍Python]

Build an interactive tool to study systems of linear equations

Painting Mashup

Painting Mashup

Conditional statements to use inequalities to make a color mix-match.

🆕 Working Rocket [🐍 Python]

🆕 Working Rocket [🐍 Python]

Extend the previously created rocket to play sounds and to move by keyboard in the background of randomly shining stars

Perigal's Proof of Pythagoras’ Theorem [🐍 Python]

Perigal's Proof of Pythagoras’ Theorem [🐍 Python]

Construct a visual proof of Pythagoras’ theorem using quadrilaterals

Properties of Triangles [Python 🐍]

Properties of Triangles [Python 🐍]

Draw a triangle with given 3 vertices and discover its properties

Art Sketchpad [Python 🐍]

Art Sketchpad [Python 🐍]

Apply geometry and uniform probability distributions to make art

Pong [Python 🐍]

Pong [Python 🐍]

Create the classic “Pong” game using inequalities

Cartesian to Polar (🐍 Python)

Cartesian to Polar (🐍 Python)

Move a point on the plane with your mouse, calculate its polar coordinates from rectangular coordinates

Bouncing Ball [Python 🐍]

Bouncing Ball [Python 🐍]

Create a colorful ball that bounces off the edges of the canvas

Spirals - Trigonometry [Python 🐍]

Spirals - Trigonometry [Python 🐍]

Create a beautiful spiral pattern based on simple rules

Spirals - Rotation [Python 🐍]

Spirals - Rotation [Python 🐍]

Create a beautiful spiral pattern based on simple rules

‣

# 4. Loops

Loops make it easy to repeat instructions according to set conditions.

🆕 The Quadratic Function [🐍Python]

🆕 The Quadratic Function [🐍Python]

Learn about the Quadratic Equation and the quadratic function, how the graph is manipulated by the constants, and see the theme of Analytical Geometry.

Estimating Pi - Greek Polygons Method [Python 🐍]

Estimating Pi - Greek Polygons Method [Python 🐍]

Inscribe a circle by a polygon and inscribe a polygon by a circle to get an upper and lower bound on the value of PI

Colliding Blocks Making Pi (Python 🐍)

Colliding Blocks Making Pi (Python 🐍)

See the digits of pi emerge when two blocks collide

Multiplication Circles [Python 🐍]

Multiplication Circles [Python 🐍]

Create a beautiful visualization using modular arithmetic

Chessboard [Python 🐍]

Chessboard [Python 🐍]

Create an interactive colored chessboard

Mandala Art [Python 🐍]

Mandala Art [Python 🐍]

Make Mandala art with symmetry

Estimating PI - Monte Carlo Method (🐍 Python)

Estimating PI - Monte Carlo Method (🐍 Python)

Apply geometry and probability to estimate the value of pi

Pixelated Face Reveal 🐍

Pixelated Face Reveal 🐍

A nice demonstration of using the Webcam to affect pixels to reveal your face!

🆕 Numbers’ Circle [Python 🐍]

🆕 Numbers’ Circle [Python 🐍]

This module teaches the fundamental idea of modular arithmetic. It relates remainders to number circles. The goal is to understand that in modular arithmetic, we are dealing with a different number system, where equivalence relation is not as usual, and

‣

# 5. Objects

Many applied Math problems involve bundling data together and presenting it to users, often through text.

Emoji Invasion

Emoji Invasion

Escape the emoji invasion, and set a highscore

Chaos Game (Python 🐍)

Chaos Game (Python 🐍)

Create a beautiful, chaotic pattern from a few simple rules

Straight Lines - Reflecting a Point (Python 🐍)

Straight Lines - Reflecting a Point (Python 🐍)

Reflect a point from a line on the cartesian plane

Solar System [Python 🐍]

Solar System [Python 🐍]

Parameterize the elliptical paths of planets in its path and set them in motion

‣

# 6. Lists

Lists enable us to keep related items in order, from high scores in a game to scientific observations.

🆕 Constrained Balls [🐍 Python]

🆕 Constrained Balls [🐍 Python]

Create a set of balls that are constrained by each other, and constrained by a bigger circle. Otherwise, they move freely!

3D shooter 🐍 [3D]

3D shooter 🐍 [3D]

Have a blast shooting down these “Angry birds” in this simple but awesome 3D shooter.

Video Processing Magic

Video Processing Magic

Use your webcam to capture live video and modify pixels to make a ball move on the screen.

Snake with Grid [🐍 Python]

Snake with Grid [🐍 Python]

Build the classic arcade game Snake!

Many Bouncing Balls with Lists [Python 🐍]

Many Bouncing Balls with Lists [Python 🐍]

Create a set of bouncing balls

Sine Wave Synth [🐍Python]

Sine Wave Synth [🐍Python]

Visualize the waves that create the sounds we hear when playing an instrument!

Rainstorm [🐍 Python]

Rainstorm [🐍 Python]

Simulate rainstorm with streaks that follow a linear path

Graphing Calculator (Python 🐍)

Graphing Calculator (Python 🐍)

Create several points on a graph and apply functions on them to change their current position

Flappy Bird [Python 🐍]

Flappy Bird [Python 🐍]

Create the famous game Flappy Bird

Caesar Cipher [Python 🐍]

Caesar Cipher [Python 🐍]

Apply modular arithmetic to build a Caesar Cipher

Block Breaker with Lists [🐍 Python]

Block Breaker with Lists [🐍 Python]

Reconstruct a classic arcade game with inequalities

Morse Code [Python 🐍]

Morse Code [Python 🐍]

Encode and decode messages from Morse to English and vice versa

Firestorm [Python 🐍]

Firestorm [Python 🐍]

Simulate fire using a particle system

‣

# 7. Classes

Classes are the blueprints for objects that bundle data together with the functions that operate on that data.

Single Boid [Python 🐍]

Single Boid [Python 🐍]

Create one boid, control its speed and orientation with mouse and change its color based on its position

Asteroids Hunter [🐍 Python]

Asteroids Hunter [🐍 Python]

Build the classic arcade game Asteroids!

Air Hockey [🐍 Python]

Air Hockey [🐍 Python]

Build a classic arcade game with vectors and inequalities

Conway's Game of Life [🐍 Python]

Conway's Game of Life [🐍 Python]

Create a two dimensional word with tiny cells and code the rule that governs the game of Life!

Spiral Galaxy [🐍 Python]

Spiral Galaxy [🐍 Python]

Simulate a galaxy by parameterizing the elliptical paths of its stars.

Typing Shooter [🐍 Python]

Typing Shooter [🐍 Python]

Build a game to train typing skills

Block Breaker with Classes [🐍 Python]

Block Breaker with Classes [🐍 Python]

Reconstruct a retro arcade game

Space Defenders [🐍 Python]

Space Defenders [🐍 Python]

Team up to defend the earth from invaders!

Boids [Python 🐍]

Boids [Python 🐍]

Simulate the flocking behavior of boids

Bouncing Balls with Classes [Python 🐍]

Bouncing Balls with Classes [Python 🐍]

Create several balls that bounce off the walls and each other