Our games themselves continue to be WebGL and Canvas based. Just the menu systems are now DOM based.
We’ve used techniques throughout the design and development of the menus to ensure we continue to deliver a super slick, delightful and performance experience – I hope in the coming months we will discuss those techniques in a detailed post, but in short they boil down to simplification of the design to enable the use of simple but modern CSS animations and transitions.
Our menus are low fidelity, and for the most part just a way for users to discover content. Simplifying them this way not only has great benefits for the user (design consistency across all 5 apps) but also greatly reduces the amount of code required to maintain the menu systems as well, this coupled with just a single codebase now enables us to spend more time developing innovative content and games rather than 5 bespoke menu systems which were as complex as the games themselves!
Of course we could have delivered the same consistency and re-use with WebGL powered menus, but it would have likely been more expensive in the long run due to the specialist game development skills required, which is scarce in our organisation.
All in all we were happy with the design trade offs in order to simplify our overall architecture and codebase.