Skip to content

Set of base libraries for Android development

Notifications You must be signed in to change notification settings

eadm/AndroidKit

Repository files navigation

Android Kit

Android Kit is a framework for Android development

Usage

Add the following to the root build.gradle file

allprojects {
    repositories {
        maven { 
            url "https://maven.pkg.github.com/eadm/AndroidKit"
            credentials {
                username = System.getenv('GITHUB_USER') ?: project.properties['GITHUB_USER']
                password = System.getenv('GITHUB_PERSONAL_ACCESS_TOKEN') ?: project.properties['GITHUB_PERSONAL_ACCESS_TOKEN']
            }
        }
    }
}

Next, you need to generate a GitHub Token with the read:packages permission and place it in the root gradle.properties file (usually located in ~/.gradle/gradle.properties).

GITHUB_USER=YOUR_GITHUB_USER_NAME
GITHUB_PERSONAL_ACCESS_TOKEN=YOUR_GITHUB_ACCESS_TOKEN

Artifacts

Model

A set of basic classes and extensions for models

dependencies {
    implementation("ru.nobird.app.core:model:1.0.8")
}

domain-rx

Extensions for working with RxJava

dependencies {
    implementation 'ru.nobird.android.domain:rx:x.y.z'
}

Presentation

presentation-base

Base for the presentation layer

dependencies {
    implementation 'ru.nobird.android.presentation:base:1.1.0'
}

presentation-redux

Base for the presentation-redux layer, an alternative to presentation-base

dependencies {
    implementation("ru.nobird.app.presentation:presentation-redux:1.3.1")
}

presentation-redux-coroutines

Extensions for the presentation-redux architecture with coroutines

dependencies {
    implementation("ru.nobird.app.presentation:presentation-redux-coroutines:1.3.1")
}

presentation-redux-rx

Extensions for the presentation-redux architecture with RxJava 2

dependencies {
    implementation("ru.nobird.android.presentation:redux-rx:1.3.0")
}

View

AdapterDelegates

Delegates for list adapters

dependencies {
    implementation 'ru.nobird.android.ui:adapter-delegates:1.1.1'
}

Adapters

Extensions for RecycleView adapters, including automatic updates via diff callback and selection handling

dependencies {
    implementation 'ru.nobird.android.ui:adapters:1.1.1'
}

view-injection

Extensions for Dependency Injection

dependencies {
    implementation("ru.nobird.android.view:injection:1.1.0")
}

view-navigation

Extensions for navigation via Cicerone

dependencies {
    implementation 'ru.nobird.android.view:navigation:1.1.0'
}

view-ui

A set of UI extensions

dependencies {
    implementation 'ru.nobird.android.view:ui:1.1.0'
}

view-redux

UI extensions for the redux architecture

dependencies {
    implementation("ru.nobird.android.view:redux:1.3.0")
}