Compose Multiplatform Patterns
monta-app/ocpp-emulator
Compose Multiplatform and Jetpack Compose patterns for KMP projects — state management, navigation, theming, performance, and platform-specific UI.
Provides a structured workflow for migrating an Android XML View to Jetpack Compose.
$ npx skills add arindamxd/camerax-android --skill migrate-xml-views-to-jetpack-compose -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install arindamxd/camerax-android migrate-xml-views-to-jetpack-compose --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/arindamxd/camerax-android.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/migrate-xml-views-to-jetpack-compose .claude/skills/migrate-xml-views-to-jetpack-compose && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "migrate-xml-views-to-jetpack-compose" agent skill from https://github.com/arindamxd/camerax-android/tree/master/.agents/skills/migrate-xml-views-to-jetpack-compose into .claude/skills/migrate-xml-views-to-jetpack-compose/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "migrate-xml-views-to-jetpack-compose", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/arindamxd/camerax-android/tree/master/.agents/skills/migrate-xml-views-to-jetpack-composeType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add arindamxd/camerax-android --skill migrate-xml-views-to-jetpack-compose -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install arindamxd/camerax-android migrate-xml-views-to-jetpack-compose --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/arindamxd/camerax-android.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/migrate-xml-views-to-jetpack-compose .agents/skills/migrate-xml-views-to-jetpack-compose && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "migrate-xml-views-to-jetpack-compose" agent skill from https://github.com/arindamxd/camerax-android/tree/master/.agents/skills/migrate-xml-views-to-jetpack-compose into .agents/skills/migrate-xml-views-to-jetpack-compose/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "migrate-xml-views-to-jetpack-compose", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add arindamxd/camerax-android --skill migrate-xml-views-to-jetpack-compose -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install arindamxd/camerax-android migrate-xml-views-to-jetpack-compose --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/arindamxd/camerax-android.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/migrate-xml-views-to-jetpack-compose .cursor/skills/migrate-xml-views-to-jetpack-compose && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "migrate-xml-views-to-jetpack-compose" agent skill from https://github.com/arindamxd/camerax-android/tree/master/.agents/skills/migrate-xml-views-to-jetpack-compose into .cursor/skills/migrate-xml-views-to-jetpack-compose/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "migrate-xml-views-to-jetpack-compose", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/arindamxd/camerax-android.git --path .agents/skills/migrate-xml-views-to-jetpack-compose--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add arindamxd/camerax-android --skill migrate-xml-views-to-jetpack-compose -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install arindamxd/camerax-android migrate-xml-views-to-jetpack-compose --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/arindamxd/camerax-android.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/migrate-xml-views-to-jetpack-compose .gemini/skills/migrate-xml-views-to-jetpack-compose && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "migrate-xml-views-to-jetpack-compose" agent skill from https://github.com/arindamxd/camerax-android/tree/master/.agents/skills/migrate-xml-views-to-jetpack-compose into .gemini/skills/migrate-xml-views-to-jetpack-compose/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "migrate-xml-views-to-jetpack-compose", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install arindamxd/camerax-android migrate-xml-views-to-jetpack-composeInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add arindamxd/camerax-android --skill migrate-xml-views-to-jetpack-compose -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/arindamxd/camerax-android.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/migrate-xml-views-to-jetpack-compose .github/skills/migrate-xml-views-to-jetpack-compose && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "migrate-xml-views-to-jetpack-compose" agent skill from https://github.com/arindamxd/camerax-android/tree/master/.agents/skills/migrate-xml-views-to-jetpack-compose into .github/skills/migrate-xml-views-to-jetpack-compose/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "migrate-xml-views-to-jetpack-compose", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add arindamxd/camerax-android --skill migrate-xml-views-to-jetpack-compose -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install arindamxd/camerax-android migrate-xml-views-to-jetpack-compose --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/arindamxd/camerax-android.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/migrate-xml-views-to-jetpack-compose .opencode/skills/migrate-xml-views-to-jetpack-compose && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "migrate-xml-views-to-jetpack-compose" agent skill from https://github.com/arindamxd/camerax-android/tree/master/.agents/skills/migrate-xml-views-to-jetpack-compose into .opencode/skills/migrate-xml-views-to-jetpack-compose/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "migrate-xml-views-to-jetpack-compose", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
migrate-xml-views-to-jetpack-composeProvides a structured workflow for migrating an Android XML View to Jetpack Compose.
Migrate XML Views To Jetpack Compose is an agent skill from arindamxd/camerax-android. Provides a structured workflow for migrating an Android XML View to Jetpack Compose. This skill details the step-by-step process, from planning and dependency setup, to theming and layout migration, validation and XML cleanup. Use this skill when you need to migrate an XML View to Jetpack Compose in an Android project. It solves the problem of converting the UI of a legacy XML View into modern, declarative Compose components while maintaining interoperability.
Its SKILL.md is about 1.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 15 other files, including reference files (for example `references/analysis-of-the-project-and-layout.md`, `references/android/develop/ui/compose/designsystems/migrate-xml-theme-to-compose.md` and `references/android/develop/ui/compose/migrate/interoperability-apis/compose-in-views.md`).
It sits in Mobile, covering Android development and Theming and dark mode. It works with Jetpack Compose and Android. The repository describes itself as: A Play Store camera app showing Jetpack CameraX APIs in Kotlin — install it, use it, copy the patterns. The licence is Apache-2.0.
10 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 7c36352. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Migrate XML Views To Jetpack Compose loads about 1.4k tokens when it runs, and up to ~13k if it reads all its reference files. Until then it costs about 125 tokens; SKILL.md has 634 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from arindamxd/camerax-android at commit 7c36352, republished under its Apache-2.0 licence (© arindamxd). 634 words, ~1,359 tokens.
.claude/skills/migrate-xml-views-to-jetpack-compose/SKILL.md (or your agent's skills folder). This skill also uses 7 other files; get the full folder from GitHub.This skill guides through the process of migrating an existing Android XML View to Jetpack Compose. It performs a stable, safe and visually consistent transition by following a structured, 10-step methodology. This skill migrates UI (XML to Jetpack Compose) only.
To systematically convert a single legacy XML layout into modern, declarative Jetpack Compose UI while maintaining pixel-perfect visual parity and functional integrity.
If the user has explicitly specified a target XML layout, proceed to Step 2. Otherwise, analyze the codebase to identify the best candidate for migration by following the logic in references/identify-optimal-xml-candidate.md.
Analyze the identified XML View's structure, hierarchy, and implementation details. Use references/analysis-of-the-project-and-layout.md to guide your technical audit of the layout and surrounding project context.
Using the outputs and analysis done in the Step 1 and 2, generate a step-by-step plan for the migration. If you support user interaction, present to the user and ask for approval before proceeding. If user interaction is not supported, proceed to Step 4 following the generated plan.
IF you support user interaction, ask the user to upload a screenshot of the XML View UI or provide an absolute path to a file. Use this image as a visual reference for the layout migration in Step 7. ELSE IF you are able to run an Android emulator, locate an existing screenshot test for the XML candidate. If none exists, create one using the existing project testing framework. If no framework exists, use UI Automator or Espresso to create a screenshot test with minimum required setup. Run the test and take a baseline screenshot of the XML UI. ELSE proceed to Step 5.
Check build.gradle or libs.versions.toml for Compose dependencies and compiler setup. If missing, use Setup Compose Dependencies and Compiler. Run a sync to ensure dependencies resolve without errors.
If the project already has Compose theming set up, proceed to Step 7. If Compose theming is missing, initialize it. For Material-based projects, follow Material 3 migration guidelines. For custom design systems, apply expert judgment to migrate XML theming and match existing styles. Constraints: Do not migrate the entire theme. Implement only the minimum theming required for the specific XML candidate. Maintain original XML themes for interoperability. Maintain existing project code conventions, patterns, names and values.
Convert the XML candidate to Jetpack Compose code, referencing references/xml-layout-migration.md and the image from Step 4. You must include a Compose Preview for the newly created composable to facilitate visual verification.
Replace the usages of the migrated XML layout to use the new Compose component.
Compare the baseline screenshot image from Step 4 with the rendered Compose Preview of the new composable. Ignore string content; focus on layout and styling. Iterate on the Compose code until visual parity is achieved. Once verified, write a Compose UI test for the new composable.
Delete the migrated XML file and its associated legacy tests. Caution: Only remove code and resources that are not referenced by other parts of the project.
© arindamxd, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 7 other files (references) in .agents/skills/migrate-xml-views-to-jetpack-compose of arindamxd/camerax-android.
Open the folder on GitHubat commit 7c36352
We found 9 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 5 other GitHub owners. This page covers the copy in arindamxd/camerax-android, which our catalogue first saw on October 7, 2026.
Migrate XML Views To Jetpack Compose next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Migrate XML Views To Jetpack Compose this skillarindamxd/camerax-android | 132 | 5 repos | ~1.4k | Automated safety check: Pass | Apache-2.0 | |
| Compose Multiplatform Patternsmonta-app/ocpp-emulator | 180 | 5 repos | ~2k | Automated safety check: Pass | Apache-2.0 | |
| Hz Metavrx Layout SDKmeta-quest/agentic-tools | 213 | — | ~855 | Automated safety check: Pass | Apache-2.0 | |
| Android Compose Patternsmakifbaysal/tasktrooper | 109 | — | ~1.9k | Automated safety check: Pass | Apache-2.0 | |
| Material 3hamen/material-3-skill | 1.5k | 2 repos | ~7.8k | Automated safety check: Pass | MIT | |
| STS Amethyst Launcher Design SystemModinMobileSTS/SlayTheAmethystModded | 402 | — | ~1.7k | Automated safety check: Pass | Custom licence |
monta-app/ocpp-emulator
Compose Multiplatform and Jetpack Compose patterns for KMP projects — state management, navigation, theming, performance, and platform-specific UI.
meta-quest/agentic-tools
Build multi-window Meta Horizon OS experiences with the MetaVrx Layout SDK in Jetpack Compose or React Native.
makifbaysal/tasktrooper
A skill your agent uses when building native Android with Jetpack Compose - stateless composables, state hoisting, ViewModel-owned state, edge-to-edge, predictive back, adaptive layout, atomic…
hamen/material-3-skill
Implement Google's Material Design 3 (Material You) UI system.
ModinMobileSTS/SlayTheAmethystModded
Design system imported from the SlayTheAmethyst Android Jetpack Compose launcher: Material 3 surfaces, user-selected seed colors, light and dark themes and typography rules.
cometchat/cometchat-skills
Make the CometChat Android v6 UI match your app in the Jetpack Compose cohort — theming with the CometChatTheme composable and lightColorScheme/darkColorScheme, per-component style data classes…
arindamxd/camerax-android
A skill your agent uses to integrate the Jetpack Compose Styles API into an Android project.
arindamxd/camerax-android
Provides a complete workflow for implementing verified email retrieval on Android Credential Manager API.
arindamxd/camerax-android
A skill your agent uses to migrate your Jetpack Compose app to add adaptive edge-to-edge support and troubleshoot common issues.
arindamxd/camerax-android
Provide technical guidance for Android camera development with CameraX.
arindamxd/camerax-android
Provides instructions and architectural patterns for migrating Android TV applications from legacy Leanback UI Toolkit, Android Views, or Support Fragments to Jetpack Compose for TV (androidx.tv).
arindamxd/camerax-android
A skill your agent uses when upgrading or migrating an Android project from any legacy Google Play Billing Library (PBL) version to the latest stable version of PBL.
Works with
Categories
Provides a structured workflow for migrating an Android XML View to Jetpack Compose. Migrate XML Views To Jetpack Compose is an agent skill from arindamxd/camerax-android. Provides a structured workflow for migrating an Android XML View to Jetpack Compose.
Migrate XML Views To Jetpack Compose fits situations like: you need to migrate an XML View to Jetpack Compose in an Android project; tasks that involve Android development; tasks that involve Theming and dark mode.
Run `npx skills add arindamxd/camerax-android --skill migrate-xml-views-to-jetpack-compose -a claude-code`. Or copy the skill folder (.agents/skills/migrate-xml-views-to-jetpack-compose in arindamxd/camerax-android) into .claude/skills/migrate-xml-views-to-jetpack-compose in your project. Claude Code loads it when a task matches its description.
Run `npx skills add arindamxd/camerax-android --skill migrate-xml-views-to-jetpack-compose -a codex`. Or copy the skill folder (.agents/skills/migrate-xml-views-to-jetpack-compose in arindamxd/camerax-android) into .agents/skills/migrate-xml-views-to-jetpack-compose in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add arindamxd/camerax-android --skill migrate-xml-views-to-jetpack-compose -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/migrate-xml-views-to-jetpack-compose, .gemini/skills/migrate-xml-views-to-jetpack-compose, .github/skills/migrate-xml-views-to-jetpack-compose and .opencode/skills/migrate-xml-views-to-jetpack-compose in your project.
SKILL.md names no scripts, command-line tools or credentials: Migrate XML Views To Jetpack Compose is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Migrate XML Views To Jetpack Compose is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.4k tokens (SKILL.md is roughly 5.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 12k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Migrate XML Views To Jetpack Compose: Compose Multiplatform Patterns (monta-app/ocpp-emulator, 180 stars), Hz Metavrx Layout SDK (meta-quest/agentic-tools, 213 stars), Android Compose Patterns (makifbaysal/tasktrooper, 109 stars) and Material 3 (hamen/material-3-skill, 1.5k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
arindamxd (a GitHub user) maintains it in arindamxd/camerax-android, which has 132 GitHub stars. The repository holds 21 skills in this directory. The repository was last updated on October 2, 2026.
Source: arindamxd/camerax-android on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.