Atomic Design — fundamentos, átomos, moléculas y organismos en la UI

Autor: IT Sectr Publicado: 2026-02-21 Tiempo de lectura: 11 min

Explicamos qué es el Atomic Design — una metodología de diseño de interfaces propuesta por Brad Frost en 2013, que toma prestada la metáfora de átomos, moléculas y organismos para construir una jerarquía de componentes de UI. A diferencia del enfoque basado en páginas, donde la interfaz se diseña pantalla por pantalla, el Atomic Design divide la UI en los elementos reutilizables más pequeños (átomos) y los ensambla en estructuras más complejas. Según Brad Frost (2016), la metodología se utiliza en los sistemas de diseño del 67% de las grandes empresas, incluyendo IBM, Airbnb y Google.

Puntos clave

  • Atomic Design — una metodología que divide los componentes de UI en cinco niveles: átomos, moléculas, organismos, plantillas y páginas.
  • Los átomos son elementos HTML básicos (botón, input, etiqueta); las moléculas son combinaciones de átomos (campo de entrada con etiqueta); los organismos son bloques complejos (formulario de inicio de sesión).
  • La metodología fue propuesta por Brad Frost en 2013 y descrita en el libro "Atomic Design" (2016).
  • El Atomic Design es la base de los sistemas de diseño modernos: Material Design, Carbon (IBM), Lightning (Salesforce).
  • En el desarrollo móvil, el Atomic Design se integra con frameworks de componentes — Jetpack Compose y SwiftUI — donde los componentes personalizados describen naturalmente átomos y moléculas.

¿Qué es Atomic Design?

Atomic Design es una metodología para crear sistemas jerárquicos de interfaces, donde cada elemento de UI pertenece a uno de cinco niveles: átomos (elementos básicos), moléculas (combinaciones de átomos), organismos (bloques complejos), plantillas (esquemas de página) y páginas (pantallas específicas con datos). La analogía está tomada de la química: los átomos se combinan en moléculas, las moléculas en organismos, los organismos en plantillas, las plantillas se llenan de contenido y se convierten en páginas.

La metodología fue propuesta por el diseñador web Brad Frost en 2013 como respuesta al problema del "pensamiento de página" — cuando cada nueva pantalla se diseña desde cero sin tener en cuenta los componentes existentes. En el libro "Atomic Design" (2016), Frost describe la implementación de la metodología en proyectos de grandes empresas: IBM, GE, Starbucks. Según Nielsen Norman Group (2022), el Atomic Design reduce el tiempo de diseño de nuevas pantallas en un 30–50% gracias a la reutilización de componentes ya creados.

El Atomic Design no es tanto una tecnología como una filosofía de organización de la UI. No está vinculado a un framework específico y es aplicable tanto en la web (React, Vue) como en el desarrollo móvil (Jetpack Compose, SwiftUI). En IT Sectr, utilizamos el Atomic Design para construir sistemas de diseño para nuestros clientes: identificamos componentes atómicos en la etapa de diseño y los transferimos a componentes de código en Compose/SwiftUI.

Cinco niveles: átomos, moléculas, organismos, plantillas, páginas

Cada nivel del Atomic Design resuelve su propio problema y tiene un área de responsabilidad estricta. Los átomos son los bloques de construcción más pequeños de la interfaz que no se pueden dividir más sin perder significado: botón, campo de texto, icono, etiqueta, casilla de verificación. Los átomos no contienen lógica de negocio ni dependen del contexto. Definen las características visuales básicas: color, tamaño, espaciado, tipografía.

Las moléculas son combinaciones de dos o más átomos que forman unidades funcionales simples. Un campo de entrada con una etiqueta y un mensaje de error es una molécula. Una tarjeta de producto con imagen, nombre y precio es una molécula. Las moléculas pueden contener lógica básica (mostrar/ocultar error), pero no contienen procesos de negocio. Las moléculas son el primer nivel en el que los componentes se vuelven reutilizables en diferentes pantallas.

Los organismos son bloques de interfaz complejos formados por moléculas y átomos que implementan una función específica de la aplicación. Un formulario de inicio de sesión (campo de email, campo de contraseña, botón de envío, enlace "olvidé mi contraseña") es un organismo. Un encabezado con logotipo, búsqueda y navegación es un organismo. Los organismos pueden contener lógica de negocio y acceder a la API, pero solo dentro de su función.

Las plantillas son esquemas de página que definen la disposición de los organismos en la pantalla sin contenido específico. Una plantilla define la cuadrícula, las columnas, las zonas de contenido — un wireframe a nivel de código. Las plantillas no contienen datos, solo marcadores de posición. Permiten evaluar la estructura de la página antes de llenarla con contenido.

