how to contribute
as rovr
is currently in its early stages, prs are greatly appreciated. these can be from feature implementations, like a plugin system, to theme additions.
theme additions
Section titled “theme additions”textual’s default assortment of themes is quite small, so any theme that you made for yourself can be contributed here!
ensure that your theme follows the schema for a custom theme
[[custom_theme]]name = "<name>"primary = "<color>"secondary = "<color>"warning = "<color>"error = "<color>"success = "<color>"accent = "<color>"foreground = "<color>"background = "<color>"surface = "<color>"panel = "<color>"is_dark = truevariables = { "<var>" = "<key>" }
for more information, please refer to themeing
once you are done, make a pull request with screenshots made by textual
to make screenshots via textual, simply launch rovr, use the command palette keybind ctrl+p
then press on Save Screenshot
in this screenshot, ensure that
- a completed process, an in-progress process and errored process are all shown
- the main file list is in select mode with a selected option, and a highlighted option
- the clipboard contains a selected and non-selected option
afterwards, for the extra screenshots, take screenshots of
- modal screens, preferably
DeleteFiles
andGiveMePermission
modals - text preview without bat
after that, simply attach your screenshots to your pr and send it!
feature additions
Section titled “feature additions”feature additions are allowed as long as it helps the point of having a file explorer. I’m currently looking for contributors that are willing to add support for pdf previews, perhaps by extracting each page as an image, and using the image protocol to render it.
for feature requests, ensure that you have these at minimum
- uv - uv manages the dependencies of the entire project, and does the building + publishing
- git - git is necessary as it is how you get to suggest your changes in pull requests
pr checklist
Section titled “pr checklist”by sumbitting this pull request, i agree that
- [ ] i have run `ruff format` to format the code- [ ] i have tested both the dev version and the built version of rovr- [ ] cache, logs and others are not accidently added to git's tracking history- [ ] my commits follow the conventional commits format- [ ] the documentation has been updated if necessary
after making your necessary changes, you can run
uvx ruff formatuvx ty check . --ignore unresolved-import
so that your code follows the defined style guide and is typed properly.
if you need help with conventional commits, commitizen should be available as a dev dependency in the virtual environment, so you can run cz c
to commit with commitizen.
else, you can also run
uvx --from commitizen cz c
bugs can tend to be common, especially with a relatively new application.
if you want to create a new bug report, ensure that one doesn’t already exist in the list of issues
if it doesn’t exist, follow the format below
### issue description{describe what happened}
### steps to reproduce
{a step by step instruction}{or a video with what keys you are pressing visualized}
### what is the expected result
{expected result}
### what actually happened
{actual result}
### (opt) how this could be fixed
{a rough way of how this could be fixed}{this can be left out}
### (opt) additional screenshots
{more screenshots to the issue}{this can be left out if you have a video attached}
want to fix an issue?
Section titled “want to fix an issue?”yeah sure go ahead, the pr format is roughly similar to that of feature additions, except that the pr must link to the issue it is resolving.
the issue linking must follow github’s issue linking syntax.
if there aren’t any existing issues to the problem you are resolving, you are required to create a new issue for it.
feature request
Section titled “feature request”feature requests can be done in the discussions tab. a new request can be opened with the Ideas
template.
you may also choose to mention it in the discord server. we might take a look at it either ways.