feat: init canvas