added front-end canvas