notes / 6 September 2026 / 304 words
Hourly wallpapers
A note on the generator behind the plates on this site. An image model was already in service for another project, and the wallpaper service was assembled around it in an afternoon.
The wallpapers shown on the plates page are the output of a small service that produces one image an hour. Its origin is incidental. An Anima image-generation server had been in service for several months for another project, and the thought that the same server could produce a desktop wallpaper on a schedule occurred to me while that project was being maintained. The specification was given to Claude Code in a few sentences, and the service was running within the hour.
The system is a scheduled pipeline in three stages. A prompt is assembled from a set of templates and slot lists, so that each hour’s image is a random combination of a landscape, a time of day, an atmospheric condition, and a palette. The image is then rendered by the diffusion model, and the result is published through an RSS feed.
The rendering stage is two-part for a reason that is specific to the model. Anima is coherent to roughly two megapixels and degrades beyond that size, so a native render at 3840 by 2160 pixels is unusable. The pipeline therefore renders at approximately 1888 by 1056 pixels for a 16:9 target, passes the result through an ESRGAN upscaler, and crops to the exact target dimensions. The cost of one wallpaper is about one minute of GPU time.
A rolling window of recent images is kept, and the feed is the interface to everything downstream: the plates page reads it, and so does the desktop, whose own slideshow performs the rotation.
The prompts are deliberately quiet: sea cliffs at blue hour, dune fields under fog, geological strata in shadow. A wallpaper is a background, and a background is not meant to compete with the windows in front of it. That preference is encoded in the templates, and the slot lists supply the variation.