MoviLog Logo

MoviLog

CCL3 Project — Paul Hitzl & Jona Zeichen

Project Documentation

MoviLog is a high performance Android application built with Kotlin and Jetpack Compose. As 3rd year IT students, our goal was to create a tool for movie enthusiasts to discover, track, and organize their cinematic journey. By leveraging the TMDB API and a local Room database, MoviLog allows users to manage a personal watchlist, record watched movies with custom ratings, and build curated collections.

Core Features

Technical Stack

Language Kotlin
UI Framework Jetpack Compose Declarative UI
Architecture MVVM Model View ViewModel plus Repository Pattern
Networking Retrofit 2 and OkHttp
Local Database Room Persistence Library
Image Loading Coil
Navigation Jetpack Compose Navigation

Setup and Installation

To run MoviLog on your local machine, follow these steps:

  1. Prerequisites Ensure you have Android Studio Ladybug or newer, JDK 11 plus, and an API Key from The Movie Database.
  2. Configure the API Token Open com.example.movilog.ui.MovieViewModel.kt and locate the token variable. Replace the placeholder string with your TMDB v4 Read Access Token.
  3. Build the Project Clone the repository, sync the project with Gradle files, and run the application on an emulator or physical device with Min SDK 24.

System Architecture

MoviLog follows the MVVM pattern to ensure the UI remains reactive and the business logic is decoupled from the Android framework.

Data Layer

ERD Diagramm

ERD Diagramm

UI Layer

UI Colors