Changelog
Historie úprav webu (kromě přidávání nových článků).Changelog
Tento soubor sleduje změny webu Vibecoding. Zapisujeme sem všechny úpravy kromě přidávání nových článků.
[2.0.1] — 2026-03-25
Opraveno
- Videa se neaktualizovala — stránka
/videabyla staticky prerenderovaná při buildu, kdy YouTube API klíč není dostupný. Přepnuto na SSR s CDN cache (1 h) — videa jsou vždy aktuální, API se volá max 1× za hodinu.
[2.0.0] — 2026-03-21
Přidáno
- Admin objednávek (
/admin/objednavky/) — kompletní modul pro správu objednávek placených workshopů. KPI karty (celkem, čekající, zaplacené, zrušené, příjem), tabulka se zebra stripingem, vyhledávání podle jména/emailu/VS/firmy, filtry podle stavu a akce. Detail objednávky s informacemi o zákazníkovi, platbě, workshopu a časovou osou. - FIO synchronizace z admin UI — tlačítko „Sync FIO" v objednávkách volá
/api/admin/sync-payments(chráněno Cloudflare Access místo CRON_SECRET). Zobrazí panel nespárovaných transakcí. - FIO reconciliace (
/api/admin/fio-reconcile) — diagnostický endpoint porovnávající všechny FIO transakce se všemi registracemi. Kategorizuje: already_matched, unmatched, cancelled_match, pending_match. - Email notifikace o nespárovaných platbách — cron
check-paymentspo každém běhu zkontroluje nespárované příchozí platby a pošle admin email s tabulkou k manuálnímu řešení. - Akce v detailu objednávky — ruční potvrzení platby, kontrola FIO podle VS, odeslání upomínky, zrušení/obnovení registrace, změna termínu (date variant).
Změněno
- Platební lhůty — prodlouženy z 1/2 dny na rozlišení osobní/firemní: osobní registrace (bez IČO) — upomínka po 3 dnech, zrušení po 7 dnech; firemní registrace (s IČO) — upomínka po 7 dnech, zrušení po 14 dnech.
- Newsletter odesílatel — přepnuto na
Patrick Zandl <patrick@vibecoding.cz>přes env proměnnouRESEND_NEWSLETTER_FROM.
Opraveno
- 10 chybně zrušených registrací — starý systém (1 den upomínka, 2 dny zrušení) automaticky zrušil registrace dříve, než platby dorazily. Všech 10 + 1 (DEVELMAGIC s VS ve zprávě místo v poli VS) obnoveno, zaplaceno, faktury vystaveny.
- Admin témata — parsování obsahu témat z Telegram bota (extrakce titulku z „Titulek:" řádku, čistý excerpt bez GitHub navigace, lehký markdown renderer pro rozbalený obsah, oprava slepení data).
[1.9.0] — 2026-03-17
Přidáno
- Čekací listina na workshopy — když jsou všechny termíny vyprodané, formulář se změní na waitlist signup (jméno + email). Když jsou volné termíny, přibyla volba „Žádný termín mi nevyhovuje" která skryje cenu a fakturaci a umožní registraci k odběru avíz.
- Notifikace čekajících — admin endpoint pro hromadné odeslání emailu „Nový termín" všem na čekací listině s CTA na registraci.
- Témata z Telegram bota — nové tlačítko 📌 Téma v botu uloží raw obsah URL pro pozdější zpracování do článku. Admin stránka
/admin/temata/se vyhledáváním, rozbalitelným textem a kopírováním do schránky. - Partnerské kódy (přejmenováno ze „Slevové/Promo kódy") — editační modal, strukturované karty s metrikami a progress barem.
- Redesign admin dashboardu — business-first layout s KPI kartami (revenue, pipeline, workshop, poptávky), spojeným kalendářem z obou DB, akčním panelem (poptávky, čekající platby, partnerské kódy) a collapsed zprávičkami.
- FIO kontrola z dashboardu — tlačítko „Spustit kontrolu FIO" volá server-side proxy bez expozice CRON_SECRET na frontend.
Opraveno
- Digest filtrování článků — články publikované na hraničním dni (now - N dní) se nezobrazovaly kvůli porovnání s časovou složkou. Opraveno oříznutím na začátek dne.
- Oddělení featured a regular článků v digestu — nadpis „Další články" mezi sekcemi, regular články se vizuálně neztrácí pod featured kartami.
Změněno
- Cron jobs — přesun na cron-job.org (check-payments každých 30 min, send-reminders denně, weekly-digest úterý, promo-summary denně).
- Navigace — Zprávičky přidány do hlavního menu, „Firemní AI vývoj" nahrazeno interním „Workshopy".
[1.8.0] — 2026-03-16
Přidáno
- Slevové promo kódy — systém slevových kupónů pro workshopy. Kód nastaví novou cenu, lze omezit na konkrétní akci, počet použití a platnost. Podpora provizí pro partnery.
- Promo kód v objednávkovém formuláři — pole „Slevový kód" s živou validací. Po ověření se zobrazí nová cena a přeškrtne původní.
- Admin promo kódů (
/admin/promo-kody/) — vytváření, přehled, aktivace/deaktivace, mazání. Zobrazuje statistiky využití a provizí. - Automatické shrnutí promo kódů — cron endpoint
/api/cron/promo-summarypo vypršení kódu nebo den po workshopu pošle kontaktní osobě email se shrnutím využití a výpočtem provize.
[1.7.0] — 2026-03-16
Přidáno
- Sekce Workshopy (
/workshopy/) — nová landing page s nabídkou workshopů pro vývojáře (Claude Code) a firemních workshopů (Startup/Firma/Enterprise). Dynamické termíny z DB, social proof strip, profil lektora, FAQ accordion a poptávkový formulář. - Poptávkový formulář firemních workshopů — formulář na
/workshopy/#poptavkaodesílá notifikační email a ukládá poptávku do DB (workshop_inquiries). - Admin poptávek (
/admin/poptavky/) — přehled poptávek s barevným rozlišením statusů (nová/kontaktováno/vyhrána/ztracená), inline změna stavu a poznámky. - Zprávičky v hlavní navigaci — přidán odkaz na
/zpravicky/do desktop i mobile menu.
Změněno
- Navigace — položka „Firemní AI vývoj" (externí link na aivefirmach.cz) nahrazena interním tlačítkem „Workshopy" (
/workshopy/). Barva highlight tlačítka změněna z oranžové na zelenou. - Footer — odkaz na aivefirmach.cz nahrazen interním odkazem na
/workshopy/. - Cron jobs — přesun z wrangler.toml cron triggers (nefunkční bez scheduled handleru) na externí cron-job.org. Tři joby: check-payments (30 min), send-reminders (denně), weekly-digest (úterý).
[1.6.0] — 2026-03-14
Přidáno
- Automatické párování plateb — cron endpoint
/api/cron/check-paymentskaždou hodinu kontroluje FIO API a páruje příchozí platby s objednávkami workshopů podle variabilního symbolu. Po spárování se automaticky vytvoří zaplacená faktura ve Fakturoidu a odešle zákazníkovi emailem. - Fakturoid export při ověření platby —
verify-payment.tsnyní při úspěšném ověření platby automaticky exportuje fakturu do Fakturoidu (dříve jen při manuálním potvrzení adminem). - Per-token FIO rate limiting — workshop (FIO_WORKSHOP_TOKEN) a donation (FIO_API_TOKEN) tokeny mají nezávislé rate limity, neblokují se navzájem.
Změněno
- Platební účet workshopů — přesun z Air Bank (1925326058/3030, bez API) na FIO podnikatelský účet (2403461724/2010, s API). Aktualizovány QR kódy, platební stránka, reminder emaily a registrační emaily.
- Generování variabilních symbolů —
crypto.getRandomValues()místoDate.now() % 1000 + Math.random(). Workshop VS ověřuje uniqueness v DB s retry mechanismem (až 5 pokusů). - Cron schedule — přidán hodinový trigger
11 * * * *pro kontrolu plateb.
[1.5.0] — 2026-03-12
Přidáno
- Newsletter s Resend Topics — dvě odběrové skupiny (Vibecoding Akce + Vibecoding Články) v jedné audience. Odhlášení přes brandovanou Resend preferences stránku.
- Formuláře pro odběr newsletteru — v patičce článků (source: clanky) a na homepage (source: both). Double opt-in s topic přiřazením podle zdroje.
- Týdenní přehled článků (weekly digest) — automatický broadcast nových článků každé úterý 8:00 UTC. Formát: logo + „Vibecoding.cz weekly" hlavička, featured články jako „Téma týdne", vlastní akce nahoře, externí akce dole pod „Kde mě potkáte".
- Úvodník v digestu — markdown textarea v admin UI pro osobní komentář. Uloží se do DB, pošle se jednou a automaticky se označí jako odeslaný.
- Admin UI pro digest — náhled, ruční odeslání, nastavení období/předmětu/úvodního textu v /admin/newsletter.
- Cron weekly-digest — endpoint /api/cron/weekly-digest s autentizací přes CRON_SECRET.
- Parallel.ai Extract API — integrace pro extrakci obsahu z URL v Telegram botu. Parallel jako primární zdroj (3–6x více obsahu než Cheerio), Cheerio jako fallback. X/Twitter extrakce nezměněna.
- Promo banner workshopů v článcích — dynamický banner pro placené workshopy v každém článku, kompaktní promo pro ostatní akce.
Změněno
- Předmět digestu — „Vibecoding.cz weekly: [název prvního featured/prvního článku]" místo generického.
- Sync kontaktů — sjednocení registrací a newsletter subscribers přes SQL UNION ALL, oba Resend Topics se nastaví na opt_in.
- Broadcast name limit — oříznutí na 70 znaků (Resend limit).
[1.4.0] — 2026-03-12
Přidáno
- Prémiový workshop landing page — placené workshopy mají nový design: hero sekce s fotkou lektora a tmavým gradientem, detail strip (datum, čas, místo, kapacita), blokové formátování programu (h2/h3 jako karty), instructor karta a sticky objednávkový formulář.
- SEO optimalizace hub stránek — optimalizované title a meta description pro všechny nástroje (Claude Code, Cursor, Windsurf, Lovable.dev, Replit, Gemini CLI, Databutton, Tempo Labs). Úvodní texty 150–200 slov s interním prolinkováním. FAQ sekce s FAQPage JSON-LD schema pro Google featured snippety.
- Navigace AI nástrojů na /vibecoding/ — chip/pill odkazy na všechny sekce AI nástrojů nad seznamem článků.
- Security hardening — centrální CF Access JWT verifikace v middleware pro /api/admin/*, CSRF origin validace na registraci a dotazníky, internal secret pro server-to-server volání, cron secret autentizace, rate limiting na proformu.
- Obchodní podmínky — stránka /obchodni-podminky/ se storno podmínkami, odkazy z objednávky, platební stránky a proformy.
- BCC objednávek — email s platebními údaji se posílá v BCC na patrick@zandl.cz.
Změněno
- Platební účet — workshopy přesunuty na Air Bank (1925326058/3030), FIO zůstává jen pro dary.
- Volitelné firemní údaje — objednávku workshopu lze učinit i bez IČO a názvu firmy.
- Dodavatel na proformě — aktualizovány údaje (IČO 43943420, email patrick@zandl.cz), přidán QR kód pro platbu.
[1.3.1] — 2026-03-10
Přidáno
- Tlačítko pro kopírování code bloků — malá ikonka clipboardu v pravém horním rohu každého
<pre>bloku v článcích. Po kliknutí se obsah zkopíruje do schránky a ikonka se na 1,5 s změní na fajfku. - Responzivní hamburger menu — na mobilech (pod 760px) se navigace schovává do hamburger menu s animovanou ikonkou. „Firemní AI vývoj" zůstává viditelný na tabletech, na malých telefonech (pod 640px) se přesune také do menu. Desktop zůstává beze změn.
[1.3.0] — 2026-02-26
Přidáno
- Strukturovaný logovací systém — nový
src/lib/logger.tss korelačními ID, hierarchickými kroky a měřením doby trvání. Všechny klíčové funkce vtelegram-bot.tsawebhook.tsinstrumentovány pro diagnostiku zpracování URL přeswrangler tail. - SPA detekce — rozpoznání Lark Suite, Notion, Confluence a Google Docs s varováním o JS-renderovaném obsahu.
- Healthcheck panel v admin/zpravicky — nový endpoint
/api/admin/bot-healtha přehledový panel s konfigurací, statistikami zpráv, digestu a poslední aktivitou. - Dynamický event banner v článcích — banner se náhodně střídá mezi vlastními a externími akcemi. Cachovaný API endpoint
/api/upcoming-events(1h na edge) minimalizuje zátěž D1/Workers. Bez nadcházejících akcí se banner skryje. - Pole is_own_event v admin formuláři — checkbox "Vlastní akce" s poli pro název přednášky a URL externí akce.
Změněno
- Redesign admin/zpravicky — nová tabulka s barevnými type badges, entity tagy, relativními daty a indikátorem odeslání do Telegramu.
- Admin/akce filtr — zobrazuje jen vlastní akce (is_own_event = 1), externí akce skryty.
- Odstraněna sekce admin/digest z navigace (digest mód zrušen upstream).
- Karta akce na /akce/ — odstraněno zobrazení URL externí akce v rámečku.
[1.2.0] — 2026-02-23
Přidáno
- X API v2 pro news mode — tweety se nyní zpracovávají výhradně přes X API v2 (
fetchTweetViaApi), včetně plného textu Twitter Articles (note_tweet,article.plain_text). Externí články odkazované z tweetů se automaticky stahují. Bez fallbacku na fxtwitter. - Gemini pro YouTube — YouTube videa se zpracovávají modelem
google/gemini-2.5-flash(konfigurovatelné přesllm_model_youtube), který umí nativně analyzovat obsah videa. - Automatické JSON instrukce —
NEWS_JSON_FORMATblok se vždy přidá ke každému promptu (i ke custom promptům z DB), takže LLM vždy vrátí validní JSON.
Opraveno
- Prázdné zprávičky — příčina: model
google/gemini-3.1-pro-previewnerespektovalresponse_format: json_objecta custom prompty v DB neměly JSON instrukce. Změněn výchozí model nagoogle/gemini-2.5-pro. - OpenRouter + Claude
response_formatnekompatibilita — Anthropic Claude přes OpenRouter nepodporujeresponse_format: json_object(konvertuje na tool_use). Parametr se nyní přeskočí proanthropic/modely; spolehlivé JSON instrukce v promptu stačí. - Markdown místo HTML v zprávičkách — 64 % článků mělo
**tučné**místo<b>tučné</b>. Opraveno robustnějším parsingem s text fallbackem.
[1.1.0] — 2026-02-21
Přidáno
- Training Management System — Frontend SPA — responzivní React SPA na
/training/pro správu zákazníků, zakázek, typů akcí, kalendáře a uživatelů. Hash router, JWT auth, SCSS modules s light/dark mode, cs/en lokalizace. Role-based navigace (admin/editor/external). Desktop sidebar, tablet collapsed, mobile bottom tab bar. CRUD na všech entitách, pipeline dashboard, měsíční kalendář s barevnými bloky dle statusu.
[1.0.0] — 2026-02-21
Přidáno
- Evidenční a objednávkový systém (Training API) — kompletní backend REST API
/api/v1/*pro evidenci zákazníků, zakázek, typů akcí, kalendář obsazenosti a dashboard. RBAC s rolemi admin/editor/external. Separátní D1 databázetraining-db. - D1-based rate limiting — persistentní rate limiting login pokusů v D1 databázi místo in-memory Map, funkční napříč Cloudflare Workers instancemi.
- Bookmark Digest — osobní analytický digest z odkazů přes Telegram bota s LLM zpracováním a streaming voláním.
Změněno
- Streaming LLM volání pro digest — prevence Cloudflare Worker timeoutu.
- Redesign digest emailu — lepší UX, formátování odstavců a podnadpisů.
Opraveno
- HTML sanitizace v Telegram zprávách — konverze
<br>na newlines, korektní odstranění nepodporovaných tagů. - Tiché selhání Telegram API — přidáno logování chyb a sanitizace HTML.
2026-02-17
- Hodnocení článků — přidán widget
mg-feedback.jsz top.marigold.cz do šablony každého článku ([...slug].astro). Widget se zobrazuje pod podpisem autora a umožňuje čtenářům ohodnotit článek (sad/neutral/happy). Hlasy se sbírají centrálně v systému article-engagement-tracker a jsou dostupné v admin dashboardu natop.marigold.cz. Slug článku odpovídá poslednímu segmentu Astro slug (bez data prefixu).
2026-02-16
- Newsletter subscription s double opt-in — formulář na
/akce/pro přihlášení k odběru upozornění na nové akce s potvrzením emailem (GDPR compliant). - Nová databázová tabulka
newsletter_subscriberss verification tokens a cancellation tokens. - Verification flow — uživatel zadá email → obdrží verification email → klikne na odkaz → přidání do Resend segmentu.
- Nové endpointy:
/api/verify-newsletter(potvrzení),/api/cancel-newsletter(odhlášení). - Potvrzovací stránky:
/akce/newsletter-confirmed,/akce/newsletter-cancelled,/akce/newsletter-error. - Oprava dynamického načítání data akce — stránka
/akce/registrace-uspesnanyní zobrazuje správné datum a čas akce místo hardcoded 9. února 2026.
2026-02-15
- Zobrazení náhledového obrázku v článcích — thumbnail z frontmatter (pole
thumbnail) se zobrazuje mezi nadpisem a sekcí "Rychlé body". Obrázek je plně responzivní s jemným borderem a border-radius. - Vylepšení adminu /akce/ — když je vybraná konkrétní akce z rolety, statistiky (aktivní/čekající/zrušení) se počítají pouze pro vybranou akci. Sloupec "Akce" v tabulce registrací se skryje, aby nebyl redundantní.
2026-02-15
- Vylepšení typografie článků — výraznější nadpis (2-2.6rem responsive), zprovoznění italiky (
emtag) a explicitní zobrazení odrážek u seznamů. - Podpis autora na konci každého článku — italika, větší písmo (1.1rem), zarovnání vpravo, oddělený horním okrajem. Pokud autor není uveden, zobrazí se Patrick Zandl.
- Vkusné odrážky v sekci "Rychlé body" — zelené accent barvy (1.1em), větší spacing, konzistentní s designem webu.
- Telegram promo box přesunut na konec článků — zobrazuje se za podpisem autora, před patičkou, jako call-to-action po přečtení.
2026-02-13
- Nová administrace newsletteru na
/admin/newsletter/s markdown editorem, náhledem a rozesláním přes Resend Broadcast. - Newsletter flow převeden na nový Resend segments model (
segmentId), bez závislosti na audience ID. - Přidána synchronizace kontaktů z registrací do Resend segmentu včetně respektování
marketing_optout. - Doplněn One-Click unsubscribe endpoint (
POST /api/unsubscribe) proList-Unsubscribe-Post. - Oprava deploye: doplněny chybějící knihovny
src/lib/newsletter.tsasrc/lib/newsletter-sync.ts. - Vylepšen výstup syncu v adminu: detailnější souhrn výsledků (počty, cílový stav segmentu, doba běhu).
- Odkaz v hlavní navigaci změněn z "Školení" na "Firemní AI vývoj" s novým URL na firemní workshop Claude Code (https://www.aivefirmach.cz/claude-code-workshop/). Odkaz je vizuálně zvýrazněn oranžovým gradientem pro lepší viditelnost.
2026-02-08
- Nová stránka /podpora/ — darovací stránka s QR kódem (SPAYD), volitelnou částkou, ověřením platby přes FIO API a seznamem podporovatelů.
- React komponenta DonationForm s přednastaveními částek (50/100/200/500 Kč), QR kódem generovaným na klientu (qrcode.react) a persistencí VS v localStorage.
- API endpointy /api/fio/verify-donation (ověření platby podle VS) a /api/fio/donors (seznam aktivních dárců).
- Odkaz "Podpor provoz" v patičce webu na všech stránkách.
2026-02-05
- Přechod z Telegram skupiny na kanál @vibecoding_patrick — jednosměrná distribuce zpráviček a článků.
- Bot automaticky maže servisní zprávy (připojení/odchod členů) ve skupině.
- Bot ignoruje servisní zprávy a neodpovídá "nemáš oprávnění" novým členům.
- Aktualizace všech Telegram odkazů na webu (patička, homepage, zprávičky, články).
- Telegram notifikace pro zprávičky — automatické odesílání nových zpráviček do kanálu při publikaci z admin UI (řízeno nastavením
telegram_auto_notify). - Nový endpoint
/api/telegram/notify-articlespro automatické odesílání nových článků na Telegram kanál. - GitHub Actions workflow — denní cron (8:00 UTC) + trigger při push na main pro automatické notifikace článků.
- Propagace Telegram kanálu na webu — odkaz v patičce (vedle LinkedIn), banner na stránce Zprávičky, sidebar box na homepage, promo karta v článcích.
2026-02-03
- Nový Split Hero na titulní stránce — téma týdne vlevo, karusel zpráv vpravo s dynamickým seskupováním podle délky textu.
- Karusel zpráv automaticky zobrazuje více krátkých zpráv nebo méně dlouhých na jedné stránce (limit 350 znaků).
- Auto-rotace karuselu každých 5.5s, pauza při hoveru, swipe gesta na mobilu, klávesnicová navigace.
- Nová sekce Zprávičky (/zpravicky) — krátké zprávy ze světa AI generované z odkazů pomocí Telegram bota.
- Telegram bot @vibecoding_patrick — zpracování odkazů pomocí LLM (OpenRouter), tlačítka pro publikaci/zahození, podpora Twitter/X, článků, GitHub.
- Nové stylování tabulek v článcích — zaoblené rohy, zelený gradient v hlavičce, zebra striping, hover efekty, zvýrazněný první sloupec pro kategorie.
- Responzivní tabulky na mobilu — horizontální scroll se sticky prvním sloupcem pro lepší orientaci.
2026-02-02
- Přidán nový sloupec "Vydáno" v přehledu LLM modelů s možností řazení podle data publikace.
- Pole
release_datevyužívácreatedtimestamp z OpenRouter API (datum přidání modelu na platformu). - Doplněno
release_datedo všech 125 existujících LLM modelů. - Tracker skript automaticky nastavuje
release_datepro nové modely.
2026-02-01
- Přidáno pole
program(markdown) do editačního formuláře akcí v administraci — umožňuje editovat detailní program akce přímo z admin panelu. - Místo konání akce je nyní prolinkované na URL mapy s ikonkou 📍 — kliknutím se otevře mapa v novém okně.
- Redesign changelog stránky — vizuální kategorizace změn (✨ nové funkce, 🔧 opravy, 📝 drobnosti), lepší stylování inline kódu s pozadím, karty pro jednotlivé záznamy.
2026-01-30
- Opraveny Open Graph meta tagy pro články —
og:typezměněn zwebsitenaarticle, přidányarticle:published_timeaarticle:authorpro lepší náhledy při sdílení na sociálních sítích.
2026-01-28
- Plně responzivní design pro mobilní telefony — kompaktní hlavička (menší avatar, skrytý subtitle, inline navigace + hledání), přizpůsobení všech typů stránek (homepage, LLM přehled, LLM detail, články, akce), stacked footer, bottom-sheet vyhledávání, edge-to-edge code bloky.
- Re-analýza 76 LLM modelů s rozšířeným schématem — benchmarky, expert verdikty (killer feature, skryté riziko), celkové skóre a tier hodnocení pro modely od OpenAI, DeepSeek, Google, Anthropic, xAI, Mistral a Z.AI.
- Redesign LLM detailu — hero sekce s provider badge a skóre, vizuální benchmark progress bary, insight karty (killer feature / skryté riziko), porovnávací tabulka s konkurencí, rozhodovací pomocník (použij/nepoužívej).
- Rozšíření LLM analyzátoru o generování nových polí (expert_verdict, benchmark_categories, overall_score) a re-analýzu existujících modelů.
- Přidáno vyhledávání v hlavičce s našeptávačem a server‑side indexem (články, LLM, akce).
- Nová stránka /search pro kompletní výsledky vyhledávání.
- Zkratky pro vyhrazená slova (Codex, Claude Code, Cursor, Lovable, Replit, Gemini, Windsurf, Tempo Labs).
- Přidán veřejný changelog a odkaz v patičce.
- Styling pro vyhledávání v hlavičce i na stránce výsledků.
- Opraven build changelogu (import přes
?rawbez Nodefs). - Nastaveno passthrough pro Astro image service kvůli Cloudflare adapteru.
- Přesun Sass
@importna@usekvůli deprecacím. - Opraven frontmatter u článku o indexování velkých codebase (odstraněn
layout: post). - Přidán odkaz na LinkedIn do patičky včetně ikonky.
- Opraveno vyhledávání (API není prerenderované, vrací živé výsledky).
- Vyhledávání v hlavičce drží jednu řádku s menu; RSS odebráno z hlavičky.
- U registrace akce přidány informace k emailu pod polem.
- Přidán dynamický sitemap.xml (články, LLM, nástroje, akce).
- Přidány 301 přesměrování starých článkových URL bez kategorie/data.
- Redesign stránky /llm s vyhledáváním jen mezi modely, filtry a porovnáním.