vole
Clone
Read only, no credentials:
https://rodent.software/vole.git
Write over SSH with a registered key:
git clone ssh://git@rodent.software:2222/vole.git
A free and open-source forge that lives in your Git repo.
Show the emblem alone, larger, in the header
b0fd812cc167a3ef09a30d00f4e517a3822a72f4 · Keenan Nemetz · 13d ago · parent 6416cab1
Show the emblem alone, larger, in the header The wordmark beside the mark was doing the work the emblem now does, and the 22-pixel tile was small enough that the face read as a smudge next to it. The header is the emblem at 28 pixels and nothing else, which fits the 46-pixel bar with room around it and still comes from the 128-pixel source at 4x. The link keeps its aria-label, so the mark without text is still "Vole home" to a screen reader; alt stays empty and the image is hidden so it is not announced twice.
server/web/static/vole.css +7−7
| @@ -127,22 +127,22 @@ img { max-width: 100%; } | |||
| 127 | 127 | backdrop-filter: blur(8px); | |
| 128 | 128 | } | |
| 129 | 129 | ||
| 130 | /* The brand is the emblem alone. The link keeps an accessible name, so a mark with | ||
| 131 | no text beside it is still "Vole home" to a screen reader. */ | ||
| 130 | 132 | .brand { | |
| 131 | 133 | display: inline-flex; | |
| 132 | 134 | align-items: center; | |
| 133 | gap: 8px; | ||
| 134 | 135 | color: var(--fg); | |
| 135 | font-weight: 650; | ||
| 136 | letter-spacing: -0.01em; | ||
| 137 | 136 | } | |
| 138 | 137 | .brand:hover { text-decoration: none; } | |
| 139 | /* The rodent emblem: a dark tile with a white face, so the mark reads the same | ||
| 140 | on the light and the dark theme without a second set of assets. */ | ||
| 138 | /* A dark tile with a white face, so the mark reads the same on the light and the | ||
| 139 | dark theme without a second set of assets. It sits inside the 46px bar with | ||
| 140 | room to breathe and stays within the 128px source at 4x. */ | ||
| 141 | 141 | .brand .mark { | |
| 142 | 142 | display: block; | |
| 143 | 143 | flex: none; | |
| 144 | width: 22px; | ||
| 145 | height: 22px; | ||
| 144 | width: 28px; | ||
| 145 | height: 28px; | ||
| 146 | 146 | } | |
| 147 | 147 | ||
| 148 | 148 | .topnav { display: flex; gap: 2px; } | |