design-taste-frontend-v1
nexu-io/open-design
La versión original v1 de «taste-skill», que se ha conservado para proyectos que dependen de su comportamiento exacto. El valor predeterminado actual es `design-taste-frontend` (v2 experimental), que supone una reescritura sustancial. Utiliza este nombre de instalación de la v1 solo si necesitas compatibilidad retroactiva exacta.
...Expandir todoCompetencia en front-end de alto nivel
1. CONFIGURACIÓN BÁSICA ACTIVA
- VARIACIÓN_DE_DISEÑO: 8 (1 = Simetría perfecta, 10 = Caos artístico)
- MOTION_INTENSITY: 6 (1 = Estático/Sin movimiento, 10 = Cinemático/Física mágica)
- VISUAL_DENSITY: 4 (1 = Galería de arte/Espacioso, 10 = Cabina de piloto/Datos apretados)
Instrucción de IA: La línea de base estándar para todas las generaciones está estrictamente fijada en estos valores (8, 6, 4). No pidas al usuario que edite este archivo. Por lo demás, escucha SIEMPRE al usuario: adapta estos valores de forma dinámica en función de lo que solicite explícitamente en sus mensajes de chat. Utiliza estos valores de referencia (o los modificados por el usuario) como variables globales para controlar la lógica específica de las secciones 3 a 7.
2. ARQUITECTURA Y CONVENCIONES POR DEFECTO
A menos que el usuario especifique explícitamente una pila diferente, respeta estas restricciones estructurales para mantener la coherencia:
- VERIFICACIÓN DE DEPENDENCIAS [OBLIGATORIO]: Antes de importar CUALQUIER biblioteca de terceros (p. ej.,
framer-motion,lucide-react,zustand), DEBES comprobarel archivo package.json. Si falta el paquete, DEBES indicar el comando de instalación (p. ej.,npm install nombre-del-paquete) antes de proporcionar el código. Nunca des por sentado que una biblioteca existe. - Marco de trabajo e interactividad: React o Next.js. Por defecto, se utilizarán componentes de servidor (
RSC).- SEGURIDAD DE LOS RSC: El estado global SOLO funciona en componentes de cliente. En Next.js, envuelve los proveedores en un componente
«use client». - AISLAMIENTO DE LA INTERACTIVIDAD: Si las secciones 4 o 7 (Movimiento/Liquid Glass) están activas, el componente específico de la interfaz de usuario interactiva DEBE extraerse como un componente hoja aislado con
«use client»en la parte superior. Los componentes de servidor deben renderizar exclusivamente diseños estáticos.
- SEGURIDAD DE LOS RSC: El estado global SOLO funciona en componentes de cliente. En Next.js, envuelve los proveedores en un componente
- Gestión del estado: Utiliza
«useState»y«useReducer»locales para la interfaz de usuario aislada. Utiliza el estado global estrictamente para evitar el «prop-drilling» profundo. - Política de estilo: Utiliza Tailwind CSS (v3/v4) para el 90 % del estilo.
- BLOQUEO DE VERSIÓN DE TAILWIND: Comprueba primero
el archivo package.json. No utilices la sintaxis de la v4 en proyectos de la v3. - PROTECCIÓN DE CONFIGURACIÓN DE T4: Para la v4, NO utilices el plugin
tailwindcssenpostcss.config.js. Utiliza@tailwindcss/postcsso el plugin de Vite.
- BLOQUEO DE VERSIÓN DE TAILWIND: Comprueba primero
- POLÍTICA CONTRA LOS EMOJIS [CRÍTICO]: NUNCA utilices emojis en el código, el marcado, el contenido de texto o el texto alternativo. Sustituye los símbolos por iconos de alta calidad (Radix, Phosphor) o primitivas SVG limpias. Los emojis están PROHIBIDOS.
- Responsividad y espaciado:
- Estandariza los puntos de ruptura (
sm,md,lg,xl). - Limita los diseños de página utilizando
max-w-[1400px] mx-autoomax-w-7xl. - Estabilidad de la ventana gráfica [CRÍTICO]: NUNCA utilices
«h-screen»para secciones «Hero» a altura completa. Utiliza SIEMPRE«min-h-[100dvh]»para evitar saltos catastróficos en el diseño en navegadores móviles (Safari de iOS). - Grid en lugar de cálculos Flex: NUNCA utilices cálculos porcentuales complejos con Flexbox (
w-[calc(33%-1rem)]). Utiliza SIEMPRE CSS Grid (grid grid-cols-1 md:grid-cols-3 gap-6) para obtener estructuras fiables.
- Estandariza los puntos de ruptura (
- Iconos: DEBES utilizar exactamente
@phosphor-icons/reacto@radix-ui/react-iconscomo rutas de importación (comprueba la versión instalada). Estandarizael ancho de trazo (strokeWidth)a nivel global (por ejemplo, utiliza exclusivamente1,5o2,0).
3. DIRECTRICES DE INGENIERÍA DE DISEÑO (Corrección de sesgos)
Los modelos de lenguaje grande (LLM) presentan sesgos estadísticos hacia patrones clichés específicos de la interfaz de usuario. Crea de forma proactiva interfaces de alta calidad utilizando estas reglas de ingeniería:
Regla 1: Tipografía determinista
- Visualización/Titulares: Por defecto,
text-4xl md:text-6xl tracking-tighter leading-none.- ANTI-SLOP: Evita el uso de
Interpara crear un ambiente «premium» o «creativo». Impulsa un carácter único utilizandoGeist,Outfit,Cabinet GroteskoSatoshi. - NORMA TÉCNICA DE INTERFAZ DE USUARIO: Las fuentes con serifas están estrictamente PROHIBIDAS en las interfaces de usuario de paneles de control y software. En estos contextos, utiliza exclusivamente combinaciones de fuentes sans-serif de alta gama (
Geist+Geist MonooSatoshi+JetBrains Mono).
- ANTI-SLOP: Evita el uso de
- Cuerpo/Párrafos: Por defecto,
text-base text-gray-600 leading-relaxed max-w-[65ch].
Regla 2: Calibración del color
- Restricción: máximo 1 color de acento. Saturación < 80 %.
- PROHIBICIÓN DE LILA: La estética «morado/azul IA» está estrictamente PROHIBIDA. Nada de botones morados brillantes ni degradados de neón. Utiliza bases absolutamente neutras (Zinc/Slate) con acentos únicos y de alto contraste (p. ej., Emerald, Electric Blue o Deep Rose).
- COHERENCIA DE COLORES: Mantén una única paleta en todo el resultado final. No alternes entre grises cálidos y fríos dentro del mismo proyecto.
Regla 3: Diversificación del diseño
- TENDENCIA ANTI-CENTRALIZACIÓN: Las secciones Hero/H1 centradas están estrictamente PROHIBIDAS cuando
LAYOUT_VARIANCE > 4. Impulsa estructuras de «pantalla dividida» (50/50), «contenido alineado a la izquierda/elemento alineado a la derecha» o «espacio en blanco asimétrico».
Regla 4: Materialidad, sombras y «uso excesivo de tarjetas»
- REFUERZO DEL PANEL DE CONTROL: Para
VISUAL_DENSITY > 7, los contenedores de tarjetas genéricos quedan estrictamente PROHIBIDOS. Utiliza agrupaciones lógicas medianteborder-t,divide-yo espacio negativo puro. Las métricas de datos deben «respirar» sin quedar encajonadas, a menos que la elevación (z-index) sea funcionalmente necesaria. - Aplicación: Utilice tarjetas ÚNICAMENTE cuando la elevación transmita jerarquía. Cuando se utilice una sombra, tiñala del tono del fondo.
Regla 5: Estados interactivos de la interfaz de usuario
- Generación obligatoria: Los modelos de lenguaje grande (LLM) generan de forma natural estados «estáticos» de éxito. DEBES implementar ciclos de interacción completos:
- Carga: indicadores de carga esqueléticos que se ajusten a los tamaños del diseño (evita los indicadores circulares genéricos).
- Estados vacíos: Estados vacíos con una composición atractiva que indiquen cómo rellenar los datos.
- Estados de error: Notificación de errores clara e integrada (p. ej., en formularios).
- Retroalimentación táctil: Al
activarse,utiliza-translate-y-[1px]oscale-[0.98]para simular una pulsación física que indique éxito o acción.
Regla 6: Patrones de datos y formularios
- Formularios: La etiqueta DEBE situarse encima del campo de entrada. El texto de ayuda es opcional, pero debe estar presente en el marcado. El texto de error debe ir debajo del campo de entrada. Utiliza un espaciado estándar
de gap-2para los bloques de entrada.
4. PROACTIVIDAD CREATIVA (Implementación contra la chapuza)
Para combatir activamente los diseños genéricos de IA, implementa de forma sistemática estos conceptos de programación de alto nivel como punto de partida:
- Refracción «Liquid Glass»: cuando se requiera el «glassmorphism», ve más allá de
«background-blur». Añade un borde interior de 1 píxel (border-white/10) y una sombra interior sutil (shadow-[inset_0_1px_0_rgba(255,255,255,0.1)]) para simular la refracción física en los bordes. - Microfísica magnética (si MOTION_INTENSITY > 5): implementa botones que se desplace ligeramente hacia el cursor del ratón. CRÍTICO: NUNCA utilices
useStatede React para animaciones magnéticas al pasar el cursor o animaciones continuas. Utiliza EXCLUSIVAMENTEuseMotionValueyuseTransformde Framer Motion fuera del ciclo de renderizado de React para evitar una caída del rendimiento en dispositivos móviles. - Microinteracciones perpetuas: cuando
MOTION_INTENSITY > 5, incorpora microanimaciones continuas e infinitas (Pulse, Typewriter, Float, Shimmer, Carousel) en componentes estándar (avatares, puntos de estado, fondos). Aplica la física de muelle premium (type: «spring», stiffness: 100, damping: 20) a todos los elementos interactivos; nada de suavizado lineal. - Transiciones de diseño: Utiliza siempre las propiedades
layoutylayoutIdde Framer Motion para lograr un reordenamiento, un cambio de tamaño y transiciones de elementos compartidos fluidos entre los distintos estados. - Orquestación escalonada: No montes listas ni cuadrículas de forma instantánea. Utiliza
staggerChildren(Framer) o la cascada CSS (animation-delay: calc(var(--index) * 100ms)) para crear revelaciones secuenciales en cascada. IMPORTANTE: ParastaggerChildren, el componente padre (variantes) y los hijos DEBEN residir en el mismo árbol de componentes del cliente. Si los datos se recogen de forma asíncrona, pasa los datos como props a un contenedor centralizado de Motion padre.
5. MEDIDAS DE SEGURIDAD DE RENDIMIENTO
- Coste del DOM: Aplica filtros de grano o ruido exclusivamente a pseudoelementos fijos con «pointer-events-none» (por ejemplo, `
fixed inset-0 z-50 pointer-events-none`) y NUNCA a contenedores que se desplazan, para evitar repintados continuos de la GPU y la degradación del rendimiento en dispositivos móviles. - Aceleración por hardware: Nunca animes las propiedades
top,left,widthoheight. Anima exclusivamente mediantetransformyopacity. - Restricción del índice Z: NUNCA utilices de forma arbitraria
valores z-50oz-10sin motivo justificado. Utiliza los índices Z estrictamente para contextos de capas sistémicas (barras de navegación fijas, ventanas modales, superposiciones).
6. REFERENCIA TÉCNICA (Definiciones de los diales)
VARIACIÓN DE DISEÑO (Nivel 1-10)
- 1-3 (Previsible):
Justificación centralizadacon Flexbox, cuadrículas simétricas estrictas de 12 columnas, rellenos iguales. - 4-7 (Desplazamiento): Utiliza
«margin-top: -2rem»para superposición, relaciones de aspecto variadas en las imágenes (p. ej., 4:3 junto a 16:9), encabezados alineados a la izquierda sobre datos alineados al centro. - 8-10 (Asimétrico): diseños tipo «masonry», CSS Grid con unidades fraccionarias (p. ej.,
grid-template-columns: 2fr 1fr 1fr), zonas vacías muy amplias (padding-left: 20vw). - SUSTITUCIÓN EN MÓVIL: Para los niveles 4-10, cualquier diseño asimétrico en dispositivos de tamaño superior a
md:DEBE recurrir de forma agresiva a un diseño estricto de una sola columna (w-full,px-4,py-8) en ventanas gráficas< 768pxpara evitar el desplazamiento horizontal y la ruptura del diseño.
INTENSIDAD DE MOVIMIENTO (Niveles 1-10)
- 1-3 (Estático): Sin animaciones automáticas. Solo estados
:hovery:activede CSS. - 4-7 (CSS fluido): Utiliza
transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1). Utiliza cascadasde animation-delaypara las cargas progresivas. Céntrate estrictamente entransformyopacity. Utilizawill-change: transformcon moderación. - 8-10 (Coreografía avanzada): Revelaciones complejas activadas por el desplazamiento o efecto de paralaje. Utiliza los hooks de Framer Motion. NUNCA utilices
window.addEventListener('scroll').
VISUAL_DENSITY (Nivel 1-10)
- 1-3 (Modo Galería de Arte): Mucho espacio en blanco. Grandes espacios entre secciones. Todo da una sensación de gran calidad y limpieza.
- 4-7 (Modo «Aplicación diaria»): Espaciado normal para aplicaciones web estándar.
- 8-10 (Modo «cabina de mando»): Rellenos mínimos. Sin recuadros de tarjetas; solo líneas de 1 píxel para separar los datos. Todo está muy compacto. Obligatorio: utiliza Monospace (
font-mono) para todos los números.
7. INDICACIONES DE IA (Patrones prohibidos)
Para garantizar un resultado de alta calidad y no genérico, DEBES evitar estrictamente estas características comunes del diseño de IA, a menos que se soliciten explícitamente:
Aspectos visuales y CSS
- NO se permiten efectos de neón ni resplandores externos: No utilices resplandores predeterminados
de «box-shadow»ni resplandores automáticos. Utiliza bordes internos o sombras sutiles con tinte. - NO al negro puro: Nunca utilices
#000000. Utiliza «Off-Black», «Zinc-950» o «Charcoal». - NO a los acentos sobresaturados: Desatura los acentos para que combinen con elegancia con los tonos neutros.
- NO a los textos con degradados excesivos: No utilices degradados de relleno de texto para encabezados grandes.
- NO cursores de ratón personalizados: están pasados de moda y perjudican el rendimiento y la accesibilidad.
Tipografía
- NO Inter Font: Prohibida. Utiliza
Geist,Outfit,Cabinet GroteskoSatoshi. - NO a los H1 de tamaño excesivo: El primer encabezado no debe llamar demasiado la atención. Controla la jerarquía con el peso y el color, no solo con un tamaño desmesurado.
- Restricciones sobre las fuentes serif: Utiliza fuentes serif ÚNICAMENTE para diseños creativos o editoriales. NUNCA utilices fuentes serif en paneles de control limpios.
Diseño y espaciado
- Alinea y espacia a la perfección: Asegúrate de que el relleno y los márgenes sean matemáticamente perfectos. Evita los elementos flotantes con huecos extraños.
- NO a los diseños de tarjetas en 3 columnas: Queda PROHIBIDA la disposición genérica de «3 tarjetas iguales en horizontal». Utiliza en su lugar un diseño en zigzag de 2 columnas, una cuadrícula asimétrica o un enfoque de desplazamiento horizontal.
Contenido y datos (el «efecto Jane Doe»)
- NO se permiten nombres genéricos: «John Doe», «Sarah Chan» o «Jack Su» están prohibidos. Utiliza nombres muy creativos y que suenen realistas.
- NO a los avatares genéricos: NO utilices los iconos de usuario estándar SVG «egg» o Lucide como avatares. Utiliza marcadores de posición fotográficos creativos y creíbles o un estilo específico.
- NO a los números falsos: Evita resultados predecibles como
el 99,99 %,el 50 %o números de teléfono básicos (1234567). Utiliza datos orgánicos y desordenados (47,2 %,+1 (312) 847-1928). - NO a los nombres cutres de startups: «Acme», «Nexus», «SmartFlow». Inventa nombres de marca de calidad y contextuales.
- NO utilices palabras de relleno: evita los clichés de la redacción con IA como «Elevate», «Seamless», «Unleash» o «Next-Gen». Utiliza verbos concretos.
Recursos y componentes externos
- NO enlaces rotos a Unsplash: No utilices Unsplash. Utiliza marcadores de posición absolutos y fiables como
https://picsum.photos/seed/{random_string}/800/600o avatares SVG para la interfaz de usuario. - Personalización de shadcn/ui: Puedes utilizar
shadcn/ui, pero NUNCA en su estado genérico por defecto. DEBES personalizar los radios, los colores y las sombras para que se ajusten a la estética de alta gama del proyecto. - Limpieza lista para producción: El código debe ser extremadamente limpio, visualmente impactante, memorable y meticulosamente pulido en cada detalle.
8. EL ARSENAL CREATIVO (Inspiración de alta gama)
No recurras por defecto a una interfaz de usuario genérica. Aprovecha esta biblioteca de conceptos avanzados para garantizar que el resultado sea visualmente impactante y memorable. Cuando sea apropiado, utiliza GSAP (ScrollTrigger/Parallax) para narrativas de desplazamiento complejas o ThreeJS/WebGL para animaciones 3D/Canvas, en lugar de movimientos CSS básicos. IMPORTANTE: Nunca mezcles GSAP/ThreeJS con Framer Motion en el mismo árbol de componentes. Utiliza por defecto Framer Motion para las interacciones de la interfaz de usuario y Bento. Utiliza GSAP/ThreeJS EXCLUSIVAMENTE para narrativas de desplazamiento aisladas a página completa o fondos de lienzo, envueltos en bloques de limpieza useEffect estrictos.
El paradigma estándar del «Hero»
- Deja de centrar el texto sobre una imagen oscura. Prueba con secciones «Hero» asimétricas: texto alineado limpiamente a la izquierda o a la derecha. El fondo debe presentar una imagen relevante y de alta calidad con un sutil fundido estilístico (oscureciéndose o aclarándose con elegancia hacia el color de fondo, dependiendo de si se trata del modo claro u oscuro).
Navegación y menús
- Ampliación del Dock de Mac OS: barra de navegación en el borde; los iconos se redimensionan de forma fluida al pasar el cursor por encima.
- Botón magnético: botones que se atraen físicamente hacia el cursor.
- Menú «Gooey»: los subelementos se desprenden del botón principal como un líquido viscoso.
- Isla dinámica: un componente de interfaz de usuario con forma de pastilla que se transforma para mostrar el estado o las alertas.
- Menú radial contextual: un menú circular que se expande exactamente en las coordenadas del clic.
- Marcación rápida flotante: un FAB que se despliega formando una línea curva de acciones secundarias.
- Revelación de megamenú: menús desplegables a pantalla completa que muestran contenido complejo con un efecto de desvanecimiento escalonado.
Diseño y cuadrículas
- Cuadrícula Bento: agrupación asimétrica basada en mosaicos (p. ej., el Centro de control de Apple).
- Diseño Masonry: cuadrícula escalonada sin alturas de fila fijas (p. ej., Pinterest).
- Cuadrícula Chroma: Bordes de cuadrícula o mosaicos que muestran sutiles degradados de color en animación continua.
- Desplazamiento con pantalla dividida: Las dos mitades de la pantalla se deslizan en direcciones opuestas al desplazarse.
- Revelación tipo cortina: una sección «Hero» que se abre por la mitad como una cortina al desplazarse.
Tarjetas y contenedores
- Tarjeta con inclinación de paralaje: una tarjeta con inclinación 3D que sigue las coordenadas del ratón.
- Tarjeta con borde de foco: Bordes de tarjeta que se iluminan dinámicamente bajo el cursor.
- Panel «Glassmorphism»: auténtico cristal esmerilado con bordes de refracción interna.
- Tarjeta de lámina holográfica: reflejos iridiscentes de luz arcoíris que cambian al pasar el cursor por encima.
- Pila de deslizamiento tipo Tinder: una pila física de tarjetas que el usuario puede deslizar para eliminarlas.
- Modal con transformación: un botón que se expande de forma fluida hasta convertirse en su propio contenedor de diálogo a pantalla completa.
Animaciones de desplazamiento
- Pila de desplazamiento fija: Tarjetas que permanecen fijas en la parte superior y se apilan físicamente unas sobre otras.
- Secuestro de desplazamiento horizontal: el desplazamiento vertical se traduce en un suave desplazamiento horizontal por la galería.
- Secuencia de desplazamiento «Locomotive»: Secuencias de vídeo o 3D en las que la velocidad de fotogramas está directamente vinculada a la barra de desplazamiento.
- Zoom de paralaje: una imagen de fondo central que se acerca o aleja de forma fluida a medida que te desplazas.
- Trayectoria de progreso de desplazamiento: Líneas vectoriales SVG o rutas que se dibujan a medida que el usuario se desplaza.
- Transición de deslizamiento líquido: Transiciones de página que se deslizan por la pantalla como un líquido viscoso.
Galerías y contenidos multimedia
- Galería «Dome»: una galería en 3D que da la sensación de ser una cúpula panorámica.
- Carrusel Coverflow: Carrusel en 3D con el centro enfocado y los bordes inclinados hacia atrás.
- Cuadrícula de desplazamiento por arrastre: una cuadrícula sin límites que se puede arrastrar libremente en cualquier dirección.
- Control deslizante de imágenes en acordeón: estrechas tiras de imágenes verticales u horizontales que se expanden por completo al pasar el cursor por encima.
- Rastro de imágenes al pasar el cursor: el ratón deja tras de sí un rastro de imágenes que aparecen y se desvanecen.
- Imagen con efecto glitch: Breve distorsión digital con cambio de canales RGB al pasar el cursor por encima.
Tipografía y texto
- Marquee cinética: bandas de texto infinitas que invierten la dirección o aceleran al desplazarse.
- Revelación de máscara de texto: tipografía de gran tamaño que actúa como una ventana transparente sobre un fondo de vídeo.
- Efecto de texto aleatorio: Decodificación de caracteres al estilo «Matríz» al cargar la página o al pasar el cursor por encima.
- Trayectoria circular del texto: Texto curvado a lo largo de una trayectoria circular giratoria.
- Animación de trazo con degradado: Texto contorneado con un degradado que recorre continuamente el trazo.
- Cuadrícula de tipografía cinética: una cuadrícula de letras que se esquivan o giran alejándose del cursor.
Microinteracciones y efectos
- Botón de explosión de partículas: Llamadas a la acción (CTA) que se desintegran en partículas al completarse con éxito.
- Actualización«tirar para refrescar» líquida: Indicadores de recarga en dispositivos móviles que parecen gotas de agua que se desprenden.
- Brillo esquelético: reflejos de luz cambiantes que se desplazan por los recuadros de marcador de posición.
- Botón con detección de dirección al pasar el cursor: el relleno al pasar el cursor entra desde el mismo lado por el que entró el ratón.
- Efecto de onda al hacer clic: ondas visuales que se propagan con precisión desde las coordenadas del clic.
- Dibujo de líneas SVG animadas: vectores que trazan sus propios contornos en tiempo real.
- Fondo con degradado de malla: manchas de color animadas, orgánicas, parecidas a las de una lámpara de lava.
- Profundidad de desenfoque de lente: desenfoque dinámico de las capas de la interfaz de usuario en segundo plano para resaltar una acción en primer plano.
9. EL PARADIGMA «MOTION-ENGINE» DE BENTO
A la hora de crear paneles de control SaaS modernos o secciones de funciones, DEBES utilizar la siguiente arquitectura «Bento 2.0» y su filosofía de movimiento. Esto va más allá de las tarjetas estáticas e impone una estética que combina «la esencia de Vercel con la limpieza de Dribbble», basada en gran medida en la física perpetua.
A. Filosofía de diseño fundamental
- Estética: de alta gama, minimalista y funcional.
- Paleta: Fondo en
#f9fafb. Las tarjetas son de color blanco puro (#ffffff) con un borde de 1 px en colorborder-slate-200/50. - Superficies: Utiliza
rounded-[2.5rem]para todos los contenedores principales. Aplicar una «sombra de difusión» (una sombra muy ligera y de amplia extensión, p. ej.,shadow-[0_20px_40px_-15px_rgba(0,0,0,0.05)]) para crear profundidad sin recargar el diseño. - Tipografía: Utiliza exclusivamente las fuentes
Geist,SatoshioCabinet Grotesk. Aplica un espaciado sutil (tracking-tight) a los encabezados. - Etiquetas: Los títulos y las descripciones deben colocarse fuera y debajo de las tarjetas para mantener una presentación limpia, al estilo de una galería.
- Perfección al píxel: Utiliza un relleno generoso de
p-8op-10dentro de las tarjetas.
B. Especificaciones del motor de animación (Perpetual Motion)
Todas las tarjetas deben contener «microinteracciones perpetuas». Utiliza los siguientes principios de Framer Motion:
- Física de resorte: nada de aceleraciones lineales. Utiliza
«type: spring», «stiffness: 100» y «damping: 20»para conseguir una sensación de calidad y solidez. - Transiciones de diseño: Utiliza ampliamente las propiedades
layoutylayoutIdpara garantizar que el reordenamiento, el cambio de tamaño y las transiciones de estado de los elementos compartidos se realicen con fluidez. - Bucles infinitos: Cada tarjeta debe tener un «estado activo» que se repita infinitamente (Pulse, Typewriter, Float o Carousel) para garantizar que el panel de control parezca «vivo».
- Rendimiento: Envuelve las listas dinámicas en
y optimízalas para 60 fps. CRÍTICO PARA EL RENDIMIENTO: Cualquier movimiento perpetuo o bucle infinito DEBE memorizarse (React.memo) y aislarse por completo en su propio componente de cliente microscópico. Nunca actives re-renders en el diseño padre.
C. Los arquetipos de 5 tarjetas (especificaciones de microanimaciones)
Implementa estas microanimaciones específicas al construir cuadrículas Bento (p. ej., Fila 1: 3 columnas | Fila 2: 2 columnas divididas 70/30):
- La lista inteligente: una pila vertical de elementos con un bucle infinito de ordenación automática. Los elementos intercambian posiciones utilizando
layoutId, simulando una IA que prioriza tareas en tiempo real. - La entrada de comandos: una barra de búsqueda/IA con un efecto de máquina de escribir en varios pasos. Recorre una serie de indicaciones complejas, incluyendo un cursor parpadeante y un estado de «procesamiento» con un degradado de carga brillante.
- El estado en directo: una interfaz de programación con indicadores de estado que «respiran». Incluye una insignia de notificación emergente que aparece con un efecto de resorte «Overshoot», permanece durante 3 segundos y desaparece.
- El flujo de datos amplio: un «carrusel infinito» horizontal de fichas de datos o métricas. Asegúrate de que el bucle sea fluido (utilizando
x: ["0%", "-100%"]) con una velocidad que resulte natural. - La interfaz de usuario contextual (modo de enfoque): una vista de documento que anima el resaltado escalonado de un bloque de texto, seguido de la «aparición flotante» de una barra de herramientas de acción flotante con microiconos.
10. COMPROBACIÓN FINAL PREVIA A LA PUBLICACIÓN
Evalúa tu código según esta matriz antes de generarlo. Este es el último filtro que debes aplicar a tu lógica.
- ¿Se utiliza el estado global de forma adecuada para evitar un «prop-drilling» profundo, en lugar de hacerlo de forma arbitraria?
- ¿Está garantizado el colapso del diseño para móviles (
w-full,px-4,max-w-7xl, mx-auto) en diseños con gran variabilidad? - ¿Las secciones de altura completa utilizan de forma segura
min-h-[100dvh]en lugar delh-screen, que presenta errores? - ¿Las animaciones
de `useEffect`contienen funciones de limpieza estrictas? - ¿Se proporcionan los estados «vacío», «cargando» y «error»?
- ¿Se omiten las tarjetas en favor del espaciado siempre que sea posible?
- ¿Has aislado estrictamente las animaciones perpetuas que consumen muchos recursos de la CPU en sus propios componentes de cliente?
High-Agency Frontend Skill
1. ACTIVE BASELINE CONFIGURATION
- DESIGN_VARIANCE: 8 (1=Perfect Symmetry, 10=Artsy Chaos)
- MOTION_INTENSITY: 6 (1=Static/No movement, 10=Cinematic/Magic Physics)
- VISUAL_DENSITY: 4 (1=Art Gallery/Airy, 10=Pilot Cockpit/Packed Data)
AI Instruction: The standard baseline for all generations is strictly set to these values (8, 6, 4). Do not ask the user to edit this file. Otherwise, ALWAYS listen to the user: adapt these values dynamically based on what they explicitly request in their chat prompts. Use these baseline (or user-overridden) values as your global variables to drive the specific logic in Sections 3 through 7.
2. DEFAULT ARCHITECTURE & CONVENTIONS
Unless the user explicitly specifies a different stack, adhere to these structural constraints to maintain consistency:
- DEPENDENCY VERIFICATION [MANDATORY]: Before importing ANY 3rd party library (e.g.
framer-motion,lucide-react,zustand), you MUST checkpackage.json. If the package is missing, you MUST output the installation command (e.g.npm install package-name) before providing the code. Never assume a library exists. - Framework & Interactivity: React or Next.js. Default to Server Components (
RSC).- RSC SAFETY: Global state works ONLY in Client Components. In Next.js, wrap providers in a
"use client"component. - INTERACTIVITY ISOLATION: If Sections 4 or 7 (Motion/Liquid Glass) are active, the specific interactive UI component MUST be extracted as an isolated leaf component with
'use client'at the very top. Server Components must exclusively render static layouts.
- RSC SAFETY: Global state works ONLY in Client Components. In Next.js, wrap providers in a
- State Management: Use local
useState/useReducerfor isolated UI. Use global state strictly for deep prop-drilling avoidance. - Styling Policy: Use Tailwind CSS (v3/v4) for 90% of styling.
- TAILWIND VERSION LOCK: Check
package.jsonfirst. Do not use v4 syntax in v3 projects. - T4 CONFIG GUARD: For v4, do NOT use
tailwindcssplugin inpostcss.config.js. Use@tailwindcss/postcssor the Vite plugin.
- TAILWIND VERSION LOCK: Check
- ANTI-EMOJI POLICY [CRITICAL]: NEVER use emojis in code, markup, text content, or alt text. Replace symbols with high-quality icons (Radix, Phosphor) or clean SVG primitives. Emojis are BANNED.
- Responsiveness & Spacing:
- Standardize breakpoints (
sm,md,lg,xl). - Contain page layouts using
max-w-[1400px] mx-autoormax-w-7xl. - Viewport Stability [CRITICAL]: NEVER use
h-screenfor full-height Hero sections. ALWAYS usemin-h-[100dvh]to prevent catastrophic layout jumping on mobile browsers (iOS Safari). - Grid over Flex-Math: NEVER use complex flexbox percentage math (
w-[calc(33%-1rem)]). ALWAYS use CSS Grid (grid grid-cols-1 md:grid-cols-3 gap-6) for reliable structures.
- Standardize breakpoints (
- Icons: You MUST use exactly
@phosphor-icons/reactor@radix-ui/react-iconsas the import paths (check installed version). StandardizestrokeWidthglobally (e.g., exclusively use1.5or2.0).
3. DESIGN ENGINEERING DIRECTIVES (Bias Correction)
LLMs have statistical biases toward specific UI cliché patterns. Proactively construct premium interfaces using these engineered rules:
Rule 1: Deterministic Typography
- Display/Headlines: Default to
text-4xl md:text-6xl tracking-tighter leading-none.- ANTI-SLOP: Discourage
Interfor "Premium" or "Creative" vibes. Force unique character usingGeist,Outfit,Cabinet Grotesk, orSatoshi. - TECHNICAL UI RULE: Serif fonts are strictly BANNED for Dashboard/Software UIs. For these contexts, use exclusively high-end Sans-Serif pairings (
Geist+Geist MonoorSatoshi+JetBrains Mono).
- ANTI-SLOP: Discourage
- Body/Paragraphs: Default to
text-base text-gray-600 leading-relaxed max-w-[65ch].
Rule 2: Color Calibration
- Constraint: Max 1 Accent Color. Saturation < 80%.
- THE LILA BAN: The "AI Purple/Blue" aesthetic is strictly BANNED. No purple button glows, no neon gradients. Use absolute neutral bases (Zinc/Slate) with high-contrast, singular accents (e.g. Emerald, Electric Blue, or Deep Rose).
- COLOR CONSISTENCY: Stick to one palette for the entire output. Do not fluctuate between warm and cool grays within the same project.
Rule 3: Layout Diversification
- ANTI-CENTER BIAS: Centered Hero/H1 sections are strictly BANNED when
LAYOUT_VARIANCE > 4. Force "Split Screen" (50/50), "Left Aligned content/Right Aligned asset", or "Asymmetric White-space" structures.
Rule 4: Materiality, Shadows, and "Anti-Card Overuse"
- DASHBOARD HARDENING: For
VISUAL_DENSITY > 7, generic card containers are strictly BANNED. Use logic-grouping viaborder-t,divide-y, or purely negative space. Data metrics should breathe without being boxed in unless elevation (z-index) is functionally required. - Execution: Use cards ONLY when elevation communicates hierarchy. When a shadow is used, tint it to the background hue.
Rule 5: Interactive UI States
- Mandatory Generation: LLMs naturally generate "static" successful states. You MUST implement full interaction cycles:
- Loading: Skeletal loaders matching layout sizes (avoid generic circular spinners).
- Empty States: Beautifully composed empty states indicating how to populate data.
- Error States: Clear, inline error reporting (e.g., forms).
- Tactile Feedback: On
:active, use-translate-y-[1px]orscale-[0.98]to simulate a physical push indicating success/action.
Rule 6: Data & Form Patterns
- Forms: Label MUST sit above input. Helper text is optional but should exist in markup. Error text below input. Use a standard
gap-2for input blocks.
4. CREATIVE PROACTIVITY (Anti-Slop Implementation)
To actively combat generic AI designs, systematically implement these high-end coding concepts as your baseline:
- "Liquid Glass" Refraction: When glassmorphism is needed, go beyond
backdrop-blur. Add a 1px inner border (border-white/10) and a subtle inner shadow (shadow-[inset_0_1px_0_rgba(255,255,255,0.1)]) to simulate physical edge refraction. - Magnetic Micro-physics (If MOTION_INTENSITY > 5): Implement buttons that pull slightly toward the mouse cursor. CRITICAL: NEVER use React
useStatefor magnetic hover or continuous animations. Use EXCLUSIVELY Framer Motion'suseMotionValueanduseTransformoutside the React render cycle to prevent performance collapse on mobile. - Perpetual Micro-Interactions: When
MOTION_INTENSITY > 5, embed continuous, infinite micro-animations (Pulse, Typewriter, Float, Shimmer, Carousel) in standard components (avatars, status dots, backgrounds). Apply premium Spring Physics (type: "spring", stiffness: 100, damping: 20) to all interactive elements—no linear easing. - Layout Transitions: Always utilize Framer Motion's
layoutandlayoutIdprops for smooth re-ordering, resizing, and shared element transitions across state changes. - Staggered Orchestration: Do not mount lists or grids instantly. Use
staggerChildren(Framer) or CSS cascade (animation-delay: calc(var(--index) * 100ms)) to create sequential waterfall reveals. CRITICAL: ForstaggerChildren, the Parent (variants) and Children MUST reside in the identical Client Component tree. If data is fetched asynchronously, pass the data as props into a centralized Parent Motion wrapper.
5. PERFORMANCE GUARDRAILS
- DOM Cost: Apply grain/noise filters exclusively to fixed, pointer-event-none pseudo-elements (e.g.,
fixed inset-0 z-50 pointer-events-none) and NEVER to scrolling containers to prevent continuous GPU repaints and mobile performance degradation. - Hardware Acceleration: Never animate
top,left,width, orheight. Animate exclusively viatransformandopacity. - Z-Index Restraint: NEVER spam arbitrary
z-50orz-10unprompted. Use z-indexes strictly for systemic layer contexts (Sticky Navbars, Modals, Overlays).
6. TECHNICAL REFERENCE (Dial Definitions)
DESIGN_VARIANCE (Level 1-10)
- 1-3 (Predictable): Flexbox
justify-center, strict 12-column symmetrical grids, equal paddings. - 4-7 (Offset): Use
margin-top: -2removerlapping, varied image aspect ratios (e.g., 4:3 next to 16:9), left-aligned headers over center-aligned data. - 8-10 (Asymmetric): Masonry layouts, CSS Grid with fractional units (e.g.,
grid-template-columns: 2fr 1fr 1fr), massive empty zones (padding-left: 20vw). - MOBILE OVERRIDE: For levels 4-10, any asymmetric layout above
md:MUST aggressively fall back to a strict, single-column layout (w-full,px-4,py-8) on viewports< 768pxto prevent horizontal scrolling and layout breakage.
MOTION_INTENSITY (Level 1-10)
- 1-3 (Static): No automatic animations. CSS
:hoverand:activestates only. - 4-7 (Fluid CSS): Use
transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1). Useanimation-delaycascades for load-ins. Focus strictly ontransformandopacity. Usewill-change: transformsparingly. - 8-10 (Advanced Choreography): Complex scroll-triggered reveals or parallax. Use Framer Motion hooks. NEVER use
window.addEventListener('scroll').
VISUAL_DENSITY (Level 1-10)
- 1-3 (Art Gallery Mode): Lots of white space. Huge section gaps. Everything feels very expensive and clean.
- 4-7 (Daily App Mode): Normal spacing for standard web apps.
- 8-10 (Cockpit Mode): Tiny paddings. No card boxes; just 1px lines to separate data. Everything is packed. Mandatory: Use Monospace (
font-mono) for all numbers.
7. AI TELLS (Forbidden Patterns)
To guarantee a premium, non-generic output, you MUST strictly avoid these common AI design signatures unless explicitly requested:
Visual & CSS
- NO Neon/Outer Glows: Do not use default
box-shadowglows or auto-glows. Use inner borders or subtle tinted shadows. - NO Pure Black: Never use
#000000. Use Off-Black, Zinc-950, or Charcoal. - NO Oversaturated Accents: Desaturate accents to blend elegantly with neutrals.
- NO Excessive Gradient Text: Do not use text-fill gradients for large headers.
- NO Custom Mouse Cursors: They are outdated and ruin performance/accessibility.
Typography
- NO Inter Font: Banned. Use
Geist,Outfit,Cabinet Grotesk, orSatoshi. - NO Oversized H1s: The first heading should not scream. Control hierarchy with weight and color, not just massive scale.
- Serif Constraints: Use Serif fonts ONLY for creative/editorial designs. NEVER use Serif on clean Dashboards.
Layout & Spacing
- Align & Space Perfectly: Ensure padding and margins are mathematically perfect. Avoid floating elements with awkward gaps.
- NO 3-Column Card Layouts: The generic "3 equal cards horizontally" feature row is BANNED. Use a 2-column Zig-Zag, asymmetric grid, or horizontal scrolling approach instead.
Content & Data (The "Jane Doe" Effect)
- NO Generic Names: "John Doe", "Sarah Chan", or "Jack Su" are banned. Use highly creative, realistic-sounding names.
- NO Generic Avatars: DO NOT use standard SVG "egg" or Lucide user icons for avatars. Use creative, believable photo placeholders or specific styling.
- NO Fake Numbers: Avoid predictable outputs like
99.99%,50%, or basic phone numbers (1234567). Use organic, messy data (47.2%,+1 (312) 847-1928). - NO Startup Slop Names: "Acme", "Nexus", "SmartFlow". Invent premium, contextual brand names.
- NO Filler Words: Avoid AI copywriting clichés like "Elevate", "Seamless", "Unleash", or "Next-Gen". Use concrete verbs.
External Resources & Components
- NO Broken Unsplash Links: Do not use Unsplash. Use absolute, reliable placeholders like
https://picsum.photos/seed/{random_string}/800/600or SVG UI Avatars. - shadcn/ui Customization: You may use
shadcn/ui, but NEVER in its generic default state. You MUST customize the radii, colors, and shadows to match the high-end project aesthetic. - Production-Ready Cleanliness: Code must be extremely clean, visually striking, memorable, and meticulously refined in every detail.
8. THE CREATIVE ARSENAL (High-End Inspiration)
Do not default to generic UI. Pull from this library of advanced concepts to ensure the output is visually striking and memorable. When appropriate, leverage GSAP (ScrollTrigger/Parallax) for complex scrolltelling or ThreeJS/WebGL for 3D/Canvas animations, rather than basic CSS motion. CRITICAL: Never mix GSAP/ThreeJS with Framer Motion in the same component tree. Default to Framer Motion for UI/Bento interactions. Use GSAP/ThreeJS EXCLUSIVELY for isolated full-page scrolltelling or canvas backgrounds, wrapped in strict useEffect cleanup blocks.
The Standard Hero Paradigm
- Stop doing centered text over a dark image. Try asymmetric Hero sections: Text cleanly aligned to the left or right. The background should feature a high-quality, relevant image with a subtle stylistic fade (darkening or lightening gracefully into the background color depending on if it is Light or Dark mode).
Navigation & Menüs
- Mac OS Dock Magnification: Nav-bar at the edge; icons scale fluidly on hover.
- Magnetic Button: Buttons that physically pull toward the cursor.
- Gooey Menu: Sub-items detach from the main button like a viscous liquid.
- Dynamic Island: A pill-shaped UI component that morphs to show status/alerts.
- Contextual Radial Menu: A circular menu expanding exactly at the click coordinates.
- Floating Speed Dial: A FAB that springs out into a curved line of secondary actions.
- Mega Menu Reveal: Full-screen dropdowns that stagger-fade complex content.
Layout & Grids
- Bento Grid: Asymmetric, tile-based grouping (e.g., Apple Control Center).
- Masonry Layout: Staggered grid without fixed row heights (e.g., Pinterest).
- Chroma Grid: Grid borders or tiles showing subtle, continuously animating color gradients.
- Split Screen Scroll: Two screen halves sliding in opposite directions on scroll.
- Curtain Reveal: A Hero section parting in the middle like a curtain on scroll.
Cards & Containers
- Parallax Tilt Card: A 3D-tilting card tracking the mouse coordinates.
- Spotlight Border Card: Card borders that illuminate dynamically under the cursor.
- Glassmorphism Panel: True frosted glass with inner refraction borders.
- Holographic Foil Card: Iridescent, rainbow light reflections shifting on hover.
- Tinder Swipe Stack: A physical stack of cards the user can swipe away.
- Morphing Modal: A button that seamlessly expands into its own full-screen dialog container.
Scroll-Animations
- Sticky Scroll Stack: Cards that stick to the top and physically stack over each other.
- Horizontal Scroll Hijack: Vertical scroll translates into a smooth horizontal gallery pan.
- Locomotive Scroll Sequence: Video/3D sequences where framerate is tied directly to the scrollbar.
- Zoom Parallax: A central background image zooming in/out seamlessly as you scroll.
- Scroll Progress Path: SVG vector lines or routes that draw themselves as the user scrolls.
- Liquid Swipe Transition: Page transitions that wipe the screen like a viscous liquid.
Galleries & Media
- Dome Gallery: A 3D gallery feeling like a panoramic dome.
- Coverflow Carousel: 3D carousel with the center focused and edges angled back.
- Drag-to-Pan Grid: A boundless grid you can freely drag in any compass direction.
- Accordion Image Slider: Narrow vertical/horizontal image strips that expand fully on hover.
- Hover Image Trail: The mouse leaves a trail of popping/fading images behind it.
- Glitch Effect Image: Brief RGB-channel shifting digital distortion on hover.
Typography & Text
- Kinetic Marquee: Endless text bands that reverse direction or speed up on scroll.
- Text Mask Reveal: Massive typography acting as a transparent window to a video background.
- Text Scramble Effect: Matrix-style character decoding on load or hover.
- Circular Text Path: Text curved along a spinning circular path.
- Gradient Stroke Animation: Outlined text with a gradient continuously running along the stroke.
- Kinetic Typography Grid: A grid of letters dodging or rotating away from the cursor.
Micro-Interactions & Effects
- Particle Explosion Button: CTAs that shatter into particles upon success.
- Liquid Pull-to-Refresh: Mobile reload indicators acting like detaching water droplets.
- Skeleton Shimmer: Shifting light reflections moving across placeholder boxes.
- Directional Hover Aware Button: Hover fill entering from the exact side the mouse entered.
- Ripple Click Effect: Visual waves rippling precisely from the click coordinates.
- Animated SVG Line Drawing: Vectors that draw their own contours in real-time.
- Mesh Gradient Background: Organic, lava-lamp-like animated color blobs.
- Lens Blur Depth: Dynamic focus blurring background UI layers to highlight a foreground action.
9. THE "MOTION-ENGINE" BENTO PARADIGM
When generating modern SaaS dashboards or feature sections, you MUST utilize the following "Bento 2.0" architecture and motion philosophy. This goes beyond static cards and enforces a "Vercel-core meets Dribbble-clean" aesthetic heavily reliant on perpetual physics.
A. Core Design Philosophy
- Aesthetic: High-end, minimal, and functional.
- Palette: Background in
#f9fafb. Cards are pure white (#ffffff) with a 1px border ofborder-slate-200/50. - Surfaces: Use
rounded-[2.5rem]for all major containers. Apply a "diffusion shadow" (a very light, wide-spreading shadow, e.g.,shadow-[0_20px_40px_-15px_rgba(0,0,0,0.05)]) to create depth without clutter. - Typography: Strict
Geist,Satoshi, orCabinet Groteskfont stack. Use subtle tracking (tracking-tight) for headers. - Labels: Titles and descriptions must be placed outside and below the cards to maintain a clean, gallery-style presentation.
- Pixel-Perfection: Use generous
p-8orp-10padding inside cards.
B. The Animation Engine Specs (Perpetual Motion)
All cards must contain "Perpetual Micro-Interactions." Use the following Framer Motion principles:
- Spring Physics: No linear easing. Use
type: "spring", stiffness: 100, damping: 20for a premium, weighty feel. - Layout Transitions: Heavily utilize the
layoutandlayoutIdprops to ensure smooth re-ordering, resizing, and shared element state transitions. - Infinite Loops: Every card must have an "Active State" that loops infinitely (Pulse, Typewriter, Float, or Carousel) to ensure the dashboard feels "alive".
- Performance: Wrap dynamic lists in
<AnimatePresence>and optimize for 60fps. PERFORMANCE CRITICAL: Any perpetual motion or infinite loop MUST be memoized (React.memo) and completely isolated in its own microscopic Client Component. Never trigger re-renders in the parent layout.
C. The 5-Card Archetypes (Micro-Animation Specs)
Implement these specific micro-animations when constructing Bento grids (e.g., Row 1: 3 cols | Row 2: 2 cols split 70/30):
- The Intelligent List: A vertical stack of items with an infinite auto-sorting loop. Items swap positions using
layoutId, simulating an AI prioritizing tasks in real-time. - The Command Input: A search/AI bar with a multi-step Typewriter Effect. It cycles through complex prompts, including a blinking cursor and a "processing" state with a shimmering loading gradient.
- The Live Status: A scheduling interface with "breathing" status indicators. Include a pop-up notification badge that emerges with an "Overshoot" spring effect, stays for 3 seconds, and vanishes.
- The Wide Data Stream: A horizontal "Infinite Carousel" of data cards or metrics. Ensure the loop is seamless (using
x: ["0%", "-100%"]) with a speed that feels effortless. - The Contextual UI (Focus Mode): A document view that animates a staggered highlight of a text block, followed by a "Float-in" of a floating action toolbar with micro-icons.
10. FINAL PRE-FLIGHT CHECK
Evaluate your code against this matrix before outputting. This is the last filter you apply to your logic.
- Is global state used appropriately to avoid deep prop-drilling rather than arbitrarily?
- Is mobile layout collapse (
w-full,px-4,max-w-7xl mx-auto) guaranteed for high-variance designs? - Do full-height sections safely use
min-h-[100dvh]instead of the buggedh-screen? - Do
useEffectanimations contain strict cleanup functions? - Are empty, loading, and error states provided?
- Are cards omitted in favor of spacing where possible?
- Did you strictly isolate CPU-heavy perpetual animations in their own Client Components?
Instalar design-taste-frontend-v1
Descarga y descomprime los archivos de las habilidades en tu directorio .claude/skills/.
Descargar ZIPClona el repositorio y copia los archivos de la habilidad a tu proyecto.
git clone https://github.com/nexu-io/open-design/tree/main/skills/taste-skill-v1 # Copy the skill folder to .claude/skills/ or .codex/skills/
Copiar





Hogar
