Need help with mosby?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

sockeqwe
5.5K Stars 858 Forks Apache License 2.0 604 Commits 28 Opened issues

Description

A Model-View-Presenter / Model-View-Intent library for modern Android apps

Services available

!
?

Need anything else?

Contributors list

# 4,674
Redux
Android
Java
delegat...
482 commits
# 12,638
Kotlin
materia...
dagger2
rxjava-...
6 commits
# 123,136
Java
mvi
Android
Redux
3 commits
# 67,709
Java
Groovy
SQLite
mvi
3 commits
# 4,345
Kotlin
android...
android...
Firebas...
3 commits
# 24,708
Kotlin
Groovy
React N...
materia...
3 commits
# 37,945
viper
React N...
kotlin-...
Gradle
2 commits
# 137,066
Java
Android
Kotlin
mvi
2 commits
# 34,332
Kotlin
jetpack
kotlin-...
dagger-...
2 commits
# 130,807
Iris
GraphQL
Nest
Mongoos...
2 commits
# 104,250
Kotlin
Clojure
Android
mvi
2 commits
# 36,531
Kotlin
materia...
kotlin-...
mvi
2 commits
# 181,481
Java
mvi
Android
Redux
1 commit
# 22,715
Kotlin
Android
kotlin-...
google-...
1 commit
# 186,303
Google
HTML
Kotlin
mvi
1 commit
# 33,206
algolia...
Clojure
mocking...
Kotlin
1 commit
# 4,791
Java
materia...
kotlin-...
delegat...
1 commit
# 54,955
Kotlin
Groovy
android...
Gradle
1 commit
# 27,633
Kotlin
Android
kotlin-...
mvi
1 commit
# 69,299
cpluspl...
cpp11
photopi...
Gradle
1 commit

Mosby

A Model-View-Presenter and Model-View-Intent library for Android apps.

Build Status

Dependency

dependencies {

compile 'com.hannesdorfmann.mosby3:mvi:3.1.1' // Model-View-Intent // or compile 'com.hannesdorfmann.mosby3:mvp:3.1.1' // Plain MVP // or compile 'com.hannesdorfmann.mosby3:viewstate:3.1.1' // MVP + ViewState support }

Additional modules:

dependencies {

// MVP + ViewState + LCE Views compile 'com.hannesdorfmann.mosby3:mvp-lce:3.1.1'

// Null Object Presenter for MVP  compile 'com.hannesdorfmann.mosby3:mvp-nullobject-presenter:3.1.1'

 // Queuing Presenter for MVP  compile 'com.hannesdorfmann.mosby3:mvp-queuing-presenter:3.1.1' }

SNAPSHOT:

dependencies {

compile 'com.hannesdorfmann.mosby3:mvi:3.1.2-SNAPSHOT'

compile 'com.hannesdorfmann.mosby3:mvp:3.1.2-SNAPSHOT' compile 'com.hannesdorfmann.mosby3:viewstate:3.1.2-SNAPSHOT'

compile 'com.hannesdorfmann.mosby3:mvp-lce:3.1.2-SNAPSHOT' compile 'com.hannesdorfmann.mosby3:mvp-nullobject-presenter:3.1.2-SNAPSHOT'  compile 'com.hannesdorfmann.mosby3:mvp-queuing-presenter:3.1.2-SNAPSHOT' }

You also have to add the url to the snapshot repository:

allprojects {
  repositories {
    maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }
  }
}

Documentation

See the project website.

For Model-View-Intent check out this blog post series.

Changelog

The changelog can be found in the release section

Migrating

In Mosby 3.0 we have changed the package name from

com.hannesdorfmann.mosby
to
com.hannesdorfmann.mosby3
(note the 3 at the end). Migrating a Mosby 2.x based app to Mosby 3.0 should be straightforward: Just replace all import statements of your app in android studio with
Edit -> Find -> Replace in Path ...
and set find
import com.hannesdorfmann.mosby
replace with
import com.hannesdorfmann.mosby3
. There were also some minor API changes (see changelog), but most apps should be fine by replacing the import statements.

Conductor

Mosby has a plugin for Conductor. You can find it here: https://github.com/sockeqwe/mosby-conductor

License

Copyright 2015 Hannes Dorfmann

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.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.