Přeskočit na obsah

A602 — Lokální vývoj

Od klonu po běžící web: co potřebujete nainstalovat, které příkazy existují a proč první spuštění trvá minuty.

A602Inženýrství 10 minVývojář

Po téhle lekci

  • Rozběhnete web lokálně z čistého klonu.
  • Vyberete správný příkaz podle toho, co potřebujete ověřit.
  • Budete vědět, proč přípravná fáze trvá a co v ní běží.

Co je potřeba

Node (verzi drží .tool-versions) a Zola. Nic dalšího — žádná databáze, žádný běžící backend.

git clone <repozitář>
cd vomaste.cz
npm ci
npm run dev

Web pak běží na http://127.0.0.1:1111.

Proč první spuštění trvá

npm run dev není jen spuštění serveru. Před ním proběhne řada kroků: validace kanonických dat, sestavení pohledových modelů, generování adaptérů, navigace, exporty, projekce grafu, index vyhledávání, CSS a JS. Teprve pak se pouští server.

Je to schválně: data/generated/** není ve verzování, takže po čerstvém klonu neexistuje — a šablony ho potřebují. Bez té přípravy by web spadl nesrozumitelnou chybou.

Které příkazy k čemu

PříkazKdy
npm run devpsaní obsahu, práce se šablonami
npm run data:validaterychlá kontrola kanonických dat
npm run data:validate -- --file <cesta>jeden záznam během psaní
npm run data:buildpřegenerování modelů a adaptérů
npm run checkkontroly bez generování a bez sestavení
npm run buildkanonická brána — musí skončit s kódem 0

Katalog příkazů

Úplný seznam je generovaný z repozitáře a publikovaný na /dokumentace/prikazy/. Nevede se ručně: příkaz bez záznamu shodí build, takže dokumentace nemůže zaostat za kódem.

Ověř si, že to sedí

`zola serve` spustíte přímo, bez npm. Web spadne na chybě o chybějícím souboru. Proč?

Zobrazit odpověď

Protože šablonám chybí data/generated/** — pohledové modely, navigace a metriky, ze kterých se stránky skládají.

Ten adresář je odvozený a záměrně mimo verzování: je to výstup generátorů, ne zdroj. Po čerstvém klonu tedy neexistuje a Zola si ho nevyrobí, protože o něm nic neví.

Řešení je pustit generátory před serverem — přesně to dělá npm run dev.

Repozitář na to má i kontrolu: seznam požadovaných souborů se odvozuje z toho, co si šablony opravdu načítají, ne z ručního výčtu. Nová šablona, která si sáhne po dalším generovaném souboru, se do kontroly zařadí sama.

Kanonické znění pojmů

Lekce pojem vysvětluje. Závazná definice je tady — když se rozejdou, platí tahle stránka.