-
Notifications
You must be signed in to change notification settings - Fork 6
Master - koin (do not merge) #63
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
Open
agustinkoll-rootstrap
wants to merge
84
commits into
develop
Choose a base branch
from
master-koin
base: develop
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 hidden or 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
View models comunication
…ssionManager.kt Co-authored-by: Mathías Cabano <cabanomathias@gmail.com>
Adding permissions manager
Feature/corutines network layer
Minor view models refactor
updated crashlytics updated build graddle added view binding
removed deprecated code
Enhancement/libraries updates
added test libraries renamed user dto
# Conflicts: # app/build.gradle # app/src/main/java/com/rootstrap/android/ui/activity/main/SignInActivityViewModel.kt # app/src/main/java/com/rootstrap/android/ui/activity/main/SignUpActivityViewModel.kt # app/src/main/java/com/rootstrap/android/util/UtilModule.kt # app/src/test/java/com/rootstrap/android/SignInActivityViewModelTest.kt # app/src/test/java/com/rootstrap/android/SignUpActivityViewModelTest.kt # app/src/test/java/com/rootstrap/android/test/UnitTestBase.kt
Clean architecture koin
Sync master from origin repo
Sync Master-koin from original repo
Updated Koin library to 3.1.3 Updated KtLint library to 0.44.0 Optimized buildSrc module for Gradle Dependencies Management Updated App name Optimized app for Android 12 Added pre-push GitHook
…o_gradle_kotlin Migrate Gradle Groovy build scripts (*.gradle) to Gradle Kotlin build scripts (*.gradle.kts)
Utility extensions for master-koin
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 branch contains modular clean architecture with Koin for dependency management as an alternative to the main develop branch.
APP
This is the presentation module, also known as the user interaction layer. Here we manage activities, fragments, views and viewModels.
DATA
In this module we find a definition of the different data sources (local or remote).
The implementation of each repository.
Network and endpoints implementation.
Database implementation. (not implemented in this pr).
Test: We added example test to the View models mocking each use case.
Depends on:
DOMAIN
It's the layer where we manage the business models.
Depends on: No dependencies.
USE-CASES
This is the management layer of all the actions that the user can trigger. The business logic goes here. Every action that the user can make in the app has a use case.
Depends on:
There is an additional BUILDSRC module that we use to manage dependencies and versions. This module takes a system name that is recognized by the compiler and executed in the first instance before loading any other module.
We follow one of the basic principles of development to found the bases on the three following pillars:
SCALABLE
MAINTAINABLE
TESTABLE
Dependencies Chart: