Static git gemini viewer

b266bf6 sort the tags for the refs page

10 months ago

636c885 add Taskfile

10 months ago


Static git gemini viewer written in golang. Inspired by stagit.

This repository is available at sourcehut and gemini.


Unfortunately because of replace directive in go.mod you cannot simply get binary by running go get but you can install it by running

git clone https://git.sr.ht/~kornellapacz/gmnigit
cd gmnigit
task build # or: `go build -o gmnigit`

place gmnigit binary somewhere in your $PATH.


Usage of gmnigit:
  -dist string
        destination path (if exists will be overwritten)
  -max-commits int
        Max number of commit to export, -1 to export all (default -1)
  -name string
        project name, mandatory if generating the tags page
        show files permissions in browsable tree
        generate the tags page
  -repo string
        path to repository
  -url string
        clone URL for end user (optional)


gmnigit -repo path/do/repo -dist dist/path


You can automate building pages on push with git post-receive hook


while read -r _ _ ref; do
	[ "$ref" != "refs/heads/master" ] && continue

	gmnigit --repo . --dist /dest/dir


  • use git2go instead of go-git
  • handle submodules
  • read description and url files from git bare repositories