Recs.
Updated
SpecsUpdate
Pros
Pro Actively developed
Babylon has great project health, with activity on Github daily for bug fixes and new features.
Pro Plenty of tutorials and examples
Babylon provides a playground where you can explore examples and play with the code.
The official documentation offers a wide variety of well-written tutorials on topics from beginner to advanced.
Additionally, there are many tutorials written by the community available that you can find by doing a google search.
Pro Helpful and friendly community
Thanks to the increasing popularity of Babylon, it has a growing community of helpful developers. It's easy to find help on their forum.
Pro Simplicity as a foundation
Babylon.js is developed from the ground up to be extremely easy to use.
Documentation site is kept up to date.
Pro ShaderBuilder makes any shader in JavaScript
ShaderBuilder, a Babylon extension, is a shader text builder with useful functions that allows you a lot of flexibility when making shaders.
Pro Sponsored by Microsoft
Microsoft supports server side services, such as Playground.
Pro A good amount of easy to understand resources to learn from
Babylon provides a playground where you can explore examples and play with the code.
The official documentation offers a wide variety of well-written tutorials on topics from beginner to advanced.
Additionally, there are many tutorials written by the community available that you can find by doing a google search.
Cons
Con Weak visual tools
Babylon.js has its own editor but it has been weakly developed and does not support a lot of features of engine.
Recommendations
Comments
Out of Date Pros + Cons
Pro Has a built-in WebGL 2D Engine to build UI in screen space or inside the 3D world
The Canvas2D feature is a 100% WebGL based 2D Engine which allows to draw text, sprite, primitives (rectangle, ellipsis, complex lines..) with the possibility to interact and animate them.
It also feature a grouping feature, positioning using margin/padding/alignment and different layout engine to position/size the 2D components.
The Canvas2D can be create in Screen Space: over the 3D Scene, useful for UI or in WorldSpace as a rectangle which will be drawn into the 3D scene like any other kind of 3D objects.