Skip to content

Android Ink Drawing Builder

Lets an agent build stylus and touch drawing features in Android apps with Jetpack Ink and Compose.

Repository
android/skills
Stars
10,278
Licence
Apache-2.0
Files
9 files

What it does

When installed, the agent knows how to add freehand drawing to an Android app using Google's Jetpack Ink library. It sets up the Gradle dependencies, builds a Compose drawing surface that shows live 'wet' ink while the finger or stylus moves and 'dry' finished strokes afterward, configures stock brushes such as a pressure pen, marker and highlighter, and adds erasing, undo/redo and saving strokes with Room. It is meant for writing working app code, not just explaining the idea.

Great for

  • Android developers adding a stylus or touch drawing or note-taking feature to a Compose app
  • Teams that need low-latency handwriting or annotation on Android 8.0 (API 26) and higher

Skip it if

  • View-based (XML) drawing screens, which the skill explicitly says it does not cover
  • Custom brush design (custom tip shapes or behavior graphs), which the skill refers to a separate ink-custom-brush-builder skill for; generated code may be wrong if used for that

Try asking

  • “Add a pressure-sensitive pen drawing canvas to my Compose screen using Jetpack Ink”
  • “Implement undo and redo and eraser for my stroke drawing view in a ViewModel”
  • “Save drawn strokes to Room and restore them when the app restarts”
  • “Set up the androidx.ink Gradle dependencies with matching versions in my version catalog”
Step-by-step guide: how to use Android Ink Drawing BuilderInstall, first run, examples, tips and FAQs

Install in 3 steps

  1. 1

    Download the skill

    The ZIP contains the 9 original files, the Apache-2.0 licence and an attribution note.

    ink-app-builder.zip
  2. 2

    Add it to your agent

    Claude Code (all projects)

    mkdir -p ~/.claude/skills && unzip ink-app-builder.zip -d ~/.claude/skills/

    Claude Code / Agent SDK (this project only)

    mkdir -p .claude/skills && unzip ink-app-builder.zip -d .claude/skills/

    Claude apps (web/desktop): Settings → Capabilities → Skills → Upload skill, and choose the ZIP.

  3. 3

    Ask for the task

    No special command needed — the agent reads the skill's description and loads it when your request matches. Try one of the prompts above.

Get better results

  • State the Ink version you need (1.0.0 stable or 1.1.0-alpha03 and higher) so the agent picks the right opt-in annotations and serialization approach.
  • Review every Gradle change before accepting it; the skill says to ask permission before modifying build files.
  • Test on real stylus hardware, since the skill's low-latency behavior depends on motion prediction and device support.

What's inside

  • references/android/develop/ui/compose/touch-input/stylus-input/ink-api-brush-apis.md
  • references/android/develop/ui/compose/touch-input/stylus-input/ink-api-draw-stroke.md
  • references/android/develop/ui/compose/touch-input/stylus-input/ink-api-geometry-apis.md
  • references/android/develop/ui/compose/touch-input/stylus-input/ink-api-setup.md
  • references/android/develop/ui/compose/touch-input/stylus-input/ink-api-state-preservation.md
  • references/drawing-and-brushes.md
  • references/editing-and-architecture.md
  • references/persistence-and-advanced.md
  • SKILL.md

Redistributed unmodified from android/skills under the Apache-2.0 licence. The assessment was drafted with AI from the skill's files on 2026-10-29. Skills can instruct your agent to run code — read SKILL.md and any scripts before installing.