aboutsummaryrefslogtreecommitdiff
path: root/README.md
blob: b5bce8fbdaadc8f4116f9000ad0d97ed225a5561 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
<img src="https://cdn.rawgit.com/AllanWang/KAU/master/files/logo.svg" alt="KAU" width="30%"/>

Kotlin Android Utils

This library contains small helper functions used throughout almost all of my other projects. The goal is to make common interactions executable in a single line.

[Changelog](docs/Changelog.md)

------------

KAU is available on JitPack

[![](https://jitpack.io/v/ca.allanwang/kau.svg)](https://jitpack.io/#ca.allanwang/kau) 
[![Build Status](https://travis-ci.org/AllanWang/KAU.svg?branch=master)](https://travis-ci.org/AllanWang/KAU)
[![GitHub license](https://img.shields.io/badge/license-Apache%202-blue.svg)](https://raw.githubusercontent.com/AllanWang/KAU/master/LICENSE)

To apply, add the following to your root build.gradle:

```gradle
allprojects {
    repositories {
        ...
        maven { url "https://jitpack.io" }
    }
}
```

And add the following dependencies (You can use a specific version, commit, or -SNAPSHOT):

Note that only `core` is required if you want the basic features.
Note that if you use any particular submodule, it will automatically include all of its necessary submodules.

```gradle
dependencies {
    //All submodules extend this
    compile "ca.allanwang.kau:core:$KAU"
    //All submodules with extensive ui extend this
    compile "ca.allanwang.kau:core-ui:$KAU"
    
    compile "ca.allanwang.kau:about:$KAU"
    compile "ca.allanwang.kau:colorpicker:$KAU"
    compile "ca.allanwang.kau:imagepicker:$KAU"
    compile "ca.allanwang.kau:kpref-activity:$KAU"
    compile "ca.allanwang.kau:searchview:$KAU"
}

```

-----------

# Submodules 
(linked to their respective Docs)

## [Core](core#readme)
* Collection of extension functions and small helper methods applicable in almost any application.
* Notable features: KPrefs, Changelog XML, Ripple Canvas, Extensions, Email Builder
* Includes 
[`AppCompat`](https://developer.android.com/topic/libraries/support-library/index.html), 
[`Material Dialogs (core)`](https://github.com/afollestad/material-dialogs),
[`Iconics`](https://github.com/mikepenz/Android-Iconics), 
[`Anko`](https://github.com/Kotlin/anko),
[`Timber`](https://github.com/JakeWharton/timber), 
[`Kotlin stdlib`](https://kotlinlang.org/api/latest/jvm/stdlib/)

## [Core UI](core-ui#readme)
* Collection of complex views and widgets
* Includes `:core`, `:adapter`, 
[`RxJava`](https://github.com/ReactiveX/RxJava), 
[`RxAndroid`](https://github.com/ReactiveX/RxAndroid), 
[`RxKotlin`](https://github.com/ReactiveX/RxKotlin), 
[`RxBinding`](https://github.com/JakeWharton/RxBinding)

## [About](about#readme)
* Implementation of an overlaying about section, along with automatic lib detection; also includes the lib strings for KAU
* Includes `:core-ui`, `:adapter`, 
[`About Libraries`](https://github.com/mikepenz/AboutLibraries)

## [Adapter](adapter#readme)
* Kotlin bindings for the fast adapter, as well as RecyclerView animations
* Includes `:core`, 
[`Fast Adapter`](https://github.com/mikepenz/FastAdapter)

## [Color Picker](colorpicker#readme)
* Implementation of a color picker dialog with subtle transitions and a decoupled callback
* Includes `:core`, 
[`Material Dialogs (commons)`](https://github.com/afollestad/material-dialogs)

## [Image Picker](imagepicker#readme)
* WIP - Overlaying media chooser
* Includes `:core-ui`, 
[`Glide`](https://github.com/bumptech/glide)

## [Kpref Activity](kpref-activity#readme)
* Fully programmatic implementation of a Preference Activity, backed by RecyclerViews
* Includes `:core-ui`, `:adapter`, `colorpicker`

## [SearchView](searchview#readme)
* Material searchview with kotlin bindings
* Includes `:core-ui`, `:adapter`

-----------

# Showcase

![About Activity Gif](https://raw.githubusercontent.com/AllanWang/Storage-Hub/master/kau/kau_about_activity.gif)
![KPref Accent Gif](https://raw.githubusercontent.com/AllanWang/Storage-Hub/master/kau/kau_kpref_accent.gif)
![KPref Items Gif](https://raw.githubusercontent.com/AllanWang/Storage-Hub/master/kau/kau_kpref_items.gif)
![SearchView Gif](https://raw.githubusercontent.com/AllanWang/Storage-Hub/master/kau/kau_search_view.gif)