Showcase app that lists current trending Github repositories
Data is being fetched from the REST api and augmented with programming language color from the locally stored language catalogue.
- Clean Architecture
- Compose
- Hilt
- Coroutines
- Retrofit
- Lottie
- Light/Dark Theme
- Unit/Integration/UI tests
- Separation of concerns is respected via packages in a single module. Any significant scale of the real app would require separation on gradle modules level
- Primitive error handling based on exceptions. Given more time it's advised to adopt more functional Railway Oriented approach based on Result/Either return types. Example https://github.com/Ghedeon/Weather.
- Navigation wasn't required because of the single screen nature of the app. Otherwise Compose Navigation would be a good choice.
- Lottie loading animation: Rameez Mukadam