View Code? Open in Web Editor
NEW
A mini project to display information about a card, making API calls to https://binlist.io
License: MIT License
ocr-scan's Introduction
Android Build ![CI](https://github.com/dalafiarisamuel/ocr-scan/actions/workflows/workflow.yml/badge.svg?branch=master)
A mini project to display information about a card, making API calls to https://binlist.io
- MVVM Architecture
- Kotlin Coroutines with Flow
- Dagger Hilt
- Kotlin Gradle DSL
- GitHub actions for CI
- Unit testing
- Viewmodel - Presenter for persisting view state across config changes
- Room Database - Provides abstraction layer over SQLite
- Retrofit - type safe http client and supports coroutines out of the box.
- Moshi - JSON Parser,used to parse requests on the data layer for Entities and understands Kotlin non-nullable and default parameters
- okhttp-logging-interceptor - logs HTTP request and response data.
- kotlinx.coroutines - Library Support for coroutines,provides
runBlocking
coroutine builder used in tests
- Truth - Assertions Library,provides readability as far as assertions are concerned
- Retromock - web server for testing HTTP clients
- Robolectric - Unit test on android framework.
- Espresso - Test framework to write UI Tests
- Dagger Hilt - handles dependency injection
- Work Manager - the recommended solution for persistent work
![Screenshot 1](./images/image1.png)
![Screenshot 2](./images/image2.png)