Model screen state, events, reducers, and side effects for Android UIs with predictable lifecycle-aware ownership.
47
35%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/android-state-management/SKILL.mdandroid-coroutines-flowandroid-ui-states-validationdata class TaskBoardState(
val tasks: List<TaskUiModel> = emptyList(),
val isLoading: Boolean = false,
val errorMessage: String? = null,
)private val _uiState = MutableStateFlow(TaskBoardState())
val uiState: StateFlow<TaskBoardState> = _uiState.asStateFlow()
private val _events = MutableSharedFlow<TaskBoardEvent>(replay = 0)
val events: SharedFlow<TaskBoardEvent> = _events_uiState.update { state ->
state.copy(isLoading = false, tasks = refreshedTasks, errorMessage = null)
}cd examples/orbittasks-compose && ./gradlew :app:testDebugUnitTestcd examples/orbittasks-xml && ./gradlew :app:testDebugUnitTestpython3 scripts/eval_triggers.py --skill android-state-managementc5bf673
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.