-
Notifications
You must be signed in to change notification settings - Fork 26
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New York Times Books Application #6
Open
jordanrsas
wants to merge
13
commits into
opentable:master
Choose a base branch
from
jordanrsas:develop
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Create Clean Architecture directory structure. BugFix, app crashes. [x] Add MyApplication class to XML Manifest file. [x] Add Room DataBase dependencies to build.gradle [x] Add Navigation Architecture dependencies to build.gradle
Create Develop Branch
[x] Api, consume NYT Books Service, [x] Data Base Module [x] Repository [x] Create NYT Books Service Data Response Model Domain Layer [x] GetBooks Use Case Di [x] Application Component [x] App Module Also create NetworkHelper to check connectivity Add Network State permission to AndroidManifest.xml
Add Data layer
[x] SplashFragment [x] BookDetailFragment [x] BookListFragment [x] NavGraph [x] Fade animation for transition [ ] Book list [ ] Book detail [ ] Presentation classes [ ] View abstraction [ ] Di
Refactor BookRepository to receive Response to get the request response. Missing Detail Fragment [x] SplashFragment [x] BookDetailFragment [x] BookListFragment [x] NavGraph [x] Fade animation for transition [x] Book list [x] Book detail [x] Presentation classes [x] View abstraction [x] UseCase abstraction [x] Di [ ] Detail Fragment
Feature/add presentation layer
[x] BookRepository [x] GetBooksUseCase [x] BookMapper [ ] BookPresenter
Add Unit Testing
There are a bug with the navigation
A refactor of the application was carried out to implement an abstraction of the use cases. The logic of the repositories was separated from the use cases.
…reen-size Feature/add support multiple screen size
Add Project overview
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR introduces the New York Times Books application, an Android app that displays a list of books from the New York Times Best Sellers list. The app is developed using clean architecture with the MVP design pattern and incorporates some other Android development technologies.
Features
[x] Clean Architecture: Separation of concerns into Presentation, Domain, and Data layers.
[x] MVP Design Pattern: Implementation of Model-View-Presenter pattern for managing UI logic.
[x] Networking: Integration with Retrofit for making network requests to the New York Times Books API.
[x] Dependency Injection: Use of Dagger for managing dependencies.
[x] Local Storage: Room database for persisting book data locally.
[x] Asynchronous Operations: RxJava for handling asynchronous tasks.
[x] Image Loading: Glide for efficient image loading and caching.
[x] Navigation: Navigation Architecture Component for managing fragment transitions.
Known Issues
There is an unresolved bug where the loadBookDetails method in BookDetailPresenter, never reach the subscribe block. This might be related to threading issues or improper disposal of RxJava subscriptions. Further debugging is required to pinpoint the exact cause and resolve the issue. The basic required functionality is covered, this bug only prevents painting the element details on another screen.
Contributor: César Jordán Rosas Ávila