Symptomy a témata — průřezové zadání

Stav dokumentu: Částečně — veřejné stránky /symptomy a /symptomy/:slug jsou hotové včetně vyhledávání a typů vazeb (link_type); rozšiřování obsahu a jemnější dotazy probíhá průběžně.

Cíl: popsat na jednom místě strukturu symptomů, nemocí, psychických stavů a témat, vazbu bylina ↔ symptom/téma s rozlišením typu použití (tradiční / spirituální / vědecké / kulinář / kosmetika / aromaterapie) a navazující dotazy katalogu.

Vstup: 10-product-spec.md §4 · 23-api-and-routes.md §4 · 22-data-model.md · obsahová pravidla 30-content-guidelines.md. Souvisí s filtrace-a-vyhledavani-katalogu.md (téma jako filtr) a stitky-tvrzeni-a-typy-dukazu.md (badge a typy vazeb).

Tematický (feature-based) dokument popisující celou doménu napříč všemi vývojovými fázemi.


1. Stav v aplikaci (k datu údržby)

  • Tabulka topics (slug, název, krátký popis), seed migrace 0011_herb_topic_links_seed.sql.
  • Vazby v herb_topic_links se sloupcem link_type: traditional, spiritual, scientific, culinary, cosmetic, aromatherapy.
  • Veřejné routy /symptomy (výpis témat) a /symptomy/:slug (detail s navázanými publikovanými bylinami; link_type badge).
  • Vyhledávání ve výpisu témat přes query ?q= (název, slug, část popisu; normalizace diakritiky přes app/lib/fold-for-search.ts — stejný princip jako /byliny?q=).
  • Katalog /byliny používá téma jako filtr přes topic + topicScope (all | tradition | science | lifestyle) — viz filtry-katalogu-bylin.md §1, rozcestník filtrace-a-vyhledavani-katalogu.md a 23-api-and-routes.md §4.
  • Seedované vědecké vazby (migrace 0012_…, 0013_…) a ukázkové lifestyle vazby (0014_herb_topic_lifestyle_links.sql).

2. Datový model (zkráceně)

TabulkaKlíčové sloupce
topicsid, slug, name, short_description, … (viz 22-data-model.md)
herb_topic_linksherb_id, topic_id, link_type (traditional | spiritual | scientific | culinary | cosmetic | aromatherapy), volitelné meta

Důsledek: stejná dvojice (bylina, téma) může mít víc řádků s různým link_type — bylina pak v /symptomy/:slug nese více badge.


3. Kategorie témat (z 10-product-spec.md §7.2)

  • Fyzické symptomy (kašel, bolest hlavy, zažívací potíže, …)
  • Psychické a emoční stavy (úzkost, stres, smutek, …)
  • Spirituální / symbolická témata (ochrana, čištění prostoru, …)
  • Lifestyle — kulinář (culinary), kosmetika (cosmetic), aromaterapie (aromatherapy).

Plné pokrytí kategorií v UI a filtrech je hotové; obsahové naplnění všech vazeb je průběžná editorská práce.


4. Typické dotazy a chování

  • „Byliny na spánek podle tradice" → /byliny?topic=spanek&topicScope=tradition
  • „Byliny na spánek se studiemi" → /byliny?topic=spanek&topicScope=science
  • „Byliny pro kulinář / kosmetiku / aromaterapii k danému tématu" → /byliny?topic=…&topicScope=lifestyle
  • Detail tématu /symptomy/spanek zobrazí všechny publikované byliny s vyznačením typu vazby.

5. Plánovaná vylepšení

  • Plnotextové vyhledávání v tématech (D1 FTS5 nebo podobné) — pokud objem témat / popisů poroste; zatím stačí ?q= přes diakritiku.
  • Hlubší podtypy / aliasy témat (např. „nespavost" → alias „spánek"). Modeluje se přes synonyma v topics.aliases (volitelně).
  • Filtr „téma + typ důkazu" — kombinace topic + science / scienceMin / studyType (z filtrace-a-vyhledavani-katalogu.md) jako uložené pohledy nebo SEO landing pages (/byliny-na/:slug-temata).
  • Strukturované „nemoci" jako specifická podtřída témat s odkazem na /zdravotni-rizika/:slug (volitelně) — záleží na obsahu.
  • Cross-link mezi tématy (např. „úzkost" ↔ „nespavost") s důvodem propojení.

6. Akceptace

  • Z detailu tématu (/symptomy/:slug) dojdu k relevantním bylinám s viditelným typem vazby (link_type badge).
  • Na kartě byliny je přehled vazeb na témata se stejnými štítky.
  • V katalogu /byliny lze téma kombinovat s topicScope a ostatními filtry.

7. Vazby na jiné dokumenty