Skip to content

Latest commit

 

History

History
82 lines (64 loc) · 4.33 KB

contributing.md

File metadata and controls

82 lines (64 loc) · 4.33 KB

Contributing to Kando

Whenever you encounter a 🐛 bug or have 🎉 feature request, report this as a GitHub issue!

We are happy to receive contributions in the form of pull requests on GitHub. Feel free to fork the repository, implement your changes and create a merge request to the main branch!

Tip

There are always some issues labelled as good first issue. Feel free to pick one of these and ask for some pointers for how to get started in the comments!

Code Style

Kando uses Prettier for code formatting. You can either configure your editor to format the code on save or run npm run format before committing your changes. Else the CI will fail and you will have to fix the formatting before your pull request can be merged.

Git Commit Messages

Commits should start with a Capital letter and should be written in imperative mood (e.g. 🎉 Add cool new feature instead of 🎉 Added cool new feature). It's a great idea to start the commit message with an applicable emoji. This does not only look great but also makes you rethink what to add to a commit: Commits should be small and focused on a single task. Therefore, only one emoji should be used per commit.

  • 🎉 :tada: when adding a cool new feature.
  • 🐛 :bug: when fixing a bug.
  • 🔧 :wrench: when adding small piece of code.
  • 🚀 :rocket: when improving performance.
  • ♻️ :recycle: when refactoring the code.
  • 🔥 :fire: when removing files or code.
  • 🚚 :truck: when moving / renaming files or classes.
  • :sparkles: when formatting the code.
  • 🎨 :art: improving or adding assets like themes or fonts.
  • 💄 :lipstick: when working on the UI styling.
  • 📝 :memo: when writing docs.
  • 🌐 :globe_with_meridians: when working on localization.
  • 💞 :revolving_hearts: when updating credits.
  • ✔️ :heavy_check_mark: when working on tests.
  • 🔼 :arrow_up_small: when adding / upgrading dependencies.
  • 🔽 :arrow_down_small: when removing / downgrading dependencies.
  • 🔀 :twisted_rightwards_arrows: when merging branches.

Usage of these emojis is not mandatory. We will still accept your pull request if you don't use them. However, we will be very happy if you do 😄.

Branching Guidelines

Kando uses a simplified version of GitFlow: New features are usually implemented in feature/* branches and are merged to main once they are finished. Similarly, bugfixes are implemented in fix/* branches, where the * is usually the issue number (e.g. fix/#123).

Continuous Integration

Github Actions are used for continuous integration.

  • For each commit, several checks are performed. These include code formatting, linting, REUSE compliance and unit tests.
  • For pull requests, it is checked in addition that the application can be packaged for Linux and Windows.
  • When a new tag is created, the application is packaged for Linux, macOS, and Windows and uploaded to the releases page.

Versioning

Kando uses semantic versioning and the changelog follows the rules of Keep a Changelog. Whenever you add a new feature or fix a bug, please add an entry to the top of the changelog in the [unreleased] section. When a new version is released, this section will be marked as released and a tag is created on the main branch.

Changelog Index Installing Kando