Skip to main content

Benvenuti in Tess UI Library

Tess UI Library è una libreria Angular enterprise-ready che fornisce componenti UI riutilizzabili, servizi core e utilities per costruire applicazioni moderne e scalabili.

🎯 Caratteristiche Principali

🎨 UI Kit Agnostic

  • Supporto multiplo per diversi framework UI (PrimeNG, Bootstrap, Material)
  • Architettura adapter-based che permette di cambiare UI kit senza modificare il codice business
  • Skin switching runtime per multi-tenancy

🧩 Componenti Enterprise

  • AutoForm: Sistema di generazione dinamica di form da modelli JSON
  • DataTable: Tabella enterprise con paginazione server-side, multi-sort, filtri avanzati e export
  • SideMenu: Menu laterale gerarchico con navigazione e gestione permessi
  • Dialog & Toast: Servizi di notifiche e dialog UI-agnostic

🔧 Servizi Core

  • Authentication: Integrazione con Azure Entra ID (ex Azure AD)
  • Logging: Sistema di logging strutturato con supporto Application Insights
  • Traceability: TraceId automatico per tracking di richieste e log
  • Storage: Astrazione per localStorage, sessionStorage e IndexedDB
  • Theming: Gestione temi dinamici

✅ Pattern e Best Practices

  • Result Pattern: Gestione errori consistente in tutta l'applicazione
  • Clean Architecture: Separazione tra presentazione, dominio e dati
  • SOLID Principles: Codice manutenibile e testabile
  • Dependency Injection: Uso estensivo di interfaces e InjectionTokens

♿ Accessibilità e Internazionalizzazione

  • Supporto WCAG 2.1 con ARIA completo
  • Navigazione da tastiera
  • i18n integrato

🚀 Quick Start

npm install @tess-ui-library/core
npm install primeng primeicons @primeuix/themes

Configura nella tua applicazione Angular:

import { provideTessUiLibrary } from '@tess-ui-library/core';

export const appConfig: ApplicationConfig = {
providers: [
provideTessUiLibrary(),
// altri providers...
],
};

📚 Documentazione

🏗️ Struttura del Progetto

La libreria è organizzata seguendo Clean Architecture:

libs/tess-ui-library/
├── core/ # Servizi core singleton (auth, logging, config)
├── shared/ # UI components, utilities, validators riutilizzabili
├── features/ # Feature modules (autoform, table)
├── adapters/ # UI Kit adapters (PrimeNG, Bootstrap, ecc.)
└── ui-kit-factory/ # Factory pattern per UI Kit switching

🤝 Contributi

Questa libreria è in continua evoluzione. Per contribuire o segnalare issues, visita il repository GitHub.

📄 Licenza

Vedi il file LICENSE per i dettagli.