FlowMVI is a Kotlin Multiplatform architectural framework based on coroutines. It enables you to extend your business logic with reusable plugins, handle errors, achieve thread-safety, and more. It takes about 10 minutes to get started.
This is an app to see the framework's features and learn how to get started with it.
Usually architecture frameworks mean boilerplate and support difficulty for marginal benefits of "clean code". FlowMVI does not dictate what your code should do or look like. Instead, this library focuses on building a supporting infrastructure to enable new possibilities for your app.
Here's what you get:
- Powerful Plug-In system to automate processes and reuse any business logic you desire
- Create automatic analytics handlers, websocket connections, error handling mechanisms, or anything else once and reuse them throughout your whole project automatically
- Automatically recover from any errors and report them to analytics.
- Build fully async, reactive and parallel apps - with no manual thread synchronization required!
- Create multiplatform business logic components with pluggable UI
- Automatic multiplatform system lifecycle handling
- Out of the box debugging, logging, caching and long-running tasks support
- Debounce, retry, batch, throttle, conflate, monitor, modify any operations automatically
- Compress, persist, and restore state automatically on any platform
- No base classes, complicated interfaces, or factories of factories - logic is declarative and built with a DSL
- Build Restartable, reusable business logic components with no external dependencies or dedicated lifecycles
- Create compile-time safe state machines with a readable DSL. Forget about casts, inconsistent states, and nulls
- First class Compose Multiplatform support optimized for performance and ease of use
- Use both MVVM+ (functional) or MVI (model-driven) style of programming
- Share, distribute, disable, manage side-effects based on your team's needs
- Dedicated IDE Plugin for debugging and codegen and app for Windows, Linux, MacOS
- Integration with popular libraries, such as Decompose (Essenty), Koin, Kodein, androidx.navigation, and more.
- The core library has no dependencies except kotlin coroutines.
- Core library is fully covered by hundreds of tests
- Minimal performance overhead, equal to using a simple Channel, with regular benchmarking
- Test any business logic using clean, declarative DSL.
- Learn more by exploring the sample app in your browser
- 10 minutes to try by following the Quickstart Guide.
This app doesn't collect user data. Unless otherwise specified, this app is subject to Respawn general privacy policy : https://respawn.pro/privacy