15 โ Sharing Themes¶
The themes you build in the card (see Theme system) are portable โ pure visual styling, with no reference to your rooms, entities, or vacuum brand โ so they're easy to pass around. There's a public theme gallery where you can browse themes other people have made, load one into your own card, and submit themes you've built.
The gallery is a web page published from the project repository: https://kingchddg901.github.io/Vacuum_Agent/
Nothing in it installs itself โ you choose what to download, and every submission is reviewed by a person before it appears.
Browsing the gallery¶
Open the gallery in any browser. The front page is a grid of every published theme, each shown as a single room card rendered in that theme, so you can see the actual colors and textures at a glance โ not just a name.
Filtering and searching¶
Above the grid there's a filter bar and a search box to narrow things down.
- Facet chips โ the bar groups tags into labelled rows: Mode
(dark / light), Accent (red, orange, gold, green, teal, cyan, blue, purple,
pink, mono), Temp, Surface, Contrast, Access, Best for, and
Source. Click chips to filter. The rule is OR within a row, AND across
rows โ picking
blueandpurpleunder Accent shows themes that are either, while also pickingdarkunder Mode narrows that to ones that are also dark. Only chips that actually match a published theme appear, so an empty facet never clutters the bar. - Search box โ type to match a theme's name, its author, or any of its tags
(including the free-text vibe words like
auroraorcozy, which show on cards but don't get their own chips). Search and the facet chips stack โ the grid shows themes that pass both. - A live count ("X of Y") tells you how many themes match, and a Clear filters button resets everything.
The Access row carries the colorblind-safe chip, and the Best for row
lets you filter to themes tuned for red-green or blue-yellow vision. Both are
system-verified โ a theme only carries them if it actually passed the simulation,
so filtering on them is meaningful, not just a self-claim.
Author credit¶
Each card shows a small credit line โ by <author>, optionally submitted by โฆ,
and a colored Source badge (core / community / generated / manual). When the
author included a profile or project link, their name is a clickable link;
otherwise it's shown as plain text.
The detail page¶
Click a theme to open its detail page, which shows the real card recolored by that theme:
- All-states galleries โ room cards and the review / map-bounds badges in every colored state at once, so you can check that statuses stay readable.
- Card tabs โ the full card across its tabs (maintenance, base station, metrics, and so on).
- For a colorblind-safe theme, a โ Colorblind-Safe panel showing the color separation it achieved and which vision type it's strongest for.
Every image is the real card rendered through the same engine the project uses for its own testing, so what you see is what you'll get.
Using a theme you found¶
Every card has a one-click โค Download button, and so does each theme's detail page โ that's the quickest way to grab a theme. To use one:
- Click โค Download on the card (or on the theme's detail page) to save its
.jsonexport. - In the card's Theme tab, click Upload and pick the file โ or Import to paste the JSON from your clipboard.
- The theme is added to your library as a new theme; select it like any other.
The downloaded file is exactly what the card's Upload imports โ no conversion
needed. If you'd rather browse the raw files, every published export also lives in
the project repository under
gallery/themes/,
but the Download button is the main path.
Loading a theme only adds styling โ it never touches your rooms, queue, or settings. Full details are in Import and export.
Sharing a theme you built¶
When you've made a theme you're happy with, submit it to the gallery. (New to building them? Authoring a theme covers the ways to make one and what makes a theme worth sharing.)
- In the Theme tab, click Download to save your theme's export file (or Download Floor to share just one floor type โ for example "just my marble").
- On the gallery, click + Submit a theme. This opens a pre-filled submission form on the project's GitHub (you'll need a free GitHub account).
- Paste your export JSON into the Theme export JSON box, fill in any of the optional fields you like, tick the acknowledgement, and submit.
The optional fields¶
None of these are required โ a bare export is fine โ but they make your theme easier to find and credit:
- Vibe tags โ free-text mood words like
aurora,cosmic,cozy. They feed the gallery's search and filter. You don't need to add the obvious facet tags (dark/light, blue/warm, colorblind-safeโฆ) โ those are derived automatically from your palette, so adding them by hand does nothing. - Author and Author URL โ your credit in the gallery. The URL must be a
direct
http(s)profile or project link (your GitHub, your site). URL shorteners (bit.ly, t.co, โฆ) and non-web links are not accepted; if you give one, your theme still ships, just with your name shown without a link. - Submitted by โ only if you're submitting on someone else's behalf.
- Colorblind-safe claim โ a single checkbox. Tick it only if you believe the four status colors (success / warning / error / info) stay distinguishable under color blindness. The bot verifies the claim โ see below.
That's all you do. From there it's automatic:
- A bot validates your export โ the same safety checks the card runs on import โ and auto-tags it: facet tags derived from the palette, plus your vibe words, so it lands in the right gallery filters.
- It verifies colorblind-safety by simulation. If you claimed it and it passes, it earns the badge. If it doesn't pass, that's not a rejection โ your theme still ships without the badge, and the bot tells you which color pair collapsed so you can fix it if you want. If you didn't claim it but it passes anyway, you get the badge as a bonus.
- It renders a preview of the real card recolored by your theme, opens a pull request with that preview shown inline, and comments back on your submission with a link.
- A maintainer reviews the preview and merges it. Once merged, your theme is published to the gallery.
Nothing goes live automatically โ a person always reviews it first. If your export can't be read (say the JSON didn't paste cleanly), the bot comments telling you what to fix; re-copy it from the Download button, then close and reopen your submission to retry.
The mechanics of what happens behind the submission form โ validation, preview rendering, and publishing โ are documented for maintainers in frontend/render-harness.
On a phone¶
Everything above works on mobile too. On a narrow screen (under 600px) the Theme tab lives in the bottom nav's More overflow sheet rather than the top tabs โ see the nav note in the overview. The footer's Export, Import, Download, and Upload buttons are all there, so you can pick, activate, and share whole themes from your phone.
What's not on mobile is the fine editing. The phone Theme tab shows only the preset grid โ the Palette and Tokens editors are desktop-only โ and the footer drops the Download Floor button, the floor-preset selects, and the Save / Discard controls that belong to those editors. So build and tweak themes on a desktop; browse, switch, import, and export them anywhere.