Publicado el 2026-08-05 · Por El equipo de MarkupGen
De Figma a React: un flujo de trabajo práctico para desarrolladores

Reconstruir a mano un diseño de Figma ya terminado como componentes React que funcionen de verdad es una de esas tareas que en el archivo de diseño parece sencilla y que, en cuanto abres el editor de código, se vuelve tediosa. No se trata solo de escribir componentes: hay que volver a deducir espaciados, alineaciones y comportamiento responsive que ya existen en el diseño, y luego confiar en que el resultado siga coincidiendo después de una docena de pequeñas decisiones. Aquí tienes un flujo de trabajo práctico de Figma to React que mantiene ese criterio enfocado en lo que realmente lo necesita: los límites de los componentes, el comportamiento del layout y cómo se sostiene el resultado en distintos tamaños de pantalla.
Por qué reconstruir componentes React a mano desde Figma es lento
La mayor parte del tiempo que los desarrolladores dedican a este traspaso no se va en resolver problemas difíciles, sino en traducir decisiones ya tomadas a otro formato:
- Leer los ajustes de Auto Layout de cada capa y reimplementarlos a mano como reglas de Flexbox dentro del JSX.
- Volver a medir paddings, gaps y tamaños de fuente que ya están definidos con precisión en el archivo de Figma.
- Adivinar en qué punto un componente debería volverse responsive, ya que un frame de Figma suele tener un único ancho fijo.
- Estructurar componentes y props desde cero, en lugar de partir de algo ya utilizable.
Nada de esto requiere habilidades de diseño ni una ingeniería especialmente compleja: es trabajo repetitivo y mecánico, y es precisamente en ese tipo de trabajo manual repetitivo donde se cuelan las diferencias entre el diseño y la interfaz que finalmente se lanza.
De componentes de Figma a componentes React
No existe una única regla para convertir una capa de Figma en un componente React: depende de cuánto se repita, de qué representan sus variantes y de cómo esté estructurado el resto de la app. Como punto de partida, un componente de Figma con variantes (un Button con estados primary/secondary, por ejemplo) normalmente se convierte en un único componente React que gestiona esas variantes como props, no en un componente distinto por cada estado:
<Button variant="primary" size="md">
Get started
</Button>
La misma lógica se aplica a cualquier cosa que se repita en el diseño: tres tarjetas similares en el archivo de Figma son una señal para crear un único componente Card que se renderiza a partir de un array de datos, no tres copias del mismo JSX. El error más común aquí es la sobre-componentización: convertir cada frame de Auto Layout en su propio archivo añade indirección sin añadir reutilización. Para ver el mapeo de conceptos de Figma a React más completo —incluyendo dónde suelen fallar los límites de los componentes y las props de variantes—, consulta Auto Layout de Figma a React: de frames a componentes.
El flujo de MarkupGen, aplicado a React
MarkupGen es una plataforma SaaS con un plugin de Figma que convierte un diseño de Figma en HTML, CSS o componentes React, para que empieces desde código ya generado en lugar de un archivo de componente vacío. El flujo tiene cuatro pasos:
1. Exporta el frame desde Figma. Selecciona el frame que quieres convertir y envíalo a tu workspace con el plugin de Figma de MarkupGen. El plugin captura la estructura, los estilos y las imágenes del frame todos juntos, en lugar de obligarte a copiarlos capa por capa.
2. La IA construye el código a partir del diseño real. A partir de ahí, la IA genera HTML y CSS basándose en la estructura y el estilo reales del frame, no en una suposición genérica de cómo "debería" verse el diseño.
3. Elige React como formato de salida. El formato de salida se elige en cada exportación: HTML/CSS puro, Tailwind CSS o componentes React. Si eliges React, obtienes componentes construidos a partir de esa misma estructura, listos para integrarse en un codebase existente en lugar de una página estática. (¿Necesitas HTML/CSS puro en su lugar? La guía general de Figma a HTML cubre ese camino.)
4. Refina y luego exporta el paquete final. Antes de generar el código final, un editor integrado te permite ajustar visualmente el contenido, las fuentes y el layout. Cada exportación también recibe automáticamente una puntuación de calidad de IA, para que sepas de un vistazo si el resultado está cerca de estar listo para producción o si necesita otra pasada.
Cómo el Auto Layout se convierte en Flexbox dentro de tus componentes
La parte de este flujo que más trabajo manual ahorra es el layout. Las propiedades de Auto Layout de Figma —dirección, gap, padding y alineación— se mapean automáticamente a una estructura CSS Flexbox equivalente, y ese mapeo se traslada también a los componentes React generados, no solo a una página HTML estática. Una fila de elementos en Auto Layout con un gap definido se convierte en un contenedor flex donde el gap, el padding y la alineación ya están integrados en los estilos del componente, en lugar de un componente que hay que ajustar a ojo. Los frames de Auto Layout anidados se mapean de la misma forma a contenedores flex anidados, lo que cubre la mayoría de los layouts de tarjetas, listas y navegación; un puñado de diseños genuinamente basados en grid siguen encajando mejor con CSS Grid. Si quieres ver con más detalle cómo funciona ese mapeo, descubre cómo el Auto Layout se traduce en Flexbox.
Lograr que el comportamiento responsive se sostenga
El comportamiento responsive es justo donde el resultado de Figma a React merece la mirada más atenta, no la menos. Los modos de tamaño de Auto Layout —Hug, Fill, Fixed— y las restricciones de redimensionado de un frame son señales reales sobre cómo debería comportarse un componente en distintos anchos: un contenedor Fill es una señal de un ancho flexible o de flex: 1 en CSS, no de un valor fijo en píxeles. Pero ni Figma ni una herramienta de conversión pueden generar por sí solas código React responsive completo: los breakpoints concretos, cómo debería reorganizarse un layout en móvil y si un componente necesita una disposición distinta por debajo de cierto ancho son decisiones que siguen necesitando que una persona las interprete, apoyándose en esas señales en lugar de dejar que las sustituyan. En la práctica, eso significa comprobar los componentes generados (o construidos a mano) en unos cuantos breakpoints reales en lugar de confiar en que un max-width o una media query se hayan trasladado correctamente, y tratar un frame de Figma pensado solo para escritorio como punto de partida para el comportamiento en móvil, no como la última palabra al respecto.
Revisar los componentes antes de integrarlos en tu app
El código generado hace la mayor parte del trabajo, pero antes de fusionarlo con una app existente sigue mereciendo la pena revisarlo:
- Comprueba los límites de los componentes. Confirma que los componentes generados se dividen donde tú los dividirías de forma natural en tu propio codebase; siempre puedes dividirlos aún más una vez que estén en tu proyecto. Los botones, tarjetas, la navegación y otros elementos de UI repetidos suelen ser el tamaño adecuado para un componente; dividir hasta el nivel de cada capa solo añade indirección.
- Mira el markup, no solo el resultado visual. El resultado favorece HTML semántico con una jerarquía de encabezados correcta frente a
<div>anidados en exceso, con elementos reales<button>y<a>para las partes interactivas y textoalten las imágenes, algo que vale la pena revisar rápidamente porque también es de lo que dependen los buscadores y los lectores de pantalla, y la similitud visual con el frame de Figma no garantiza nada de esto por sí sola. Consulta De Figma a HTML accesible: guía práctica para la lista de comprobación completa. - Vuelve a revisar el contenido y los textos. Cualquier cambio en el diseño posterior a la exportación es más fácil de corregir en el editor integrado, antes de llevar el código final a tu proyecto.
- Conecta tus propios datos y state. Los componentes generados se encargan de la estructura y el estilo; conectarlos a props reales, datos de una API o al state de la aplicación sigue siendo tarea tuya.
Pruébalo con tu propio diseño
Nada de esto sustituye el criterio de un desarrollador sobre cómo debe comportarse un componente: elimina el trabajo mecánico de convertir decisiones de layout ya tomadas en JSX y CSS, para que ese criterio se dedique a lo que realmente lo necesita. MarkupGen tiene un plan gratuito, así que puedes empezar gratis y pasar a un plan de pago solo cuando lo necesites, sin costes ocultos y pudiendo cancelar cuando quieras. Si quieres ver el proceso completo de cuatro pasos con un diseño real, pruébalo con tu propio archivo de Figma. Si tienes dudas, escribe a support@markupgen.com.
FAQ
¿Cómo convierto un diseño de Figma a React? Inspecciona la estructura del frame y sus ajustes de Auto Layout, decide qué partes repetidas deberían convertirse en componentes reutilizables con props para sus variantes, y luego construye (o genera) los componentes React y el CSS a partir de esa estructura: el Auto Layout se mapea a Flexbox, y las restricciones de redimensionado informan el comportamiento responsive. Una herramienta como MarkupGen puede generar automáticamente esa primera versión; en cualquier caso, merece la pena hacer una revisión de los límites de los componentes, la accesibilidad y los datos reales antes de publicarlo.
¿Se pueden convertir diseños de Figma en componentes React reutilizables? Sí, pero no todas las capas deberían convertirse en uno. Los elementos de UI repetidos —botones, tarjetas, ítems de navegación, campos de formulario— son buenos candidatos; una capa que solo existe una vez en el diseño normalmente no necesita su propio componente.
¿Cómo se mapea el Auto Layout de Figma a React y CSS?
Sobre todo a CSS Flexbox: la dirección se convierte en flex-direction, el gap en gap, el padding en padding, y la alineación en justify-content/align-items, trasladándose al enfoque de CSS que usen los componentes React.
¿Cómo hago que el resultado de Figma a React sea responsive? Parte de los modos de tamaño de Auto Layout del frame y de sus restricciones: son señales de cómo debería redimensionarse, pero planea añadir o ajustar tú mismo los breakpoints y el layout específico para móvil. Ni Figma ni una herramienta de conversión pueden inferir del todo un comportamiento responsive que no esté ya representado en el diseño.
¿Todos los componentes de Figma deberían convertirse en componentes React? No. Convertir en componente todo lo que el archivo de diseño etiqueta como "componente" tiende a añadir indirección sin hacer que el código sea más fácil de mantener: los patrones reutilizables y repetidos merecen la pena; las capas únicas normalmente no.
¿Quieres pasar directamente a convertir tu propio diseño? Convierte tu diseño de Figma a React con MarkupGen →
