Skip to content

"Can you add this feature?"

Federico Brigante edited this page Sep 4, 2023 · 10 revisions

Maybe, as long as it follows these points:

1. It doesn't already exist as a userscript or extension.

Use it, support it, extend it. Not everything needs to be part of Refined GitHub.

2. It makes sense as a default for everyone.

"Disabled by default" means most people don't need it, so it doesn't belong to Refined GitHub. In that case, it's best to keep it as a standalone userscript or extension.

3. It doesn't require options.

Anything that requires configuration most likely does not belong to Refined GitHub. It’s just extra complexity and we already have 200+ features to attend to.

Imagine you want a feature to be "per branch", someone else wants it "per organization", etc. The options’ UI would just balloon because of different needs.

4. It doesn't require a lot of view/UI, code and effort to maintain.

Refined GitHub is about small refinements and small features. If a feature requires a considerable amount of UI controls or especially its own page/URL, it would risk becoming unmaintained when GitHub breaks it.

5. It doesn't require an external server.

We are privacy conscious and don't want to add 3rd party servers in the mix, with all of that entails. We don't even collect stats.

The extension’s permissions will only include GitHub's own servers.

6. It doesn't require too much HTTP traffic.

API calls are fine but not too many and not too often. If a feature requires a query for every page, it better be super useful for every page the user loads.

7. It doesn't enhance "Projects"

Projects are too big of a feature and everyone wants to make a Jira out of it. None of the maintainers use Projects, so it’s best to suggest it to GitHub or projects-related extensions like ZenHub.