Did you already know about 2D geometric transforms?
Have you used 2D geometric transforms in other languages such as Java, Processing, Python, etc.?
Here are a few project ideas. Your classmates and the team who prepared the course will all be glad to try them and give some feedback. Please post URLs in this discussion forum. While these projects are not graded, it is important to complete them to ensure good understanding of the material.
Project 1 (easy): Make a small drawing by just using rectangles and text (a car, a monster, a head, or whatever you like).
Project 2: Make a histogram (bar charts made of filled rectangles) as an array of integer values such as: var data = [1, 12, 20, 14, 13, 9, 5], for example.
Project 3 (harder, for those who know JavaScript and a little bit of math): Try to draw a human shaped robot using different 2D transforms (translate, rotate). Build a hierarchic skeleton (if we rotate the arm, the forearm and the hand should follow). This can be done by having the function that draws an arm save the context, move the coordinate system, call another function that draws the forearm, that saves the context, move the coordinate system to the end of the arm, call the function that draws the hand, etc. By consecutively calling functions from one another, with each function that saves the context -- moves the coordinate system -- calls another function -- restores the context, we can build a hierarchy of coordinate systems.