Pular para o conteúdo
Skillpedia
Interfaces (UI/UX)48 mil · #3949

radix-ui-design-system

Ajuda a criar sistemas de design acessíveis usando componentes `Radix UI`. Permite personalização, temas e padrões para bibliotecas de interface de usuário de alta qualidade.

O que ela faz

Esta ferramenta ajuda a criar sistemas de design para sites e aplicativos. Ela permite que você construa componentes de interface (como botões e menus) que são acessíveis e totalmente personalizáveis, sem impor um estilo visual pronto.

Quando usar

  • ✓Criar um sistema de design do zero.
  • ✓Construir bibliotecas de componentes de interface acessíveis.
  • ✓Implementar componentes interativos complexos.

Exemplo do que pedir para a IA

“Crie um sistema de design acessível para um aplicativo de lista de tarefas usando Radix UI.”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/radix-ui-design-system/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/radix-ui-design-system/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

A ferramenta utiliza os blocos de construção do Radix UI para criar componentes. Você pode definir a aparência e o comportamento de cada componente, garantindo que sejam fáceis de usar para todos e que funcionem bem com outras ferramentas de desenvolvimento.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add sickn33/agentic-awesome-skills --skill radix-ui-design-system

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/radix-ui-design-system/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Sistema de Design Radix UI

Crie sistemas de design prontos para produção e acessíveis usando os primitivos do Radix UI com controle total de personalização e zero opiniões de estilo.

Guia Detalhado

Leia o guia detalhado antes de executar esta habilidade. Ele contém o procedimento completo e o material de referência. Trate seus requisitos de segurança, pré-requisitos e validação como obrigatórios. Para um trabalho focado, carregue as seções relevantes; para um trabalho de ponta a ponta, leia o guia completamente.

Quando Usar Esta Habilidade

  • Criando um sistema de design personalizado do zero
  • Construindo bibliotecas de componentes de UI acessíveis
  • Implementando componentes interativos complexos (Diálogo, Menu suspenso, Abas, etc.)
  • Migrando de bibliotecas de componentes estilizados para primitivos sem estilo
  • Configurando sistemas de temas com variáveis CSS ou Tailwind
  • Necessidade de controle total sobre o comportamento e o estilo dos componentes
  • Construindo aplicações que exigem conformidade com WCAG 2.1 AA/AAA

Não use esta habilidade quando

  • Você precisa de componentes pré-estilizados prontos para uso (use shadcn/ui, Mantine, etc.)
  • Construindo páginas estáticas simples sem interatividade
  • O projeto não usa React 16.8+ (Radix requer hooks)
  • Você precisa de componentes para frameworks diferentes do React

Exemplos do Mundo Real

Exemplo 1: Paleta de Comandos (Diálogo Combinado)

import * as Dialog from '@radix-ui/react-dialog';
import { Command } from 'cmdk';

export function CommandPalette() {
  const [open, setOpen] = useState(false);

  useEffect(() => {
    const down = (e: KeyboardEvent) => {
      if (e.key === 'k' && (e.metaKey || e.ctrlKey)) {
        e.preventDefault();
        setOpen((open) => !open);
      }
    };
    document.addEventListener('keydown', down);
    return () => document.removeEventListener('keydown', down);
  }, []);

  return (
    <Dialog.Root open={open} onOpenChange={setOpen}>
      <Dialog.Portal>
        <Dialog.Overlay className="fixed inset-0 bg-black/50" />
        <Dialog.Content className="fixed left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2">
          <Command>
            <Command.Input placeholder="Type a command..." />
            <Command.List>
              <Command.Empty>No results found.</Command.Empty>
              <Command.Group heading="Suggestions">
                <Command.Item>Calendar</Command.Item>
                <Command.Item>Search Emoji</Command.Item>
              </Command.Group>
            </Command.List>
          </Command>
        </Dialog.Content>
      </Dialog.Portal>
    </Dialog.Root>
  );
}

Exemplo 2: Menu suspenso com ícones

import * as DropdownMenu from '@radix-ui/react-dropdown-menu';
import { DotsHorizontalIcon } from '@radix-ui/react-icons';

export function ActionsMenu() {
  return (
    <DropdownMenu.Root>
      <DropdownMenu.Trigger asChild>
        <button className="icon-button" aria-label="Actions">
          <DotsHorizontalIcon />
        </button>
      </DropdownMenu.Trigger>

      <DropdownMenu.Portal>
        <DropdownMenu.Content className="dropdown-content" align="end">
          <DropdownMenu.Item className="dropdown-item">
            Edit
          </DropdownMenu.Item>
          <DropdownMenu.Item className="dropdown-item">
            Duplicate
          </DropdownMenu.Item>
          <DropdownMenu.Separator className="dropdown-separator" />
          <DropdownMenu.Item className="dropdown-item text-red-500">
            Delete
          </DropdownMenu.Item>
        </DropdownMenu.Content>
      </DropdownMenu.Portal>
    </DropdownMenu.Root>
  );
}

Exemplo 3: Formulário com Radix Select + React Hook Form

import * as Select from '@radix-ui/react-select';
import { useForm, Controller } from 'react-hook-form';

interface FormData {
  country: string;
}

export function CountryForm() {
  const { control, handleSubmit } = useForm<FormData>();

  return (
    <form onSubmit={handleSubmit((data) => console.log(data))}>
      <Controller
        name="country"
        control={control}
        render={({ field }) => (
          <Select.Root onValueChange={field.onChange} value={field.value}>
            <Select.Trigger className="select-trigger">
              <Select.Value placeholder="Selecione um país" />
              <Select.Icon />
            </Select.Trigger>
            
            <Select.Portal>
              <Select.Content className="select-content">
                <Select.Viewport>
                  <Select.Item value="us">Estados Unidos</Select.Item>

…
Perguntas frequentes

O que são 'primitivos headless'?

São blocos de construção básicos para componentes de interface que não vêm com um estilo visual pré-definido. Isso permite total liberdade para você estilizar como quiser.

O que significa 'acessível'?

Significa que os componentes são projetados para serem usados por todas as pessoas, incluindo aquelas com deficiências visuais, motoras ou outras. Eles seguem diretrizes como WCAG.

Preciso saber sobre React para usar isso?

Sim, esta ferramenta é para projetos que usam React, pois o Radix UI é uma biblioteca para React.

Detalhes

Descrição original do autor

Build accessible design systems with Radix UI primitives. Headless component customization, theming strategies, and compound component patterns for production-grade UI libraries.

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#3949
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas