all repos — legit @ 150d81df6c82ee9ea735f988d1c06edd9059819a

web frontend for git, written in go

readme (view raw)

 1legit
 2-----
 3
 4A git web frontend written in Go. 
 5
 6Pronounced however you like; I prefer channeling my beret-wearing
 7Frenchman, and say "Oui, il est le git!"
 8
 9But yeah it's pretty legit, no cap on god fr fr.
10
11
12FEATURES
13
14• Fully customizable templates and stylesheets.
15• Cloning over http(s).
16• Less archaic HTML.
17• Not CGI.
18
19
20INSTALLING
21
22Clone it, 'go build' it.
23
24
25CONFIG
26
27Uses yaml for configuration. Looks for a 'config.yaml' in the current
28directory by default; pass the '--config' flag to point it elsewhere.
29
30Example config.yaml:
31
32    repo:
33      scanPath: /var/www/git
34      readme:
35        - readme
36        - README
37        - readme.md
38        - README.md
39      mainBranch:
40        - master
41        - main
42    dirs:
43      templates: ./templates
44      static: ./static
45    meta:
46      title: git good
47      description: i think it's a skill issue
48    server:
49      name: git.icyphox.sh
50      host: 127.0.0.1
51      port: 5555
52
53These options are fairly self-explanatory, but of note are:
54
55• repo.scanPath: where all your git repos live (or die). legit doesn't
56  traverse subdirs yet.
57• repo.readme: readme files to look for. Markdown isn't rendered.
58• repo.mainBranch: main branch names to look for.
59• server.name: used for go-import meta tags and clone URLs.
60
61
62NOTES
63
64• Run legit behind a TLS terminating proxy like relayd(8) or nginx. 
65• The default head.html template uses my CDN to fetch fonts -- you may
66  or may not want this.
67• Support or cgit-like filters (for readmes etc.) is planned.
68• Pushing over https, while supported, is disabled because auth is a
69  pain. Use ssh.
70• "Private" repos only available over Tailscale is planned.
71
72
73LICENSE
74
75legit is licensed under MIT.