Modelith: Doménové modely, kterým rozumí každý
Domain modely, které opravdu fungují: Modelith mění pravidla hry
Přiznejme si to — většina projektů začíná skvělými úmysly. Někdo nakreslí domain model na whiteboard, všichni přikývnou, a pak... tiše zemře v Confluence, kde ho nikdo nikdy neaktualizuje.
Problém není v konceptu domain modelingu jako takovém. Problém je, že domain modely typicky:
- Jednou se napíšou a na věky se zapomenou
- Udržují se odděleně od kódu
- Dají se číst jen v konkrétních nástrojích
- Nedají se automaticky validovat
Modelith jde úplně jinou cestou. Ne treats your domain model jako výstup, který vytvoříte a uložíte do šuplíku. Treats ho jako živý artefakt, který žije vedle vašeho kódu, píše se prostřednictvím konverzace a automaticky se validuje v CI.
Co je vlastně domain model?
Než se pustíme dál, trocha terminologie. Domain model je konceptuální mapa vašeho systému — podstatná jména (entity), jejich vzájemné vztahy a pravidla, která je řídí. Není to databázové schéma ani API specifikace. Je to kanonický, plain-language výraz toho, čím váš systém je.
Představte si ho jako slovník, který sdílí celý váš tým. Když všichni čtou ze stejného modelu, konverzace jsou ostřejší, onboarding nových lidí rychlejší a přidávání nových služeb či funkcí není archeologický průzkum legacy kódu.
Modelith workflow: Popiš, Vytvoř, Validuj, Vykresli
Tady to začíná být zajímavé. S Modelith nepíšete YAML přímo. Ani o YAML nepřemýšlíte. Prostě popíšete své domain koncepty v běžné angličtině AI agentovi (konkrétně jako Claude Code skill) a agent za vás vytvoří podkladový YAML.
Flow vypadá nějak takhle:
Popiš — Mluvíte o svém doménu anglicky. "Máme zákazníky, kteří mohou zadávat objednávky, objednávky obsahují více produktů, ale zákazníci můžou mít nanejvýš tři aktivní objednávky současně."
Vytvoř — Claude Code plugin převede váš popis do
modelith.yamlsouboru a rovnou validuje.Validuj — Spusťte
modelith lintpro kontrolu úplnosti a konzistence. Tohle se stane vaší CI bránou.Vykresli — Spusťte
modelith renderpro vygenerování Markdown s Mermaid diagramy. Commitujte to vedle YAML.
Vykreslený Markdown je čitelný pro lidi bez jakéhokoliv nástroje. YAML je strojově čitelný zdroj pravdy. A CI zajišťuje, že se nikdy nerozjedou — představte si to jako kontrolu generovaného kódu, ale pro váš domain model.
Proč to funguje
Plain language snižuje bariéru
Ne každý v týmu je pohodlný s čtením JSON Schema nebo UML diagramů. Ale každý dokáže číst běžnou angličtinu. Tím, že děláme plain language vstupním bodem, Modelith demokratizuje domain modeling. Váš product manager může přispívat. Váš QA inženýr může revidovat. Váš junior vývojář může konečně pochopit ten velký obrázek.
AI se postará o nudné věci
Psaní YAML ručně je náchylné k chybám a upřímně řečeno nudné. Když necháte AI agenta převést váš popis do validního YAML, sundáte kognitivní zátěž z hlavy a přitom udržíte preciznost.
CI validace brání rozchodu
Tohle je killer feature pro týmy. Váš domain model se stává plnohodnotným občanem vašeho vývojového workflow. Každý PR, který mění domain, se automaticky validuje. Pokud někdo aktualizuje YAML, ale zapomene regenerovat dokumentaci, CI to chytí.
Model zůstává blízko kódu
Když váš domain model žije ve stejném repozitáři jako váš kód, zůstává relevantní. Reviewuje se v pull requestech. Aktualizuje se, když se mění features. Nestane se z něj zastaralá dokumentace v nějakém jiném systému, na který nikdo nepamatuje.
Jak začít
Modelith je navržen tak, aby byl přístupný. Nemusíte rozumět celému schématu předem. Začněte malými kroky:
- Nainstalujte Claude Code plugin
- Popište pár základních konceptů vašeho doména
- Nechte AI vytvořit YAML
- Spusťte
modelith linta podívejte se, co chybí - Iterujte
Projekt obsahuje propracované příklady — jejich příklad s parkovacím domem je dobrý start, který vás provede budováním reálného modelu od nuly.
Větší obrázek
Modelith reprezentuje širší trend v AI-assisted vývoji: používání přirozeného jazyka jako vstupní vrstvy, zatímco pod tím běží strojově čitelné artefakty. Píšete, co myslíte; tooling zajišťuje konzistenci a validaci.
Pro týmy budující komplexní systémy — obzvlášť v doménách, kde slovníček záleží (fintech, healthcare, logistika, cokoliv se signifikantními business rules) — by tenhle přístup mohl být transformační. Sdílený, validovaný, živý domain model znamená méně nedorozumění, rychlejší onboarding a lépe navržené systémy.
Nástroj se pořád vyvíjí, ale základní myšlenka je pevná. Váš domain model by neměl být afterthought nebo relikvie z projekt kick-off. Měl by to být živý dokument, který se vyvíjí s vaším kódem, autorovaný konverzací a automaticky validovaný.
Pokud jste se trápili s tím, jak udržet domain modely relevantní ve vašich projektech, Modelith stojí za prozkoumání. Někdy není nejlepší tooling ten nejvýkonnější — je to ten, který dělá správné chování nejjednodušší cestou.
Mrkněte na modelith.sh a začněte.