Sign in

Search issue titles and bodies, change requests and comments. Private repositories you cannot read are not included.

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.

Refresh the web surface with Everforest, readable type, and clearer navigation

796ac8c0ce77461174cf520d5fad4dea37744662 · Keenan Nemetz · 12d ago · parent ac00929f

server/web/templates.go +5−1

@@ -21,6 +21,9 @@ package web
21 21 //
22 22 // Static assets are served from /static/ and never inlined into a template. The
23 23 // passkey script is a static asset too; it runs under the same CSP as the rest.
24 // theme.js is loaded before the stylesheet on purpose: it applies the saved
25 // Everforest variant, or the system light/dark medium default, to <html> before
26 // the first paint. The account page owns the picker.
24 27 //
25 28 // Scripts vendored beside the assets that load them: htmx.min.js is loaded by the
26 29 // shell on every page; prism.min.js and prism-languages.min.js (every language
@@ -47,8 +50,9 @@ var templateFS embed.FS
47 50 //go:embed static/*
48 51 var staticFS embed.FS
49 52
50 // Static serves the embedded stylesheet, favicon, and scripts. Assets are
53 // Static serves the embedded stylesheet, favicon, fonts, and scripts. Assets are
51 54 // compiled into the binary, so there is no directory to deploy beside it.
55 // Lexend and JetBrains Mono live under static/fonts with their OFL licenses.
52 56 //
53 57 // Each file carries a strong ETag derived from its bytes. An embedded file has
54 58 // no modification time, so without a validator a browser re-downloads the