kotlin-fullstack
v0.9.0Kotlin full-stack skills distilled from a real Kotlin Multiplatform product: a product brief that feeds docs-bootstrap and a designer, a backlog loop that turns one item into one pull request, project structure, shared wire contract, Ktor server (JVM + Kotlin/Native), standing up a new Kotlin/Native service from nothing to a deployed image, Compose Multiplatform client, design-to-Compose parity with viddik, testing, conventions, releasing a KMP library through sborka and proba, and binding a C library into Kotlin/Native.
By youndieLicense: MIT1 GitHub starsUpdated 1 hour ago
Directory evidence
- Runtimes
- Claude Code
- Parsed components
- 12 skill or MCP entries
- Source updated
- Oct 2, 2026
- Manifest status
- Canonical path parsed
The directory validates manifest shape and source location. It does not execute the plugin or provide a security endorsement. Review the indexing methodology →
Install kotlin-fullstack for Claude Code
claude plugin marketplace add IchenDEV/agent-plugin-mkt
claude plugin marketplace update agent-plugin-marketplace
claude plugin install kotlin-fullstack@agent-plugin-marketplacePaste and run these commands in a terminal with Claude Code. They add and refresh the PluginsMP catalog, then install this plugin.
The installer fetches third-party code from the source repository shown on this page. This directory validates manifest structure and source location, but does not perform a security audit; review the manifest, components, and source before installing.
Get the source manually
git clone https://github.com/youndie/kotlin-skillsClone the source repository, then follow its setup instructions to add the plugin to a compatible client. The plugin root is plugins/kotlin-fullstack/.
Plugin files
├── .claude-plugin/plugin.json├── skills/backlog-item/SKILL.md├── skills/compose-client-feature/SKILL.md├── skills/design-to-compose/SKILL.md├── skills/kmp-library-release/SKILL.md├── skills/kmp-project-structure/SKILL.md├── skills/kmp-shared-contract/SKILL.md├── skills/kmp-testing/SKILL.md├── skills/kotlin-conventions/SKILL.md├── skills/kotlin-native-cinterop/SKILL.md├── skills/ktor-server-feature/SKILL.md├── skills/native-service-bootstrap/SKILL.md└── skills/product-brief/SKILL.md
Included Skills12
Take exactly one item from a docs-bootstrap backlog in its file-per-item form (docs/backlog/B-NN-*.md, the generated index in backlog.md) and carry it to a pull request: pick the next unblocked item by priority, read the feature, screen and endpoint documents as the assignment, branch, implement with the matching skill (contract, server, client screen with design parity, tests), keep the documentation and the item's status in the same change, verify through the real path, open the PR, merge it on a green head commit only where the loop is told to, stop. Built to run under /loop, one item per iteration. Use for 'next item', 'work the backlog', 'take B-12', 'run the loop', 'what is next', or whenever a repository has a backlog and the task is to advance it.
Add or change a screen or feature in a Compose Multiplatform client (Android, iOS, desktop, web): domain/data/ui split, observe-and-refresh repositories, use cases, a view model whose UiState is derived with combine and stateIn plus UiFlags, UiAction in and UiEvent out, Screen/Content split, navigation, session, Koin. Use for 'add a screen', 'add a settings page', 'create a view model', 'show data from the API', 'handle logout', 'add navigation' in Compose code, dashboards included.
Implement a screen or component in Compose Multiplatform from a Claude Design canvas (or any set of design PNGs) and prove it matches: extract the artboards into reference PNGs, read tokens off the design instead of the pixels, build the Content and one preview per state, wrap them in viddik fixtures at the artboard size, run viddikDesignParity, iterate on the _DIFF images until each state is within tolerance, then record the goldens. Use for 'implement this design', 'build the screen from the canvas / mockup / artboards', 'match the design', 'design parity', 'why does the screen not look like the mockup', or any task that hands you a design link and expects Compose code.
Cut and verify a release of a Kotlin Multiplatform library or a Gradle plugin: snapshot or release, the pre-flight (a free version number, a coordinate on every module, api versus implementation, the ABI dump on its own host, targets against consumers, the order between our own libraries), publishing through sborka's workflows, never by hand, waiting for every module, checking as a consumer with proba plus the probes it cannot replace (a native link, an Android consumer, the README snippet), the tag naming the built commit, moving the consumers. Use for 'release the library', 'publish to Maven Central', 'cut 0.3.0', 'publish a snapshot', 'the new version does not resolve', 'выпусти библиотеку', 'опубликуй на Central', 'новая версия не резолвится', 'проверь, что опубликовалось'. Not for module layout (kmp-project-structure), tests (kmp-testing) or a service image (native-service-bootstrap).
Lay out or restructure a Kotlin Multiplatform project: Gradle modules (shared contract, Compose client, server-common plus one module per server build), targets, commonMain versus platform source sets, feature packages, which server engine a build runs on and what it costs, the library-scale module cut. Use for 'set up the KMP project', 'add a module or target', 'where does this class go', 'split the module', 'CIO or Netty' in Kotlin/Gradle code.
Design or change the wire contract between a Ktor server and Kotlin clients: @Resource path classes and DTOs in a shared module, money and date serializers, what stays out of the contract, status codes and wire Json settings, the checklist for changing a route or a field. Use for 'add/rename an endpoint's path or DTO', 'add a field to the model', 'client and server disagree', the shared/contract/api module.
Write, place and run tests in a Kotlin Multiplatform project with a Ktor server and a Compose client: which suite a test belongs in, kotlin.test, fakes versus mocks, storage against a real database through the raw document, one test per build, view-model tests over stateIn, MockEngine, Compose UI tests on Content, screenshots, Koin graph tests, mutation checks. Use for 'write a test', 'add coverage', 'test the view model / route / repository / screen', 'why did the green build miss this bug'.
Naming, abstraction and commenting conventions for Kotlin/KMP/Ktor/Compose code: names for resources, routes, ports and implementations, use cases, view models, states, events, tests; when an interface, base class, generic or expect/actual is justified; Result at boundaries; events versus state; KDoc that names the failure; what must not enter an open repository; a grep review checklist. Use for 'how should I name this', 'review this Kotlin code', 'should this be an interface / base class / expect'.
Bind a C library (or Rust with a C ABI) into Kotlin/Native and ship it: whether to bind at all, building it against Kotlin/Native's old-glibc sysroot, the .def and which flags must live there so a consumer links, ownership across the boundary (memScoped, nativeHeap, StableRef), callbacks on foreign threads, typed errors, variadics, blocking calls under coroutines, signals, tests that can fail (consumer link, release build, allocation counts), the published cinterop klib, and what the runtime image needs. Use for 'bind this C library', 'write a .def', 'cinterop', 'undefined symbol at link', 'the consumer cannot link', 'wrap librdkafka / libmongoc / OpenSSL', 'обернуть C-библиотеку', 'написать .def', 'cinterop не линкуется', 'у потребителя не линкуется'. Not for a service skeleton or image (native-service-bootstrap) or the release procedure (kmp-library-release).
Add or change a route, use case, repository, worker or DI binding on a Kotlin Ktor server (JVM, Kotlin/Native, or both): the feature package, use cases with typed errors, tiers decided at the mount (including a route whose signature IS its authentication), routes whose body is raw bytes that must not be parsed, tenant and ownership filters, StatusPages with an error reporter, per-driver storage, which tests to write. Use for 'add an endpoint', 'add a route', 'implement a server feature', 'fix a 500', 'add a worker', 'receive a webhook', 'verify an HMAC signature', 'принять вебхук', 'проверить подпись' in Ktor code. Not for a new service or the contract itself.
Stand up a NEW Kotlin/Native service (Ktor CIO + sqlx4k/SQLite + Helm) from nothing to a deployed image: targets and entry point, config through expect/actual, migrations and the SQLite pool, DI, ordered shutdown and probes through kore, the two allocators that decide whether it survives its container limit, WAL truncation, the runtime image, the chart, CI with a ~/.konan cache. Mechanisms live in sborka's Gradle conventions and in kore; this skill says which to apply and what each was measured to buy. Use for 'bootstrap a new service', 'new Ktor service on Kotlin/Native', 'put the native binary in an image', 'the service is OOM-killed under its limit', 'the WAL keeps growing', 'adopt kore', 'заведи новый сервис', 'подними сервер с нуля', 'сервис убивает OOM под лимитом'. Not for a feature inside a service that already runs — that is ktor-server-feature.
Turn a product idea, a feature request or a rough conversation into the two briefs the rest of the pipeline consumes: a technical brief shaped like the docs-bootstrap layers (features with acceptance scenarios, screens with a fixed list of states, endpoints with auth tiers and errors, modules, decisions versus hypotheses, backlog seeds) and a designer brief that names every screen state as an artboard. Use for 'write a brief', 'ТЗ', 'technical specification', 'I have an idea for an app', 'plan this feature', 'brief for the designer', 'what should I give docs-bootstrap / Claude Design', or any conversation that has to end with something a documentation generator and a designer can both start from.
Plugin manifests1
{
"name": "kotlin-fullstack",
"description": "Kotlin full-stack skills distilled from a real Kotlin Multiplatform product: a product brief that feeds docs-bootstrap and a designer, a backlog loop that turns one item into one pull request, project structure, shared wire contract, Ktor server (JVM + Kotlin/Native), standing up a new Kotlin/Native service from nothing to a deployed image, Compose Multiplatform client, design-to-Compose parity with viddik, testing, conventions, releasing a KMP library through sborka and proba, and binding a C library into Kotlin/Native.",
"version": "0.9.0",
"author": {
"name": "youndie"
},
"repository": "https://github.com/youndie/kotlin-skills",
"license": "MIT"
}For maintainers
If you maintain this plugin, link to this source-backed listing from your README so users can review its manifest and indexed components.
[kotlin-fullstack on Agent Plugins Marketplace](https://pluginsmp.com/plugins/kotlin-fullstack)