Non ci Resta che Guardare è un progetto pensato per utenti che vogliono vedersi un BEL (scusate la presunzione) film di tanto in tanto.
Il progetto ha sia un'app(questa repo) sia una versione web (repo qui).
L'app permette all'utente di avere una watchlist, separando i film dalle serie TV e con la possibilità di salvarsi delle informazioni aggiuntive.
- Watchlist
- Separa i film dalle serie TV
- Mostra informazioni sul film/serie
- Mostra su quali piattaforme si può vedere il film/serie
- Ha sezione note per ogni entry
- Possibilità di filtrare e/o ordinare contenuti
- Cronologia
- Recensioni e/o valutazioni sui contenuti visti
- Ricevere consigli da altri utenti
- Mostrare statistiche interessanti
- Versione web
Per usare quest'app, serve un dispositivo android (Od un emulatore) con SDK >= 26
, idealmente SDK = 34
.
Per poter buildare il progetto, serve:
- TMDB - The Movie Database - Ottenere tutte le informazioni su film e serie TV
- Supabase - Database remoto: gratis e opensource, compatibile sia con Kotlin che con JavaScript.
- Retrofit - Trasforma chiamate API HTTP in interfacce Kotlin
- Picasso - Caricare immagini da URL
├── README.md
└── app
├── build.gradle # Lista dipendenze e proprietà progetto
└── src/main
├── AndroidManifest.xml
├── java/unitn/app
│ ├── activities # Codice sorgente delle attività
│ │ ├── aggiungiMedia # Schermata per aggiungere un contenuto
│ │ ├── auth # Schermate di autenticazione
│ │ ├── customMedia # Schermata per aggiungere un film non presente su TMDB
│ │ ├── dettaglio # Schermata per avere maggiori informazioni di contento aggiunto alla watchlist
│ │ ├── homepage # Watchlist
│ │ ├── loadingScreen
│ │ ├── profilo # Schermata del profilo e opzioni dell'utente
│ │ ├── ricerca # Schermata per cercare nuovi film/serieTV
│ │ └── LiveDatas.kt # Alcuni dei dati condivisi tra schermate o dati importanti
│ ├── api # chiamate API a TMDB
│ │ ├── MediaDetails.kt # Logica delle chiamate API
│ │ └── RetrofitAPI.kt # Effettive chiamate API
│ ├── localdb
│ │ └── UserDAO.kt # Effettive chiamate a DB locale
│ └── remoteDB
│ └── remoteDao.kt # Logica delle chiamate a DB remoto, per ottenere dati utenti
└── res # Risorse locali usate
├── anim # Animazioni usate
├── drawable # Immagini usate
├── layout # Layouts delle attività e frammenti
├── values-night # Colori e temi utilizzate in modalità notte
└── values # Colori e temi utilizzate in modalità giorno
- Clona repo utilizzando:
git clone https://github.com/bettozzo/NonCiRestaCheGuardare.git
- Apri progetto su Android Studio
- Build & run