Sunazuri

esa.io client application for Android (unofficial)

APACHE-2.0 License

Stars
6
Committers
1

Sunazuri

Sunazuri is an esa.io client application for Android (unofficial)

Architecture

Sunazuri adopted multi-layered architecture inspired by The Clean Architecture.

  • Presentation Layer
    • includes Activity, Fragment, Custom View, etc.
  • Infrastructure Layer
    • includes abstractions of I/O (DB, Web API, local cache, etc.)
    • "Repository pattern"
  • Data Layer
    • includes 1 huge state container (using Droidux)
    • includes some reducers that manages states
    • includes many actions that abstracts repository accesses
app/src/main/java/info/izumin/android/sunazuri/
 AppComponent.java
 AppModule.java
 AppScope.java
 Sunazuri.java
 data
  DataComponent.java
  DataModule.java
  DataScope.java
  action
  reducer
 domain
  RootStore.java
  entity
  model
  repository
 infrastructure
  InfrastructureComponent.java
  InfrastructureModule.java
  api
  dao
  entity
  pref
  qualifier
  repository
   source
  util
 presentation
   activity
   fragment
     view

Libraries

Inspired by

License

Copyright 2016 Masayuki Izumi (izumin5210)

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.