/assets/ · /fonts/
Versioned files
Content-hashed names only. Cached for a year and marked immutable: a new version is a new URL.
cdn.windle.fun
Hashed bundles, fonts and the brand kit are served with long-lived caching and open CORS. Images are resized, cropped and re-encoded on the fly, then cached on disk so each variant is computed once.
/assets/ · /fonts/
Content-hashed names only. Cached for a year and marked immutable: a new version is a new URL.
/brand/
Logo marks and icons under stable names. Cached for a day, revalidated in the background for a week.
/img/
Signed URLs only. Resize, crop, quality and format per request. AVIF or WebP is chosen from the browser's Accept header.
Every response carries Access-Control-Allow-Origin: * and Timing-Allow-Origin: *, so fonts load cross-origin and images can be used as WebGL textures.
https://cdn.windle.fun/img/{signature}/{options}/plain/{path}[@format]
/opt/windle/bin/imgproxy-url.sh.rs:fill:1200:600, q:70, g:sm.samples/aurora.jpg. Remote URLs are not accepted.Accept (browser and origin cache only). Pin it (@webp) when the URL should also be cached by Cloudflare.
rs:fill:1200:600 · format negotiated for this browser · source 2400×1600 JPEG
@avif
@webp
@jpgVary: Accept).Cloudflare-CDN-Cache-Control: no-store.The windle mark: a rounded square with a W cut in negative space. Keep clear space of a quarter of its width; do not recolour beyond blue, white and black.