This is open source and MIT licensed. Contributions are welcome!

Contributions can take any shape or form, but they must adhere to the project's code of conduct. If that looks good to you, feel free to open issues, send PRs (although an issue before a PR could be useful).

Contributing to this site

If you find a typo or something that doesn't make sense here, feel free to send a PR to this site's repository.

Contributing to the extension

PRs and issues are welcome on the project's repository.

Understanding the plugins structure

If you want to contribute with the extension, keep in mind it's plugin-based. All the features are plugins so that they can easily be disabled by the user. If a feature breaks (because Slack changed something on their end) a user should be able to disable that feature in particular and that should solve the issue.

The extension is written in TypeScript and the plugins can be found on the plugins folder. They can choose to observe DOM elements, intercept XHR and WS messages, and communicate with the extension.

The existing plugins should (hopefully) provide a guide on how you can implement your own... but feel free to open an issue and we can discuss if I should add some documentation.