implemented step 20 by Gemini
- README documentation
This commit is contained in:
78
README.md
78
README.md
@ -1,3 +1,77 @@
|
||||
# WebWizard
|
||||
# WebWizard - AI Website Concierge (MVP)
|
||||
|
||||
Simple wizard for create website with LLM.
|
||||
WebWizard je inteligentný asistent na tvorbu statických webových stránok pre malé podniky a živnostníkov. Pomocou intuitívneho wizardu a umelej inteligencie (DAIAPI) premení vaše základné informácie na profesionálny, responzívny web pripravený na nasadenie.
|
||||
|
||||
## 🚀 Hlavné funkcie
|
||||
- **Inteligentný Wizard**: 8 krokov od definície biznisu až po finálny export.
|
||||
- **AI Content Generation**: Automatické písanie marketingových textov a SEO metadát cez DAIAPI.
|
||||
- **Vizuálna personalizácia**: Výber z preddefinovaných farebných paliet a dizajnových štýlov.
|
||||
- **Správa Assetov**: Asynchrónne nahrávanie loga a fotogalérie.
|
||||
- **Kontaktný formulár**: Podpora SMTP odosielania alebo lokálneho ukladania správ s vlastným prehliadačom.
|
||||
- **Statický Export**: Kompletný balíček webu v ZIP formáte pripravený na FTP upload.
|
||||
|
||||
## 🛠️ Technický Stack
|
||||
- **Backend**: PHP 8.2+ (bez frameworkov, čistý kód).
|
||||
- **Frontend**: Vanilla JavaScript (ES6+), CSS Grid/Flexbox.
|
||||
- **Dáta**: Súborový systém (JSON), žiadna databáza.
|
||||
- **AI**: Integrácia s lokálnym DAIAPI.
|
||||
|
||||
## 📋 Požiadavky
|
||||
- Webový server (Apache/Nginx) s podporou PHP 8.2.
|
||||
- PHP rozšírenia: `curl`, `zip`, `fileinfo`.
|
||||
- Povolený zápis (write permissions) do priečinkov `data/` a `exports/`.
|
||||
|
||||
## ⚙️ Inštalácia
|
||||
1. Naklonujte repozitár na váš server.
|
||||
2. Spustite `composer install` pre vygenerovanie autoloadera.
|
||||
3. Skopírujte `.env.example` do `.env` a nastavte URL pre vaše DAIAPI:
|
||||
```ini
|
||||
DAIAPI_URL=http://10.2.8.1:9001/run
|
||||
```
|
||||
4. Nastavte Document Root vášho webservera do priečinka `public/`.
|
||||
|
||||
### Príklad NGINX konfigurácie
|
||||
Pre správne fungovanie (najmä prístup k náhľadom v `/exports`) odporúčame nasledovnú konfiguráciu:
|
||||
```nginx
|
||||
server {
|
||||
listen 80;
|
||||
server_name webwizard.test;
|
||||
|
||||
root /cesta/k/projektu/public;
|
||||
|
||||
# Sprístupnenie vygenerovaných webov pre náhľad
|
||||
location /exports {
|
||||
alias /cesta/k/projektu/exports;
|
||||
}
|
||||
|
||||
location / {
|
||||
index index.php index.html;
|
||||
try_files $uri $uri/ /index.php?$query_string;
|
||||
}
|
||||
|
||||
include php.conf; # alebo vaša konfigurácia pre PHP-FPM
|
||||
}
|
||||
```
|
||||
|
||||
## 🤖 Spustenie Workera
|
||||
Pre spracovanie AI úloh na pozadí je potrebné spustiť worker skript:
|
||||
|
||||
**Manuálne (DEV):**
|
||||
```powershell
|
||||
php scripts/worker.php --loop
|
||||
```
|
||||
|
||||
**Cez Cron (PROD):**
|
||||
Nastavte spúšťanie každú minútu:
|
||||
```cron
|
||||
* * * * * /usr/bin/php /cesta/k/projektu/scripts/worker.php >> /cesta/k/projektu/data/worker.log 2>&1
|
||||
```
|
||||
|
||||
## 🔒 Bezpečnosť
|
||||
- Všetky vstupné dáta sú sanitizované.
|
||||
- Prístup do `data/` je blokovaný cez `.htaccess`.
|
||||
- Citlivé konfigurácie exportovaných webov sú uložené v `.php` súboroch.
|
||||
- Heslá pre prezeranie správ sú hašované pomocou `password_hash()`.
|
||||
|
||||
## 📄 Licencia
|
||||
MIT
|
||||
|
||||
@ -784,7 +784,7 @@ const App = {
|
||||
try {
|
||||
const result = await this.apiCall('generateWebsite');
|
||||
if (result.success) {
|
||||
console.log('Generation started:', result.data.task_id);
|
||||
|
||||
this.startPolling();
|
||||
}
|
||||
} catch (error) {
|
||||
@ -817,7 +817,7 @@ const App = {
|
||||
} catch (error) {
|
||||
console.error('Polling error:', error);
|
||||
}
|
||||
}, 10000);
|
||||
}, 5000);
|
||||
},
|
||||
|
||||
updateGenerationStatus(status) {
|
||||
@ -886,3 +886,5 @@ const App = {
|
||||
};
|
||||
|
||||
document.addEventListener('DOMContentLoaded', () => App.init());
|
||||
|
||||
App.init());
|
||||
|
||||
Reference in New Issue
Block a user