{"_id":"@evanyu/a2ui-ink","name":"@evanyu/a2ui-ink","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@evanyu/a2ui-ink","version":"0.1.0","license":"Apache-2.0","description":"Ink (CLI) renderer for A2UI (Agent-to-User Interface)","repository":{"type":"git","url":"git+https://github.com/kokoro-ele/a2ui-ink.git"},"homepage":"https://github.com/kokoro-ele/a2ui-ink#readme","bugs":{"url":"https://github.com/kokoro-ele/a2ui-ink/issues"},"publishConfig":{"access":"public"},"packageManager":"yarn@4.13.0","type":"module","main":"./dist/index.cjs","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./v0_9":{"import":{"types":"./dist/v0_9/index.d.ts","default":"./dist/v0_9/index.js"},"require":{"types":"./dist/v0_9/index.d.cts","default":"./dist/v0_9/index.cjs"}}},"scripts":{"build":"wireit","demo":"tsx demo/run.tsx","demo:list":"tsx demo/run.tsx --list","demo:live":"tsx demo/live.tsx","explorer":"tsx explorer/run.tsx","test":"wireit","lint":"eslint .","lint:fix":"eslint . --fix","format":"prettier --write .","format:check":"prettier --check .","clean":"wireit","typecheck":"tsc --noEmit"},"dependencies":{"@a2ui/web_core":"^0.10.4","zod":"^3.25.76"},"peerDependencies":{"ink":"^6.0.0","react":"^19.2.7","zod":"^3.25.76"},"devDependencies":{"@a2a-js/sdk":"^0.3.13","@eslint/js":"^10.0.1","@types/node":"^25.9.3","@types/react":"^19.2.17","eslint":"^10.4.1","eslint-config-prettier":"^10.1.8","eslint-plugin-react-hooks":"^7.1.1","globals":"^17.6.0","ink":"^6.5.0","prettier":"^3.8.4","react":"^19.2.7","tsup":"^8.5.1","tsx":"^4.22.4","typescript":"5.9.3","typescript-eslint":"^8.61.0","wireit":"^0.15.0-pre.2"},"engines":{"node":">=20.11.0"},"wireit":{"build":{"command":"tsup","files":["src/**/*","tsconfig.json","tsup.config.ts"],"output":["dist/"]},"test":{"command":"tsx --test src/v0_9/smoke.test.ts","dependencies":["build"]},"clean":{"command":"rm -rf dist .tsbuildinfo .wireit"}},"gitHead":"1af30c3063546710990909ba9966c79eb8853c8a","_id":"@evanyu/a2ui-ink@0.1.0","_nodeVersion":"24.14.1","_npmVersion":"11.11.0","dist":{"integrity":"sha512-8rDMSOaHDwH3/kG9gocOMADcECgO0XQVsTlRVNc1xyJSuTmiMPF+gPGuHbla9UFuPtsdRdS7qFJSLrPMinWnyQ==","shasum":"fef8ea12e794d49031341d21292a18f358f7d82f","tarball":"https://registry.npmjs.org/@evanyu/a2ui-ink/-/a2ui-ink-0.1.0.tgz","fileCount":19,"unpackedSize":288930,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIBcD06eyLZVrO7eLBsy7+t+Dv2AYmPVPZ+G15GqrOUTdAiEAkkS1nVfhugTOmArbKw0MbyJD7mbDoC4WIHuJx/9U2DQ="}]},"_npmUser":{"name":"evanyu","email":"elekokoro@gmail.com"},"directories":{},"maintainers":[{"name":"evanyu","email":"elekokoro@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/a2ui-ink_0.1.0_1784275127155_0.33290018087858475"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-17T07:58:46.964Z","0.1.0":"2026-07-17T07:58:47.319Z","modified":"2026-07-17T07:58:47.529Z"},"maintainers":[{"name":"evanyu","email":"elekokoro@gmail.com"}],"description":"Ink (CLI) renderer for A2UI (Agent-to-User Interface)","homepage":"https://github.com/kokoro-ele/a2ui-ink#readme","repository":{"type":"git","url":"git+https://github.com/kokoro-ele/a2ui-ink.git"},"bugs":{"url":"https://github.com/kokoro-ele/a2ui-ink/issues"},"license":"Apache-2.0","readme":"# @evanyu/a2ui-ink\n\nCommunity-maintained [Ink](https://github.com/vadimdemedes/ink) renderer for\n[A2UI](https://a2ui.org/) v0.9 and v0.9.1.\n\nThe package uses `@a2ui/web_core` for message processing, state, data binding,\nand catalog functions. It maps all 18 basic catalog components to terminal UI.\nInteraction is keyboard-based: Tab changes focus, Enter or Space activates a\ncontrol, and arrow keys operate tabs and sliders.\n\nThis project is not maintained by the A2UI team.\n\n## Install\n\n```bash\nyarn add @evanyu/a2ui-ink @a2ui/web_core ink react\n```\n\n## Usage\n\n```tsx\nimport {render} from 'ink';\nimport {MessageProcessor} from '@a2ui/web_core/v0_9';\nimport {A2uiSurface, basicCatalog} from '@evanyu/a2ui-ink/v0_9';\n\nconst processor = new MessageProcessor([basicCatalog], async action => {\n  console.log(action);\n});\n\nprocessor.processMessages(messages);\nconst surface = [...processor.model.surfacesMap.values()][0]!;\nrender(<A2uiSurface surface={surface} />);\n```\n\n## Catalog support\n\n- Text, Icon, Image, Video, and AudioPlayer\n- Row, Column, List, Card, and Divider\n- Button, CheckBox, ChoicePicker, TextField, and DateTimeInput\n- Slider, Tabs, and Modal\n\nImage, Video, and AudioPlayer render terminal placeholders because Ink cannot\ndisplay media. Markdown markers in Text are reduced to a plain-text fallback.\n\n## Examples\n\nThe repository includes the official v0.9.1 basic catalog examples as test and\ndemo fixtures.\n\n```bash\nyarn install\nyarn demo --list\nyarn demo 00_interactive-button\nyarn demo 32_advanced-form\nyarn demo 36_modal\n```\n\nRun the terminal gallery with:\n\n```bash\nyarn explorer\nyarn explorer 32_advanced-form\n```\n\nThe mock restaurant flow does not require an agent or API key:\n\n```bash\nyarn demo:live --mock --auto\n```\n\nFor a live A2A connection, start the A2UI\n[Restaurant Finder Agent](https://github.com/a2ui-project/a2ui/tree/main/samples/agent/adk/restaurant_finder)\non port 10002, then run:\n\n```bash\nyarn demo:live --auto\n```\n\nSet `A2A_AGENT_URL` or pass `--url` to use another endpoint.\n\n## Development\n\n```bash\nyarn install\nyarn build\nyarn test\nyarn lint\nyarn format:check\nyarn typecheck\n```\n\n## License\n\nApache-2.0. The JSON examples under `fixtures/examples` are copied from the\nA2UI repository and retain the same license.\n","readmeFilename":"README.md","_rev":"1-8d0b696ba7cf57d831e01082a0448d3a"}