https://github.com/whosnickdoglio/eulerityhackathon
Small Android application for Eulerity Hackathon
https://github.com/whosnickdoglio/eulerityhackathon
android-app android-application android-mvp butterknife dagger2 glide mvp retrofit2-rxjava2 rxjava2
Last synced: about 1 month ago
JSON representation
Small Android application for Eulerity Hackathon
- Host: GitHub
- URL: https://github.com/whosnickdoglio/eulerityhackathon
- Owner: WhosNickDoglio
- Created: 2018-04-13T17:24:24.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2019-12-07T02:46:02.000Z (over 6 years ago)
- Last Synced: 2025-05-28T15:07:29.881Z (about 1 year ago)
- Topics: android-app, android-application, android-mvp, butterknife, dagger2, glide, mvp, retrofit2-rxjava2, rxjava2
- Language: Java
- Size: 134 KB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Eulerity Android Hackathon
My entry in the [Eulerity Android Hackathon](https://eulerity-hackathon.appspot.com/).

## Presentation Pattern
This project follows the Model-View-Presenter (MVP) presentation pattern. This breaks down to:
- Model: A data management layer that handles any business logic
- View: Responsible for displaying data from the Presenter and notifying the Presenter of any user input
- Presenter: A mediator layer between the model and the view that connects the two, it contains all the presentation logic,
like updating the model and reacting to input from the view
Each screen has a `Contract` that outlines interfaces for the relationship between the `View` and `Presenter`, each corresponding
`View` or `Presenter` implements their interface and uses it to communicate between each other.
## Libraries
- [Glide](https://bumptech.github.io/glide/) for image loading.
- [Glide-transformations](https://github.com/wasabeef/glide-transformations) for image filters.
- [Butterknife](https://jakewharton.github.io/butterknife/) for resource binding.
- [RxJava](https://github.com/ReactiveX/RxJava) and [RxAndroid](https://github.com/ReactiveX/RxAndroid) for Retrofit calls and
background threading.
- [Retrofit](https://square.github.io/retrofit/) for network calls.
- [Dagger](https://google.github.io/dagger/) for dependency injection.
- [EasyPermission](https://github.com/googlesamples/easypermissions) for permission requests.
- [Timber](https://github.com/JakeWharton/timber) for logging.