214 lines
4.7 KiB
Markdown
214 lines
4.7 KiB
Markdown
# WebWizard - Produktova specifikacia MVP
|
|
|
|
WebWizard je **AI website concierge**: pouzivatel odpovie na kratky wizard a system z tychto odpovedi pripravi exportovatelny staticky web.
|
|
|
|
Cielom MVP nie je vytvorit plnohodnotny website builder. Pouzivatel nema rucne presuvat bloky ani ladit pixely. MVP zbiera kvalitne vstupy, vygeneruje obsah, vyrenderuje web a umozni export.
|
|
|
|
---
|
|
|
|
## 1. Produktovy ciel
|
|
|
|
Pouzivatel bez technickych znalosti ma ziskat prvy pouzitelny web pre firmu alebo projekt.
|
|
|
|
MVP musi vyriesit:
|
|
|
|
* zber dolezitych informacii cez wizard,
|
|
* AI vytvorenie textoveho obsahu v strukturovanom JSON formate,
|
|
* renderovanie statickeho HTML/CSS z JSON dat,
|
|
* export webu bez build procesu,
|
|
* volitelny kontaktny formular,
|
|
* zakladnu ochranu osobnych udajov.
|
|
|
|
MVP nesmie riesit:
|
|
|
|
* registraciu domen,
|
|
* DNS,
|
|
* automaticke nasadenie na domenu,
|
|
* SSL,
|
|
* databazu,
|
|
* frameworky,
|
|
* React, Vue, Angular ani TypeScript.
|
|
|
|
---
|
|
|
|
## 2. Zakladny tok pouzivatela
|
|
|
|
1. Pouzivatel otvori wizard.
|
|
2. Vyberie typ podnikania a podkategoriu.
|
|
3. Zada identitu firmy, kontaktne udaje a potvrdi GDPR suhlas.
|
|
4. Vyplni sluzby, smart odpovede, vizualny styl, moduly, jazyk a obrazky.
|
|
5. System ulozi odpovede ako `wizard_data`.
|
|
6. Backend vytvori ulohu pre DAIAPI.
|
|
7. DAIAPI vrati **iba strukturovany JSON obsah**.
|
|
8. Rendering layer vytvori HTML/CSS z JSON dat.
|
|
9. Pouzivatel uvidi preview a moze pregenerovat obsah alebo exportovat web.
|
|
|
|
---
|
|
|
|
## 3. Wizard vstupy
|
|
|
|
Wizard zbiera minimum povinnych udajov a ostatne hodnoty doplna cez smart defaults.
|
|
|
|
Povinne vstupy:
|
|
|
|
* typ podnikania,
|
|
* podkategoria alebo vlastny popis,
|
|
* nazov firmy alebo projektu,
|
|
* email alebo telefon,
|
|
* GDPR suhlas.
|
|
|
|
Volitelne vstupy:
|
|
|
|
* slogan,
|
|
* adresa,
|
|
* mesto/region,
|
|
* sluzby,
|
|
* cennik,
|
|
* otvaracie hodiny,
|
|
* benefity,
|
|
* referencie,
|
|
* socialne siete,
|
|
* logo,
|
|
* obrazky,
|
|
* farebna paleta,
|
|
* styl,
|
|
* jazyk,
|
|
* kontaktny formular.
|
|
|
|
---
|
|
|
|
## 4. AI generovanie obsahu
|
|
|
|
AI nikdy negeneruje priamo HTML, CSS ani JavaScript.
|
|
|
|
AI generuje **content layer**:
|
|
|
|
```json
|
|
{
|
|
"hero": {
|
|
"headline": "Pizza Marco",
|
|
"subheadline": "Poctiva pizzeria v Kosiciach",
|
|
"cta_label": "Objednat"
|
|
},
|
|
"about": {
|
|
"title": "O nas",
|
|
"body": "Sme lokalna pizzeria..."
|
|
},
|
|
"services": [
|
|
{
|
|
"title": "Pizza na donasku",
|
|
"description": "Rychla donaska po meste."
|
|
}
|
|
],
|
|
"faq": [
|
|
{
|
|
"question": "Robite donasku?",
|
|
"answer": "Ano, v ramci Kosic."
|
|
}
|
|
]
|
|
}
|
|
```
|
|
|
|
Rendering layer z tychto dat vytvori HTML.
|
|
|
|
Vyhody:
|
|
|
|
* zmena sablony nevymaze obsah,
|
|
* HTML je mozne opakovane pregenerovat,
|
|
* pouzivatel nepride o data,
|
|
* buduci editor moze upravovat JSON obsah bez prepisovania HTML.
|
|
|
|
---
|
|
|
|
## 5. Moduly webu
|
|
|
|
MVP podporuje tieto moduly:
|
|
|
|
* uvodna sekcia,
|
|
* o nas,
|
|
* sluzby,
|
|
* cennik alebo menu,
|
|
* galeria,
|
|
* referencie,
|
|
* FAQ,
|
|
* kontakt,
|
|
* kontaktny formular.
|
|
|
|
Kazdy modul je reprezentovany v JSON datovej vrstve a renderer rozhodne, ako bude vyzerat vo vyslednom HTML.
|
|
|
|
---
|
|
|
|
## 6. Kontaktny formular
|
|
|
|
Kontaktny formular ma dva rezimy.
|
|
|
|
### SMTP mod
|
|
|
|
Pouzivatel zada:
|
|
|
|
* SMTP host,
|
|
* port,
|
|
* username,
|
|
* password,
|
|
* encryption (`none`, `tls`, `ssl`),
|
|
* recipient email.
|
|
|
|
Tieto udaje sa ulozia do konfiguracie exportovaneho webu. Pri exporte sa ku webu prilozi `emailer.php`, ktory spracuje POST z formulara a odosle email.
|
|
|
|
### Lokalny mod
|
|
|
|
Ak pouzivatel SMTP nenastavi, formular zapisuje spravy do JSON suborov:
|
|
|
|
```text
|
|
/messages/
|
|
2026-06-11-123456.json
|
|
```
|
|
|
|
Pri exporte sa prilozi `form-viewer.php`, ktory umozni jednoduche prezeranie sprav.
|
|
|
|
Minimalne zabezpecenie:
|
|
|
|
* heslo ulozene ako hash v konfiguracii,
|
|
* PHP session po prihlaseni,
|
|
* logout,
|
|
* ochrana pred prezeranim bez prihlasenia.
|
|
|
|
---
|
|
|
|
## 7. Website Quality Requirements
|
|
|
|
Kazdy vygenerovany web musi splnat:
|
|
|
|
* mobile responsive layout pre telefon, tablet aj desktop,
|
|
* zakladne SEO meta tagy: `title`, `description`, canonical relativne k exportu ak je pouzitelne,
|
|
* OpenGraph meta tagy: `og:title`, `og:description`, `og:type`, volitelne `og:image`,
|
|
* alt texty pre vsetky obsahove obrazky,
|
|
* minimalnu accessibility: semanticke landmarky, jeden `h1`, logicka hierarchia nadpisov, citatelny kontrast, focus stavy,
|
|
* validny HTML,
|
|
* validny CSS,
|
|
* ziadne JavaScript chyby v konzole,
|
|
* ziadne externe zavislosti okrem explicitne povolenych fontov alebo obrazkov,
|
|
* relativne URL,
|
|
* fungovanie bez build procesu.
|
|
|
|
---
|
|
|
|
## 8. Biznis pravidlo proti scope creepu
|
|
|
|
MVP je uzavrety concierge workflow.
|
|
|
|
Pouzivatel moze:
|
|
|
|
* zmenit odpovede vo wizard krokov,
|
|
* pregenerovat obsah,
|
|
* zmenit vizualny styl,
|
|
* exportovat web.
|
|
|
|
Pouzivatel nemoze:
|
|
|
|
* rucne presuvat elementy,
|
|
* editovat DOM ako v builderi,
|
|
* spravovat domenu alebo hosting priamo z MVP.
|
|
|
|
Manualne upravy webu su mimo MVP a patria do buduceho editora alebo platenej sluzby.
|