尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证120 copy-owned React + Tailwind components with warm tokens, real dark mode and signature motion.
翻译准备中
取自仓库 README
正在加载完整 README。 以下为已保存的摘录。
Everything an interface is made of.
136 copy-owned React + Tailwind components with warm tokens, real dark mode and motion that earns its place.
VibeUI is a component library you copy into your project instead of installing. Add a file and it is yours to read, change and keep: no runtime package, no theme provider, no black box. Every component reads one token file, so pieces from different corners of the library look like they were made together.查看完整 README ↗VibeUI is a component library you copy into your project instead of installing. Add a file and it is yours to read, change and keep: no runtime package, no theme provider, no black box. Every component reads one token file, so pieces from different corners of the library look like they were made together.
Run the repo to browse all 178 components live (/components), read the docs (/docs), and open any component for its source, install command and generated API table.
templates/vibeui.css. Copied components animate and theme correctly in your app.dark class on <html>, no flash, and light / dark can pin any subtree.prefers-reduced-motion.clsx, tailwind-merge, class-variance-authority, @phosphor-icons/react. No animation library.llms.txt and a JSON registry with generated API tables.Status. Pre-1.0. Install the CLI with
npx @agents-npm-packages/vibeui(see CLI). Live site: tryjasmine.dev.
git clone https://github.com/arjunkshah12345-hash/vibeui.git
cd vibeui
npm install
npm run dev
| Route | What |
|---|---|
/ | Landing page: a live composed interface, the ten shelves with real previews, a token playground |
/components | Searchable gallery of live previews |
/components/<name> | One component: preview, install, API, source |
/docs | Installation, theming, dark mode, motion, accessibility, recipes, CLI, MCP, FAQ |
Add ?theme=dark (or light) to any URL to preview a theme.
1. Install the peers
npm i clsx tailwind-merge class-variance-authority @phosphor-icons/react
2. Add the tokens and cn()
npx @agents-npm-packages/vibeui init --dir .
This writes vibeui.tokens.css and src/lib/utils.ts. Import the tokens after Tailwind:
@import "tailwindcss";
@import "../../vibeui.tokens.css";
3. Add a component
npx @agents-npm-packages/vibeui add button dialog --dir ./src/components/ui
Components that import siblings bring them along, so add footer-cta also copies button (and button copies spinner).
import { Button } from "@/components/ui/button"
<Button variant="accent" loading={saving}>Save changes</Button>
You need a @/* → src/* path alias and Tailwind CSS v4. Toasts need ToastProvider once near your root; everything else is self-contained. Vite and Next.js setup details are in /docs/installation.
| Shelf | Count | Components |
|---|---|---|
| Actions | 9 | button · chip · copy-button · kbd · pill · separator · split-button · status-button · toggle |
| Forms | 17 | autosize-textarea · calendar · checkbox · combobox · file-drop · input · number-field · otp-field · password-field · radio · range-slider · rating · search-field · select · slider · switch · tag-input |
| Feedback | 12 | alert · banner · callout · empty · gauge · meter · notification · progress-ring · progress · skeleton · spinner · status-icon |
| Data & surfaces | 17 | area-chart · aspect-ratio · avatar · bar-chart · card · code-block · color-swatch · comparison · donut-chart · heatmap · list · resizable · scroll-area · sortable-list · sparkline · stat · table |
| Overlays | 11 | command · context-menu · dialog · drawer · dropdown-menu · lightbox · popover · sheet · toast · tooltip · tour |
| Navigation | 10 | accordion · breadcrumb · floating-nav · pagination · · · · · · |
Every component has hover, press and focus feedback, and anything that appears also animates out. Each page in /components lists the props (generated from the real TypeScript types), the peers it needs and the sibling components it imports.
Everything is a CSS variable. Retint the accent for both themes:
:root { --accent: #2563eb; --accent-ink: #fff; --accent-soft: rgb(37 99 235 / .1); --ring: rgb(37 99 235 / .28); }
.dark { --accent: #7aa7ff; --accent-ink: #06142e; --accent-soft: rgb(122 167 255 / .14); --ring: rgb(122 167 255 / .3); }
Both modes are monochrome by default: the accent is the ink, and one --accent variable retints everything. Radii, shadows, fonts and motion are tokens too, and you can override any of them on a single element to scope a theme. See /docs/theming, /docs/dark-mode and /docs/motion.
npx @agents-npm-packages/vibeui list --category forms
npx @agents-npm-packages/vibeui search "date picker" --json
npx @agents-npm-packages/vibeui get calendar --source
npx @agents-npm-packages/vibeui add calendar --dir ./src/components/ui
| Command | Purpose |
|---|---|
list, search, get | Read the registry (add --json for scripts) |
add <name…> | Copy components and the siblings they import |
init | Write the token file, utils.ts and a short guide |
categories, registry, guide, mcp | Catalog, regenerate, install guide, start the MCP server |
add exits non-zero if anything fails, so it is safe in scripts. Inside a clone, the binary is node bin/vibeui.mjs (or npm run vibeui). Full reference: /docs/cli.
Coding agents can discover and install components without scraping the site.
| Surface | Entry |
|---|---|
| MCP (stdio) | npm run mcp · node mcp/server.mjs |
CLI with --json | see above |
| Briefs | llms.txt · docs/agents.md |
| Registry | registry/components.json |
claude mcp add vibeui -- node /absolute/path/to/vibeui/mcp/server.mjs
Tools: search_components, get_component (source + API), add_component, get_tokens, get_utils, get_install_guide, and more. See /docs/agents and .cursor/mcp.vibeui.example.json.
Native controls where they exist, real roles and keyboard handling on the rest, visible focus, and reduced-motion support. It has not had a formal audit. Known gaps (for example Sheet and Popover do not trap focus, and Segmented and Rating are not arrow-key navigable) are listed honestly in /docs/accessibility.
src/components/ui/ the library: one file per component
src/components/showcase/ demos and the gallery
src/app/ the Next.js site (landing, /components, /docs)
templates/vibeui.css the token file, single source of truth
agent/ bin/ mcp/ registry core, CLI and MCP server
scripts/ registry, API extraction, catalog, notices
registry/components.json generated catalog (committed)
| Command | What |
|---|---|
npm run dev | Showcase site |
npm run build | Production build (regenerates the registry first) |
npm run check | Typecheck, lint and build |
npm run registry | Refresh the registry, API tables and this README's catalog |
npm run notices | Regenerate THIRD_PARTY_NOTICES.md |
npm run vibeui / npm run mcp | The CLI / the MCP server |
Contributions are welcome. Read CONTRIBUTING.md for the layout, how to add a component and what a good pull request looks like, and the Code of Conduct. Report vulnerabilities privately as described in SECURITY.md. Release notes are in CHANGELOG.md.
MIT. Third-party dependencies, fonts and icons are listed with their licenses in THIRD_PARTY_NOTICES.md.
VibeUI was inspired by shadcn/ui (the copy-owned model and its API conventions), ObsidianUI (expressive, animated craft components), Magic UI (tasteful motion) and Origin / coss ui (dense app primitives). All of those are credited for ideas, not code, and none is affiliated with this project.
segmentedsidebarsteppertable-of-contentstabstimeline| Signature | 63 | ai-orb · arrow-fill-button · aura-border · blur-reveal · book-flip · circle-menu · color-picker · confetti · count-up · cover-flow · dice · dither-image · dock · dot-globe · dotted-grid · dynamic-island · falling-sand · flip-card · flow-field · folder-preview · gooey-menu · hold-button · image-sphere · ink-trail · jelly-loader · kaleidoscope · keycap · knob · lanyard · liquid-glass · liquid-metal · liquid-switch · loupe · magnet-tabs · marquee · masonry · mesh-gradient · odometer · orbit-ring · pan-zoom · particle-text · peel-card · pendulum-wave · plasma-ball · pluck-string · pointer-morph · progressive-blur · radar-sweep · ripple-image · rotating-carousel · scratch-reveal · scroll-stack · signature-pad · slide-to-confirm · split-flap · split-showcase · spotlight · stacked-cards · trading-card · velocity-marquee · warp-field · waveform · wheel-picker |
| Text effects | 18 | curve-text · decode-text · flip-text · glitch-text · gradient-text · highlight-text · letter-hover · neon-text · quote · rolling-text · scramble-text · stagger-words · text-link · text-reveal · text-shimmer · typewriter · underline-reveal · weight-text |
| Hover effects | 13 | hover-border · hover-card · hover-expand · hover-glow-grid · hover-icon · hover-image-list · hover-image · hover-lift · hover-shine · hover-slide · hover-tilt · magnetic-button · magnetic-link |
| Footers | 8 | footer-cta · footer-giant · footer-legal · footer-mega · footer-newsletter · footer-simple · footer-status · social-links |