Gestione Affitti
Applicazione full-stack per la gestione di immobili in affitto
Descrizione del Progetto
Applicazione web full-stack pensata per proprietari e locatori che vogliono gestire appartamenti, inquilini, contratti, pagamenti e spese da un'unica interfaccia intuitiva. Il sistema offre una dashboard con KPI in tempo reale — entrate, spese, pagamenti recenti — e un CRUD completo per ogni entità del dominio.
Tra le funzionalità principali: autenticazione completa con login/signup via Supabase Auth, dashboard analitica con grafici di ricavi vs spese mensili e statistiche contratti, sezione fiscale per la gestione degli aspetti tributari, e notifiche toast per feedback immediato sulle operazioni.
Architettura
L'app segue un pattern architetturale a tre livelli con accesso diretto a Supabase dal frontend (protetto da Row Level Security), bypassando il backend Express per la maggior parte delle operazioni. I dati complessi vengono pre-calcolati tramite viste PostgreSQL (vista_contratti_completi, vista_pagamenti_completi, vista_spese_complete) per ottimizzare le performance.
Ogni modulo CRUD segue un pattern consistente: Page Component → Custom Hook → React Query → Supabase Client → PostgreSQL. Lo stato server-side è gestito con TanStack React Query per caching automatico, mentre Zustand gestisce lo stato globale client-side (notifiche, tema).
Tecnologie – Frontend
- React 18
- Vite 5
- React Router v6
- TanStack React Query
- Zustand
- Tailwind CSS
- Chart.js + react-chartjs-2
- Lucide React
Tecnologie – Backend & Infrastruttura
- Supabase (PostgreSQL)
- Express.js (Node.js)
- Row Level Security (RLS)
- Vercel (CDN + CSP + HSTS)
- GitHub Actions (keep-alive)
- Vitest + Testing Library
Funzionalità Principali
- Autenticazione completa con Supabase Auth (login/signup)
- Dashboard con KPI in tempo reale: entrate, spese, pagamenti recenti
- CRUD completo per appartamenti, inquilini, contratti, pagamenti e spese
- Dashboard analitica con grafici ricavi vs spese mensili
- Sezione fiscale per la gestione tributaria
- Route protette con React Router v6
- Notifiche toast per feedback immediato
- Deploy su Vercel con header di sicurezza (CSP, HSTS)