max / alloy
- Co-Authored-By
- Claude Opus 5 (1M context) <noreply@anthropic.com>
1 file changed,
+45 insertions,
-2 deletions
| @@ -1,6 +1,8 @@ | |||
| 1 | 1 | # Alloy Iconography | |
| 2 | 2 | ||
| 3 | - | Two icon tiers with non-overlapping roles. Functional icons identify; hero illustrations anchor. Since the 2026-07-17 pivot to TUIs, the functional tier is the primary and near-universal one; the hero tier survives only on the handful of surfaces that are still drawn as images rather than terminal cells. | |
| 3 | + | Three icon tiers with non-overlapping roles, and the division is the point: **functional glyphs identify inside the chrome, application icons identify software, hero illustrations anchor a surface.** Since the 2026-07-17 pivot to TUIs, the functional tier does nearly all the work; the hero tier survives only where a surface is still drawn as an image rather than as terminal cells. | |
| 4 | + | ||
| 5 | + | The application tier is the newest and is the one with a visual language of its own: Mac OS 8, chunky and dithered, where the hero tier is a mid-century relay station rendered as service-manual plates. Two languages in one system is deliberate rather than drift. They never appear at the same size, in the same place, or for the same purpose: an app icon says which program this is, at 32 pixels, in a launcher or a dialog; a hero plate says which system you are looking at, full-bleed, on a lock screen or a splash. Write any new icon into whichever tier its job belongs to rather than reconciling the two. | |
| 4 | 6 | ||
| 5 | 7 | ## Functional tier: Nerd Font glyphs (primary) | |
| 6 | 8 | ||
| @@ -16,6 +18,45 @@ | |||
| 16 | 18 | ||
| 17 | 19 | Two readings are open and this file does not settle them: either the semantic-name accessor is work not yet done, or the geometric-shapes set is the real functional tier and the Nerd Font framing above should be retired. Deciding that belongs with the icon-set work, not here. | |
| 18 | 20 | ||
| 21 | + | ## Application tier: a generic set Alloy owns (decided, not yet drawn) | |
| 22 | + | ||
| 23 | + | Decided 2026-08-06 (Max): a layout set we own the copyright to, covering the basic items Alloy ships, generic rather than per-application. One console icon, not one per terminal emulator. The config TUI is where a user links an installed application to one of them. | |
| 24 | + | ||
| 25 | + | **The scoping question dissolves because the set covers kinds of application, not applications.** Nobody hand-draws a thousand icons; there are about a dozen kinds. And the fallback question dissolves too, because a gap is closed by the user linking an app to an icon rather than by borrowing somebody else's artwork. | |
| 26 | + | ||
| 27 | + | **Copyright is a hard constraint, not a preference.** Every icon is drawn for Alloy and owned by Make Creative. No vendor marks, no third-party theme vendored as a fallback, nothing traced. A generic browser icon is a browser, not a recognisable browser. | |
| 28 | + | ||
| 29 | + | Rejected: cosmic-icons (COSMIC is excised), Adwaita or Papirus as a fallback layer (someone else's artwork in the one place a user meets a third-party app, and exactly the copyright question this avoids), and committing to a full ~1000-icon theme as its own project. | |
| 30 | + | ||
| 31 | + | ### The categories, from what the image ships | |
| 32 | + | ||
| 33 | + | Counted 2026-08-06 against the built image rather than invented: `/usr/share/applications` holds 17 desktop entries, of which 7 are not `NoDisplay`. That is the whole visible surface Alloy itself installs. | |
| 34 | + | ||
| 35 | + | | Category | What ships in it | XDG category a third-party app would declare | | |
| 36 | + | |---|---|---| | |
| 37 | + | | Browser | helium | `WebBrowser` | | |
| 38 | + | | Console | shop (no desktop entry; it is the terminal) | `TerminalEmulator` | | |
| 39 | + | | Editor | helix | `TextEditor` | | |
| 40 | + | | File manager | yazi | `FileManager` | | |
| 41 | + | | Media player | mpv | `Player`, `AudioVideo` | | |
| 42 | + | | Image viewer | imv | `Viewer` with `Graphics` | | |
| 43 | + | | Document viewer | zathura | `Viewer` with `Office` | | |
| 44 | + | | Network | syncthing (two entries) | `Network`, `FileTransfer` | | |
| 45 | + | | Settings | the alloy console itself | `Settings`, `System` | | |
| 46 | + | | Annotate | satty | `Graphics` | | |
| 47 | + | ||
| 48 | + | Ten. The list is short by design: **if it grows past a couple of dozen, the set has started tracking applications instead of kinds.** The XDG column is what makes the set useful for software Alloy does not ship, which is the case that matters — a Flatpak the user installs declares its categories, and an unmapped app falls back to its category if one can be inferred and to nothing if not. A placeholder is an honest answer there, because the remedy is one screen away. | |
| 49 | + | ||
| 50 | + | ### Style, and what is not done | |
| 51 | + | ||
| 52 | + | Mac OS 8: chunky, dithered, 32x32 native, larger sizes drawn rather than scaled (Max, 2026-08-05). **Nothing is drawn yet**, and drawing is the remaining work along with the config TUI screen that does the linking. The category list above is the input that work needed. | |
| 53 | + | ||
| 54 | + | Note the pre-launch state is what it is by accident rather than by choice: with no icon theme installed at all, third-party apps currently resolve to nothing. | |
| 55 | + | ||
| 56 | + | ### Provenance | |
| 57 | + | ||
| 58 | + | Every icon in the application tier and every hero plate is original work, drawn for Alloy and owned by Make Creative, LLC. No icon in either tier is traced from, derived from, or vendored out of another icon set. This is stated here so the claim is written down before anyone has to ask. | |
| 59 | + | ||
| 19 | 60 | ## Hero tier: isometric line illustrations (reserved, mostly deferred) | |
| 20 | 61 | ||
| 21 | 62 | Large, declarative iconography lived on GUI surfaces (egui lockscreen ornament, launcher app icons, settings headers, marquee-app heroes). Those surfaces were dropped in the pivot, so the hero tier lost most of its homes. It survives only where a graphical surface remains: | |
| @@ -59,4 +100,6 @@ | |||
| 59 | 100 | ||
| 60 | 101 | ## The boundary between tiers | |
| 61 | 102 | ||
| 62 | - | If tempted to make a functional icon into a tiny isometric drawing, don't: a cell-scale iso line reads as noise. Functional icons stay Nerd Font glyphs at cell size. Isometric is reserved for image surfaces large enough that the hatching reads at viewing distance. In a TUI-first Alloy, that means the functional tier does almost all the work, and that is correct. | |
| 103 | + | If tempted to make a functional icon into a tiny isometric drawing, don't: a cell-scale iso line reads as noise. Functional icons stay glyphs at cell size. Isometric is reserved for image surfaces large enough that the hatching reads at viewing distance. In a TUI-first Alloy, that means the functional tier does almost all the work, and that is correct. | |
| 104 | + | ||
| 105 | + | The application tier sits between them and is bounded on both sides. It is not a glyph: a 32x32 dithered icon cannot render in a terminal cell, so a TUI that wants to mark a row uses the functional tier. And it is not a plate: an app icon is one recognisable object at one size, where a hero is a composed scene. If a proposed icon needs hatching to read, it belongs in the hero tier; if it has to fit in a cell, it belongs in the functional one. |