Sistema di gestione CSS aziendale modulare basato su Bootstrap 5, con supporto per 3 brand separati:CSS aziendali basati su Bootstrap 5, personalizzati con SASS per il brand FAST-Computing.
-
Corporate - CSS aziendale generico
-
Argos - Portale web Argos## π Struttura del progetto
-
Atlas - Portale web Atlas
## π Struttura del progettobrand/
βββ src/
```β βββ scss/
brand/β βββ brand.scss # File principale SASS
βββ src/β βββ _variables.scss # Variabili custom (colori, font, ecc.)
β βββ scss/β βββ _custom.scss # Stili custom aggiuntivi
β β βββ _common/ # File condivisi tra tutti i brandβββ dist/
β β β βββ _fonts.scss # Font comuni (Google Fonts)β βββ css/
β β β βββ _variables-base.scss # Variabili base comuniβ βββ brand.css # CSS compilato
β β β βββ _mixins.scss # Mixin e funzioni comuniβ βββ brand.min.css # CSS compilato e minificato
β β ββββ .github/
β β βββ corporate/ # Brand Corporate (aziendale generico)β βββ workflows/
β β β βββ corporate.scss # File principale Corporateβ βββ build-css.yml # GitHub Action per build automatico
β β β βββ _variables.scss # Variabili Corporateβββ package.json
β β β βββ _custom.scss # Stili custom Corporate```
β β β
β β βββ argos/ # Brand Argos (portale)## π Installazione
β β β βββ argos.scss # File principale Argos
β β β βββ _variables.scss # Variabili Argos```bash
β β β βββ _custom.scss # Stili custom Argosnpm install
β β β```
β β βββ atlas/ # Brand Atlas (portale)
β β βββ atlas.scss # File principale Atlas## π οΈ Comandi disponibili
β β βββ _variables.scss # Variabili Atlas
β β βββ _custom.scss # Stili custom Atlas### Build CSS (produzione)
β β```bash
β βββ fonts/ # Font custom self-hosted (opzionali)npm run build
β```
βββ dist/Compila i file SASS in CSS normale e minificato nella cartella `dist/css/`.
β βββ css/
β βββ corporate.css # CSS Corporate compilato### Watch mode (sviluppo)
β βββ corporate.min.css # CSS Corporate minificato```bash
β βββ argos.css # CSS Argos compilatonpm run watch
β βββ argos.min.css # CSS Argos minificato```
β βββ atlas.css # CSS Atlas compilatoMonitora le modifiche ai file SASS e ricompila automaticamente.
β βββ atlas.min.css # CSS Atlas minificato
β### Pulizia
βββ examples/ # Esempi HTML per ogni brand```bash
```npm run clean
npm install
```### Modificare i colori del brand
Modifica il file `src/scss/_variables.scss`:
## π οΈ Comandi disponibili
```scss
### Build tutti i brand$primary: #0066cc; // Colore principale
```bash$secondary: #6c757d; // Colore secondario
npm run build// ... altri colori
# oppure```
npm run build:all
```### Aggiungere font custom
### Build singoli brand#### Opzione 1: Google Fonts (consigliato)
```bash1. Apri `src/scss/_fonts.scss`
npm run build:corporate # Solo Corporate2. Modifica l'URL di import con i tuoi font da [Google Fonts](https://fonts.google.com)
npm run build:argos # Solo Argos3. Aggiorna `src/scss/_variables.scss` con il nome del font
npm run build:atlas # Solo Atlas
``````scss
// In _fonts.scss
### Watch mode (sviluppo)@import url('https://fonts.googleapis.com/css2?family=TuoFont:wght@400;700&display=swap');
```bash
npm run watch:corporate # Monitora Corporate// In _variables.scss
npm run watch:argos # Monitora Argos$font-family-sans-serif: 'TuoFont', sans-serif !default;
npm run watch:atlas # Monitora Atlas```
```bash2. Decommenta e personalizza le regole @font-face in `src/scss/_fonts.scss`
npm run clean # Rimuove tutti i CSS compilati3. Aggiorna $font-family-sans-serif in _variables.scss
Consulta `src/fonts/README.md` per istruzioni dettagliate.
## π¨ Personalizzazione
### Aggiungere stili custom
### Struttura dei brandAggiungi i tuoi stili in `src/scss/_custom.scss`:
Ogni brand ha 3 file principali:```scss
.mia-classe-custom {
1. **`{brand}.scss`** - File principale che importa tutto nell'ordine corretto background-color: $primary;
2. **`_variables.scss`** - Variabili specifiche del brand (colori, font, ecc.) padding: 1rem;
3. **`_custom.scss`** - Stili CSS custom del brand}
Esempio per modificare Argos:Tutte le variabili Bootstrap possono essere sovrascritte in _variables.scss.
Consulta la documentazione Bootstrap per l'elenco completo.
// src/scss/argos/_variables.scss## π€ GitHub Actions
$primary: #2c3e50; // Blu scuro
$secondary: #95a5a6; // GrigioIl repository include una GitHub Action che:
$argos-accent: #3498db; // Blu accento- Compila automaticamente i CSS ad ogni push sul branch `master`/`main`
```- Genera artifacts scaricabili per ogni build
- Committa automaticamente i CSS compilati nel repository
### Aggiungere stili custom
### Configurazione necessaria
```scss
// src/scss/argos/_custom.scssPer permettere alla GitHub Action di committare i file compilati:
.mia-classe-argos {
background-color: $argos-accent;1. Vai in **Settings** β **Actions** β **General**
padding: 1rem;2. Sotto "Workflow permissions", seleziona **Read and write permissions**
}3. Salva le modifiche
I file in src/scss/_common/ sono condivisi da tutti i brand:```html
-
_fonts.scss- Font comuni (Google Fonts o self-hosted)``` -
_variables-base.scss- Variabili di base che ogni brand puΓ² sovrascrivere -
_mixins.scss- Mixin e funzioni riutilizzabili### Via CDN (dopo il rilascio)
### Aggiungere font custom<!-- Sostituisci con il tuo CDN o GitHub Pages URL -->
<link rel="stylesheet" href="https://cdn.example.com/brand/brand.min.css">
Vedi la guida completa in [FONTS_GUIDE.md](./FONTS_GUIDE.md)```
Quick esempio per Google Fonts:### Import in SASS/SCSS
```scss```scss
// src/scss/_common/_fonts.scss@import 'path/to/brand';
@import url('https://fonts.googleapis.com/css2?family=TuoFont:wght@400;700&display=swap');```
// src/scss/corporate/_variables.scss## π Note
$font-family-sans-serif: 'TuoFont', sans-serif !default;
```- I file CSS compilati sono generati automaticamente - non modificarli manualmente
- Tutte le modifiche devono essere fatte nei file `.scss` in `src/scss/`
## π¦ Utilizzo dei CSS- La GitHub Action aggiunge `[skip ci]` al messaggio di commit per evitare loop infiniti
### Corporate## π Licenza
```html
<link rel="stylesheet" href="dist/css/corporate.min.css">MIT<link rel="stylesheet" href="dist/css/argos.min.css"><link rel="stylesheet" href="dist/css/atlas.min.css">- Colori: Blu corporate professionale (#0066cc)
- Stile: Classico, pulito, professionale
- Componenti: Header gradient, footer scuro, card eleganti
- Uso: Sito corporate aziendale principale
- Colori: Blu scuro (#2c3e50), grigio argento
- Stile: Dashboard professionale, layout sidebar
- Componenti: Sidebar fissa, navbar top, stat cards, tabelle
- Uso: Applicazioni web, dashboard, pannelli admin
- Colori: Viola/Purple (#6f42c1), gradienti colorati
- Stile: Moderno, colorato, dinamico
- Componenti: Hero gradient, card elevate, bottoni rounded
- Uso: Portali web moderni, landing page, app consumer
Il repository include una GitHub Action che:
- Compila automaticamente tutti e 3 i brand ad ogni push
- Genera artifacts scaricabili per ogni build
- Committa automaticamente i CSS compilati (opzionale)
Per il commit automatico:
- Vai in Settings β Actions β General
- Sotto "Workflow permissions", seleziona Read and write permissions
- Crea una nuova cartella in
src/scss/nuovo-brand/ - Copia i 3 file da un brand esistente:
nuovo-brand.scss_variables.scss_custom.scss
- Personalizza i colori e gli stili
- Aggiungi gli script npm in
package.json:"build:nuovo-brand": "...", "build:nuovo-brand:expanded": "...", "build:nuovo-brand:minified": "..."
- Aggiorna
build:allper includere il nuovo brand
- Non modificare Bootstrap direttamente - Usa sempre le variabili
- Mantieni i file
_common/- Condividi codice tra brand - Usa i mixin comuni - Evita duplicazione del codice
- Test su tutti i brand - Quando modifichi
_common/ - Commit separati - Per modifiche specifiche di un brand
npm run clean
npm install
npm run buildVerifica il percorso in _common/_fonts.scss e controlla la console browser
- Ricompila:
npm run build:{brand} - Svuota cache browser (Ctrl+Shift+R)
- Verifica di usare il CSS corretto
MIT