Entity Component System is often simply referenced as Entity System or ES.
Documentation is written before the code. Code must conform to the written documentation. All example codes from the documentation are part of the unit tests.
Compatible with modern browsers and IE9+.
Published under the MIT license.
How it works:
Entity System (ES)
Entity System is a software architecture that is specially well suited to make games. It is data driven, offers great flexibility even at runtime (you can theoretically make most of your game at runtime), and scales very well.
Step-by-step introduction to ES: http://www.richardlord.net/blog/what-is-an-entity-framework
More infos about ES: http://entity-systems.wikidot.com/
How to build and contribute
You need to have git and Node.js installed. You also need to have grunt-cli as a global Node.js install:
npm install -g grunt-cli
Clone the git repository locally and go in it:
git clone git://github.com/jlgrall/esEngine.git cd esEngine
Install the build dependencies (Node.js packages) in the folder (takes 1-2 minutes):
That's it, you are ready. Now you can use the following commands.
grunt: build and check everything. You can find built files in the
grunt clean: clean the
grunt watch: when you are editing the files, it will automatically rebuild the needed files when you save them.
grunt report: reports the minified and gzipped sizes (project must be already built) (results may be a few bytes off).
Important: don't forget to run
grunt before you commit to check that everything works.