<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dotemacs/scripts/theme-selector/package-inventory.json, branch main</title>
<subtitle>My Emacs configuration
</subtitle>
<id>https://git.cjennings.net/dotemacs/atom?h=main</id>
<link rel='self' href='https://git.cjennings.net/dotemacs/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/'/>
<updated>2026-06-08T13:57:05+00:00</updated>
<entry>
<title>refactor(theme-studio): rename theme-selector to theme-studio</title>
<updated>2026-06-08T13:57:05+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-06-08T13:56:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/commit/?id=7f57c6467054f6762a40b683d6585ee0a2b5527c'/>
<id>urn:sha1:7f57c6467054f6762a40b683d6585ee0a2b5527c</id>
<content type='text'>
The tool authors themes from scratch -- palette, faces across every tier, live preview, export to a loadable deftheme. It never selects among existing themes, so "selector" mis-described it. Renamed the directory, the generated HTML and its title, the design spec, and every reference in the code, README, tests, and todo. No behavior change.
</content>
</entry>
<entry>
<title>feat(theme-selector): generated all-package inventory (tier-3 phase 6)</title>
<updated>2026-06-08T07:32:45+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-06-08T07:32:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/dotemacs/commit/?id=c05364951bf59edde7d0d0eb35013dfc077d40cf'/>
<id>urn:sha1:c05364951bf59edde7d0d0eb35013dfc077d40cf</id>
<content type='text'>
I added the hybrid inventory. build-inventory.el, loaded into a running Emacs, queries every installed package's faces grouped by the package that defines them and writes package-inventory.json. generate.py embeds that file and merges each package into the app dropdown as an editable generic app, leaving the bespoke org, magit, and elfeed untouched.

The dropdown now reaches 40 apps: the three bespoke plus 37 inventory packages (643 faces), so any installed package can be themed against the palette with the generic preview. The inventory is a committed data artifact refreshed by reloading the .el, never browser-side discovery, matching the spec's hybrid-and-split decision.
</content>
</entry>
</feed>
