levineuwirth.org/static
Levi Neuwirth af27479c6e Add now.js: recompute "Last updated" relative phrase client-side
build/Now.hs renders the .now-stamp-relative phrase ("3 days ago") at
build time against the build machine's clock; a page served days later
from cache or a CDN would then read stale. now.js recomputes the
phrase in the browser from the <time datetime> attribute (an
unambiguous YYYY-MM-DD) against the visitor's clock, with bucket
thresholds that mirror Now.hs:relativeTime exactly so the no-JS
fallback and the recomputed value agree.

* static/js/now.js — the recomputation script.
* templates/default.html includes it via $if(now)$ so it only loads
  on the Current page.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-23 12:06:49 -04:00
..
css Popups: render the source page's monogram in internal previews 2026-05-23 12:06:35 -04:00
fonts initial deploy! whoop 2026-03-17 21:56:14 -04:00
gpg GPG signing, embedding pipeline, visualization filter, search timing, sig popups 2026-03-20 20:14:49 -04:00
images Spec dilemma 2026-05-01 21:22:01 -04:00
js Add now.js: recompute "Last updated" relative phrase client-side 2026-05-23 12:06:49 -04:00
papers Branch preprint 2026-05-06 12:21:59 -04:00
templates Marks I 2026-05-07 23:51:14 -04:00
apple-touch-icon.png favicon, logo, internal popups 2026-04-12 14:57:01 -04:00
cv.pdf Internal audit 2026-05-07 17:20:27 -04:00
favicon-96x96.png subdomain svg correction 2026-04-13 10:26:25 -04:00
favicon.ico subdomain svg correction 2026-04-13 10:26:25 -04:00
favicon.svg subdomain svg correction 2026-04-13 10:26:25 -04:00
resume.pdf Internal audit 2026-05-07 17:20:27 -04:00
site.webmanifest favicon, logo, internal popups 2026-04-12 14:57:01 -04:00
web-app-manifest-192x192.png favicon, logo, internal popups 2026-04-12 14:57:01 -04:00
web-app-manifest-512x512.png favicon, logo, internal popups 2026-04-12 14:57:01 -04:00