Skip to content

Commit c6ae7f8

Browse files
committed
Add Gonzo UI Manifest for pies, tabs, tiles, and overlays.
Constitutional chrome notes: HST method + Sims Framework shop name + felt-creature craft, wired into designs index and PieCraft.
1 parent 318eab6 commit c6ae7f8

4 files changed

Lines changed: 171 additions & 0 deletions

File tree

Lines changed: 166 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,166 @@
1+
# Gonzo UI Manifest — fear and loathing of traditional chrome
2+
3+
**Status:** Constitutional design notes for MicropolisCore UI modules
4+
**Monorepo:** MicropolisCore
5+
**Companion docs:** [classical-hci-vs-aesthetic-ui.md](classical-hci-vs-aesthetic-ui.md) · [designing-inward-miyamoto-principles.md](designing-inward-miyamoto-principles.md) · [piecraft/README.md](piecraft/README.md) · [../notes/PIE-TAB-WINDOWS.md](../notes/PIE-TAB-WINDOWS.md) · [virtual-pointer-and-pie-cursors.md](virtual-pointer-and-pie-cursors.md) · [map-compositing-and-measurement.md](map-compositing-and-measurement.md) · [ui-frame-nine-slice.md](ui-frame-nine-slice.md) · [simcity-tool-palette-design.md](simcity-tool-palette-design.md)
6+
7+
> *Gonzo Interface Design* — UI that reports from **inside** the interaction: subjective, stunt-capable, sincerely weird. Journalism’s immersion crossed with stagecraft’s commitment. No borrowed trademarks. No borrowed mascots. Nap left on the felt.
8+
9+
---
10+
11+
## Why this file exists
12+
13+
MicropolisCore’s interaction stack — pie menus, tabbed stacks, tile views, overlays, measures, direct manipulation — inherits two shop names and one method:
14+
15+
1. **Shop name (history).** Inside *The Sims* Framework, the Windows UI shell was codenamed **Gonzo** (`gonzo.h`, `Gonzo::Main`, Win32 class `"Gonzo"`, `GZ*` types; companion umbrella **Rizzo**). It was never a consumer SKU. Reusing the word here reclaims an insider label the way **Micropolis** reclaimed the city sim after **SimCity** stayed trademarked — different legal story, same instinct: keep the name that meant something in the room.
16+
2. **Method (HST).** [Gonzo journalism](https://en.wikipedia.org/wiki/Gonzo_journalism) puts the reporter *in* the story; subjectivity is the instrument. Gonzo UI puts the **designer and the user’s nervous system** in the chrome — splash text, honest errors, present-tense mess — instead of fake-objective system voice.
17+
3. **Stagecraft (felt creatures).** Handmade performance that invites empathy: soft edges, visible seams, earnest absurdity. **Felt creatures** is the K-line — *felt* the material and *felt* the verb. The audience completes the creature. Sims diamonds and need bars already run on that economy. Gonzo UI refuses to sand the nap off until feelings can’t stick.
18+
19+
This manifesto does **not** ship Muppet characters, logos, or likenesses. The inheritance is craft energy, not franchise IP.
20+
21+
Gonzo UI is **not** an excuse to abandon classical HCI. It sits *beside* Shneiderman / Tog / Weiser: [classical-hci-vs-aesthetic-ui.md](classical-hci-vs-aesthetic-ui.md) keeps **visible state, feedback, reversibility**. Aesthetic-minimalist UI hid state and called it calm. Gonzo UI makes state *felt* — legible *and* inhabited.
22+
23+
---
24+
25+
## Fear and loathing of traditional UI design
26+
27+
What we refuse (the Las Vegas of chrome):
28+
29+
| Traditional habit | Why we loathe it |
30+
|-------------------|------------------|
31+
| Invisible “professional” chrome | Lies about authorship; trains users that software has no taste |
32+
| Objective system voice | “An error has occurred” — the computer gaslights while drowning |
33+
| Usability as sterilization | Removes every cue that would let empathy and muscle memory grow |
34+
| Retro in quotation marks | Irony-poisoned nostalgia; costume without commitment |
35+
| Screenshot-first design | Ships the Q3 keynote still; users inherit the hangover |
36+
| Hidden gesture modes | Modes without handles; calm tech misread as illegibility |
37+
| Dashboard voyeurism | Watching numbers instead of grabbing the world |
38+
| Error shame | Red banners that punish exploration |
39+
40+
**Fear:** shipping another strip of flat blue pills that could belong to any SaaS.
41+
**Loathing:** pretending the city under the cursor is a spreadsheet with a theme pack.
42+
43+
---
44+
45+
## The muppetry of Gonzo UI (no trademarks)
46+
47+
Stagecraft rules we *do* keep:
48+
49+
- **Commitment to the bit.** If the shell is playful, go all the way — splash text, nine-slice frames, talking pie labels — no apologetic “ironically retro.”
50+
- **Stunt affordances.** Pie menus are the high-dive: showy, learnable, a little dangerous, memorable when you stick the landing ([gesture-space-and-pie-menus.md](gesture-space-and-pie-menus.md)).
51+
- **Category refusal.** A toolkit that is theme *and* holodeck *and* fan-culture joke without needing a solemn product category first.
52+
- **Failure as entertainment.** Missed slices, invalid placement bounce, comic empty cards — charm, not shame.
53+
- **Felt creatures.** Leave nap. Sparse signals, fat projection. The user finishes the feeling.
54+
55+
---
56+
57+
## Constitutional directives
58+
59+
1. **LEAN INTO the hands.** Design inward from the gesture (Miyamoto / [designing-inward-miyamoto-principles.md](designing-inward-miyamoto-principles.md)); Gonzo adds: the face in the splash text is allowed to smirk.
60+
2. **Visible state, inhabited.** Classical HCI visibility + subjective host voice. Never hide a scrollbar to look modern.
61+
3. **Direct manipulation first.** Continuous representation, rapid reversible incremental feedback ([Shneiderman](https://en.wikipedia.org/wiki/Direct_manipulation_interface)). Gonzo means the *feedback has character* — bounce, blink, label — not that we replace DM with forms.
62+
4. **Pies saturate gesture space.** Prefer self-revealing radials over blind multitouch counts ([automotive-touch-ui-vs-pie-menus.md](automotive-touch-ui-vs-pie-menus.md)).
63+
5. **Tabs and stacks are HyperCard with nap.** Cards on any edge; pie on the tab without raising the wrong overlay ([PIE-TAB-WINDOWS.md](../notes/PIE-TAB-WINDOWS.md)).
64+
6. **Maps are places, not charts.** Zoom, pan, and overlays should feel like moving a camera through a city — measures are costumes the world wears ([map-compositing-and-measurement.md](map-compositing-and-measurement.md)).
65+
7. **No EA assets in the kit.** Themes may *evoke* Sims-era shell language; ship no copyrighted art. Users bring their own game files and screenshots.
66+
8. **Name decompresses.** *Gonzo Pie Menus*, *Gonzo Tabbed Windows* — HST + shop history. Package ids may stay `gonzo-*` / `GZ` without requiring a Disney story.
67+
68+
---
69+
70+
## Applied: fear/loathing vs Gonzo, by module
71+
72+
### Direct manipulation
73+
74+
| Fear & loathing | Gonzo |
75+
|-----------------|--------|
76+
| Property sheets for everything that should be a drag | Grab the object; the world answers under the cursor |
77+
| Commit dialogs for incremental edits | Continuous representation; undo is the safety net |
78+
| Ghosts that lie about validity | Invalid placement *bounces* with a readable reason |
79+
80+
### Pie menus
81+
82+
| Fear & loathing | Gonzo |
83+
|-----------------|--------|
84+
| Linear menus that waste gesture space | Radial slices; angle-at-release; mouse-ahead rehearsal |
85+
| Icons without rehearsal path | Self-revealing wedges; talking labels when voice helps |
86+
| Patent FUD paralysis | Ship the interaction; see [pie-menu-patent-fud.md](pie-menu-patent-fud.md) |
87+
88+
Modules: `PieMenu.svelte`, PieCraft model, holodeck pie plugin, [virtual-pointer-and-pie-cursors.md](virtual-pointer-and-pie-cursors.md).
89+
90+
### Tabbed windows / stacks / cards
91+
92+
| Fear & loathing | Gonzo |
93+
|-----------------|--------|
94+
| Single top tab strip as religion | Tabs on **any** edge; stacks that float and dock |
95+
| Modal dialogs that trap the city | Cards that peel into overlay floats and return |
96+
| Chrome that ignores the chat nexus | Chat + sim messages as actionable navigation |
97+
98+
See [PIE-TAB-WINDOWS.md](../notes/PIE-TAB-WINDOWS.md).
99+
100+
### Tile views / mapping / zoom / scroll
101+
102+
| Fear & loathing | Gonzo |
103+
|-----------------|--------|
104+
| Zoom that loses the cursor’s meaning | Zoom around the point of interest; tile-frame cursor stays honest |
105+
| Scrollbars deleted for “clean” | Scrollbars as felt handles; autoscroll that respects the pie |
106+
| Minimap as unread decoration | Minimap rectangles you can drag — cameras you can grab |
107+
108+
`TileView`, editor vs map cards, pinned live views (helicopter/monster).
109+
110+
### Overlays / data visualization
111+
112+
| Fear & loathing | Gonzo |
113+
|-----------------|--------|
114+
| Detached chart dashboards | Metrics as **costumes on the map** — MOP/color planes composited in place |
115+
| Legend in a PDF | Legend as cursor/palette language ([ui-frame-nine-slice.md](ui-frame-nine-slice.md), tool palette borders) |
116+
| One overlay to rule them all | Stackable planes; measures as bindable JSON props |
117+
118+
See [map-compositing-and-measurement.md](map-compositing-and-measurement.md), sprite overlay playbooks.
119+
120+
### Tool palettes / cursors
121+
122+
| Fear & loathing | Gonzo |
123+
|-----------------|--------|
124+
| Flat icon grids with no cost language | Totem-pole palette; icon size ↔ cost; border = cursor legend |
125+
| System arrow for every tool | Tool cursors as characters in the scene |
126+
127+
See [simcity-tool-palette-design.md](simcity-tool-palette-design.md).
128+
129+
---
130+
131+
## Naming
132+
133+
| Use | Form |
134+
|-----|------|
135+
| Manifest / philosophy | **Gonzo UI**, *Gonzo Interface Design* |
136+
| Features | Gonzo Pie Menus, Gonzo Tabbed Windows, Gonzo Tile Views |
137+
| Code / packages | `gonzo-*`, `GZ` prefix where it echoes Framework history |
138+
| Public story | HST method + Maxis shop codename + felt-creature craft |
139+
| Never | Muppet characters, logos, “official” franchise cosplay |
140+
141+
Micropolis renamed the *city* product. Gonzo names the *hands* — the shell you feel with.
142+
143+
---
144+
145+
## Relationship to other constitutions
146+
147+
```text
148+
Miyamoto (hands/face inward) ──┐
149+
Classical HCI (visible state) ─┼──► Gonzo UI (inhabited, stunt-capable chrome)
150+
Felt-creature stagecraft ──────┘
151+
152+
153+
PieCraft · PIE-TAB-WINDOWS · TileView · Overlays · Holodeck
154+
```
155+
156+
If a change makes the city harder to *feel with*, it fails this manifest even if it screenshots cleaner.
157+
158+
---
159+
160+
## K-lines
161+
162+
- **GONZO-UI** — invoke this file
163+
- **FELT CREATURES** — material *and* empathy; leave nap
164+
- **FEAR AND LOATHING** — refuse sterilized chrome and gaslight errors
165+
- **STUNT AFFORDANCE** — pies, bounce, talking labels
166+
- **INHABITED CHROME** — authorship visible; splash text allowed to smirk

documentation/designs/README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ Open work for all of these areas is consolidated at **[documentation/TODO.md](..
1212

1313
Read these alongside:
1414

15+
- `documentation/designs/GONZO-UI-MANIFEST.md` — UI constitution (pies, tabs, tiles, overlays)
1516
- `documentation/notes/PIE-TAB-WINDOWS.md`
1617
- `documentation/notes/MultiPlayerIdeas.txt`
1718
- `skills/micropolis/`
@@ -32,6 +33,8 @@ Read these alongside:
3233

3334
[interaction-design-articles-index.md](interaction-design-articles-index.md) — includes [Brad Myers / Garnet / VPL HN corpus](brad-myers-visual-programming-hn.md)
3435

36+
**Gonzo UI constitution:** [GONZO-UI-MANIFEST.md](GONZO-UI-MANIFEST.md) — fear & loathing of sterilized chrome; felt-creature stagecraft; Gonzo applied to pies, tabs, tile views, overlays, DM, zoom/scroll/map. HST method + Sims Framework shop codename (no franchise mascots).
37+
3538
**Pie menus & PieCraft:** [piecraft/README.md](piecraft/README.md) — runtime-editable pies, game design, Target/Pie/Slice/Item model, links to holodeck + SimCity palette
3639

3740
### Platform and integration

documentation/designs/interaction-design-articles-index.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ Each article is *standalone*. None of them ask you to read another file first. T
1616
| 2 | [`gesture-space-and-pie-menus.md`](gesture-space-and-pie-menus.md) | Pies *saturate* gesture space; stroke recognisers leave most of it as syntax errors | …you want the feel of pies — preview, reselection, mouse-ahead by rehearsal |
1717
| 3 | [`submenu-aiming-and-fitts-law.md`](submenu-aiming-and-fitts-law.md) | Tognazzini's 1986 `<`-shaped buffer was specified in the 1987 Apple HIG; Amazon rediscovered it in 2013 | …you're shipping linear submenus and inherit none of the toolkit ergonomics |
1818
| 4 | [`classical-hci-vs-aesthetic-ui.md`](classical-hci-vs-aesthetic-ui.md) | "Calm technology" was never an excuse to hide state; aesthetic-minimalist UI decouples animation from input | …you're auditing motion / gesture bugs that don't fit a Fitts frame |
19+
| 4b | [`GONZO-UI-MANIFEST.md`](GONZO-UI-MANIFEST.md) | Fear & loathing of sterilized chrome; felt creatures; Gonzo pies/tabs/tiles/overlays — HST + Sims Framework shop name | …you're shaping Micropolis chrome personality without abandoning HCI |
1920
| 5 | [`pie-menu-patent-fud.md`](pie-menu-patent-fud.md) | The Alias marking-menu patent was narrow; the marketing campaign was broad; the chilling effect cost twenty years | …you need Gordon Kurtenbach's email and the full Buxton/Kinetix story |
2021
| 6 | [`dasher-steering-law-accessibility.md`](dasher-steering-law-accessibility.md) | Dasher converts a continuous steering signal into text via a language-model-shaped probability tunnel; Ada Majorek programs in it with a head-mouse | …you're building non-keyboard input or thinking about LLM-aware editors |
2122
| 7 | [`aquery-programmable-accessibility.md`](aquery-programmable-accessibility.md) | jQuery-shaped selectors and plugins over the accessibility tree, with Prefab-pixel fallback. Don proposed it in 2015; nobody shipped it | …you're trying to script other apps and want to know what almost existed |

documentation/designs/piecraft/README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ ToolCatalog HolodeckStage VirtualPointer
3636

3737
| MicropolisCore artifact | PieCraft / pie lineage |
3838
| --------------------------------------------------------------------------- | ------------------------------------------------------------ |
39+
| [GONZO-UI-MANIFEST.md](../GONZO-UI-MANIFEST.md) | Constitutional chrome: inhabited, stunt-capable, felt-creature |
3940
| [simcity-tool-palette-design.md](../simcity-tool-palette-design.md) | Curated totem pole = **designer** pies; MP cursor legend |
4041
| [virtual-pointer-and-pie-cursors.md](../virtual-pointer-and-pie-cursors.md) | Virtual mouse, no menu-warp; tile autoscroll |
4142
| [ui-frame-nine-slice.md](../ui-frame-nine-slice.md) | Tool cursor frames = palette border language |

0 commit comments

Comments
 (0)