# π GUIDA COMPLETA SVILUPPO MODULI NETGESCON **Versione: 2.0 - Data: 01 Agosto 2025** --- ## π― **INTRODUZIONE** NetGescon utilizza un sistema modulare avanzato che permette di sviluppare, installare e monetizzare moduli aggiuntivi. Ogni modulo Γ¨ completamente autonomo e puΓ² essere distribuito come prodotto commerciale. **β AGGIORNAMENTI VERSIONE 2.0:** - Layout template unificato (`modules.layouts.base`) - Sistema permessi automatico migliorato - Integrazione grafica perfetta con NetGescon - Sidebar dinamica con stati moduli - Cache management ottimizzato ### **ποΈ ARCHITETTURA MODULARE** ``` NetGescon/ βββ app/ β βββ Services/ β β βββ ModuleManager.php # Gestione moduli β β βββ HookManager.php # Sistema eventi β βββ Providers/ β β βββ ModuleServiceProvider.php # Caricamento automatico moduli β βββ Modules/ β βββ [NomeModulo]/ β βββ module.json # Configurazione modulo β βββ Controllers/ # Controller Laravel β βββ Routes/ # File route β βββ Migrations/ # Migrazioni database β βββ Seeders/ # Dati iniziali β βββ Views/ # Template Blade βββ resources/views/ β βββ modules/ β βββ layouts/ β βββ base.blade.php # Template base moduli βββ docs/ βββ SPECIFICA-SVILUPPO-MODULI.md βββ TEMPLATE-SVILUPPO-MODULI.md ``` --- ## π¨ **NUOVO SISTEMA LAYOUT UNIFICATO** ### **Template Base Standard** Tutti i moduli DEVONO utilizzare il template base unificato: ```blade @extends('modules.layouts.base') @php $moduleTitle = 'Nome del Modulo'; $moduleIcon = 'fas fa-calculator'; $moduleBreadcrumb = 'Moduli > Nome Modulo'; @endphp @section('module-actions')