Use when working with Roborazzi screenshot tests on Android/JVM — setting up the Roborazzi Gradle plugin, running record/compare/verify tasks, writing tests with captureRoboImage or RoborazziRule, Compose Preview screenshot testing (ComposablePreviewScanner), Compose Multiplatform (iOS/desktop) screenshots, AI-powered…
Use when writing or reviewing Jetpack Compose motion: visibility enter/exit, animating one property toward a target, color or size transitions, multiple properties from one state, switching composable content, or choosing between AnimatedVisibility, animateAsState, rememberTransition, AnimatedContent, and Crossfade.
Decide whether a preview the visual-diff bot flagged actually regressed or is simply nondeterministic, using a repeat-render oracle at a single commit. Use when a PR's preview diff reports a changed preview whose source the PR does not touch, or when a render, GIF or filmstrip is suspected of being unstable.
Capture the before/after rendered PNGs a UI-affecting PR in this repository needs as visual evidence, including bringing an Android SDK up in a fresh sandbox. Use when a change touches a Compose @Preview, a catalog, the VS Code webview, an overlay, a theme, an icon or a fixture, and the PR body needs real pixels.
Drive a pull request on this repository to green — which fast checks to run before pushing, how to read a red check, and what to do about a review comment. Use when a CI failure, a review comment, a merge conflict, or a scheduled check-in arrives on a PR you opened or were asked to drive.
Use this skill when the user asks to generate a PDF document from Kotlin (Android, iOS, or Kotlin Multiplatform) using the PdfKmp library. Triggers: 'generate a PDF', 'export to PDF', 'create a PDF report', 'invoice PDF', 'PDF receipt', 'multi-page PDF', any time the user wants to author or modify code that calls into…
A reusable top-glow layer that gives pages with no imagery of their own the same tinted ground the image-backed screens get — emitted as the first sibling of a navigation destination's content, with no wrapper, because destinations already stack. Covers why a null tone must collapse the gradient into the page colour…
Draw a linear gradient at an arbitrary angle across a Compose box so both endpoints land exactly on the box edge — the per-quadrant endpoint formula from the requested angle, why rotating the diagonal overshoots and why clamping to the nearest edge distorts the angle, and the degenerate cases that collapse the ramp to…
A rotating sweep-gradient ring around a card, chip or button, built from a clipped box, a full-size gradient and an opaque inset surface parked on its middle — where the modifier order is the whole mechanism and no blend mode is involved — plus why the SrcIn-inside-an-offscreen-layer version of this cannot draw a…
Android app/device integrity and anti-fraud for a fintech app — the Play Integrity API (com.google.android.play:integrity): Standard requests (StandardIntegrityManager.prepareIntegrityToken → StandardIntegrityTokenProvider.request with a requestHash → StandardIntegrityToken) vs Classic requests…
Material 3 Expressive design patterns for Jetpack Compose - expressive theming, motion physics, shape morphing, typography emphasis, color emphasis, and all 28 expressive components.
Implements a production-grade Glassmorphism design system for Kotlin Multiplatform (KMP) Compose Multiplatform projects. Use when the user asks for glass UI, frosted glass effects, glassmorphism theme, translucent/transparent UI components, liquid/blob animated backgrounds, or premium modern dark-mode design in a…
Compose Multiplatform ↔ SwiftUI integration patterns. USE FOR: embedding Compose Multiplatform views in a SwiftUI app; embedding SwiftUI/UIKit components inside Compose Multiplatform; sharing state between Compose and SwiftUI; managing the Compose UIViewController lifecycle; bidirectional data flow with the…
An orchestration workflow for sorting several project lessons into skills, rules, or prompts and preparing them together as one pull request. A pull request is a proposed change for review in a shared code repository.
Operational rules for a 60-minute single-shot exploratory verification of a Kotlin project's main branch (Android / JVM / KMP / Compose / server-side Kotlin). Runs sequentially through cat1–cat5 inside a single CI job (e.g. a nightly GitHub Actions workflow), writes findings Markdown-by-Markdown to…
Idiomatic use of expect/actual declarations in Kotlin Multiplatform, when to prefer interfaces + DI instead, and how to design platform abstractions that age well. Use when you need platform-specific behavior in commonMain.
Gradle Kotlin DSL patterns for KMP — version catalogs, hierarchical source sets, convention plugins, assembling XCFrameworks and fat frameworks. Use when wiring or refactoring a KMP build.
Setting up the Ktor HTTP client in commonMain with per-platform engines, auth, interceptors, retries, and logging. Use when implementing networking for a KMP app.
Publish the create-cmp CLI to npm as the create-cmp-cli package. Use this when the user asks to "publish create-cmp to npm", "release a new version", "ship create-cmp-cli", "npm publish this", "cut a release", or wants npx create-cmp-cli to work. Runs unattended when a granular npm token is installed in the user's…
Adversarial audit of one subsystem of a Kotlin/Compose Multiplatform app against its spec AND against platform semantics — the class of defect desktop-tier tests cannot see (alarms, notifications, PendingIntents, channels, reboot, process death, DST). Use this when the user says "audit the notifications", "double…