Ze zákulisí

Co se skrývá za tlačítkem Uložit?

7. září 2026 · Jitka Klingenbergová

Otevřít stránku, změnit text a kliknout na Uložit. Jednoduchý výsledek stojí na stovkách rozhodnutí, kontrol a situací, které uživatel ideálně nikdy neuvidí.

Direct Edit vzniká proto, aby majitel hotového webu nemusel kvůli změně telefonu, ceny nebo fotografie otevírat zdrojový kód. Práce na takovém nástroji ale není jen přidávání nových tlačítek. Každá změna musí správně fungovat na různých stránkách, zachovat jejich HTML, chránit přihlášení a nepoškodit to, co už fungovalo včera.

Jak takový vývoj vypadá v praxi a v číslech? Tady je momentka Direct Editu k 7. září 2026.

Co Direct Edit vlastně umí?

Direct Edit upravuje hotový statický web přímo v jeho stránkách. Za jednoduchým rozhraním už dnes stojí poměrně široká sada funkcí:

  • úpravy a formátování textů, odkazů, tlačítek, ikon a podle potřeby i HTML,
  • nahrávání a nahrazování obrázků a videí včetně popisků a alternativních textů,
  • knihovna médií se složkami a automatickou optimalizací obrázků,
  • kopírování, přesouvání a odstraňování připravených bloků stránky,
  • SEO údaje, canonical URL, robots a informace pro sociální sítě,
  • správa souborů sitemap.xml a llms.txt a kontrola stránky před zveřejněním,
  • automatické zálohy, obnova starších verzí a ochrana před přepsáním souběžných úprav,
  • uživatelé, role, české a anglické rozhraní, přihlašovací odkazy a dvoufázové ověření,
  • kontrola a instalace aktualizací.

Samotný editor přitom funguje na běžném hostingu bez databáze a změny zapisuje přímo do souborů webu.

211 malých kroků místo jednoho velkého

Od prvního commitu 14. února do 7. září 2026 vzniklo 211 samostatných zápisů změn v kódu. Commit je uložený krok ve vývoji: může přidat funkci, opravit chybu, zpřesnit text nebo doplnit test.

Menší kroky se lépe kontrolují. Když se objeví problém, dá se dohledat, která změna ho způsobila a proč vznikla. Vývoj tak není jeden dlouhý soubor přepisovaný stále dokola, ale dohledatelná historie rozhodnutí.

31 vydání a čtyři části jednoho nasazení

Za stejné období vzniklo 31 označených vydání: 5 hlavních, 18 menších a 8 opravných. Číslo verze neznamená jen nový ZIP ke stažení. Označuje konkrétní stav editoru, ke kterému se vážou změny, testy i možnost návratu.

Vydání nové verze navíc znamená připravit a nasadit několik propojených částí:

  • produktový web directedit.dev,
  • licenční a aktualizační službu, která ověřuje licence a zpřístupňuje nové verze,
  • instalační balíček samotného editoru,
  • playground, ve kterém si lze novinky bezpečně vyzkoušet.

Všechny části musí ukazovat správnou verzi a domluvit se mezi sebou. Teprve potom může aktualizace ven.

279 testů před obyčejným „funguje“

Direct Edit má aktuálně 221 scénářů, které se spouštějí ve skutečném prohlížeči, a dalších 58 integračních testů. Dohromady je to 279 automatických testů.

Patří mezi ně uživatelské a funkční scénáře, integrační kontroly jednotlivých částí, bezpečnostní testy přihlášení a vstupních dat, regresní testy dříve nalezených chyb i kontroly mobilního zobrazení, překladů a fungování bez připojení k internetu.

Browserový test se chová podobně jako člověk. Otevře editor, přihlásí se, klikne na konkrétní prvek, změní jeho obsah a uloží stránku. Potom zkontroluje nejen to, co se zobrazilo, ale také výsledný HTML soubor.

Testy například ověřují, že Direct Edit:

  • upraví text a nesáhne přitom na sousední prvky,
  • zachová odkazy, CSS třídy, identifikátory a atributy přístupnosti,
  • nahraje obrázek nebo video do vybrané složky,
  • vytvoří zálohu a dokáže ji obnovit,
  • upozorní na souběžnou změnu stejného souboru,
  • funguje na desktopu i úzkém mobilním displeji,
  • odmítne nebezpečný odkaz, cestu mimo web nebo nepovolený soubor.

Integrační testy míří blíž k jednotlivým stavebním částem. Kontrolují přihlašovací kódy, časové limity, práci s cestami, uživatelská data, aktualizace nebo komunikaci s licenční službou.

Automatické testy před vydáním doplňuje také ruční funkční a vizuální kontrola. Ta zachytí věci, které se dají správně posoudit až při skutečném používání editoru.

Přihlášení má víc stavů, než je vidět

Přihlašovací obrazovka obsahuje několik polí a tlačítko. Pod ní ale běží hesla, jednorázové kódy z e-mailu, dvoufázové ověření, záložní kódy, zapamatovaná zařízení, expirace a ochrana proti opakovaným pokusům.

Testy proto kombinují různé cesty. Přihlášení heslem i e-mailovým kódem se zkouší s TOTP i recovery kódem. Samostatně se ověřuje, že zapamatované přihlášení vznikne až po dokončení druhého faktoru a že prošlý nebo starý token přístup nezíská.

Uživatel z toho vidí hlavně klidné přihlášení. Právě neviditelné větve ale rozhodují o tom, zda je účet chráněný i ve chvíli, kdy někdo postupuje jinak, než jsme čekali.

Jeden řádek testů na čtyři řádky produktu

Počet řádků sám o sobě není známkou kvality. Zajímavější je jejich poměr: vedle přibližně 37 000 řádků vlastního produktového kódu má projekt téměř 9 700 řádků testovacího kódu. Testy tak odpovídají zhruba 26 % objemu produktu — přibližně jeden řádek, který ověřuje chování, na každé čtyři řádky produktu.

Test uživateli nepřidá nové tlačítko. Jeho hodnota se ukáže později: při úpravě obrázků zachytí problém ve videích, při změně přihlášení ochrání zapamatovaná zařízení a při úpravě vzhledu upozorní na tlačítko oříznuté na mobilu.

Testy nejsou důkazem, že software nikdy nebude mít chybu. Dávají ale každé další změně síť konkrétních očekávání. Čím déle projekt roste, tím důležitější tato síť je.

Dva jazyky, každý se 719 texty

Editor dnes používá 719 textových položek v češtině a stejných 719 v angličtině. Patří sem názvy tlačítek, vysvětlení, chyby, potvrzení i bezpečnostní upozornění.

Také překlady mají automatickou kontrolu. Pokud v jednom jazyce text chybí nebo kód požádá o neexistující překlad, test na to upozorní. Překlad tedy není samostatná tabulka, na kterou se vzpomene před vydáním, ale součást funkce.

Co se tedy stane po kliknutí na Uložit?

Editor ověří oprávnění, zkontroluje, zda se soubor mezitím nezměnil, prověří posílaná data, vytvoří zálohu, najde správný prvek, zapíše změnu a zkontroluje výsledné HTML. Automatické testy pak hlídají, že se tento postup nerozbije při další úpravě programu.

Cílem celé té práce je, aby uživatel nic z toho řešit nemusel. Má vidět stránku, kterou zná, upravit správné místo a spolehnout se, že tlačítko Uložit udělá přesně to, co slibuje.

Uvedená čísla jsou momentkou repozitáře k 7. září 2026. S každou další verzí se budou měnit.

← Zpět na blog