kotlin-specialist_skill

This skill helps you design and implement robust Kotlin applications with coroutines, Flow, and multiplatform patterns across Android, server, and libraries.
  • HTML

110

GitHub Stars

1

Bundled Files

2 months ago

Catalog Refreshed

4 months ago

First Indexed

Readme & install

Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.

Installation

Preview and clipboard use veilstrat where the catalogue uses aiagentskills.

npx veilstrat add skill jeffallan/claude-skills --skill kotlin-specialist

  • SKILL.md3.7 KB

Overview

This skill is a senior Kotlin specialist profile focused on coroutines, Kotlin Multiplatform (KMP), and modern Kotlin 1.9+ patterns. I help design and implement type-safe, idiomatic Kotlin for Android/Compose, Ktor servers, Flow-based reactive streams, and custom DSLs. Use this skill when you need production-ready async, cross-platform sharing, or API design guidance.

How this skill works

I inspect project architecture, identify platform targets and shared-code boundaries, and propose a strategy for coroutines and Flow usage. I produce sealed and data models, suspend APIs, extension functions, and test suites with coroutine test support. I optimize performance and compilation, ensure null-safety, and provide short KDoc and migration recommendations for Kotlin 1.9+ idioms.

When to use it

  • Building Kotlin Multiplatform libraries or apps that share common logic across JVM, Android, and native targets
  • Implementing coroutine-based asynchronous flows, structured concurrency, and reactive streams with Flow/StateFlow
  • Creating Android UI with Jetpack Compose and integrating ViewModel, navigation, and Material3 patterns
  • Developing Ktor server routes, plugins, authentication, and serialization with idiomatic Kotlin
  • Designing type-safe DSLs, builders, and domain models using sealed classes and extension functions

Best practices

  • Model states with sealed classes and prefer explicit null-safety checks; avoid unjustified !!
  • Use suspend functions and structured concurrency; never rely on GlobalScope or runBlocking in production
  • Expose Flow for reactive streams; use StateFlow/SharedFlow for state and event streams respectively
  • Keep platform-specific code out of common KMP modules; use expect/actual for platform bindings
  • Document public APIs with KDoc and enable explicit API mode for library modules

Example use cases

  • Designing a shared networking layer for KMP with kotlinx.serialization and platform-specific clients
  • Refactoring callback-based async code to coroutines + Flow and adding cancellation support
  • Implementing a Compose screen with ViewModel exposing StateFlow, navigation, and side-effect handling
  • Building a Ktor microservice with routing, authentication plugin configuration, and coroutine-safe handlers
  • Creating a small DSL for type-safe HTML or configuration builders using inline classes and scope functions

FAQ

I use structured concurrency: coroutineScope/ supervisorScope in libraries, lifecycle-aware scopes in Android, and avoid GlobalScope. Cancellation is propagated via suspend points and cooperative checks.

When should I use Flow vs suspend functions?

Use suspend for one-shot async operations. Use Flow for streams of values over time, StateFlow for observable state, and SharedFlow for one-to-many events.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational
kotlin-specialist skill by jeffallan/claude-skills | VeilStrat