• Stars
    star
    734
  • Rank 59,756 (Top 2 %)
  • Language
    Kotlin
  • License
    MIT License
  • Created about 5 years ago
  • Updated over 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Easy to understand real-life example of a modularized Android app

About

While there are quite some good Android sample projects available such as Plaid, Bandhook or Sunflower, there isn't one that only focusses on how to architect/configure a multi-module application.

This repository demonstrates a clearly defined, hierarchical three-layered architecure consisting of

  • one App module
  • several feature modules: login, dashboard and sharing
  • several library modules: actions, ui-components

It shows how to split an app in logical vertical slices, how to handle in-feature and across feature navigation (using navigation components), how each module can be tested and how to organize dependencies and build.gradle files.

To learn more, have a look at the following posts:

Modularized architecture

Note that all code runs and executes, but the screens only contain data in xml preview. This means running the app provides a very "empty experience", but it also keeps the example simple and focussed.

Features

Login

Login feature navigation graph

Dashboard

Dashboard feature navigation graph

Sharing

Sharing feature navigation graph

More Repositories

1

LandscapeVideoCamera

Powerful custom Android Camera with granular control over the video quality and filesize, restricting recordings to landscape only.
Java
1,227
star
2

FeatureFlagExample

Powerful architecture to mange feature flags locally and remotely
Kotlin
280
star
3

MockitoExample

Sample project to demonstrate Mockito usage on Android
Java
86
star
4

ArtifactoryExample

Example code to upload and use artefacts from Artifactory
Java
69
star
5

AndroidUninstall

Batch uninstall Android apps by provinding (part of) a package name
Shell
57
star
6

MockitoCollectionMatchers

Extension of Mockito that provides easy to use matchers for Collections
Java
48
star
7

Legofy

Android library to Legofy any image
Java
47
star
8

MethodCountExample

Sample project to shrink huge libraries and reduce their method count.
Java
33
star
9

GitAsMaven

Gradle script to use Git as a private Maven repository
28
star
10

WagonGitExample

Example code to upload and use artefacts from Bitbucket
Java
17
star
11

ResourceNamingExample

Non working sample project to demonstrate how to name resources
Java
9
star
12

MigrateArtifactsMavenCentral

Script to migrate existing artifacts from JCenter to Maven Central
Shell
8
star
13

jeroenmols.github.io

Personal blog and website
JavaScript
8
star
14

TravisCoverallsExample

Example code to configure Travis CI and Coveralls
Java
6
star
15

FragmentBackNavigation

Sample project to demonstrate a peculiarity with Fragment back navigation
Kotlin
6
star
16

architecturediagrams

Interactive, versionable architecture diagrms
2
star
17

StrandHoggAttackRecents

Demonstration of a StrandHogg attack via the task switcher
Kotlin
2
star
18

Snap

Sample project to experiment with a full Kotlin reactive app
Kotlin
2
star
19

ReactTicTacToe

My solution to https://reactjs.org/tutorial/tutorial.html#setup-for-the-tutorial
JavaScript
1
star
20

LibraryExample

Demonstrate how to consume release artifacts in project
Kotlin
1
star