Communitygithub.com

Hacer que las interfaces se sientan mejor

Aplica detalles concretos de diseño e ingeniería que hacen que las interfaces luzcan pulidas. Úsalo al revisar o mejorar espaciado, tipografía, bordes, sombras, movimiento, áreas táctiles, iconos, ajuste de texto y estados de interacción.

¿Qué es Hacer que las interfaces se sientan mejor?

Este skill está diseñado para mejorar la calidad perceptible de las interfaces de usuario abordando los pequeños detalles de diseño e ingeniería que marcan la diferencia entre una interfaz funcional y una realmente pulida. Es útil para desarrolladores frontend que trabajan con frameworks como React, Vue o Svelte, y se puede aplicar en cualquier proyecto web que utilice CSS y componentes interactivos. El skill ofrece principios concretos como el radio concéntrico para esquinas redondeadas, alineación óptica, sombras y bordes sutiles, ajuste de texto con `text-wrap`, suavizado de fuentes en macOS, contornos para imágenes, animaciones con transiciones CSS, áreas táctiles mínimas de 44x44px, y una guía para evitar el uso de `transition: all`. También incluye un formato de revisión con tablas de antes/después y una lista de verificación para garantizar que se cubran todos los aspectos clave del pulido de la interfaz. El skill se originó como una adaptación de una solicitud de comunidad (PR #1659) y se recomienda usarlo cuando el usuario siente que la interfaz se ve 'plana', 'genérica' o 'poco terminada'.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/affaan-m/everything-claude-code/tree/main/skills/make-interfaces-feel-better

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

¿Qué hace Hacer que las interfaces se sientan mejor?

Usa este skill para los pequeños detalles de diseño e ingeniería que se acumulan en una interfaz más pulida.

Fuente: rescatado de un PR comunitario desactualizado #1659 por linus707.

Cuándo usarlo

  • El usuario dice que la IU se siente mal, plana, genérica, apretada, saltarina o sin terminar.
  • Estás construyendo controles, tarjetas, listas, tableros, navegación, formularios o barras de herramientas.
  • Un componente necesita estados de hover, activo, foco, entrada, salida, carga o vacío.
  • Una revisión frontend necesita recomendaciones específicas de antes/después.

Principios fundamentales

Radio concéntrico

Para superficies redondeadas anidadas cercanas:

radio exterior = radio interior + padding

Si el padding es grande, trata las capas como superficies separadas en lugar de forzar la fórmula. El objetivo es la coherencia óptica, no la adoración a la fórmula.

Alineación óptica

El centrado geométrico no siempre es el centrado visual. Los botones de icono, triángulos de reproducción, flechas, estrellas e iconos asimétricos a menudo necesitan un pequeño desplazamiento. Corrige el SVG cuando sea posible; de lo contrario, ajusta con un cambio de margen o padding a nivel de píxel.

Sombras y bordes

Usa bordes para separación y anillos de foco. Usa sombras en capas cuando una tarjeta, botón, menú desplegable o popover necesite profundidad. Las sombras deben ser transparentes y lo suficientemente sutiles para funcionar en distintos fondos.

Ajuste de texto

  • Usa text-wrap: balance en encabezados y títulos cortos.
  • Usa text-wrap: pretty en texto de cuerpo corto a mediano, leyendas, descripciones y elementos de lista.
  • Evita ambos en prosa larga, código y contenido preformateado.
  • Usa font-variant-numeric: tabular-nums para contadores, temporizadores, precios, tablas y otros números que se actualizan.

Suavizado de fuentes

En macOS, aplica suavizado de fuentes antialiasing en el diseño raíz cuando el proyecto no lo haga ya:

html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

Contornos de imágenes

Las imágenes a menudo necesitan un contorno interior sutil para que sus bordes no se difuminen con la superficie.

img {
  outline: 1px solid rgba(0, 0, 0, 0.1);
  outline-offset: -1px;
}

@media (prefers-color-scheme: dark) {
  img {
    outline-color: rgba(255, 255, 255, 0.1);
  }
}

Usa contornos alfa neutros en negro o blanco. No tiñas los contornos de las imágenes con la paleta de la marca.

Movimiento

Usa transiciones CSS para cambios de estado interactivos porque pueden redirigirse cuando el usuario cambia de intención a mitad del movimiento. Reserva los keyframes para entradas únicas por etapas o secuencias de carga.

Buenos valores predeterminados de movimiento:

  • Entrada: combina opacidad, un pequeño translateY y, opcionalmente, desenfoque.
  • Salida: más corta y silenciosa que la entrada, normalmente 150ms.
  • Presión: scale(0.96) para botones táctiles, con una forma de desactivarlo cuando el movimiento distrae.
  • Intercambio de iconos: fundido cruzado con opacidad, escala y desenfoque en lugar de alternancias de visibilidad instantáneas.

Ámbito de transición

Nunca uses transition: all. Especifica las propiedades cambiadas:

.button {
  transition-property: transform, background-color, box-shadow;
  transition-duration: 150ms;
  transition-timing-function: ease-out;
}

Usa will-change solo para el tartamudeo del primer fotograma en propiedades aptas para el compositor como transform, opacity y filter. Nunca uses will-change: all.

Áreas táctiles

Los controles interactivos deben tener al menos un área táctil de 40x40px, idealmente 44x44px donde el diseño lo permita. Expande con un pseudoelemento cuando el icono visible sea más pequeño, pero no permitas que las áreas táctiles expandidas se superpongan.

Resultado de la revisión

Al revisar un pase de pulido de IU, informa cambios concretos en filas de antes/después:

PrincipioAntesDespués
Radio concéntricoMismo radio en padre e hijoEl radio del padre considera el padding
Números tabularesEl contador se desplaza al cambiar los dígitosEl contador usa tabular-nums
Ámbito de transicióntransition: allPropiedades de transición explícitas

Incluye rutas de archivo y propiedades cuando no sean obvias a partir de los fragmentos. Omite los principios que revisaste pero no cambiaste.

Lista de verificación

  • Los elementos redondeados anidados son ópticamente coherentes.
  • Los iconos están visualmente centrados.
  • Los botones, tarjetas y popovers usan bordes o sombras por la razón correcta.
  • Los encabezados y textos cortos evitan ajustes incómodos.
  • Los números dinámicos usan numerales tabulares.
  • Las imágenes tienen contornos neutros donde sea necesario.
  • Las animaciones de entrada y salida están separadas, son sutiles e interrumpibles cuando corresponda.
  • Los botones tienen estados activos táctiles sin movimiento exagerado.
  • transition: all y will-change: all están ausentes.
  • Los controles pequeños aún tienen áreas táctiles utilizables.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

accessibility

Design, implement, and audit inclusive digital products using WCAG 2.2 Level AA. Use when building or auditing UI that must meet WCAG 2.2 Level AA, or when reviewing a change for keyboard, contrast, or screen-reader support.

affaan-m/claude-api

Anthropic Claude API patterns for Python and TypeScript. Covers Messages API, streaming, tool use, vision, extended thinking, batches, prompt caching, and Claude Agent SDK. Use when building applications with the Claude API or Anthropic SDKs.

affaan-m/everything-claude-code

End-to-end marketing campaign planning and execution. Covers audience research, positioning, campaign angle definition, landing page copy, email sequences, social posts, ad copy, short-form video scripts, and content calendars. Use as the orchestration layer for multi-channel product launches. Use when planning or executing a multi-channel product launch, or producing landing page, email, social, or ad copy.

affaan-m/everything-claude-code

Development conventions and patterns for everything-claude-code. JavaScript project with conventional commits.

affaan-m/everything-claude-code-conventions

Development conventions and patterns for everything-claude-code. JavaScript project with conventional commits.

affaan-m/frontend-design

Create distinctive, production-grade frontend interfaces with high design quality. Use when the user asks to build web components, pages, or applications and the visual direction matters as much as the code quality.

affaan-m/gget

gget CLI and Python workflow for quick genomic database queries, sequence lookup, BLAST-style searches, enrichment checks, and reproducible bioinformatics evidence logs.

affaan-m/literature-review

Systematic literature-review workflow for academic, biomedical, technical, and scientific topics, including search planning, source screening, synthesis, citation checks, and evidence logging.

affaan-m/motion-ui

Production-ready UI motion system for React/Next.js. Use when implementing animations, transitions, or motion patterns.

affaan-m/project-guidelines-example

Example project-specific skill template based on a real production application.

affaan-m/pubmed-database

Direct PubMed and NCBI E-utilities search workflows for biomedical literature, MeSH queries, PMID lookup, citation retrieval, and API-backed literature monitoring.

affaan-m/scholar-evaluation

Structured scholarly-work evaluation for papers, proposals, literature reviews, methods sections, evidence quality, citation support, and research-writing feedback.

affaan-m/uspto-database

USPTO patent and trademark data workflow for official record lookup, PatentSearch queries, TSDR checks, assignment data, and reproducible IP research logs.

agent-architecture-audit

Full-stack diagnostic for agent and LLM applications. Audits the 12-layer agent stack for wrapper regression, memory pollution, tool discipline failures, hidden repair loops, and rendering corruption. Produces severity-ranked findings with code-first fixes. Essential for developers building agent applications, autonomous loops, or any LLM-powered feature. Use when an agent or LLM feature misbehaves and the failing layer is unknown, or before shipping an agent stack.

agent-eval

Head-to-head comparison of coding agents (Claude Code, Aider, Codex, etc.) on custom tasks with pass rate, cost, time, and consistency metrics. Use when choosing between coding agents, or when a change to an agent setup needs measured pass rate, cost, and time rather than an impression.

agent-harness-construction

Design and optimize AI agent action spaces, tool definitions, and observation formatting for higher completion rates. Use when defining or revising an agent

agentic-engineering

Operate as an agentic engineer using eval-first execution, decomposition, and cost-aware model routing. Use when planning or executing engineering work that agents will carry out end to end.

agentic-os

Build persistent multi-agent operating systems on Claude Code. Covers kernel architecture, specialist agents, slash commands, file-based memory, scheduled automation, and state management without external databases. Use when building a persistent multi-agent system on Claude Code with its own memory, commands, and scheduling.

agent-introspection-debugging

Structured self-debugging workflow for AI agent failures using capture, diagnosis, contained recovery, and introspection reports. Use when an agent run fails and you need a reproducible diagnosis instead of a retry.

agent-payment-x402

Add x402 payment execution to AI agents with per-task budgets, spending controls, and non-custodial wallets. Supports Base through agentwallet-sdk and X Layer through OKX Payments / OKX Agent Payments Protocol. Use when an agent must pay for something itself and needs per-task budgets, spending controls, and a non-custodial wallet.

Skills relacionados