vole
Clone
Read only, no credentials:
https://rodent.software/git/vole.git
Write over SSH with a registered key:
git clone ssh://git@0.0.0.0:2222/vole.git
A free and open-source forge that lives in your Git repo.
Show the eyes and mouth through the light-theme brand mark
8f0f3e8d3ad9b7d83281bb16b661140e420c112b · Keenan Nemetz · 1d ago · parent ed667a0e
Show the eyes and mouth through the light-theme brand mark The ring-only outline left the light head featureless. Put a slightly expanded solid silhouette behind the light fill instead: the expansion draws the outside edge, and the eye, mouth, and inner-ear holes show the dark layer through. The whisker gaps still show the bar.
server/ui_test.go +2−2
| @@ -344,7 +344,7 @@ func TestTheEmblemShipsAndTheShellNamesIt(t *testing.T) { | |||
| 344 | 344 | t.Parallel() | |
| 345 | 345 | f := newFixture(t) | |
| 346 | 346 | ||
| 347 | for _, name := range []string{"logo.png", "vole-head.png", "vole-head-outline.png", "favicon-32.png", "favicon-32-dark.png", "favicon-16.png", "favicon-16-dark.png"} { | ||
| 347 | for _, name := range []string{"logo.png", "vole-head.png", "vole-head-solid.png", "favicon-32.png", "favicon-32-dark.png", "favicon-16.png", "favicon-16-dark.png"} { | ||
| 348 | 348 | resp, err := http.Get(f.http.URL + "/static/" + name) | |
| 349 | 349 | if err != nil { | |
| 350 | 350 | t.Fatal(err) | |
| @@ -386,7 +386,7 @@ func TestTheEmblemShipsAndTheShellNamesIt(t *testing.T) { | |||
| 386 | 386 | t.Fatalf("stylesheet = %d", code) | |
| 387 | 387 | } | |
| 388 | 388 | if !strings.Contains(css, `url("/static/vole-head.png")`) || | |
| 389 | !strings.Contains(css, `url("/static/vole-head-outline.png")`) || | ||
| 389 | !strings.Contains(css, `url("/static/vole-head-solid.png")`) || | ||
| 390 | 390 | !strings.Contains(css, "--mark-fill: currentColor") || | |
| 391 | 391 | !strings.Contains(css, "--mark-outline: transparent") || | |
| 392 | 392 | !strings.Contains(css, "--mark-fill: var(--bg)") || | |