Repo per il rilascio della parte grafica FAST-Computing in forma di pacchetti versionati.
Supporta 3 temi:
- corporate
- argos
- atlas
@fast/tokens— source of truth (design tokens)@fast/mui-theme— MUIThemederivato dai tokens@fast/assets— asset consumabili ovunque:- CSS variables (
styles.css) - 3 CSS compilati separati (corporate/argos/atlas + min)
- fonts (se presenti)
- CSS variables (
@fast/ui— componenti React/MUI@fast/layouts— layout React/MUI
npm install
npm run buildDopo la publish su registry, puoi consumare i file direttamente dal pacchetto @fast/assets:
@fast/assets/styles.css@fast/assets/css/corporate.css@fast/assets/css/argos.css@fast/assets/css/atlas.css
Sono disponibili anche le versioni .min.css.
packages/
assets/
tokens/
mui-theme/
ui/
layouts/
- Committa automaticamente i CSS compilati nel repository
// 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