🎉 Thanks for your interest in contributing! 🎉
If find issues while using this library or just reading through it, look to see if an issue has been created. If no issues are related, feel free to open a new one using the template.
If you find any existing issues that you are interested in fixing, you are welcome to open a PR and we will gladly review your changes.
Getting setup is quick and easy. Follow the steps below to get your your dev environment up.
- Clone GitHub repo
- Install dependencies
- Build and link packages
$ git clone [email protected]:amplitude/Amplitude-TypeScript.git
$ yarn
$ yarn build
Building quality software is one of our top priorities. We recommend getting your changes tested using manual and automated practices.
$ yarn build
$ yarn test
When writing commit message, follow PR Commit Title Conventions for the format. A git hook will also run to verify that the format is followed.
Once you are finished with your changes and feel good about the proposed changes, create a pull request. A team member will assist in getting them reviewed. We are excited to work with you on this.
As soon as your changes are approved, a team member will merge your PR to main and will get published shortly after.
PR titles should follow conventional commit standards. This helps automate the release process.
- Special Case: Any commit with
BREAKING CHANGES
in the body: Creates major release feat(<optional scope>)
: New features (minimum minor release)fix(<optional scope>)
: Bug fixes (minimum patch release)perf(<optional scope>)
: Performance improvementdocs(<optional scope>)
: Documentation updatestest(<optional scope>)
: Test updatesrefactor(<optional scope>)
: Code change that neither fixes a bug nor adds a featurestyle(<optional scope>)
: Code style changes (e.g. formatting, commas, semi-colons)build(<optional scope>)
: Changes that affect the build system or external dependencies (e.g. Yarn, Npm)ci(<optional scope>)
: Changes to our CI configuration files and scriptschore(<optional scope>)
: Other changes that don't modify src or test filesrevert(<optional scope>)
: Revert commit