Files
doxa/doxa-notes/docs/plan.md
T
2026-08-07 09:48:59 +02:00

4.5 KiB

SEO a Playwright Testy - Audit a Plán Zlepšení

Problémy Identifikované

🔴 SEO - Web (doxa-notes.org)

Kritické problémy:

  1. Chybějící Open Graph obrázek v index.html

    • og:image není specifikován, pouze Twitter image
    • Bez OG image se socmédia nezobrazí korektně
  2. Chybějící meta tags pro mobily

    • Chybí viewport meta tag (nemá měřítko a zoomu)
    • Dopad: špatné zobrazení na mobilech, horší SEO ranking
  3. Nejednotný formát title tagů

    • index.html: "DOXA Notes — Local-First poznámky..."
    • about.html: "O projektu — Doxa" (bez "DOXA Notes")
    • privacy.html: "Ochrana soukromí — DOXA Notes"
    • Nejednotnost není ideální, měly by být konsistentní
  4. Chybí meta description na web_app/index.html

    • Web app má robots: noindex, nofollow (správně)
    • Ale chybí base meta description, jen title
  5. Canonical URL - web_app/index.html

    • Chybí canonical tag na app stránce (jen na webu)
  6. Nejednotné sociální meta tags

    • O projektu a privacy nemají OG image, Twitter image
    • Neúplné Twitter card metadata
  7. Missing lang attribute na web_app

    • web_app/index.html má lang="cs", ale chybí OG locale
  8. robots.txt nedostatky

    • Sitemap odkazuje jen na wiki, ne na hlavní web
    • Chybí explicit allow/disallow pro jednotlivé web stránky

🔴 SEO - Web App

  1. robots.txt správně blokuje web_app (noindex)

    • Správně: Disallow: /web_app/
  2. Chybějící Open Graph metadata

    • Není og:* tags vůbec
    • Twitter card není definován
  3. Nedostatečný JSON-LD schema

    • Na web_app není vůbec strukturovaná data
    • Jen na index.html SoftwareApplication schema

🔴 Playwright Testy - Problémy

  1. Chybí test pro Web App SEO

    • noteApp.test.ts nemá žádné SEO testy
    • Měl by testovat noindex/nofollow, title, meta description
  2. Chybí testy pro OG tagy

    • HomePage.ts nemá metodu getOGImage(), getOGTitle()
    • Chybí testy pro Twitter card
  3. Nevyhovující test abecedy menu

    • textHelpers nemá "Návod" v menu (ale existuje na webu)
    • Neúplný seznam očekávaných textů
  4. Chybí accessibility testy (a11y)

    • Žádné testy pro ARIA labels, heading struktura
    • Nejednotné heading struktura (h1, h2, h3)
  5. Chybí performance/lighthouse testy

    • Žádné testy pro load time, Core Web Vitals
    • Žádné testy pro lazy loading obrázků
  6. Playwright config - omezený scope

    • Jen chromium, chybí firefox, webkit
    • Reporter je jen HTML, žádné JSON/JUnit
  7. Chybí testy pro 404/error stránky

    • Žádné testy pro chybové strany
    • Žádné testy pro chybné CSS/JS asety
  8. AppPage POM - nedostatečné selektory

    • Závisí na ID selektorech, měly by být odolnější
    • Chybí error handling v navigate()
  9. Chybí data-testid atributy

    • HTML nemá data-testid pro stabilní test selektory
    • Zranitelné na změny CSS/stylů
  10. Testy neuklízí state

    • Testy nevymazávají localStorage mezi spuštěním
    • Chybí cleanup po testech

Pracovní Plán

Fáze 1: SEO Optimalizace (Primární)

  • Přidat meta viewport tag do všech HTML
  • Přidat Open Graph obrázek do všech stran
  • Unifikovat title tagy podle formátu
  • Doplnit meta descriptions na chybějící stránky
  • Přidat OG locale pro Czech
  • Doplnit Twitter Card tagy na všechny stránky
  • Vytvořit sitemap.xml pro web (ne jen wiki)
  • Zlepšit robots.txt

Fáze 2: Web App Metadata

  • Přidat OG tagy na web_app (s noindex varováním)
  • Přidat JSON-LD schema pro WebApplication
  • Ověřit noindex direktiva na web_app

Fáze 3: Playwright Testy - SEO

  • Přidat testy pro OG metadata
  • Přidat testy pro Twitter Card
  • Přidat testy pro meta descriptions
  • Vytvořit SEO utility metody v HomePage.ts
  • Vytvořit Web App SEO testy

Fáze 4: Playwright Testy - Rozšíření

  • Přidat a11y testy (ARIA, heading struktura)
  • Přidat testy pro mobile viewport
  • Přidat Firefox a WebKit do playwright.config
  • Přidat data-testid atributy do HTML
  • Přidat AppPage testy pro error states
  • Přidat cleanup/setup hooks

Fáze 5: Další Vylepšení

  • Přidat lighthouse integration testy
  • Přidat JSON reporter k playwright
  • Přidat CI/CD integration

Poznámky

  • Zaměření primárně na SEO (dle požadavku)
  • Web vs Web App: Web je SEO friendly, App je noindex (správně)
  • Playwright testy potřebují kompletní refresh