We fully embrace the open source model, and if you have something to add, we would love to review it and get it merged in!
Ensure your development environment meets the system requirements in Getting Started.
Please note we have a Code of Conduct, please follow it in all your interactions with the project.
Before starting work, please check the issues to see what's being discussed and worked on. If there's an open, unresolved issue for what you want to work on, please comment on it stating that you would like to tackle the changes. If there's not an issue, please add one and also state that you'll work on it.
- Fork the repo
- Install the dependencies - run
yarn
- Build your packages - run
yarn build
- Optional: create a branch to work off of
- Write the code
- Update/write tests:
yarn test
will run tests and output coverage reportsyarn jest --watch
is useful for development
- Ensure all code matches the "Code Expectations" discussed below
- Commit and push your code to your fork
- Open a pull request
All new code will be unit tested to 90% coverage.
Code should be written in a functional manner when possible. This means avoiding mutability and returning copies of data rather than modifying shared variables. For example:
Don't do this:
let someData = [1,2,3,4]
let list = []
for(let i = 0; i< list.someData.length; i++) {
list.push(i * 2) // This function doesn't return anything, it modifies list
}
console.log(list)
// [2,4,6,8]
Instead, do this:
const someData = [1,2,3,4]
const list = someData.map(i => i * 2)
console.log(list)
// [2,4,6,8]
The best way to contact the team is through the issues; we'll get back to you within 3 business days.