This android app allows you to see the lists of your friends repositories
- Displaying list of your friends
- Showing the list of repositories of selected friend
- Showing the list of branches of selected repository
- All loaded data is cached so you can browse lists even without internet connection
- Simple material design theme
- Lists filtering feature using search input in appbar
Open app and enter your github login and password
After that you will see the list of your friends (followers)
Select any friend and app will show you his repos
Select repository from list and you will see the list of branches of this repo
You can also filter these lists using search button in appbar
- All application activities uses Loaders API to load data from both network and cache
- There are 2 types of loaders: local and network
- Local loaders retrieves data from cache backed by Realm database
- Network loaders do REST API calls using Retrofit
- Each activity (apart from LoginActivity) has instances of these loaders and callbacks for them
- When network loader retrieves a list of items it uses CacheSyncManager instance to refresh cache with newly retrieved items
- When network loader completes request, it forces local loader to reload data
- Both local and network loaders use the same data models classes thanks to the compatibility of Realm and Retrofit
- Activities render only local loaders results. It uses RecyclerView and ListAdapter to display items
This application uses a several external libraries:
- Retrofit - REST API implementation
- Realm - local cache
- Android Support Library - material design widgets, styles
- Picasso - loading user avatars
- Materialish-progress - material progress wheel widget