# πŸš€ BEST PRACTICES SVILUPPO - NetGescon > **Guida rapida per sviluppo veloce e senza errori** > **πŸ“… Creato:** 06/08/2025 > **🎯 Obiettivo:** Evitare errori comuni e accelerare lo sviluppo --- ## βœ… **CHECKLIST PRE-SVILUPPO** ### 🎨 **Layout e Grafica** - [ ] **SEMPRE usare:** `@extends('admin.layouts.netgescon')` - [ ] **MAI usare:** `admin.layouts.app` (sidebar verde vecchia) - [ ] **MAI usare:** `layouts.app-universal-*` (Bootstrap invece di Tailwind) - [ ] Vite dev server attivo: `npm run dev` - [ ] Server Laravel attivo: `php artisan serve --host=0.0.0.0 --port=8000` ### πŸ“‹ **Structure Controller Standard** ```php 'Categoria Principale', 'icon' => 'fas fa-icon'], ['title' => 'Pagina Corrente', 'icon' => 'fas fa-icon'] ]; // 2. Page setup $pageTitle = 'Titolo Pagina'; $pageSubtitle = 'Descrizione di cosa fa questa pagina'; // 3. Page actions $pageActions = [ [ 'type' => 'secondary', 'label' => 'Azione Secondaria', 'url' => route('admin.route.action'), 'icon' => 'fas fa-icon' ], [ 'type' => 'primary', 'label' => 'Azione Principale', 'url' => route('admin.route.create'), 'icon' => 'fas fa-plus' ] ]; // 4. Dati per la vista $data = $this->getData($request); // 5. Return view return view('admin.modulo.pagina', compact( 'breadcrumbs', 'pageTitle', 'pageSubtitle', 'pageActions', 'data' )); } } ``` ### 🎯 **Template Vista Standard** ```blade @extends('admin.layouts.netgescon') @section('title', 'Titolo Pagina') @section('content')

{{ $pageTitle }}

{{ $pageSubtitle }}

@foreach($pageActions as $action) {{ $action['label'] }} @endforeach
{{-- Contenuto principale qui --}}
@endsection ``` --- ## πŸ”§ **CONFIGURAZIONE AMBIENTE** ### πŸ“ **File .env Requirements** ```env APP_URL=http://192.168.0.200:8000 VITE_APP_URL="${APP_URL}" ``` ### ⚑ **Vite Configuration (vite.config.js)** ```javascript export default defineConfig({ server: { host: '0.0.0.0', port: 5174, hmr: { host: '192.168.0.200' } }, // resto della config... }); ``` ### πŸš€ **Comandi di Avvio** ```bash # Terminal 1: Laravel Server php artisan serve --host=0.0.0.0 --port=8000 # Terminal 2: Vite Dev Server npm run dev # Oppure usa i task VS Code configurati ``` --- ## πŸ“ **ORGANIZZAZIONE MENU SIDEBAR** ### 🎯 **Struttura Attuale** - **STABILI** - Gestione edifici e unitΓ  - **CONDOMINI** - Persone e relazioni - **AMMINISTRAZIONE** - Tickets e documenti - **CONTABILITΓ€** - Bilanci e registrazioni NetGescon - **GESTIONE ECONOMICA** - Preventivi e fornitori - **MODULI** - FunzionalitΓ  aggiuntive - **GESCON IMPORT** - ⭐ Sistema import/export GESCON - **SUPPORTO** - Help e configurazioni ### πŸ†• **Aggiungere Nuova Voce Menu** 1. Aggiungere la voce nel file: `resources/views/components/menu/sidebar-netgescon.blade.php` 2. Aggiornare array JavaScript `categories` 3. Aggiornare `routeMapping` per l'auto-opening 4. Aggiornare selettori in `document.querySelectorAll` --- ## 🚨 **ERRORI COMUNI DA EVITARE** ### ❌ **Layout Sbagliato** ```blade @extends('admin.layouts.app') // ❌ Sidebar verde @extends('layouts.app-universal-*') // ❌ Bootstrap ``` ### ❌ **Mancanza Breadcrumbs** ```php // ❌ SBAGLIATO - Nessun breadcrumb return view('admin.pagina'); // βœ… CORRETTO - Con breadcrumbs $breadcrumbs = [...]; return view('admin.pagina', compact('breadcrumbs', ...)); ``` ### ❌ **Asset Non Caricati** - Vite non attivo - APP_URL non configurato - Percorsi asset sbagliati ### ❌ **Variabili Mancanti** - `$pageTitle` non definito - `$pageActions` vuoto - Dati non passati con `compact()` --- ## 🎯 **WORKFLOW SVILUPPO VELOCE** 1. **Setup ambiente:** Vite + Laravel server attivi 2. **Copia template:** Usa controller e vista standard 3. **Modifica breadcrumbs:** Personalizza categorie 4. **Aggiungi logica:** Implementa getData() e filtri 5. **Test immediato:** Accesso remoto funzionante 6. **Commit frequenti:** Small iterations --- ## πŸ“š **RIFERIMENTI RAPIDI** - **Layout corretto:** `admin.layouts.netgescon` - **CSS Framework:** Tailwind CSS (via Vite) - **Icone:** FontAwesome 6.4.0 - **Documentazione completa:** `03-CONTENT.md` - **Sidebar menu:** `components/menu/sidebar-netgescon.blade.php` --- **βœ… ULTIMO AGGIORNAMENTO: 06/08/2025 - GESCON Menu separato creato**