Over the past three years, I’ve worked on a couple of projects using Three.js and other libraries, one of them launching as a game on Steam. During that time, I inadvertently created my own Three.js wrapper/engine called the ERA Engine. I refuse to start a Three.js project without it, so I figured it might be useful for others.
The “engine” comprises of an entity-component system as well as helper libraries for loading audio, 3D models, making network calls, controls/bindings, settings, etc.
I’ve spent the past month generalizing the code and writing documentation so others could use it and contribute to it if they find it useful. It’s available here:
The repo is a bit crude (no tests, no minification, no compiler/style guide), but I figured I would spare myself the trouble unless people found it useful.
If you want to fork the repo and make an example, feel free to send a PR to me.
Let me know if you have any questions, would love to answer any that you have!