See full contribution guide on AtB org repo and startup instructions on the README.
Contributions are noted as inbound=outbound. Meaning, the code you contribute will inherit the same license as this repository.
To better be able to track changes relevant for the user, we do semantic commits. As we do a Pull Request approach, the important part is for the squashed and merged commits when completing a PR uses semantic commits, but it is encouraged for all commits to use it to easier be able to make a proper summary when merging pull requests and to track history.
We use conventional-changelog with angular preset. Read all details on the angular repo, but quick getting started:
<type>(<scope>): <subject>
<BLANK LINE>
<body>
<BLANK LINE>
<footer>
First line is mandatory, but scope
is optional. scope
can be anything to group multiple changes in the same section in the changelog.
subject
is main commit message included in the changelog. This should be written in a way that makes sense for changelogs. Such as "Nearby departures now updates automatically". Sort summary. If more details are needed use body
.
fix:
Bug fixes and minor changes.feat:
Introducing a new feature which is notable by the end-user in the app.BREAKING CHANGE:
Cases where there are breaking changes as removed features, or required updates. Rare in our end-user application. Marking breaking changes by prefixing sectionbody
orfooter
withBREAKING CHANGE:
build:
Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm)ci:
Changes to our CI configuration files and scripts (example scopes: Circle, BrowserStack, SauceLabs)docs:
Documentation only changesperf:
A code change that improves performancerefactor:
A code change that neither fixes a bug nor adds a featurestyle:
Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)test:
Adding missing tests or correcting existing testschore:
Other changes that don't modify src or test files
fix(nearby): Nearby departures now shows correct departure time
feat(overview): Overview now shows arrival time
chore: Adds eslint configuration
build: Adds eslint step to Github Actions
Adds eslint Github Actions to catch unnecessary errors on pull requests for contributors not using linting actively in their development flow.
- Be nice!
- Take the time to understand the underlying goal for the pull request.
- Provide suggestions for improvement. Show solutions rather than problems.
- Avoid stylistic, overly nit-picky comments.
- Don't be afraid to check out the changes locally.
- Ask (open-ended) questions.
- Optimize for throughput, not for gatekeeping.