Un'app iOS intuitiva per monitorare i lavori di manutenzione del trasporto pubblico.
LavoraMi è un'applicazione iOS progettata per fornire informazioni in tempo reale sui lavori di manutenzione che interessano le reti di trasporto pubblico. L'app consente agli utenti di:
- Visualizzare i lavori in corso e pianificati
- Tracciare il progresso dei lavori con timeline interattive
- Consultare le linee di trasporto interessate
- Ricevere notifiche sullo stato dei lavori
Perfetta per pendolari che desiderano rimanere sempre informati sulle interruzioni e le modifiche ai servizi di trasporto.
- Tab Navigation - Navigazione intuitiva tra sezioni
- 🏠 Home - Visualizzazione riepilogativa dei lavori
- 🚇 Linee - Dettagli specifici per ogni linea di trasporto
- ⚙️ Impostazioni - Localizzazione geografica dei lavori
- Avvisi in tempo reale sullo stato dei lavori
- Notifiche personalizzabili per linee specifiche
- Gestione centralizzata delle notifiche
- Visualizzazione dei lavori su mappa interattiva
- Indicazione geografica delle stazioni interessate
- Integrazione con MapKit di Apple
- Interfaccia nativa SwiftUI
- Design responsivo e accessibility-focused
- Supporto per modalità scura
- iOS 17.0 o superiore
- Xcode 26.0 o superiore
- Swift 6.0 o superiore
- Dispositivo iPhone o simulatore iOS
git clone https://github.com/Andrea-Filice/LavoraMi-iOS.git
cd LavoraMi-iOSopen LavoraMi.xcodeproj- Selezionare il dispositivo target (iPhone simulato o reale)
- Premere
Cmd + Rper compilare ed eseguire - L'app si avvierà automaticamente sul dispositivo
- Nessuna dipendenza esterna richiesta (build autoportante)
- Tutte le librerie utilizzate sono native di Apple
L'app segue il pattern Model-View-ViewModel:
┌─────────────────────────────────────┐
│ SwiftUI Views │
│ (MainView, LinesView, MapView) │
└──────────────┬──────────────────────┘
│
┌──────────────▼──────────────────────┐
│ WorkViewModel │
│ (Business Logic & State) │
└──────────────┬──────────────────────┘
│
┌──────────────▼──────────────────────┐
│ Data Layer │
│ (StationsDB, NotificationManager) │
└─────────────────────────────────────┘
| File | Descrizione |
|---|---|
WorkViewModel.swift |
Gestione dello stato e della logica di business |
StationsDB.swift |
Database locale e persistenza dei dati |
NotificationManager.swift |
Gestione delle notifiche push |
AppDelegate.swift |
Configurazione dell'applicazione |
ContentView.swift |
View principale con tab navigation |
I contributi sono benvenuti! Per contribuire:
- Fork il repository
- Crea un branch per la tua feature (
git checkout -b feature/AmazingFeature) - Commit le tue modifiche (
git commit -m 'Add AmazingFeature') - Push al branch (
git push origin feature/AmazingFeature) - Apri una Pull Request
- Seguire lo stile di codice Swift
- Includere commenti per codice complesso
- Testare le modifiche prima di inviare la PR
- Aggiornare la documentazione se necessario
Hai trovato un bug? Per favore, apri un issue con:
- Descrizione del problema
- Passaggi per riprodurlo
- Comportamento atteso vs. reale
- Versione iOS e dispositivo
Hai un'idea per migliorare LavoraMi? Suggerisci una feature descrivendo:
- L'idea e il beneficio per l'utente
- Possibili casi d'uso
- Eventuali alternative considerate
Questo progetto è licenziato sotto la Licenza MIT - vedi il file LICENSE per i dettagli.
MIT License
Copyright (c) 2026 Andrea Filice
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or copies
of the Software, and to permit persons to whom the Software is furnished to
do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
Andrea Filice
- 🔗 GitHub
- 📧 Contattami attraverso il repository