Glin UI

AI

AI-ready docs

Every component page has a Copy for AI button. It hands an assistant the install command, import, a working example and our conventions, so the code it writes matches the rest of your app.

Copy for AI and Open in

The main button copies the full prompt. The chevron opens a menu to copy it as Markdown, read exactly what is copied, or open it in a tool. Try it here.

Supported tools

Logos belong to their owners and are shown for compatibility.

  • ChatGPT

    prefilledcommunity link

  • Claude

    prefilledcommunity link

  • Gemini

    copies prompt

  • Grok

    prefilledcommunity link

  • Perplexity

    prefilledcommunity link

  • v0

    prefilledcommunity link

  • Cursor

    prefilled

  • GitHub Copilot

    prefilled

  • OpenAI Codex

    copies prompt

  • Windsurf

    copies prompt

  • Any AI (copy)

    copies prompt

Markdown for every component

Each component has a plain Markdown page with install commands, import, usage, props, accessibility and attribution.

https://glinui.com/md/<id>.md
https://glinui.com/md/button.md

For the whole library, point an assistant at llms.txt (an index of every Markdown page by category) or llms-full.txt (every page in one file, a few hundred KB, so prefer the index for small context windows).

Shadcn registry and MCP

Glin UI components are served as shadcn registry items, so the shadcn CLI and its MCP server can install them.

npx shadcn@latest add https://glinui.com/r/button.json

To let an assistant browse and install by name, add a namespaced registry to components.json and run pnpm dlx shadcn@latest mcp init --client claude (see the shadcn MCP docs for other clients).

{
  "registries": {
    "@glinui": "https://glinui.com/r/{name}.json"
  }
}

Project rules

Paste this into AGENTS.md, CLAUDE.md or .cursor/rules so assistants follow Glin UI conventions in every request, not only when you use the button.

AGENTS.md, CLAUDE.md or .cursor/rules/glinui.mdc

# GLINUI conventions

This project uses GLINUI (https://glinui.com). When you add or change UI:

## Components
- Prefer an existing GLINUI component over writing a new one. Index: https://glinui.com/llms.txt
- Per component docs: https://glinui.com/md/<id>.md (for example /md/button.md).
- Install with: npx shadcn@latest add https://glinui.com/r/<id>.json
- Ask before editing files you did not create.

## Styling
- Use tokens from @glinui/tokens (var(--color-border), var(--color-accent), var(--surface-1)). Never hardcode colors.
- Tailwind utility classes only. No inline style attributes.
- Variant vocabulary: solid, soft, outline, ghost, gradient, glass. Do not invent new names.

## Icons
- Phosphor only (@phosphor-icons/react). No other icon sets.

## Motion
- Animate transform and opacity only.
- Honor prefers-reduced-motion: provide a static fallback.

## Accessibility
- Every control is keyboard operable with a visible focus ring.
- Icon-only buttons get an aria-label. Inputs get a visible or sr-only label.
- Keep text contrast at WCAG AA or better, including on glass surfaces.