contentful/experience-design-system-sdk-public/ink-api
Claude Code and agent skill by contentful/experience-design-system-sdk-public
Trust tier 3
- community
Source check pending
Checking that the SKILL.md file is still in the repository.
Ink core API reference for building TUI components in v2
Install
npx vskill@latest install contentful/experience-design-system-sdk-public/ink-apiSKILL.md
Ink API Reference
Core Ink (React for terminals) API for v2 TUI development.
Basic Components
Box
Container for layout using Flexbox.
Props:
flexDirection: "row" | "column" (default: "row")padding: number (all sides) or { paddingX, paddingY, paddingLeft, ... }gap: number (space between children)margin: number or objectwidth: number (columns)height: number (rows)borderStyle: "round" | "bold" | "double" | "single" | "dashed" | "dotted"borderColor: color name or hex (see Colors below)backgroundColor: color name or hex
Text
Render text with optional styling.
Props:
color: text color (see Colors below)backgroundColor: background colorbold: booleanitalic: booleandimColor: boolean (gray out). Avoid it for text that carries meaning: Use plain text for key hints andPALETTE.mutedfor quieter textinverse: boolean (swap fg/bg)underline: booleanstrikethrough: boolean
Newline
Add a line break.
Colors
Use any of these color names:
Or hex:
Hooks
useInput
Listen to keyboard input.
key object:
return,escape,tab,space,backspace,deleteupArrow,downArrow,leftArrow,rightArrowpageUp,pageDown,home,endshift,meta,ctrl,alt(boolean modifiers)
useApp
Get app-level controls.
Methods:
exit(error?: Error): Exit the app with optional error code
useStderr / useStdout
Write directly to stderr/stdout without rendering.
useRender
Hook into the render lifecycle.
Styling Patterns
Centering Text
Padding & Margins
Borders
Dividers
Common Patterns
Simple Form Input
Debugging
Check Terminal Size
Gotchas
- No hover/mouse events — Only keyboard input via
useInput - Render on every frame — Keep computations light; move heavy work outside render
- Flexbox quirks — Widths/heights are in columns/rows, not pixels
- No nested useInput — Only one component should listen per input event
- Color support varies — Check
process.env.TERMif colors aren't displaying
Resources
- Ink GitHub: https://github.com/vadimdemedes/ink
- Ink API docs: https://github.com/vadimdemedes/ink/blob/master/readme.md
- Examples: https://github.com/vadimdemedes/ink/tree/master/examples
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingpackages/experience-design-system-cli/.claude/skills/ink-api/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/contentful/experience-design-system-sdk-public/ink-api)