Solar v.2 is a Hugo theme that rebuilds Low-tech Magazine's solar website, generating the entire low-tech site in minutes with support for dithered images, multilingual content, and custom author and translator taxonomies.
What is Solar v.2?
Solar v.2 is a Hugo theme originally built for Low-tech Magazine's solar-powered website (solar.lowtechmagazine.com). It takes content organized as Hugo Page Bundles — each article a folder with index.md, translations, images, comments — and outputs a static site with low-energy design features. The theme requires Hugo 0.145 or newer and was created by Marie Otsuka, Roel Roscam Abbing, and Marie Verdeil, with contributions from Erhard Maria Klein. It is a complete rebuild of the original Solar theme that ran on Pelican.
Key Features
- Page Bundle content structure — Every post is a directory containing index.md, translations as index.lang.md, images, dithered images, and comments files, making each article self-contained and easy to manage.
- Automatic image dithering — The Python script dither_images.py recursively scans the content folder and creates dithered versions of every image, storing them in an images/dithers subfolder; it can optionally colorize dithers based on Low-tech Magazine categories.
- Multilingual with automatic fallback — Translations use index.lang.md files; Hugo's ref shortcode links to the translated page when it exists, otherwise it defaults to English.
- Custom author and translator taxonomies — The theme generates /authors/ and /translators/ pages, each with its own index; individual biography pages can be written in content/authors/authorname/index.md.
- Reader comments in any language — Comments are stored in comments.lang.md files and rendered via a shortcode that takes a name attribute; each language can have its own comment file.
- Page size post-processor — calculate_size.py traverses the built public directory, sums the file sizes of all HTML pages and associated media, and injects the total into a div with class page-size in the footer.
- Cron-ready build script — build_site.sh builds the Hugo site and runs the support scripts, designed to be scheduled daily via cron with output logged to a file.
Who should use Solar v.2?
- Low-tech web publishers — Anyone running a solar-powered or energy-conscious website who wants a static, low-bandwidth design and built-in page-weight reporting.
- Multilingual content teams — Editors who publish articles and translations side by side and want links to resolve automatically to the reader's language.
- Hugo theme developers — Developers looking for a working example of Page Bundles, custom taxonomies, and the ref shortcode for multilingual sites.
What can you do with it?
- Launch a low-tech blog — Write markdown articles with image shortcodes, add translations, and build the site with Hugo; the theme renders the low-tech aesthetic automatically.
- Prepare images for bandwidth saving — Run dither_images.py to generate dithered copies of every image in your content, reducing file sizes for low-power readers.
- Publish page-weight transparency — Run calculate_size.py after building to display the exact file size of each page, a signature Low-tech Magazine design principle.
- Automate daily builds — Set build_site.sh in cron (e.g., 15 12 * * * with a log file) to rebuild the site on a schedule and keep it up to date.
How does it work?
The workflow starts with installing Hugo 0.145 or newer and cloning the theme. Content is authored as Hugo Page Bundles — each article folder holds index.md, optional translations, and images. In development, hugo server serves the site locally; for production, build_site.sh runs the hugo build, then dither_images.py (if needed) and calculate_size.py as post-processing steps on the public directory.
