Jak stavíme weby

Rychlé a moderní weby,
které se dají měřit.

Každý web stavíme stejným způsobem, ať je to prezentace firmy na pět stránek nebo katalog s tisíci produkty. Tady je ten způsob napsaný celý, abyste věděli, co dostanete, ještě než se ozvete.

Krátká verze: Next.js a Node.js, stránky předrenderované na serveru, žádné pluginy ani licence, SEO a měření součástí zadání, nasazení z Gitu s automatickým návratem zpět. Dlouhá verze následuje.

  1. 01

    Stack: Next.js, React, Node.js, TypeScript

    Weby stavíme v Next.js nad Reactem, v TypeScriptu, na Node.js 22. Stránky se předrenderují při buildu nebo na serveru, takže prohlížeč dostane hotové HTML a vyhledávač i jazykový model ho přečtou bez JavaScriptu. Styly píšeme v jednom souboru s tokeny, bez frameworku na CSS. Obsah žije v repozitáři nebo ve vlastním lehkém CMS podle toho, kdo ho mění a jak často. Pro menší weby a nástroje stačí Node.js s Expressem bez build kroku. Nepoužíváme WordPress, Webflow ani builder, protože každý z nich je po roce drahý na provoz, pomalý nebo nejde napojit na měření a e-shop. Když takový web máte a funguje, nepřesvědčujeme vás k přepisu. Když ne, umíme ho převést tak, aby vypadal stejně, jako jsme to udělali pro Safe Logic.

    Next.js 15 · React 19 · TypeScriptNode.js 22, Express pro malé webyvlastní CMS nebo obsah v repozitářižádné pluginy, žádné licence
  2. 02

    Rychlost: měříme ji, ne tvrdíme

    Rychlost webu posuzujeme podle Core Web Vitals, tedy podle toho, co měří Google u skutečných návštěvníků: jak rychle se zobrazí hlavní obsah (LCP), jak rychle web reaguje (INP) a jestli při načítání neposkakuje (CLS). Cíl je zelená ve všech třech u mobilu, ne jen skóre v laboratorním testu. Dosahujeme toho stavbou, ne doladěním na konci: předrenderované HTML, písma hostovaná u nás s podmnožinou znaků, obrázky ve formátu WebP nebo AVIF v několika velikostech, JavaScript jen tam, kde něco dělá, žádné knihovny na animace a žádné externí skripty mimo měření. Výsledkem jsou stránky s přibližně 100 kB JavaScriptu, které se rychle načtou i na mobilních datech; náš vlastní web je toho příkladem.

    Core Web Vitals: LCP, INP, CLS u mobilupředrenderované HTML, bez čekání na JSpísma a obrázky optimalizované při buildužádné cizí skripty mimo měření
  3. 03

    SEO: součást stavby, ne služba navíc

    Strukturu webu navrhujeme podle toho, co lidé hledají, takže každá stránka cílí na jeden dotaz a má vlastní titulek a popis v délce, kterou vyhledávač zobrazí. Technickou vrstvu dostává každý web stejnou: kanonické adresy, sitemap, robots.txt, strukturovaná data JSON-LD (organizace, služby, články, FAQ, drobečky), náhledové obrázky pro sdílení generované per stránka a soubor llms.txt pro jazykové modely. U vícejazyčných webů je jazyk v adrese, stránky mají hreflang a slugy se překládají, protože nesou váhu. Přesměrování ze starého webu připravíme před spuštěním, aby se neztratily pozice. Co negarantujeme: pořadí ve výsledcích. To záleží na obsahu a konkurenci, ne na technice. Technika zajistí, že web o pozice nepřijde kvůli něčemu, co šlo udělat správně.

    stránka = jeden dotaz, vlastní titulek a popissitemap, robots, kanonické adresy, hreflangJSON-LD, OG obrázky, llms.txtpřesměrování ze starého webu
  4. 04

    Měření: čísla, která sedí s objednávkami

    Web odevzdáváme s Google Tag Managerem, GA4 a Consent Mode v2 nastaveným dřív, než se spustí jakýkoli tag. Cookie lišta je naše vlastní, bez licence za doménu, s odmítnutím na první vrstvě a doložitelným souhlasem. Konverze (odeslaný formulář, objednávka, telefon) jsou události s jednotnými názvy napříč našimi weby, takže na ně může agentura rovnou navázat kampaně na Googlu, Metě i Skliku. U e-shopů ověřujeme, že objednávky v analytice sedí s objednávkami v administraci, a kde je to potřeba, přidáme serverové měření.

    GTM, GA4, Consent Mode v2 před ostatními tagyvlastní cookie lišta bez licencíkonverze jako události pro Google, Metu a Sklikověření proti skutečným objednávkám
  5. 05

    Bezpečnost a přístupnost

    Formuláře mají ochranu proti robotům bez obtěžování lidí (skryté pole, omezení počtu odeslání, u větších webů reCAPTCHA v3) a ověření na serveru, ne jen v prohlížeči. Poptávka se nejdřív uloží, pak odešle e-mailem, aby ji výpadek pošty neztratil. Tajné údaje jsou v prostředí serveru, nikdy v repozitáři. Hlavičky prohlížeče nastavujeme tak, aby web nešel vložit do cizí stránky a aby neprozrazoval, odkud návštěvník přišel. Přístupnost držíme na úrovni, kterou vyžaduje evropská legislativa pro veřejné weby: ovládání z klávesnice, viditelný fokus, kontrast textu, popisky obrázků a formulářů, respektování nastavení omezených animací.

    ověření formulářů na serveru, ochrana proti robotůmtajné údaje mimo repozitářbezpečnostní hlavičkyovládání z klávesnice, kontrast, popisky
  6. 06

    Nasazení a provoz

    Web žije v Git repozitáři, který je váš. Nasazení probíhá z Gitu přes náš panel Indepanel: nová verze se sestaví do samostatné složky, projde kontrolou zdraví a teprve pak se přepne provoz. Když kontrola neprojde, běží dál předchozí verze. Testovací prostředí je oddělené od produkce, takže změny vidíte dřív, než je vidí zákazníci. Součástí provozu jsou aktualizace závislostí, zálohy a dohled s upozorněním při výpadku. Pokud chcete hostovat u sebe, nasadíme totéž na váš server nebo do Dockeru a předáme dokumentaci.

    nasazení z Gitu, kontrola zdraví, rollbacktestovací prostředí oddělené od produkceaktualizace, zálohy, dohledhosting u nás nebo u vás

