I used ThreeJS three years ago, but it was frequently introducing breaking changes, making it unsuitable for my game, especially since it's promoted as a rendering engine. Consequently, I created a mini-MMO-like game in PlayCanvas, which had too many bugs. With each new release, it seemed like they were breaking some features and introducing more bugs. Later, I tried Babylon.js, which had clean documentation and comprehensive examples for almost every topic. The Vertex Animation Textures (VAT) feature (https://doc.babylonjs.com/features/featuresDeepDive/animatio...) was particularly impressive; I was surprised they offered it in the first place. Additionally, the community is very responsive.