A simple Github User Search Application.
- Fetch User Based keyword entered by user on Search View
- See User Details (followers, Github Repo etc)
- Built with Modern Android Development practices
- Multi Module Application demonstrates SOLID principles and Clean Architecture
- Utilized remote, data, domain and presentation Layer
- Includes unit and integration tests of each module
- Kotlin - First class and official programming language for Android development.
- Coroutines - For asynchronous and more..
- Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
- LiveData - Data objects that notify views when the underlying database changes.
- ViewModel - Stores UI-related data that isn't destroyed on UI changes.
- ViewBinding - Generates a binding class for each XML layout file present in that module and allows you to more easily write code that interacts with views.
- Dependency Injection
- Hilt - Easier way to incorporate Dagger DI into Android apps.
- Retrofit - A type-safe HTTP client for Android and Java.
- Paging3 - For loading pagination data in more robust way
- MockK - For Mocking and Unit Testing
- Espresso -For UI Testing
- CMake -For Storing Credentails to prevent expose of Keys when doing reverse engineering