diff --git a/README.md b/README.md
index c5678bc..46022ab 100644
--- a/README.md
+++ b/README.md
@@ -1,66 +1,222 @@
-# π₯ Clinica Veterinaria Formiginese - Deploy Package
+# Clinica Veterinaria Formiginese
-Questo pacchetto contiene il codice sorgente completo, le immagini e le istruzioni per deployare il sito della Clinica Veterinaria Formiginese su un server privato con Node.js.
+Repository operativo del sito della Clinica Veterinaria Formiginese, con frontend React/Vite e backend FastAPI per la gestione delle richieste di prenotazione.
-## π Contenuti del Pacchetto
+## Struttura
-- **clinica-app/** - Progetto React completo con sorgenti
-- **assets/** - Tutte le 7 immagini (animali + clinica)
-- **SETUP_ISTRUZIONI.md** - Guida dettagliata di installazione
-- **README.md** - Questo file
+- `clinica-app/` - frontend React + Vite e build pubblica del sito
+- `backend/` - backend FastAPI, schema prenotazione e servizio email
+- `assets/` - materiali grafici di supporto
+- `deploy_to_local_server.bat` - aggiorna la copia locale di deploy partendo da Gitea
+- `SETUP_ISTRUZIONI.md` - note di installazione storiche
-## π Quick Start
+## Stack
-```bash
-# 1. Estrai il pacchetto
-unzip clinica-veterinaria-deploy.zip
-cd clinica-deploy
+- Frontend: React 19, TypeScript, Tailwind CSS, Vite
+- Backend: FastAPI, Uvicorn
+- Web server online: Apache
+- Certificati: Let's Encrypt / Certbot
-# 2. Copia le immagini
-cp -r assets/* clinica-app/client/public/images/
-mkdir -p clinica-app/client/public/images
+## Ambiente locale
-# 3. Installa e avvia
-cd clinica-app
-npm install
-npm run build
-npm start
+### Repository di lavoro
+
+Percorso:
+
+```txt
+C:\devel\clinica_veterinaria_formiginese
```
-Il sito sarΓ disponibile a `http://localhost:3000`
+Per sviluppo rapido:
-## π Documentazione Completa
+```bash
+cd C:\devel\clinica_veterinaria_formiginese\clinica-app
+pnpm install
+pnpm dev
+```
-Leggi il file **SETUP_ISTRUZIONI.md** per:
-- Requisiti di sistema
-- Installazione passo-passo
-- Configurazione avanzata (Nginx, PM2, ecc.)
-- Personalizzazione (colori, testi, immagini)
-- Troubleshooting
+Nota: la porta di sviluppo Vite e stata spostata a `3001`, per evitare conflitti con Gitea in locale.
-## π― Caratteristiche
+### Repository di deploy locale
-β
Homepage completa con carousel hero (7 immagini)
-β
Sezioni: Chi Siamo, Servizi, Team, Blog, Prenotazioni, Registrazione
-β
Design "Clinical Warmth" con blu petrolio e verde acqua
-β
Responsive design (mobile, tablet, desktop)
-β
Animazioni fluide e transizioni eleganti
-β
Performance ottimizzate
+Percorso:
-## π οΈ Stack Tecnologico
+```txt
+C:\deploy\clinica_veterinaria_formiginese
+```
-- **Frontend**: React 19 + TypeScript + Tailwind CSS 4
-- **Backend**: Node.js + Express
-- **Build Tool**: Vite
-- **UI Components**: shadcn/ui
-- **Animazioni**: Framer Motion
+Il sito locale servito da Caddy legge questa copia, non quella in `C:\devel\...`.
-## π Supporto
+Per aggiornare il deploy locale:
-Per problemi durante l'installazione, consulta la sezione "Troubleshooting" in SETUP_ISTRUZIONI.md
+```bat
+deploy_to_local_server.bat
+```
----
+Attenzione: lo script riallinea la copia locale di deploy a cio che e stato pushato su Gitea.
-**Versione**: 1.0.0
-**Data**: 31 Marzo 2026
-**Licenza**: Privato
+## Build frontend
+
+Da eseguire dentro `clinica-app/`:
+
+```bash
+pnpm build
+```
+
+## Prenotazioni
+
+La form di prenotazione usa anche il campo `doctor` (medico richiesto).
+L'invio email passa da Mailjet API, con `Reply-To` valorizzato con l'indirizzo inserito da chi compila il modulo.
+Il backend mantiene protezioni anti-abuso: flag di attivazione, CAPTCHA, honeypot, rate limit e audit log JSONL.
+
+Quando si pubblicano modifiche che toccano la form, vanno aggiornati insieme:
+
+- frontend React
+- backend FastAPI
+
+In particolare:
+
+- `backend/app/schemas/booking.py`
+- `backend/app/services/mailer.py`
+
+## Deploy online
+
+Server attuale:
+
+```txt
+ubuntu@129.152.31.221
+```
+
+Percorso progetto:
+
+```txt
+/var/www/clinicaveterinariaformiginese.it
+```
+
+### Aggiornamento codice
+
+La cartella online non contiene una working copy Git. Le modifiche vanno quindi
+pubblicate copiando i file via WinSCP/SFTP dopo commit e push su Gitea.
+
+### Build frontend
+
+```bash
+cd /var/www/clinicaveterinariaformiginese.it/clinica-app
+pnpm build
+```
+
+### Riavvio servizi
+
+```bash
+sudo systemctl restart clinicaveterinaria-backend.service
+sudo systemctl reload apache2
+```
+
+### Verifiche utili
+
+```bash
+systemctl status clinicaveterinaria-backend.service --no-pager
+journalctl -u clinicaveterinaria-backend.service -n 50 --no-pager
+curl -I https://www.clinicaveterinariaformiginese.it/
+```
+
+## Nota importante su Vite
+
+Nel build di produzione il runtime Manus deve restare disattivato. La configurazione e gia stata corretta in:
+
+```txt
+clinica-app/vite.config.ts
+```
+
+I plugin Manus sono attivi solo in sviluppo, non nel build di produzione.
+
+## Redirect domini veterinarioformigine
+
+Sono stati configurati 5 domini accessori per reindirizzare sempre verso:
+
+```txt
+https://www.centrofaunaselvatica.it/
+```
+
+Domini gestiti:
+
+- `veterinarioformigine.it`
+- `veterinarioformigine.com`
+- `veterinarioformigine.eu`
+- `veterinarioformigine.info`
+- `veterinarioformigine.cloud`
+
+Per ciascuno sono attivi anche i rispettivi host `www`.
+
+### Comportamento atteso
+
+Tutti questi URL devono restituire:
+
+```txt
+301 Moved Permanently
+Location: https://www.centrofaunaselvatica.it/
+```
+
+### Configurazione Apache
+
+I virtual host HTTP sono stati creati in:
+
+```txt
+/etc/apache2/sites-available/veterinarioformigine.*.conf
+```
+
+I virtual host HTTPS creati da Certbot sono in:
+
+```txt
+/etc/apache2/sites-available/veterinarioformigine.*-le-ssl.conf
+```
+
+### Certificato
+
+Certificato emesso con:
+
+```bash
+sudo certbot --apache \
+ -d veterinarioformigine.it -d www.veterinarioformigine.it \
+ -d veterinarioformigine.com -d www.veterinarioformigine.com \
+ -d veterinarioformigine.eu -d www.veterinarioformigine.eu \
+ -d veterinarioformigine.info -d www.veterinarioformigine.info \
+ -d veterinarioformigine.cloud -d www.veterinarioformigine.cloud
+```
+
+Scadenza attuale del certificato:
+
+```txt
+2026-08-25
+```
+
+### Verifica redirect domini accessori
+
+```bash
+curl -I https://veterinarioformigine.it
+curl -I https://www.veterinarioformigine.it
+curl -I https://veterinarioformigine.com
+curl -I https://www.veterinarioformigine.com
+curl -I https://veterinarioformigine.eu
+curl -I https://www.veterinarioformigine.eu
+curl -I https://veterinarioformigine.info
+curl -I https://www.veterinarioformigine.info
+curl -I https://veterinarioformigine.cloud
+curl -I https://www.veterinarioformigine.cloud
+```
+
+## Git
+
+Branch operativo corrente:
+
+```txt
+backend_init
+```
+
+Flusso consigliato:
+
+1. Modifiche in `C:\devel\clinica_veterinaria_formiginese`
+2. Test con `pnpm dev`
+3. Commit e push su Gitea
+4. Deploy locale con `deploy_to_local_server.bat`
+5. Deploy online su Linux quando approvato
diff --git a/docs/apache-ip-lockdown.md b/docs/apache-ip-lockdown.md
new file mode 100644
index 0000000..bc0b648
--- /dev/null
+++ b/docs/apache-ip-lockdown.md
@@ -0,0 +1,90 @@
+# Blocco directory listing su accesso via IP
+
+Problema verificato:
+
+```bash
+curl -k https://129.152.31.221/
+```
+
+Risposta non desiderata:
+
+```txt
+200 OK
+Index of /
+```
+
+L'accesso diretto all'IP non deve mostrare `/var/www` o l'elenco dei file.
+
+## Correzione rapida
+
+Sul server Linux:
+
+```bash
+sudo cp /etc/apache2/apache2.conf /etc/apache2/apache2.conf.bak.$(date +%Y%m%d-%H%M%S)
+sudo sed -i 's/Options Indexes FollowSymLinks/Options -Indexes +FollowSymLinks/g' /etc/apache2/apache2.conf
+sudo apache2ctl configtest
+sudo systemctl reload apache2
+```
+
+Verifica:
+
+```bash
+curl -k -I https://129.152.31.221/
+```
+
+Il risultato atteso non deve essere `200 OK` con directory listing. Un `403 Forbidden`
+e accettabile per l'accesso diretto via IP.
+
+## Correzione consigliata
+
+Creare un virtual host di default che blocchi ogni richiesta non associata ai domini
+configurati.
+
+File:
+
+```txt
+/etc/apache2/sites-available/000-ip-block.conf
+```
+
+Contenuto HTTP:
+
+```apache
+
+ ServerName 129.152.31.221
+ Redirect 301 / https://www.clinicaveterinariaformiginese.it/
+
+```
+
+Per HTTPS, se sul server e gia attivo un certificato valido per il dominio principale,
+si puo creare un virtual host catch-all usando gli stessi certificati e restituire 403:
+
+```apache
+
+
+ ServerName 129.152.31.221
+
+ SSLEngine on
+ SSLCertificateFile /etc/letsencrypt/live/www.clinicaveterinariaformiginese.it/fullchain.pem
+ SSLCertificateKeyFile /etc/letsencrypt/live/www.clinicaveterinariaformiginese.it/privkey.pem
+
+
+ Require all denied
+
+
+
+```
+
+Attivazione:
+
+```bash
+sudo a2ensite 000-ip-block.conf
+sudo apache2ctl configtest
+sudo systemctl reload apache2
+```
+
+Verifiche:
+
+```bash
+curl -k -I https://129.152.31.221/
+curl -I https://www.clinicaveterinariaformiginese.it/
+```