Skip to content

Instantly share code, notes, and snippets.

@Matikano
Matikano / mviBaseVm
Last active May 12, 2025 10:43
MVI BaseViewModel file template
1. Main one - ViewModel
NAME: MVI BaseViewModell
FILE NAME: BaseViewModel
EXTENSION: kt
#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME} #end
import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope
@Matikano
Matikano / mviHiltFileTemplate.txt
Last active May 12, 2025 10:56
File Templates for Android Kotlin
1. Main one - ViewModel
NAME: MVI Fragment Screen with ViewModel
FILE NAME: ${NAME}ViewModel
EXTENSION: kt
#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME} #end
import ${PACKAGE_NAME}.${NAME}Action
import ${PACKAGE_NAME}.${NAME}State
@Matikano
Matikano / LiveTemplates
Last active December 6, 2024 12:49
Android Studio usefull MVVM LiveTemplates
1. MVI BaseViewModel (mviBaseVm) -Creates an abstract class for MVI BaseViewModel; Reuqires UiAction and UiEvent marker interfaces:
import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope
import kotlinx.coroutines.channels.Channel
import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.SharingStarted
import kotlinx.coroutines.flow.onStart
import kotlinx.coroutines.flow.receiveAsFlow
import kotlinx.coroutines.flow.stateIn