Las páginas son pantallas específicas de la aplicación donde la plantilla se llena con datos reales. En este nivel se verifica cómo se ven los componentes con contenido real (cadenas largas, datos faltantes, errores). Las páginas son el único nivel que ve el usuario final. Los cambios a nivel de página no deben afectar a átomos, moléculas y organismos — si un componente necesita ser modificado, el cambio se realiza en su nivel y la página lo recoge automáticamente.

Ventajas y limitaciones de Atomic Design

Las ventajas del Atomic Design se hacen evidentes al escalar interfaces. Una biblioteca de componentes única garantiza la consistencia visual: un botón se ve igual en todas las pantallas porque es el mismo átomo. Según Brad Frost (2016), las empresas que implementaron Atomic Design reducen el tiempo de desarrollo de nuevas pantallas en un 30–50% mediante la reutilización de moléculas y organismos ya creados.

CaracterísticaAtomic DesignEnfoque basado en páginas
Reutilización de componentesAlta (átomos, moléculas, organismos)Baja (cada pantalla desde cero)
Consistencia visualGarantizadaControl manual
Velocidad de creación de nuevas pantallasAlta (montaje a partir de bloques ya hechos)Baja (diseño + maquetación desde cero)
Complejidad de implementaciónAlta (requiere un catálogo de componentes)Baja (modelo familiar)
Capacidad de pruebaAlta (cada átomo está aislado)Integración (pantalla completa a la vez)

Limitaciones — el Atomic Design no describe cómo gestionar el estado de la aplicación. La metodología solo responde a la pregunta "cómo organizar los componentes de UI" pero no aborda la lógica de negocio, el enrutamiento ni la gestión de datos. La segunda limitación es la dificultad para definir los límites: ¿dónde termina una molécula y comienza un organismo? En la práctica, los límites son difusos y diferentes equipos pueden clasificar el mismo componente de manera distinta. Se recomienda establecer reglas en los tokens de diseño y en un catálogo de componentes (Storybook, Jetpack Compose Preview).

La tercera limitación es la abstracción excesiva para proyectos pequeños. Si una aplicación consta de 5 pantallas, crear una jerarquía de átomos y moléculas es trabajo innecesario. El Atomic Design se vuelve beneficioso cuando el número de pantallas supera las 20 y los componentes se reutilizan en diferentes páginas.

Atomic Design vs Feature-Sliced Design

Atomic Design y Feature-Sliced Design (FSD) resuelven problemas diferentes y pueden usarse juntos. El Atomic Design es una metodología para organizar componentes de UI, el FSD es una metodología para organizar las capas de negocio y la aplicación en su conjunto. El Atomic Design responde a la pregunta "cómo dividir la UI en partes reutilizables", el FSD responde a "cómo organizar el código en torno a las funcionalidades de negocio". No compiten: se puede tener una estructura FSD con capas de features y entities, y dentro de cada capa usar Atomic Design para organizar los componentes de UI.

CriterioAtomic DesignFeature-Sliced Design
ÁmbitoComponentes de UIArquitectura de la aplicación
Unidad de agrupaciónMetáfora química (átomo → molécula → organismo)Funcionalidad de negocio (slice)
DependenciasDe átomos a páginas (de abajo arriba)De app a shared (de arriba abajo)
Manejo de datosNo descritoMediante segmentos model + api
EscaladoHorizontal (más componentes)Vertical (más funcionalidades)

Combinación típica: FSD define la estructura modular de la aplicación (capas, slices), el Atomic Design define la estructura interna de los componentes de UI dentro de cada slice. Por ejemplo, el slice feature.auth contiene moléculas (LoginForm, PasswordInput) y organismos (AuthPage) ensamblados según las reglas de Atomic Design. La capa shared contiene átomos (Button, Input, Label) reutilizados en todas las funcionalidades.

Atomic Design en aplicaciones móviles: Compose y SwiftUI

Jetpack Compose y SwiftUI admiten naturalmente la jerarquía de Atomic Design mediante la composición de componentes. Los átomos en Compose son funciones @Composable básicas: AppButton, AppTextField, AppCheckbox. Cada función acepta parámetros de personalización (color, tamaño, estado) y no contiene lógica de negocio. Los átomos se definen en la capa shared y se exportan como un UI-kit.

Las moléculas son funciones @Composable que combinan varios átomos: LabeledTextField (etiqueta + campo de entrada + mensaje de error), ProductCard (imagen + nombre + precio). Las moléculas pueden contener estado básico (validez del campo) pero no acceden a la API ni a la ViewModel. Se reutilizan en diferentes organismos.

Los organismos son funciones @Composable a nivel de funcionalidad: LoginForm (LabeledTextField para email + LabeledTextField para contraseña + AppButton de envío + enlace de recuperación). Los organismos trabajan con la ViewModel mediante funciones Intent y pueden contener lógica de negocio. En SwiftUI, se construye una jerarquía similar mediante @ViewBuilder y estructuras View personalizadas.

En SwiftUI, un átomo es una estructura View personalizada AppButton, una molécula es un campo de entrada con etiqueta en HStack, un organismo es un formulario de inicio de sesión. Esta estructura permite reutilizar componentes en todas las pantallas — cambiar un átomo (color del botón) se aplica automáticamente a todas las pantallas. La combinación de Atomic Design con un sistema de diseño garantiza la consistencia de la interfaz sin control manual de cada pantalla.

Preguntas Frecuentes

¿Es necesario seguir estrictamente los cinco niveles de Atomic Design?

Los cinco niveles son una recomendación, no una ley. Muchos sistemas de diseño (Material Design, IBM Carbon) utilizan 3 o 4 niveles: componentes básicos, componentes compuestos y plantillas. La regla principal es que cada componente pertenezca a un nivel y pueda reutilizarse en niveles superiores. Si observa que los niveles "molécula" y "organismo" en su proyecto no se distinguen — fúsionelos. Los átomos y las páginas son los únicos niveles obligatorios.

¿Cómo probar los componentes de Atomic Design?

Los átomos se prueban visualmente (pruebas de Snapshot, Compose Preview) — se verifica que un botón con propiedades determinadas se renderice correctamente. Las moléculas se prueban como combinación de átomos — se verifica el estado (error, éxito, deshabilitado). Los organismos requieren pruebas de integración — se verifica la interacción con la ViewModel (envío de formulario, carga de datos). En IT Sectr, usamos Compose Test para Android y XCTest para iOS; para pruebas visuales — Paparazzi (Android) y SnapshotTesting (iOS).

¿Se puede usar Atomic Design sin un sistema de diseño?

Se puede, pero la eficiencia disminuye. Sin un sistema de diseño y tokens de diseño, los átomos no tienen un estilo unificado — cada desarrollador crea sus propios átomos con colores y espaciados arbitrarios, lo que genera incoherencia visual. Atomic Design y el sistema de diseño son conceptos complementarios: Atomic Design define la jerarquía, el sistema de diseño define el lenguaje visual. Se recomienda implementarlos juntos: primero los tokens de diseño (colores, tipografía, espaciados), luego los átomos, luego las moléculas y los organismos.

¿Cómo lidiar con la "zona atómica" (demasiados átomos)?

La "zona atómica" es una situación en la que la cantidad de átomos supera los límites razonables (100+) y encontrar el componente necesario lleva más tiempo que escribirlo desde cero. La solución es la colocación de átomos por funcionalidades: un átomo utilizado por una sola funcionalidad debe almacenarse dentro de esa funcionalidad, no en shared. En shared solo se colocan los átomos globales (Button, Text, Input). Según Brad Frost, la colocación reduce la cantidad de átomos compartidos en un 60–70% sin perder reutilización.

¿Atomic Design es solo para la UI o también para el código?

Atomic Design fue originalmente una metodología de diseño de interfaces, pero en la práctica moderna también se utiliza para organizar el código. En las herramientas de diseño (Figma, Sketch), los átomos son componentes de la biblioteca; en el código, son funciones y clases. La metodología no distingue entre diseño y código — el átomo es el mismo tanto en el mockup como en la implementación. En IT Sectr, usamos supernova.io para sincronizar los átomos de diseño y los átomos de código, eliminando discrepancias entre el mockup y la interfaz final.

Resumen

  • Atomic Design es una metodología de organización jerárquica de componentes de UI que utiliza la metáfora de átomos, moléculas, organismos, plantillas y páginas.
  • Los átomos son elementos básicos (botón, input); las moléculas son sus combinaciones (campo con etiqueta); los organismos son bloques complejos (formulario de búsqueda).
  • Las plantillas definen el esqueleto, las páginas — el llenado específico con datos.
  • Atomic Design no gestiona el estado ni la lógica de negocio — solo se ocupa de la organización de la capa de UI.
  • En el desarrollo móvil, los átomos se describen naturalmente mediante funciones @Composable (Android) y estructuras View (iOS).
  • Atomic Design se combina bien con FSD: FSD define la arquitectura, Atomic Design organiza la UI dentro de los slices.
  • Las principales ventajas son la reutilización de componentes, la consistencia visual y la velocidad de creación de nuevas pantallas.

Desarrollaremos una aplicación móvil llave en mano

IT Sectr crea aplicaciones para iOS y Android para startups y empresas desde 2017. Le asesoraremos y le propondremos la mejor solución.

Discutir el proyecto

Lea también