👍🎉 First off, thanks for taking the time to contribute! 🎉👍
The following is a set of guidelines for contributing to Rocket.Chat and its packages, which are hosted in the Rocket.Chat Organization on GitHub.
Note: If there's a feature you'd like, there's a bug you'd like to fix, or you'd just like to get involved please raise an issue and start a conversation. We'll help as much as we can so you can get contributing - although we may not always be able to respond right away :)
While we still have a lot of CoffeeScript files you should not create new ones. New code contributions should be in ECMAScript 2015.
Most of the coding standards are covered by .editorconfig and .eslintrc.js.
Things not covered by eslint:
exports/module.exportsshould be at the end of the file- Longer, descriptive variable names are preferred, e.g.
errorvserr
We acknowledge all the code does not meet these standards but we are working to change this over time.
Before submitting a PR you should get no errors on eslint.
To check your files, first install eslint:
npm install -g eslint
Then run:
eslint .
Please review and sign our CLA at https://cla-assistant.io/RocketChat/Rocket.Chat