A sample Android project that demonstrates a modern, scalable architecture using the latest technologies recommended by Google. This application integrates Jetpack Compose for the UI, Hilt for dependency injection, and Room for local database management, providing a solid foundation for building robust apps.
- Modern UI: Built entirely with Jetpack Compose, Google's modern toolkit for building native Android UI.
- Offline Support: Caches data retrieved from the remote server using Room Database, enabling full offline functionality.
- Efficient Networking: Fetches data from the SpaceX-API using Retrofit.
- Optimized Performance: Leverages Coroutines for asynchronous operations, KSP for faster annotation processing, and R8 for code shrinking and optimization.
- Scalable Architecture: Follows the MVVM (Model-View-ViewModel) pattern with a repository, ensuring a clean separation of concerns and a maintainable codebase.
- Modern Navigation: Utilizes Navigation 3 for Jetpack Compose, offering a declarative and robust way to manage app navigation.
- Dependency Injection: Implements Hilt to simplify dependency management and improve modularity.
This project is built with Kotlin and utilizes a variety of modern Android libraries and tools:
- UI: Jetpack Compose
- Architecture: MVVM with Repository Pattern
- Asynchronicity: Kotlin Coroutines, Kotlin KTX
- Navigation: Navigation Compose 3
- Data: Retrofit (Networking), Room (Database)
- Dependency Injection: Hilt
- Build & Optimization: KSP, R8
- Target SDK: 36
- Minimum SDK: 29
- Kotlin Version: 2.3.10
- Gradle Version: 9.0.1
- Data Source: SpaceX-API on GitHub
- API Documentation: SpaceX-API Docs (Postman)
If you enjoy this project, please give it a star! Check out all the stargazers here: Stargazers on GitHub
This library is actively maintained. Feedback, bug reports, and feature requests are welcome! Please feel free to open an issue or submit a pull request.