Skip to content

Mobile app to show movies and enable users to book and pay through MPESA

Notifications You must be signed in to change notification settings

kenmusima/Cinema

Repository files navigation

Cinema

CinemaApp is an application that uses a section of Android Jetpack libraries and also Retrofit to display data from TheMovieDB API in terms of popular movies for booking using MPESA.

Prerequisites

To setup the project add the following secret and keys in local.properties file: MovieDB API Key

apiKey=""

Google Maps API Key

MAPS_API_KEY=""

Mpesa API Consumer Key, Consumer Secret, Passkey,Business ShortCode

CONSUMER_KEY=""
CONSUMER_SECRET=""
PASSKEY=""
BUSINESS_SHORT_CODE=""

Google Functions Callback Url

CALLBACK_URL=""

Firebase Setup tutorial Firebase Setup Firebase Authentication

To run the Project build using Android Studio or Intelli J and all the required dependencies will be downloaded and installed.

Architecture

The project uses MVVM architecture pattern.

Libraries Used

  • ViewModel - Store and manage UI-related data in a lifecycle conscious way.
  • ViewBinding - Library that helps write code that interacts with views more easily.
  • Navigation Component - Android Jetpack's Navigation component helps in implementing navigation between fragments.
  • Retrofit - To access the Rest Api.
  • Dagger Hilt - For Dependency Injection.
  • Paging 3 - Allow pagination of the data.
  • Datastore - To store seat IDS in key value pairs.
  • MpesaDaraja - Mobile Money transaction api.
  • Room - Used as local database to store booked tickets.
  • GOOGLE CLOUD FUNCTIONS - functions as a service (FaaS) to run your code with zero server management.

UI

CREDIT FOR ICON

Mobile Payment icon by Icons8

About

Mobile app to show movies and enable users to book and pay through MPESA

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published