Thank you for your interest in contributing to melonJS !
Please read our Code of Conduct to keep our community approachable and respectable.
If this is your first time contributing to an open source project on GitHub, please have a look at this free tutorial.
To build your own version of melonJS you will need to install :
Once Node.js and NPM have been installed, you need to install build dependencies, by executing the following in the folder where you cloned the repository :
$ [sudo] npm install
Then build the melonJS source by running:
$ npm run build
The generated files will be available under the build
directory :
melonjs.module.js
: plain ES6 modulemelonjs.mjs
: a ES6 chunk directory used for tree-shaking
If you need to create the corresponding typing you can use the follwing :
$ npm run types
This will generate all the .d.ts
file under the dist/types
directory.
To run the melonJS test suite simply use the following:
$ npm run test
This will run the jasmine spec tests with the output displayed on the shell. Do note that the latest Chrome version is required, as the test unit will run the Browser in a headless mode (in case of failed tests, upgrade your browser).
Last but not least, if you really want to contribute, but not sure how, you can always check our discussions list to get some idea on where to start.
Similarly, you can build your own copy of the docs locally by running :
$ npm run doc-local
The documentation will be generated under the docs
directory, and can be accessed using :
$ npm run serve
latest WIP builds are available under dist
in the master branch.
If you need technical support, you can contact us through the following channels :
- Forums: with melonJS 2 we moved to a new discourse forum, but we can still also find the previous one here
- Chat: come and chat with us on discord, or gitter
- we tried to keep our wikipage up-to-date with useful links, tutorials, and anything related melonJS.
Support the development of melonJS by becoming a sponsor. Get your logo in our README with a link to your site or become a backer and get your name in the BACKERS list. Any level of support is really appreciated and goes a long way !