The current era of Tenrankai turned the “blog engine from day 3” into a first-class publishing system — and you’re looking at the result, because this site runs it.
The posts revamp
Posts gained categories (chips on the cards, path-style URLs like
/projects/category/astrophotography, filter bars with counts, per-category
options via _categories.md) and hero images — either a plain URL or a
gallery:name:path reference that pulls straight from a gallery, with
click-through to the image and hover details. The index became a flowing
magazine layout with a featured first card and reading times. Post detail
pages got a share bar (native share, Bluesky, Mastodon with a remembered
instance, and friends) and richer Open Graph metadata.
Editing moved into the browser: a permission-gated post editor (title,
slug, summary, categories, markdown, delete) backed by a CRUD API, with a
gallery image picker for choosing heroes. Posts share the gallery permission
scheme — site permissions plus per-directory _folder.md overrides — so
private drafts and members-only sections fall out for free.
RSS 2.0 feeds appeared at {prefix}/feed.xml (and per category), with
permission-aware filtering and full content. Posts systems can also embed
anywhere a template renders — an embeddable posts preview block for
dropping “recent projects” onto a home page.
The sky map
My favorite recent addition: image detail pages for astrophotos now show a
sky map. If an image’s metadata sidecar carries ra and dec — fields
the images in the astro gallery already carry — the
viewer plots where in the sky the image was taken on an all-sky chart, with
one-click jumps to Aladin Lite and SIMBAD:

And it didn’t stop at “where was the telescope pointing.” With seiza wired in, tenrankai now plate-solves astro images and annotates them: toggle “Objects” on the detail page and every catalogued galaxy in the frame gets an ellipse and a label. Here’s my Whirlpool shot — M 51 and NGC 5195, plus four background galaxies down to PGC anonymity, found automatically from a sub-second solve:

The newest round went further. Images with no coordinates anywhere now blind-solve — gated to astro folders, so ordinary photos are never touched — and a new minor-body catalog puts comets and asteroids into the overlay, positions propagated to each image’s capture time (validated against JPL Horizons). Comets draw in green with the dash oriented anti-sunward along the actual tail; asteroids in orange along their apparent motion; neither is ever persisted, because they move. My comet Lemmon frame is the full demo: no RA/Dec in its metadata (comets don’t have fixed coordinates to write down), blind-solved from 104 field stars, and the ephemeris labels it C/2025 A6 (Lemmon) · V~7.5, 0.71 AU — while surfacing seventy-odd anonymous PGC galaxies hiding behind the tail:

The overlays also escaped the gallery: gallery images embedded in posts — including explicit hero images, like the one on this very post — carry the same “Objects” toggle inline.
Flat files in, planetarium out. Next on the design docs: plate solving and object overlays.
The series: Part 1 — the ten-day birth, Part 2 — the January push, Part 3 — boring on purpose. Source at github.com/theatrus/tenrankai.