InkUI
Components

Accordion

Expandable/collapsible sections with keyboard navigation.

Reveal or hide content sections on demand. Supports single or multiple open sections simultaneously.

Live Preview
Accordion · single mode
Database Config
API Settings
base: https://api.example.com
timeout: 30s
Deployment
~/my-cli — node v22● running

Installation

npx inkui add accordion

Usage

import { Accordion } from './components/ui/accordion';
import { Text } from 'ink';
 
const items = [
  { key: 'db', title: 'Database Config', content: <Text>host: localhost</Text>, defaultOpen: true },
  { key: 'api', title: 'API Settings', content: <Text>timeout: 30s</Text> },
];
 
export default function App() {
  return <Accordion items={items} />;
}

Keyboard Shortcuts

KeyAction
/ kPrevious section
/ jNext section
Enter / SpaceToggle open/close
gFirst section
GLast section

API Reference

PropTypeDefaultDescription
itemsAccordionItem[]Section definitions (required)
multiplebooleanfalseAllow multiple sections open
borderStyle'single' | 'rounded' | 'none''none'Border around sections
focusbooleantrueAccept keyboard input
themeInkUIThemedarkThemeColor theme

On this page