A first attempt at a non-trivial project that uses HTML5 Canvas. This project handles mouse events and touch events. It has multiple canvases that switch in and out to provide a somewhat responsive experience.
This project works on iPad, Android phone, and all major desktop browsers.
Drag the control points to reshape the curve.