Skip to content

Latest commit

 

History

History
83 lines (57 loc) · 4.61 KB

CONTRIBUTING.md

File metadata and controls

83 lines (57 loc) · 4.61 KB

Contributing to this project

First off, thanks for taking the time to contribute! You are awesome! 🎉👏

Table Of Contents

How to contribute

Reporting Bugs

Before creating bug reports, please make sure there isn't already an existing issue describing your problem. Create the new issue and provide the necessary information by filling in the bug-report template.

Suggesting Enhancements

Enhancement suggestions are also tracked as GitHub issues. Before creating enhancement suggestions, please check the existing issues as you might find out that you don't need to create one. When you are creating an enhancement suggestion, please include as many details as possible. Fill in the feature-request template, including the steps that you imagine you would take if the feature you're requesting existed.

Provide Code via Pull Requests

Simply fill in the required template. Please do not include issue numbers in the PR title, but add it in the PR body, e.g. via "Closes #1234".

All code must pass the validation workflow automatically running when pushing to a PR. All tests must pass to protect against regressions.

Always run pnpm lint and pnpm format before pushing to this repo.

Coding Style

Please always use the existing code as a guide for new code. Linter and formatter should cover most of the code styling automatically. Other than that

  • Custom components follow the PascalCalse when importing and dash-case when adding them to the markup.
  • Use destructuring where reasonable
  • Favor template literals over string concatenation where applicable
  • Modularize code where reasonable

Git Commit Messages

  • Use the present tense ("Add feature" not "Added feature")
  • Use the imperative mood ("Move cursor to..." not "Moves cursor to...")
  • Limit the first line to 72 characters or less
  • Start your commit messages with one of the following emojis:
    • ➕ :heavy_plus_sign: when adding a file or implementing a feature
    • 🔨 :hammer: when fixing a bug or issue
    • 💚 :green_heart: when improving code or comments
    • ⚡ :zap: when improving performance
    • 📜 :scroll: when updating docs or readme
    • 🔑 :key: when dealing with security
    • 🔁 :repeat: when updating dependencies or data
    • ✅ :white_check_mark: when releasing a new version
    • 👕 :shirt: when refactoring or removing linter warnings
    • ❌ :x: when removing code or files

Providing Translations

You can add a new translation or improve an existing one by taking the following steps:

  1. Go to the locales directory on GitHub
  2. Choose a language and start translating either directly on GitHub or fork the repo and create a Pull Request.

If you run into any problems, leave an issue or start a discussion thread.

Beta-Testing

Testing and reporting bugs is a great way to help! Here's how:

  1. Download the latest nightly build from the ThirdStats CDN (XPI file)
  2. Start Thunderbird and install the XPI file by going to Settings > Add-ons and Themes > Extensions > Gear Button > Install Add-on from file > Choose the downloaded XPI file
  3. Now start using ThirdStats and check if...
    • ThirdStats logo appears in the menu and the popup shows all active accounts
    • add-on options page displays properly, alle options can be changed, options can be reset
    • stats page display properly, data is shown correctly, processing works, all filter work as expected

If you run into any problems, leave a comment on the corresponding issue #370 or start a discussion thread.

Thanks a lot for your support 💚