Initial commit
This commit is contained in:
96
README.md
Normal file
96
README.md
Normal file
@@ -0,0 +1,96 @@
|
||||
# Smart Roots — Sito Web
|
||||
|
||||
Stack: **Astro 4** (static output) · CSS custom · Deploy su **IIS 10 / Windows Server 2016**
|
||||
|
||||
---
|
||||
|
||||
## Struttura del progetto
|
||||
|
||||
```
|
||||
/
|
||||
├── public/
|
||||
│ ├── assets/ ← immagini, loghi (copiati as-is nel build)
|
||||
│ └── web.config ← configurazione IIS (copiata as-is nel build)
|
||||
├── src/
|
||||
│ ├── components/
|
||||
│ │ ├── Layout.astro ← head HTML, meta SEO, font
|
||||
│ │ ├── Nav.astro ← navbar (variante full o back)
|
||||
│ │ └── Footer.astro ← footer con dati societari
|
||||
│ ├── pages/
|
||||
│ │ ├── index.astro ← Home / Landing page
|
||||
│ │ ├── contatti.astro ← Form contatti → WebAPI
|
||||
│ │ ├── privacy.astro ← Privacy Policy (da completare)
|
||||
│ │ └── termini.astro ← Termini (da completare)
|
||||
│ └── styles/
|
||||
│ └── global.css ← CSS variables, nav, footer, form, responsive
|
||||
├── astro.config.mjs
|
||||
└── package.json
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Setup locale
|
||||
|
||||
### Prerequisiti
|
||||
- Node.js 18+ (solo per sviluppo/build, non necessario in produzione)
|
||||
|
||||
```bash
|
||||
npm install
|
||||
npm run dev # avvia dev server su http://localhost:4321
|
||||
npm run build # genera cartella /dist pronta per il deploy
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Deploy su IIS 10
|
||||
|
||||
1. Eseguire il build: `npm run build`
|
||||
2. La cartella `/dist` contiene il sito statico completo
|
||||
3. Copiare il contenuto di `/dist` nella cartella del sito su IIS
|
||||
- Il `web.config` è già incluso nel build (sta in `/public`)
|
||||
4. In IIS Manager:
|
||||
- Application Pool: **.NET CLR version = No Managed Code**
|
||||
- Assicurarsi che il modulo **URL Rewrite** sia installato (necessario per il routing)
|
||||
|
||||
### Modulo URL Rewrite
|
||||
Se non installato: scaricarlo da https://www.iis.net/downloads/microsoft/url-rewrite
|
||||
|
||||
---
|
||||
|
||||
## Form contatti — WebAPI
|
||||
|
||||
Il form invia a `https://api.smart-roots.net/api/contatti` via `fetch` POST JSON.
|
||||
|
||||
Payload inviato:
|
||||
```json
|
||||
{
|
||||
"nome": "Mario Rossi",
|
||||
"azienda": "Acme S.r.l.",
|
||||
"email": "mario@azienda.it",
|
||||
"ambito": "smartdb",
|
||||
"messaggio": "..."
|
||||
}
|
||||
```
|
||||
|
||||
### Endpoint WebAPI da creare (.NET Framework 4.8)
|
||||
Vedere documentazione separata per `ContattiController`.
|
||||
Ricordarsi di abilitare CORS per `https://www.smart-roots.net` nella WebAPI.
|
||||
|
||||
---
|
||||
|
||||
## Aggiungere nuove pagine
|
||||
|
||||
1. Creare `src/pages/nuova-pagina.astro`
|
||||
2. Usare il componente `Layout` con titolo e descrizione
|
||||
3. `npm run build` e rideploy della cartella `/dist`
|
||||
|
||||
---
|
||||
|
||||
## TODO
|
||||
|
||||
- [ ] Aggiungere immagine `hero-dashboard.png` in `/public/assets/`
|
||||
- [ ] Aggiungere immagine `og-image.jpg` in `/public/assets/` (1200×630px)
|
||||
- [ ] Completare testo Privacy Policy in `src/pages/privacy.astro`
|
||||
- [ ] Completare testo Termini in `src/pages/termini.astro`
|
||||
- [ ] Creare endpoint `POST /api/contatti` nella WebAPI
|
||||
- [ ] Abilitare CORS per `https://www.smart-roots.net` nella WebAPI
|
||||
Reference in New Issue
Block a user