New demo using canvas instead of svg