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.
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.
The project uses MVVM architecture pattern.
- 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.
Mobile Payment icon by Icons8