forked from kike-canaries/canairio_android
-
Notifications
You must be signed in to change notification settings - Fork 0
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
Dashboard and new architecture. #4
Merged
Merged
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
…screen feat: Create splash screen.
…plates Create GitHub templates.
…into feature/51-dashboard
…into feature/51-dashboard
…screen [URGENT] fix: in the previous PR these files where not pushed
…ndroid-hpma115s0 into feature/51-dashboard
…I with mocked coordinates
…d added distance to station value.
…d added distance to station value.
…ndroid-hpma115s0 into feature/51-dashboard
Merged
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.
Description
This is a fairly large PR, because we did many changes that were really dependent from each other that restricted us to brake the changes in multiple PRs. Here I'm going to do a summary of each change:
Added Material Design Support
We added the necessary files to implement Google's Material Design which is the recommended design language by Google and helps us to have a more modern and consistent UI language, this change is because a new UI design was discussed in issue kike-canaries#51 and it uses Material Design.
Navigation
Created a bottom navigation menu to replace the existing navigation witch was based on a third party library. The new navigation uses Android's native component, Material Design and the new Jetpack Navigation Component.
Dashboard Component
We created a new component that is now the entry point of the app. The Dashboard component shows the user the AQI of the nearest public station and the distance to that station. It also contains a few buttons that at the moment do not have any functionality but will have in the future.
Clean Architecture
This is the biggest change in the application. In order to have a more testable, scaling and use the software engineer best practices we applied the use of Uncle's Bob Clean Architecture. This architecture is first used in the Dashboard module but it will be slowly applied to the other modules of the app.
To use Uncle's Bob Clean Architecture we need to use Dependency Injection and we used Android's new library for DI Hilt which uses Dagger under the hud.
Tests
The use of DI makes the app more testable and the new Dashboard module has an estimated unit test coverage of 90% and that coverage is also slowly being applied to the other app's modules. This will help to have a more reliable application.
Important Notes!
Because the app is in the transition to apply Uncle's Bob Clean Architecture some functionalities of the app are not working while we make the refactor of the app.
Related Issues
kike-canaries#51
Tests
Added unit tests for all the Dashboard Module.