Co dostanete

Co dostanete při předání

  • Repozitář s kódem a dokumentací na vašem účtu
  • Přístupy k doméně, hostingu a službám vedené na vás
  • Zelené Core Web Vitals u mobilu a výpis z PageSpeed Insights
  • Sitemap, robots, JSON-LD, OG obrázky a hreflang ověřené v Search Console
  • GTM s GA4, Consent Mode v2 a konverzními událostmi, ověřené testovací poptávkou
  • Zaškolení v administraci a návod na běžné úpravy

Co neděláme

Co neděláme

  • Nestavíme na WordPressu, Webflow ani builderech; umíme z nich převést web, který na nich běží.
  • Negarantujeme pozice ve vyhledávání; garantujeme, že web o ně nepřijde kvůli technice.
  • Neinstalujeme cizí skripty, chaty a widgety, které zpomalují web a sbírají data bez souhlasu, pokud je výslovně nechcete.
  • Nepřidáváme animace a efekty, které nemají jiný účel než vypadat.

Kontakt

Máte projekt? Napište nám.

Pár vět o tom, co řešíte, stačí. Ozveme se do jednoho pracovního dne s otázkami a návrhem postupu.

Co potřebujete? (vyberte libovolně)

Odpovídáme do jednoho pracovního dne. Žádný automatický prodejní cyklus.