Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/farbod-s/bazaar-android-interview
This project is an Android application that displays a list of upcoming movies from the TMDB API.
https://github.com/farbod-s/bazaar-android-interview
android android-application architecture-components best-practices clean-architecture coil hilt interview jetpack-compose kotlin kotlin-coroutines kotlin-flow mockito mvvm paging3 retrofit2 room room-database testing
Last synced: 11 days ago
JSON representation
This project is an Android application that displays a list of upcoming movies from the TMDB API.
- Host: GitHub
- URL: https://github.com/farbod-s/bazaar-android-interview
- Owner: farbod-s
- Created: 2024-04-30T16:30:26.000Z (9 months ago)
- Default Branch: master
- Last Pushed: 2024-04-30T17:06:08.000Z (9 months ago)
- Last Synced: 2024-06-08T01:43:53.011Z (8 months ago)
- Topics: android, android-application, architecture-components, best-practices, clean-architecture, coil, hilt, interview, jetpack-compose, kotlin, kotlin-coroutines, kotlin-flow, mockito, mvvm, paging3, retrofit2, room, room-database, testing
- Language: Kotlin
- Homepage:
- Size: 7.29 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## README
### Project: Android Movie App
This project is an Android application that displays a list of upcoming movies from the TMDB API. It is designed to be scalable and easy to use, and it follows best practices for Android development.
### Requirements
* **Basic Functionality:**
* Display a list of upcoming movies from the TMDB API
* Allow users to view the name of a movie when it is clicked
* Load movies in pages
* **Offline Mode:**
* Cache movies locally for offline viewing
* **User Interface:**
* Implement the provided UI design
* Use provided icons and assets
* **Bonus Points:**
* Implement loading animation
* Use Jetpack Compose for UI development
* Implement 'loadMore' and 'error' items as list items
* **Important:**
* Write code in Kotlin
* Use proper code style and structure
* Utilize incremental development and Git
* Employ appropriate design patterns and Android best practices### API
* **Movie List:** [https://developer.themoviedb.org/reference/movie-upcoming-list](https://developer.themoviedb.org/reference/movie-upcoming-list)
* **Movie Images:** [https://developer.themoviedb.org/docs/image-basics](https://developer.themoviedb.org/docs/image-basics)### Libraries
* Jetpack Compose
* Room Database
* Paging3
* Retrofit2
* Hilt
* Coil### Modules
* app
* feature:upcoming
* core:ui
* core:data
* core:database
* core:network