🙇Thank you for your interest in contributing to the Wonder Stuff repository. However, we are not currently accepting community contributions on this project.
The participation of others is a wonderful 🎁gift. When we are ready to accept that gift, we will update these guidelines. If you have already been invited to participate, the remainder of these guidelines are for you.
📖 Be sure to read our Code of Conduct.
Check with the maintainers for a good first issue and we'll help get you going.
To work in the wonder-stuff
repository, follow these steps:
- Clone the repository
git clone [email protected]:Khan/wonder-stuff.git
- Install
yarn
(see 🔗yarnpkg.com) - Run
yarn install
to install the dependencies
You can now work on wonder-stuff
. We prefer 🔗Visual Studio Code as our development environment (it's cross-platform and awesome), but please use what you feel comfortable with (we'll even forgive you for using vim).
We love code reviews. If there are open pull requests, please feel free to review them and provide feedback. Feedback is a gift and code reviews are often a bottleneck in getting new things released. Jump in, even if you don't know anything; you probably know more than you think.
💭REMEMBER Be kind and considerate. Folks are volunteering their time and code reviews are a moment of vulnerability where a criticism of the code can easily become a criticism of the individual that wrote it.
- Take your time
- Consider how you might receive the feedback you are giving if it were attached to code you wrote
- Favor asking questions over prescribing solutions.
To ensure code quality, we use prettier, TypeScript, eslint, and jest. These are all executed automatically on commit, so don't worry if you forget to run them before you commit. They are also executed when you submit, edit, or push to a pull request to ensure the contribution meets our code quality standard.
To execute these operations outside of a pull request or commit operation, you can use yarn
.
yarn typecheck
yarn lint
yarn test
💭REMEMBER If you would like to contribute code changes to the project, first make sure there's a corresponding issue for the change you wish to make.
Anyone can create a local build of the distributed code by running yarn build
.
Publishing updated packages is handled by the changesets bot.