There are two components to this assignment:
Build this. It requires HTML, CSS, and JavaScript.
You are provided with HTML and CSS, so you will need to begin with the JavaScript portion.
This component builds upon the first, adding server-side functionality to save a painting. It requires AJAX, some web application framework (e.g. Sinatra, Flask, Rails, or even just PHP), and a persistent data store (e.g. a CSV file or a SQL database).
When the user clicks on the SAVE button (already included in the HTML you're provided with), an AJAX request should be sent to the web server. The state of the painting should be sent along with that request (in the form of request vars--like in the query string, for example). Thus, when the server receives the request, it can save the painting information to the CSV.
Add a feature that lists all saved paintings (perhaps just by timestamp, or some other easy identifier) on the Mondrian webpage. Then, when any saved painting is clicked, it is loaded onto the actual Mondrian canvas.