A minimalistic video player based on mpv (libmpv via go-mpv): it plays a file, gets out of the way, and leaves the keyboard in charge.
Status: under development. Things work, but interfaces, config and shortcuts may still change between versions.
A macOS cask is published into this repository on every tagged release. Because the repo
isn't named homebrew-*, tap it with an explicit URL, then install:
brew tap andresbott/govi https://github.com/andresbott/govi
brew install --cask andresbott/govi/govimpv is pulled in as a dependency (it provides libmpv), and brew upgrade will track
future releases. Apple Silicon only.
This installs govi.app into /Applications — a Dock icon, a Launchpad entry, and
"Open with → govi" in Finder — and symlinks the govi command onto your PATH, so
both of these work:
govi ~/Movies/clip.mkv # from a terminal
open -a govi # or launch it from Launchpad / SpotlightPrefer not to use Homebrew? Download govi_<version>_macos_arm64.dmg from the
releases page, open it and drag
govi.app into Applications. Install mpv yourself in that case (brew install mpv) —
govi needs libmpv at runtime.
Download the .deb for your architecture from the
releases page and install it
(this also pulls in libmpv):
sudo apt install ./govi_*_amd64.debGrab a prebuilt tar.gz archive from the
releases page.
govi <file> # play a file
govi <dir> # play all videos in a folder
govi . # play all videos in the current folder
govi # open the idle screen (drop a file on it)
govi versionAn empty folder (no videos) opens the idle screen — drop a file on it to play.
- Automatic playlist — opening a file makes its folder the playlist, so next/previous walks the sibling videos without any setup.
- File deletion from the player — move to trash or delete permanently, with a confirmation step and auto-advance to the next video.
- Fully controllable with shortcuts — every action is keyboard-driven and rebindable, either from the preferences overlay or the config file.
Common tasks are driven by make:
make help # list all targets
make test # run the go tests
make lint # run golangci-lint
make verify # full verification suite (test, lint, license-check, benchmark, coverage)
make build # build a snapshot binary with goreleaserReleases are published by GitHub Actions when a version tag is pushed:
make tag version="v0.1.0"
