NOTE: We’re just getting started. While we appreciate any feedback, we’re not yet ready to accept public contributions.
Thank you for your help making this project and community as good as it can be. We strive to maintain a welcoming, inclusive space for all. All contributors, including commenters on issues, are expected to abide by our Code of Conduct.
Here are a few things to help your contribution be fun and trouble-free.
We welcome pull requests from anyone, but before working on a large change, it is best to open an issue first to discuss it with the maintainers. You can also get a good overview of our current and planned work from our Waffle board, from which we manage this project.
Please try to keep your PR as small and focused as possible, and don’t include more than one feature or bug fix per PR. Big PRs are hard to review and are less likely to be accepted.
If your PR adds new features or changes existing code, please attempt to write tests covering the new behavior.
For a PR to be accepted, it must fulfill each item in the checklist provided in the pull request template, and all authors must sign the Contributor License Agreement ("CLA").
Fork the repo, then create a new branch from an up-to-date master on your fork.
If you do not have a local repository, clone your fork to your machine and create a new branch:
git clone https://github.com/<yourusername>/mineral-ui.git
git checkout -b your-branch-name
If you do have an existing local repository, please update it before you start, to minimize the chance of merge conflicts.
git remote add upstream https://github.com/<yourusername>/mineral-ui.git
git checkout master
git pull upstream master
git checkout -b my-branch-name
npm update
-
Install the package dependencies
npm install
-
Make sure you’re using the correct
node
version (we recommend using nvm to install and managenode
on your machine)nvm use
If your console tells you that you don’t have that version installed, run
nvm install
-
Start the demo
npm start
-
We use Prettier, so you can write your code in whichever style you’re most comfortable and convert it to our standard before you commit:
In the project root:
npm run format
-
We also use Commitizen for ensuring a standard format for this project’s commit messages. You can still commit as normal with a valid message, but we recommend using:
npm run commit
Unit tests use Jest. When appropriate, snaphots are nice.
-
After making your changes, lint your code and run the unit tests
npm test
More detailed information can be found in the Developer Docs.