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.
Derive theme metadata from the stylesheet file name
d222b0cf5d23444ea5df9429ec7d3690407dd00c · Keenan Nemetz · 1d ago · parent f7a34d87
Derive theme metadata from the stylesheet file name profile/themes/index.json is gone. Each profile/themes/<id>.css is self-describing: the file name is the id and the label (acme-ocean.css becomes Acme Ocean), and the rules are scoped to that id. The loader discovers the files, validates the names, and sorts them by label. Remove the manifest from the starter repository, its README, the Admin Configuration path table, and the configuration docs. An old index.json in an existing repository is ignored.
server/web/templates/status.html +1−2
| @@ -202,8 +202,7 @@ Clone it with <code>{{.InstanceRepo.CloneURL}}</code>.</p> | |||
| 202 | 202 | <tr><td><code>profile/README.md</code></td><td>Landing page introduction (markdown, sanitized)</td></tr> | |
| 203 | 203 | <tr><td><code>profile/private/README.md</code></td><td>The same, only for signed-in viewers</td></tr> | |
| 204 | 204 | <tr><td><code>profile/custom.css</code></td><td>Instance-wide stylesheet, loaded after the built-in ones and any theme</td></tr> | |
| 205 | <tr><td><code>profile/themes/index.json</code></td><td>Themes offered in Account → Appearance</td></tr> | ||
| 206 | <tr><td><code>profile/themes/<id>.css</code></td><td>One stylesheet per theme</td></tr> | ||
| 205 | <tr><td><code>profile/themes/<id>.css</code></td><td>One stylesheet per theme; the file name is its label in Account → Appearance</td></tr> | ||
| 207 | 206 | <tr><td><code>profile/favicon.svg</code></td><td>Favicon override</td></tr> | |
| 208 | 207 | <tr><td><code>assets/</code></td><td>Files served at <code>/static/custom/assets/</code></td></tr> | |
| 209 | 208 | </tbody> | |