@nvshink

Android & KMP developer

I design cross-platform products, local-first workflows and reusable Kotlin libraries for Android and desktop.

About

Kotlin Multiplatform as architecture, not just code sharing

The main interest area is keeping product logic coherent across targets while preserving the strengths of each platform.

I focus on Kotlin Multiplatform as a practical way to share domain logic, keep product quality high and avoid fragmented architecture between platforms.

My strongest background is Android, but I also care about desktop tooling, local storage, synchronization and developer experience in internal libraries.

I like products with clear mechanics: offline-first notes, technical utilities, productivity tools and infrastructure that stays maintainable as the codebase grows.

Programing Languages

  • Kotlin
  • Java
  • SQL

Mobile stack

  • Jetpack Compose
  • Android SDK
  • Kotlin Multiplatform
  • Room
  • Hilt
  • Coroutines
  • Flow
  • Navigation 3

Backend stack

  • Ktor
  • OkHttp
  • REST API
  • WebSocket

Architecture

  • MVVM
  • MVI
  • Clean Architecture
  • Microservices

Language

  • 🇬🇧English - B2

Applications

Product work with distinct visual and technical direction

Each application uses its own renderer so the homepage can stay maintainable while the projects still look intentionally different.

North

48°

Pitch 3°Roll 1°

Precision Utility

Horizon

Compass and inclination tool built around Android sensors

A compact Android utility for orientation, tilt measurement and sensor-driven feedback with a deliberate instrument-like visual language.

  • Android
  • Kotlin
  • Android SDK
  • Sensors API
  • Jetpack Compose

Utility app prototype

Open project page

Libraries

Reusable Kotlin modules with explicit API boundaries

Library cards stay more technical: supported platforms, API sketch and direct repository/documentation links.

Library

luma-compose

A multi-module KMP library with app-agnostic visual effects for Compose, built around reusable patterned backgrounds and glow interactions instead of product-specific widgets.

Status

Published artifact: io.github.nvshink:luma-compose:1.0.0

  • Android
  • Desktop
  • iOS
  • JS
  • Kotlin Multiplatform
  • Jetpack Compose
  • Compose Multiplatform
  • Android
  • Desktop JVM
  • JavaScript
  • iOS

API sketch

commonMain.dependencies {
  implementation("io.github.nvshink:luma-compose:1.0.0")
}

val patternStyle = PatternDefaults.softDots()
val glowStyle = GlowDefaults.softRadial()

Published artifact: io.github.nvshink:luma-compose:1.0.0

Open project page