android-presentation-mvi

Construct Android/KMP UI state and actions using the MVI pattern.

6|Updated Jun 24, 2026
One-click install
npx skills add https://github.com/PL-Coding-GmbH/Skills --skill android-presentation-mvi-pl-coding-gmbh
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: android-presentation-mvi
Source: https://github.com/PL-Coding-GmbH/Skills/tree/main/skills/android-presentation-mvi
Command: npx skills add https://github.com/PL-Coding-GmbH/Skills --skill android-presentation-mvi-pl-coding-gmbh

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires kotlinx.coroutines, kotlinx.serialization, androidx.lifecycle, and includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill aids in creating maintainable and robust UI structures for Android/KMP applications using the Model-View-Intent (MVI) architecture, simplifying state management and action handling.

Core Features & Use Cases

  • MVI Architecture: Implements the MVI pattern with State, Action, Event, ViewModel, and Composable structure.
  • State Management: Utilizes StateFlow for state handling with update methods for managing UI state changes.
  • Action Handling: Defines user interactions through sealed interfaces with explicit handling.
  • Use Case: Ideal for building screens that require structured state management, action triggering, and UI event handling.

Quick Start

Use the android-presentation-mvi skill to implement a ViewModel for a new screen and define the state and actions required.

Frequently Asked Questions about android-presentation-mvi

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I implement MVI architecture for Android UI state management?

MVI architecture for Android UI is implemented by defining State, Action, and Event structures, then using a ViewModel to manage StateFlow updates and handle user interactions explicitly. This approach ensures robust and maintainable screen logic.

What is the best way to handle user actions in a Kotlin MVI ViewModel?

The best way to handle user actions in a Kotlin MVI ViewModel is by defining them through sealed interfaces. This allows explicit action handling and structured state updates via StateFlow, ensuring robust UI state management.

Can I use this MVI pattern for Kotlin Multiplatform KMP applications?

Yes, you can use this MVI pattern for Kotlin Multiplatform KMP applications. It constructs state and actions for Android and KMP environments, supporting ViewModel setup and state flows across shared modules.

How does StateFlow work for updating UI state in MVI?

StateFlow works for updating UI state in MVI by exposing a singular state object to the UI. The ViewModel utilizes specific update methods to manage and emit state changes, ensuring consistent UI rendering.

Do I need kotlinx coroutines and lifecycle dependencies for Android MVI?

Yes, you need kotlinx coroutines and androidx lifecycle dependencies for Android MVI. These libraries provide the foundational ViewModel setup and asynchronous state flow handling required by the architecture.