Návrh: prezentace Design Systemu (inspirace atlassian.design)
- 9. 2026, k rozhodnutí Štěpána. Mock:
:3777/preview/ds-site-home.htmla
:3777/preview/ds-site-komponenta.html. Dnešní stav::3777/ds.
1. Co dělá atlassian.design dobře (a co z toho přenést)
| Princip | Jak to Atlassian řeší | Co máme dnes na /ds |
|---|---|---|
| IA podle záměru, ne podle souborů | Začínáme (podle role) · Základy · Komponenty (kategorie: Forms & input, Overlays, Navigation, Text & data…) · Vzory · Nástroje · Fáze vydání | jeden dlouhý seznam 97 řádků; Components = 40 karet bez kategorií |
| Stejná kostra každé stránky | levý strom · obsah · „Na této stránce" vpravo · hledání nahoře | rozcestník + detail bez navigace mezi stránkami |
| Stránka komponenty má tab model | Examples · Code · Usage · Accessibility; hlavička = název, jedna věta, stav (lozenge), odkazy (zdroj, balíček, Figma) | název + @dsCard subtitle (medián 200 znaků, max 664 — odstavec místo věty) + iframe + technické tabulky |
| Usage = kdy použít / kdy ne / anatomie / Do–Don't / obsah / související | strukturovaná, krátká, s párovými obrázky | pravidla roztroušená: CSS komentáře v kartě, RULES.md, docs/DS-USAGE.md v ACRM |
| Základy jako data | tokeny v tabulkách, kopírovat hodnotu, ukázka | karta Foundations = statický HTML render; hodnoty se opisují z CSS |
| Stav a verze | release phases (alpha · beta · GA · deprecated), changelog | stav jen „implementace v ACRM"; historie od dneška v gitu, nikde nezobrazená |
| Hledání všude | fulltext přes celý systém | filtr názvů na rozcestníku |
Co NEpřenášet: marketingový hero, News, Careers, obří patičku, Figma vrstvu (nemáme), tokenový mega-systém (náš je záměrně malý). Držet Attio-střízlivost a RULES §0 — DS web je sám ukázkou DS.
2. Návrh
2.1 Informační architektura
Domů — hledání, 3 vstupy (Základy · Komponenty · Vzory), „Pro koho" (designér ·
vývojář · AI agent), Poslední změny (z git logu kanonu)
Začínáme — pro vývojáře: zrcadlo, port, brány; pro designéra: pravidla, kandidát
Pravidla — RULES.md rozdělený na stránky s kotvami (§0 containment … §10 dialog)
Základy — Barvy · Typografie · Rozestupy/rádiusy/elevace · Ikony · Datum a čísla
(generováno z colors_and_type.css: token · hodnota · ukázka · kopírovat;
karty Foundations zůstávají jako „vizuální důkaz" vedle)
Komponenty — 7 kategorií (níže), každá komponenta = stránka s taby
Vzory — Obrazovky (27) · Registrace (8): kostra + z jakých komponent se skládá
Systém — Adopce v repech (matice komponenta × repo) · Kandidáti · Změny (git log)Kategorie komponent (návrh mapování 40 karet):
- Formuláře a vstupy — Inputs, Buttons, Segmented control, Filter bar, Drawer form, Multi-value editor, Popover & menu (výběr)
- Overlaye a dialogy — Dialog system, Dialog stavy okna, Dialog obchodu, Dialog poznámky, Dialog úkolu, Dialog sloučení, Identity image dialog, Mail compose, Entity preview popover
- Navigace — Sidebar nav, Section top bar, Record tabs (unified), Tabs (record sub-nav)
- Záznamy a data — Table, Table listing, Record list, Record detail rail, Task list, Email list, Deal card, Stat tile, Section block, Časová osa záznamu, Note card
- Identita — Avatars, Entity reference, Entity reference (mini), Entity reference (odebíratelná)
- Stavy a zpětná vazba — Empty & Error state, Status & health, Loading (skeleton), Notifikace a toasty, Tooltip
- AI — AI assistant, Discussion (návrh)
2.2 Stránka komponenty (viz mock)
Hlavička: název · jedna věta · stav (kanon / návrh / kandidát / zastaralé) · odkazy (karta ↗, zdroj v GitLabu, @acrm/ui <Button> · .btn, viewport). Taby:
- Ukázka — živý render karty (iframe, viewport z
@dsCard), kotvy na varianty. - Použití — Kdy použít · Kdy nepoužít · Anatomie a varianty (tabulka: varianta · třída · kdy · míry) · Doporučení (Ano/Ne páry) · Text · Související.
- Kód — jak použít v každém repu (
<Button variant="primary">/.btn.primary), port CSS, story v Ladle, odkazy do zdrojáků. - Stav v repech — implementace (OK/ČÁST/CHYBÍ), zrcadlo aktuální/zastaralé, kde se používá (soubory) — dnešní
/ds/_cardtabulka.
Vpravo „Na této stránce" + mini souhrn implementace.
Prvky webu, které v kanonu nejsou (ke schválení předem, design gate): dlaždice rozcestníku na Domů, pár Ano/Ne, osnova „Na této stránce", drobečková navigace. Vše ostatní je 1:1 z kanonu (nav-item, .acrm-tab, .acrm-input, pill, .btn, typo tokeny).
2.3 Obsahový model — kde se text bere (bez CMS)
Zdroj pravdy zůstávají karty v kanonu. Přibývají dvě věci, obě v repu vedle karty:
- Rozšířená
@dsCardhlavička (stávající atributy zůstávají):category="Formuláře a vstupy"·summary="Tlačítko spouští akci…"(1 věta) ·status="kanon|návrh|deprecated"·related="inputs.html,popover.html"·react="Button"(volitelně; jinak z ds-index konzumenta). Dnešnísubtitlese dál zobrazuje jako „Poznámky ke kartě", dokud se nepřepíše. <karta>.usage.md— obsah tabu Použití v pevné osnově (Kdy použít / Kdy ne / Doporučení / Text / Související). Markdown, Ano/Ne páry jako dva bloky; ukázky se berou z karty (data-example="primary"kotvy), ne z obrázků.
Generované, ne psané: Základy z colors_and_type.css, Změny z git log, Adopce z ds-index.json konzumentů, hledací index z hlaviček + tříd + tokenů + nadpisů usage.
2.4 Technika
- Stejný server, stejná adresa (
:3777/ds), server-side render vds-catalog.mjs— žádný build, žádný framework, žádný nový port (CLAUDE.md). Šablony a CSS webu žijí v DS repu (site/), takže vzhled webu je verzovaný a jiné týmy do něj můžou MR. - Web používá DS tokeny a prvky 1:1: sidebar = nav-item karta (28px řádky), taby =
.acrm-tab(46px, accent podtržení), vstup =.acrm-input(32px), pill =_ds/pills.css, typografie--h1/--h2/--h3/--label/--hint, Geist zfonts/. - Hledání: JSON index generovaný při requestu s cache per HEAD, klient filtruje (⌘K).
- Picky fungují dál: každá stránka má
<title>s verzí, iframe ukázky = kanonická karta.
2.5 Fáze
| Fáze | Obsah | Práce |
|---|---|---|
| 1 — kostra | layout (sidebar · obsah · toc), IA, kategorie, stránka komponenty s taby (Ukázka/Kód/Stav plné, Použití = zatím subtitle + pravidla z CSS), Základy z CSS, Změny z gitu, ⌘K hledání | 1–2 dny, žádné psaní obsahu |
| 2 — obsah | @dsCard rozšíření + usage.md pro 10 nejpoužívanějších (Buttons, Inputs, Dialog, Popover, Section top bar, Record list, Table, Rail, Avatars, Entity ref); Ano/Ne z RULES a DO/DON'T karty | ~1 den na 3–4 komponenty; AD schvaluje text |
| 3 — systém | Adopce (matice repo × komponenta), Začínáme podle role, deprecated/kandidát lifecycle, přístupnost (klávesnice, kontrast) jako 5. tab | podle potřeby |
3. K rozhodnutí
Jedna otázka: souhlasíš s IA a kategoriemi v 2.1 (7 kategorií komponent, Vzory = Screens + Registrace, Systém = Adopce/Kandidáti/Změny)? Ostatní (tab model, obsahový model, technika) je odvozené a dá se dolaďovat na mocku pickerem.
Source: docs/NAVRH-prezentace-DS.md · GitLab