Documentation
This application is inspired by the Rick and Morty series and allows users to browse characters and view detailed information about each one. It features smooth animations to enhance user experience and a clean, reactive interface.
All character data is fetched from an open GraphQL API using the Apollo client library.
The app is built using the Model-View-ViewModel (MVVM) architecture and follows SOLID principles and Clean Code practices for scalability and maintainability.
-
Apollo GraphQL
Used to fetch data from the Rick and Morty API via GraphQL. -
Hilt
Used for dependency injection to promote modular, testable code. -
Jetpack Compose
Used to build a modern, declarative UI with animation support. -
Kotlin Flow & Coroutines
Used for asynchronous data handling and reactive state management. -
Room
Used for local data persistence.
- MVVM pattern separates concerns between UI, business logic, and data handling.
- SOLID principles and Clean Code ensure long-term project sustainability.
- Uses animations and Compose transitions to improve UX.
- Fully reactive data flow with Flow, Coroutines, and Jetpack Compose.
Feel free to contribute or report issues to help improve the app!