by BoardUI
React design system for agentic interfaces. Every free BoardUI component as source, with a working AI chat app on your own model key as the homepage.
# Add to your Claude Code skills
git clone https://github.com/BoardUI/boarduiLast scanned: 9/5/2026
{
"issues": [
{
"type": "npm-audit",
"message": "next: Next.js Vulnerable to Denial of Service with Server Components",
"severity": "high"
},
{
"type": "npm-audit",
"message": "postcss: PostCSS has XSS via Unescaped </style> in its CSS Stringify Output",
"severity": "high"
},
{
"type": "npm-audit",
"message": "sharp: sharp inherited vulnerabilities in libvips: CVE-2026-33327, CVE-2026-33328, CVE-2026-35590, CVE-2026-35591",
"severity": "high"
}
],
"status": "WARNING",
"scannedAt": "2026-09-05T08:04:42.334Z",
"npmAuditRan": true,
"pipAuditRan": true,
"promptInjectionRan": true
}See how boardui compares with popular alternatives.
boardui is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by BoardUI. React design system for agentic interfaces. Every free BoardUI component as source, with a working AI chat app on your own model key as the homepage. It has 632 GitHub stars.
boardui returned warnings in SkillsLLM's automated security scan. It has no critical vulnerabilities, but review the flagged issues in the Security Report section before adding it to your workflow.
Clone the repository with "git clone https://github.com/BoardUI/boardui" and add it to your Claude Code skills directory (see the Installation section above).
boardui is primarily written in TypeScript. It is open-source under BoardUI on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh boardui against similar tools.
No comments yet. Be the first to share your thoughts!
Requires a passing catalog security scan.
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
BoardUI is a React design system for agentic interfaces: the parts an AI product needs and the parts every dashboard needs, in one visual language, as source files in your project. This repository is the whole free tier, and its homepage is a working AI chat on your own model key.
Click the button, paste one API key when Vercel asks for it, and the first deploy already answers.
This repository is generated from BoardUI's source and takes no pull requests. See CONTRIBUTING.md.
npx boardui add copies the files into your project. Change anything.AGENTS.md rules and llms.txt, so coding agents build with the system./, a dashboard with the two free charts, and sign-in and sign-up screens, all built from the components in this repository. Chat history stays in the visitor's browser. No database.app/api/chat/route.ts, which reads your key server-side and streams replies. The key never reaches the browser.One variable. The provider is read from the key itself:
| Key looks like | Provider | Default model |
|---|---|---|
sk-ant-... |
Anthropic | claude-haiku-4-5 |
sk-or-... |
OpenRouter | openai/gpt-5-nano |
sk-... |
OpenAI | gpt-5.4-mini |
AIza... |
Google Gemini | gemini-2.5-flash |
vck_... |
Vercel AI Gateway | openai/gpt-5-nano |
gsk_... |
Groq | llama-3.3-70b-versatile |
xai-... |
xAI | grok-4-fast-non-reasoning |
Create the key with a spending limit where the provider offers one: OpenRouter can cap the credits a key may spend, OpenAI has usage limits per project. The key never reaches the browser, but the chat itself is open to anyone who has your URL, so the cap is what bounds the cost.
Set CHAT_MODEL to use a different model. For Mistral or DeepSeek, whose keys have no recognisable shape, add AI_PROVIDER=mistral or AI_PROVIDER=deepseek. For any OpenAI-compatible server (Ollama, LM Studio, vLLM, LiteLLM, Together) set AI_BASE_URL and CHAT_MODEL. Every provider's usual variable (OPENAI_API_KEY, ANTHROPIC_API_KEY, ...) works too. See .env.example.
npm install
cp .env.example .env.local # then put your key in AI_API_KEY
npm run dev
Every component in this repository also installs on its own, as source, into any Next.js project.
BoardUI has an MCP server, so Claude Code, Cursor and any MCP client can browse the catalog and install for you. Add it once:
claude mcp add boardui -- npx -y boardui@latest mcp
Cursor and most other clients take the same server in their MCP config:
{
"mcpServers": {
"boardui": { "command": "npx", "args": ["-y", "boardui@latest", "mcp"] }
}
}
Then ask in plain words. "Install every free BoardUI component" installs the whole free catalog in one go. "Add a data table and stat cards to the dashboard" installs just those and wires them in. The rules in AGENTS.md keep whatever it builds on BoardUI's tokens and type scale. Setup for VS Code, Codex and the rest is at boardui.com/mcp.
npx boardui@latest list # every component, one line each
npx boardui@latest add data-table # one component and what it depends on
npx boardui@latest add --all # everything in this repository
BoardUI supports Arabic, Hebrew, and other right-to-left languages with the same component source. The app already uses DirectionProvider in app/layout.tsx. To switch the whole app to Arabic, change the document and provider together:
import { DirectionProvider } from "@/components/foundations/direction/direction";
export default function RootLayout({ children }: { children: React.ReactNode }) {
return (
<html lang="ar" dir="rtl">
<body>
<DirectionProvider locale="ar">{children}</DirectionProvider>
</body>
</html>
);
}
Keep the existing font classes, metadata, and theme script when updating your layout. Use he for Hebrew, or en-US with dir="ltr" for English. Choose a font with Arabic or Hebrew coverage. Nest providers for regions in another language; CSS direction alone does not configure React Aria keyboard navigation, calendars, or portalled menus.
In an existing project, install the foundation with npx boardui@latest add direction. Use logical styles such as ps/pe, ms/me, start/end, and text-start/text-end for your own layouts. Mirror navigation arrows and drawer motion, and pass dir={useDirection()} to custom portal roots. Keep email addresses, URLs, code, and OTP digits in LTR regions; their fields still align with the surrounding layout.
Translate labels, placeholders, and accessible names in your application's translation layer, and use Intl for dates, numbers, and currencies. The optional template-copy foundation provides TemplateCopyProvider for translating display copy. Direction and translation are configured separately; Chinese (zh-CN) uses LTR.
When working with an agent, ask it to read the direction component and usage examples, install it, and configure the matching document and provider locale. The rules in AGENTS.md and .cursor/rules/boardui.mdc include the direction conventions. For an older installation, preserve your customizations before refreshing component source and global styles.
See the RTL setup guide and live Arabic/Hebrew examples.
The live examples use the actual Auth Card, Date Range Picker, Radio Cards, and Checkbox components. For example, these preferences show both checkbox states in Arabic:
"use client";
import { DirectionProvider } from "@/components/foundations/direction/direction";
import { Checkbox } from "@/components/base/checkbox/checkbox";
import { SegmentedControl, SegmentedControlItem } from "@/components/base/segmented-control/segmented-control";
export function Preferences() {
return (
<DirectionProvider locale="ar">
<div className="flex flex-col gap-4">
<SegmentedControl aria-label="الفترة" defaultSelectedKeys={["weekly"]}>
<SegmentedControlItem id="daily">يومي</SegmentedControlItem>
<SegmentedControlItem id="weekly">أسبوعي</SegmentedControlItem>
<SegmentedControlItem id="monthly">شهري</SegmentedControlItem>
<SegmentedControlItem id="yearly">سنوي</SegmentedControlItem>
</SegmentedControl>
<Checkbox defaultSelected>إشعارات البريد الإلكتروني</Checkbox>
<Checkbox>تحديثات المنتج</Checkbox>
</div>
</DirectionProvider>
);
}
For Hebrew, use locale="he" with the labels התראות בדוא״ל and עדכוני מוצר. The first checkbox starts checked; the second starts unchecked. Both remain interactive and follow the provider's direction.
Composed screens and panels: sidebars, chat, tables, settings, cards.
| Component | What it is | Install |
|---|---|---|
| Agent Chat | A working chat app: app sidebar, streaming replies, thinking indicator, a composer pill with stop control, a chat-history rail with local thread switching, and a setup notice when no provider key is set. | npx boardui@latest add agent-chat |
| Agent Log | Shared streaming-log machinery: the reveal ticker, the blur-in with its soft clipping edge, and the curved tree guide that draws itself. Behind Task List and Web Search. | npx boardui@latest add agent-log |
| Agent Thinking | Agent thinking indicator for chat composers — dot wave, dot spin, stars, and infinity variants with a shimmering label and elapsed timer. | npx boardui@latest add agent-thinking |
| App Shell | Page frame for the chat starter: the sidebar, a phone drawer, and a titled content card, carrying the starter's own navigation so the sidebar only links to pages the app has. | npx boardui@latest add app-shell |
| [Auth Card](http |