Un'app Android intuitiva per monitorare i lavori di manutenzione del trasporto pubblico.
LavoraMi è un'applicazione Android 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.
- Bottom 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 Google Maps
- Interfaccia nativa Material Design
- Design responsivo e accessibility-focused
- Supporto per modalità scura
- Android 8.0 (API 26) o superiore
- Android Studio 2025.2.2 o superiore
- Java Development Kit (JDK) 11 o superiore
- Android SDK con Build Tools 36.0.0
git clone https://github.com/Andrea-Filice/LavoraMi-Android.git
cd LavoraMi-Android# Su macOS
open -a "Android Studio" .
# O aprire manualmente Android Studio e selezionare la cartella- Attendere il sincronizzamento della configurazione Gradle
- Selezionare il dispositivo target (emulatore o dispositivo reale)
- Premere
Shift + F10(o il pulsante Run) per compilare ed eseguire - L'app si avvierà automaticamente sul dispositivo
- Gradle 8.0 o superiore (incluso nel wrapper)
- Dipendenze gestite automaticamente dal file
build.gradle.kts
L'app segue il pattern Model-View-ViewModel:
┌─────────────────────────────────────┐
│ Android Activities │
│ (MainActivity, LinesActivity, etc) │
└──────────────┬──────────────────────┘
│
┌──────────────▼──────────────────────┐
│ ViewModel & Adapters │
│ (Business Logic & State) │
└──────────────┬──────────────────────┘
│
┌──────────────▼──────────────────────┐
│ Data Layer │
│ (APIWorks, Local Database) │
└─────────────────────────────────────┘
| File | Descrizione |
|---|---|
MainActivity.java |
Activity principale con tab navigation |
LinesActivity.java |
Visualizzazione delle linee di trasporto |
SettingsActivity.java |
Impostazioni e localizzazione |
WorkAdapter.java |
Adapter per visualizzare i lavori in lista |
APIWorks.java |
Gestione delle API e dei dati remoti |
EventDescriptor.java |
Modello dei lavori di manutenzione |
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 Java di Google
- 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 Android 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
Tommaso Ruggeri
- 🔗 GitHub
- 📧 Contattami attraverso il repository
