Skip to main content

A post-modern terminal file explorer

Project description

rovr

Python Version Discord PyPI - Downloads
GitHub Actions Formatting Status GitHub Actions Docs Build Status GitHub Actions Nuitka Build Status
terminal trove

[!warning] This project is considered beta software. It is functional, but may contain bugs and incomplete features. Use at your own risk.

Screenshot

image

Installation

# Test the main branch
uvx git+https://github.com/NSPC911/rovr.git
# Install
## uv (my fav)
uv tool install rovr
## or pipx
pipx install rovr
## or plain old pip
pip install rovr

Running from source

uv run rovr

Running in dev mode to see debug outputs and logs

uv run rovr --dev
# or with poethepoet
poe dev

the Textual console must also be active to see debug outputs

uv run textual console
# or uvx if not running from source
uvx --from textual-dev textual console
# or just capture print statements
poe log

For more info on Textual's console, refer to https://textual.textualize.io/guide/devtools/#console

FAQ

  1. There isn't X theme/Why isn't Y theme available?
[[custom_theme]]
name = "<str>"
primary = "<hex>"
secondary = "<hex>"
success = "<hex>"
warning = "<hex>"
error = "<hex>"
accent = "<hex>"
foreground = "<hex>"
background = "<hex>"
surface = "<hex>"
panel = "<hex>"
is_dark = "<bool>"
variables = {
  "<key>" = "<value>"
}
  1. Why is it considered post-modern?

    • Parody to my current editor, helix
      • If NeoVim is considered modern, then Helix is post-modern
      • If SuperFile is considered modern, then rovr is post-modern
        • This is also the reason why rovr is very oddly similar to superfile
  2. What can I contribute?

    • Themes, and features can be contributed.
    • Refactors will be frowned on, and may take a longer time before merging.
  3. I want to add a feature/theme/etc! How do I do so?

    • You need uv at minimum. prek, ruff and ty are recommended to be installed.
    • Clone the repo, and inside it, run uv sync and prek install.
    • Make your changes, ensure that your changes are properly formatted (via the pre-commit hook), before pushing to a custom branch on your fork.
    • For more info, check the how to contribute page.
  4. How do I make a feature suggestion?

    • Open an issue using the feature-request tag, with an estimated difficulty as an optional difficulty level label
  5. Why not ratatui (rust) or bubbletea (go), why python, why??? sad, angry, weird compiled noises

    • I like Python, feel free to leave if you hate it.
  6. What's with the name?

    • Kind of a weird thing. ranger is a terminal file manager written in Python. And there is a car brand named Range Rover. Ranger. Hence, I wanted to use "rover", but there is already an existing file explorer named rover, so I just removed the "e" to be a bit more fancy.
  7. How should I stylize rovr?

    • Just "rovr", please.
  8. Why should I use rovr?

    • I don't want to sell it to you. I made it for myself. If you don't like it, sure go ahead, use yazi (rust) or superfile (go), or heck even use the cli, i don't care.
  9. OhMGee why are there so many borders and so many icons and so many xxx and so many yyy??? more angry noises

    • Keep in mind, you can disable them. The screenshot is my setup, and the default setup. Textual CSS lets you hide things, disable borders, etc etc, so you can make it look however you want.
  10. Is this vibe-coded?

    • Depends on the meaning. AI was used in certain parts of the code, especially in archive handling and cli functions, but aside from that, it is few and far between.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Stargazers

Thank you so much for starring this repo! Each star pushes me more to make even more amazing features for you!

 _ ___  ___ __   _ˍ_ ___
/\`'__\/ __`\ \ /\ \`'__\
\ \ \_/\ \_\ \ V_/ /\ \_/
 \ \_\\ \____/\___/\ \_\
  \/_/ \/___/\/__/  \/_/ by NSPC911

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rovr-0.8.2.post2.tar.gz (176.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rovr-0.8.2.post2-py3-none-any.whl (215.0 kB view details)

Uploaded Python 3

File details

Details for the file rovr-0.8.2.post2.tar.gz.

File metadata

  • Download URL: rovr-0.8.2.post2.tar.gz
  • Upload date:
  • Size: 176.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for rovr-0.8.2.post2.tar.gz
Algorithm Hash digest
SHA256 d8c2bfd8bbfb6c3aeacc1bb480a66c005a5a242a8434f58f5d8920091e5588ba
MD5 ba1472589fda678d4bf16eeb765aa284
BLAKE2b-256 014be246505d992ec76e731bfb67fcdafba371938c4eef0cd4cadcb188abce0e

See more details on using hashes here.

File details

Details for the file rovr-0.8.2.post2-py3-none-any.whl.

File metadata

  • Download URL: rovr-0.8.2.post2-py3-none-any.whl
  • Upload date:
  • Size: 215.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.8 {"installer":{"name":"uv","version":"0.11.8","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for rovr-0.8.2.post2-py3-none-any.whl
Algorithm Hash digest
SHA256 8cda4035eaea8086c6982f78c96c5e4fb2568313b7b52af5b14d61c6458fbc25
MD5 58beb5bd1a7f17cd5fa4dd84165ea329
BLAKE2b-256 8ea29a15fc6090e47691ffcf6e1bc841f3f6a1f84bb06aa630a0e7621a751892

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page