all repos — legit @ d0d636aa89bf194185abf01e05b190386d0e8b23

web frontend for git, written in go

all: go-import, clone url
Anirudh Oppiliappan x@icyphox.sh
Sun, 18 Dec 2022 20:00:19 +0530
commit

d0d636aa89bf194185abf01e05b190386d0e8b23

parent

2e3c3103c48c748ccc8fa6b3607d51f112a9400f

M config.yamlconfig.yaml

@@ -14,6 +14,10 @@ static: ./static

meta: title: git good description: i think it's a skill issue +misc: + goImport: + prettyURL: icyphox.sh server: + fqdn: git.icyphox.sh host: 127.0.0.1 port: 5555
M config/config.goconfig/config.go

@@ -21,7 +21,13 @@ Meta struct {

Title string `yaml:"title"` Description string `yaml:"description"` } `yaml:"meta"` + Misc struct { + GoImport struct { + PrettyURL string `yaml:"string"` + } `yaml:"goImport"` + } `yaml:"misc"` Server struct { + FQDN string `yaml:"fqdn,omitempty"` Host string `yaml:"host"` Port int `yaml:"port"` } `yaml:"server"`
M routes/routes.goroutes/routes.go

@@ -1,6 +1,7 @@

package routes import ( + "fmt" "html/template" "log" "net/http"

@@ -112,6 +113,15 @@ log.Println(err)

return } + cloneURL := fmt.Sprintf("https://%s/%s", d.c.Server.FQDN, name) + + if d.c.Misc.GoImport.PrettyURL == "" { + d.c.Misc.GoImport.PrettyURL = cloneURL + } + + goImport := fmt.Sprintf(`<meta name="go-import" content="%s git %s">`, + d.c.Misc.GoImport.PrettyURL, cloneURL) + tpath := filepath.Join(d.c.Dirs.Templates, "*") t := template.Must(template.ParseGlob(tpath))

@@ -125,6 +135,8 @@ data["ref"] = mainBranch

data["readme"] = readmeContent data["commits"] = commits data["desc"] = getDescription(path) + data["clone"] = cloneURL + data["goimport"] = template.HTML(goImport) if err := t.ExecuteTemplate(w, "repo", data); err != nil { log.Println(err)
M static/style.cssstatic/style.css

@@ -111,6 +111,14 @@ padding-top: 1.2em;

min-width: 0; } +.clone-url { + padding-top: 2rem; +} + +.clone-url pre { + color: var(--dark); +} + .desc { color: var(--gray); font-style: italic;

@@ -146,6 +154,11 @@ .readme pre {

white-space: pre-wrap; } +.readme { + padding-bottom: 2rem; + border-bottom: 1.5px solid var(--medium-gray); +} + .diff { margin: 1rem 0 1rem 0; padding: 1rem 0 1rem 0;

@@ -158,10 +171,6 @@ }

.diff-stat { padding: 1rem 0 1rem 0; -} - -.commit-email { - color: var(--gray); } .commit-email:before {

@@ -230,7 +239,7 @@ }

.commit-info { color: var(--gray); - font-size: 14px; + padding-bottom: 1.5rem; } @media (max-width: 600px) {
M templates/commit.htmltemplates/commit.html

@@ -10,8 +10,11 @@ <section class="commit">

<pre> {{- .commit.Message -}} </pre> - <p>{{ .commit.Author.When.Format "Mon, 02 Jan 2006 15:04:05 -0700" }}</p> - <p>{{ .commit.Author.Name }} <span class="commit-email">{{ .commit.Author.Email}}</span></p> + <div class="commit-info"> + {{ .commit.Author.Name }} <span class="commit-email">{{ .commit.Author.Email}}</span> + <div>{{ .commit.Author.When.Format "Mon, 02 Jan 2006 15:04:05 -0700" }}</div> + </div> + <p>commit: <a href="/{{ .name }}/commit/{{ .commit.This }}"> {{ .commit.This }} </a>
M templates/head.htmltemplates/head.html

@@ -4,6 +4,9 @@ <meta charset="utf-8">

<meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="stylesheet" href="/static/style.css" type="text/css"> <link rel="stylesheet" href="https://cdn.icyphox.sh/fonts/inter.css" type="text/css"> + {{ if .goimport }} + {{ .goimport }} + {{ end }} <!-- other meta tags here --> </head> {{ end }}
M templates/repo.htmltemplates/repo.html

@@ -25,12 +25,20 @@ <div>{{ .Author.When.Format "Mon, 02 Jan 2006 15:04:05 -0700" }}</div>

</div> {{ end }} </div> - +{{- if .readme }} <article class="readme"> <pre> - {{- if .readme }}{{ .readme }}{{- end -}} + {{- .readme -}} </pre> </article> +{{- end -}} + + <div class="clone-url"> + <strong>clone</strong> + <pre> +git clone {{ .clone -}} + </pre> + </div> </main> </body> </html>