All Projects → julianomoraes → Componentizationarch

julianomoraes / Componentizationarch

Licence: apache-2.0

Programming Languages

kotlin
9241 projects

Projects that are alternatives of or similar to Componentizationarch

Android Clean Architecture Boilerplate
Apply clean architecture on Android
Stars: ✭ 141 (-46.79%)
Mutual labels:  architecture, mvp, mvp-architecture, mvp-android
Mvpart
🎨 A new Android MVP architecture (此框架旨在解决传统 MVP 类和接口太多, 并且 Presenter 和 View 通过接口通信过于繁琐, 重用 Presenter 代价太大等问题).
Stars: ✭ 776 (+192.83%)
Mutual labels:  architecture, mvp, mvp-architecture, mvp-android
Armscomponent
📦 A complete android componentization solution, powered by MVPArms (MVPArms 官方快速组件化方案).
Stars: ✭ 1,664 (+527.92%)
Mutual labels:  architecture, mvp, mvp-architecture, mvp-android
Mvparms
⚔️ A common architecture for Android applications developing based on MVP, integrates many open source projects, to make your developing quicker and easier (一个整合了大量主流开源项目高度可配置化的 Android MVP 快速集成框架).
Stars: ✭ 10,146 (+3728.68%)
Mutual labels:  architecture, mvp, mvp-architecture, mvp-android
Android Mvp Architecture
🏛 A basic sample android application to understand MVP in a very simple way. Just clone, build, run and understand MVP.
Stars: ✭ 203 (-23.4%)
Mutual labels:  architecture, mvp, mvp-architecture, mvp-android
Villains-and-Heroes
Android app built with MVP architectural approach and uses Marvel Comics API that allows developers everywhere to access information about Marvel's vast library of comics. ⚡
Stars: ✭ 53 (-80%)
Mutual labels:  architecture, mvp, mvp-architecture
Moxy
Moxy is MVP library for Android
Stars: ✭ 1,611 (+507.92%)
Mutual labels:  architecture, mvp, mvp-architecture
uv-index
This is a work-in-progress (🔧️) ultraviolet index viewer app for demonstrating Instant Apps + Kotlin + Dagger + MVP
Stars: ✭ 64 (-75.85%)
Mutual labels:  mvp, mvp-architecture, mvp-android
Linkage Recyclerview
即使不用饿了么订餐,也请务必收藏好该库!🔥 一行代码即可接入,二级联动订餐列表。
Stars: ✭ 2,970 (+1020.75%)
Mutual labels:  mvp, mvp-architecture, mvp-android
XMVP
This is a mvp framework to help you easily achieve mvp structure.
Stars: ✭ 61 (-76.98%)
Mutual labels:  mvp, mvp-architecture, mvp-android
mvp-android-template
MVP Android Template to give you a Quick Head Start for your next Android Project. It implements MVP Architecture using Dagger2, Room, RxJava2 , Retrofit2
Stars: ✭ 20 (-92.45%)
Mutual labels:  mvp, mvp-architecture, mvp-android
wikilight
A lightweight Wikipedia Client
Stars: ✭ 50 (-81.13%)
Mutual labels:  mvp, mvp-architecture, mvp-android
Karchi
Repository that showcases 3 different Android app architectures, all with Java and Kotlin versions: "Standard Android", MVP and MVVM. The exact same app is built 6 times following the different patterns.
Stars: ✭ 20 (-92.45%)
Mutual labels:  architecture, mvp, mvp-android
Trickl
trickl torrent client
Stars: ✭ 50 (-81.13%)
Mutual labels:  mvp, mvp-architecture, mvp-android
MVPDemo
MVP+动态代理的模式框架例子
Stars: ✭ 12 (-95.47%)
Mutual labels:  mvp, mvp-architecture, mvp-android
KotlinMvpTemplateGenerator
Android Studio template for Kotlin with MVP + Dagger2 + Retrofit2
Stars: ✭ 65 (-75.47%)
Mutual labels:  mvp, mvp-architecture, mvp-android
Androidbasemvp
🚀一个快速搭建MVP+RxJava2+Retrofit 基础框架,主要是封装有Http网络请求、日志、缓存、加载等待、toast、页面状态布局管理、权限、RxBus、Glide图片加载等组件,方便快速开发新项目、减少开发成本。
Stars: ✭ 184 (-30.57%)
Mutual labels:  mvp, mvp-architecture, mvp-android
Moxy
Moxy is MVP library for Android with incremental annotation processor and ktx features
Stars: ✭ 234 (-11.7%)
Mutual labels:  mvp, mvp-architecture, mvp-android
MVPDemo
Android MVP架构Demo--Android MVP架构从入门到精通-真枪实弹
Stars: ✭ 66 (-75.09%)
Mutual labels:  mvp, mvp-architecture, mvp-android
android-template
Template for android development at Tiki
Stars: ✭ 17 (-93.58%)
Mutual labels:  mvp, mvp-architecture, mvp-android

Componentization Architecture v2 - [ReComponents]

A reactive, declarative, lifecycle aware, testable and reusable way of using UI components on Android using Redux.

Blog Post

Fragment is not your view

Installation

dependencies {
    // Netflix's ReComponents 0.0.1 Beta
    api(name:'recomponents-0.0.1', ext:'aar')
}

Fragment / Activity

private val store = StoreImpl(
    reducer = ::appReducer,
    initialState = AppState(),
    middleware = listOf(::appMiddleware)
)

class YourActivity : AppCompatActivity() {
    private val uiComponentManager by lazy {
        ViewModelProviders.of(this,
            object : ViewModelProvider.Factory {
                @Suppress("UNCHECKED_CAST")
                override fun <T : ViewModel?> create(modelClass: Class<T>): T {
                    return UIComponentManager(store) as T
                }
            }
        )[UIComponentManager::class.java]
    }

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.linearlayout_main)

        initComponents(findViewById(R.id.root))
    }
    
    private fun initComponents(container: ViewGroup) {
        with(uiComponentManager) {
            subscribe(YourComponent(container)) {
                YourComponentState(
                    ...
                )
            }
            
            ...
        }
    }

    override fun onDestroy() {
        super.onDestroy()
        uiComponentManager.store.unsubscribeAll()
    }

Component

data class YourComponentState(
    ...
)

class YourComponent(
    container: ViewGroup
) : UIComponent<YourComponentState>() {
    override fun render(state: MyComponentState) {}
}

Complete Code Samples

Activity

Redux + Components

Components & RecyclerViews

References

ReKotlin

Netflix’s Android Componentization Architecture V1 - Droidcon NYC 2018 Talk

Netflix’s Android Componentization Architecture V1 - Droidcon SF 2018 Talk

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].