Skip to content

My take on how to implement a Flux like architecture in Android using a ToDo app as an example.

License

Notifications You must be signed in to change notification settings

andersliuxiaonian/FluxyAndroidTodo

 
 

Repository files navigation

#FluxyTodo FluxyTodo is an Android application that serves to demonstrate a few different things.

  • It is an example of how to use Dagger 2 and Butterknife for DI (dependency injection) in and how to use Otto to decouple Android applications.
  • It also serves as a proof of concept for a new Android application architecture I came up with.
  • It promotes dependency injection, TDD (test driven development), and a unidirectional data-flow, which makes the separation of view and business logic simple and clear.

####More information about what, why, and how, can be found in my accompanying blog post.

##Running If you would like to get this project up and running so you can mess around with it, just follow these simple steps.

  • Fork
  • Clone
  • Import project into Android Studio
  • Run app

##Testing If you would like to run the tests included in this project

  • Find the src/test/java/com/armueller/fluxytodo directory
  • Right click on the package (inside Android Studio)
  • Select "Run 'Tests in com.armueller.fluxytodo'"

##Future work Despite the fact that this app is completely self contained (similar to how the todo app works from Facebook's Flux), I am pretty satisfied with out it turned out. I came up with a couple different ideas on how server communication might be incorporated into this architecture, but I wasn't really happy with any of them. Obviously, to be complete, server communication must fit into the equation somewhere, so that's what I'll be working on next. Once I come up with a solution that im satisfied with, I will update this repo and my blog post to reflect what I came up with.

###Todo:

  • Figure out how to incorporate server communication into architecture
  • Set up db at firebase for todos
  • Make app sync data to firebase
  • Revise blog to incorporate server communication into architecture
  • Update repo

About

My take on how to implement a Flux like architecture in Android using a ToDo app as an example.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%