See the contributing readme for more detailed guidelines: https://github.com/Helium314/HeliBoard/blob/main/CONTRIBUTING.md#guidelines
tl;dr:
necessary;
* a single thing only
* describe it properly
recommended:
* make changes optional
* re-use existing mechanisms / code
* low performance impact
* make it a draft if you still want to work on it

A good description and small scope ("single thing") massively help with reviewing. Don't be surprised when your PR gets closes if you clearly / repeatedly violate these parts of the guidelines.

Further
* When the PR contains "fixes" <issue number>, the related issue will be linked and automatically closed if the PR is merged (also works for other words like "fix", "resolve", "resolves", "closes", ...)
* If you add a keyboard layout, best read https://github.com/Helium314/HeliBoard/blob/main/layouts.md#adding-new-layouts--languages
* Please avoid force-pushing when doing requested changes. This way it's not possible to see which parts have changed since the previous state.

<!-- (please remove the text above before submitting the PR) -->