A collection of Kotlin Multiplatform utilities designed to streamline common development patterns across Android, iOS, JVM, and WASM targets.
AsyncState<T>: Type-safe representation of asynchronous operations withIdle,Loading,Success, andErrorstates- Comprehensive extension functions for state transformation and handling
- Flow integration for reactive programming
- Null-safe mapping utilities
JobManager: Smart coroutine job management with strategies for joining or replacing existing jobsRefreshableJob: Refreshable coroutine jobs with cancellation supportwithTimeBounds: Time-bounded coroutine execution
UpdatableState<T>: Mutable state containers with async operationsViewModelState: ViewModel-ready state managementRepositoryState: Repository pattern state management- Factory functions for creating states from Flows and suspending functions
PresentableException: User-friendly error representationsErrorMessage: Structured error messages with retry capabilities- Automatic error ID generation for debugging
A small RPC framework built on Ktor for defining typed request/response and streaming service calls between a KMP client and a JVM Ktor server.
urpc-protocol: protocol-only types —@Urpc/@UrpcWireName,ServiceDescriptor,UrpcStreamingFrame,ServiceError,ServiceExceptionurpc-client: KMPServiceClientFactorythat builds typed callers backed by Ktor HTTP and WebSocket transports, with auto-reconnect and 401-triggered token refreshurpc-server: JVM Ktor bindings +Route.urpc(resolver)for mounting the HTTP and WebSocket routes