JY ← Todos los proyectos Design System
Nester2024

Design System

Nester no tenía design system. Construí uno a partir de un producto en producción —pantalla por pantalla— mientras el roadmap seguía avanzando

RolProduct Designer
FechaEn curso
Equipo1 Designer
01 — Contexto

Nester no tenía design system porque nunca había tenido tiempo de necesitarlo.

Cuando entré en Nester, Figma apenas existía. El producto se construía directamente en código: sin documentación, sin librería de componentes, sin una única fuente de verdad visual. No diseñaba sobre un lienzo en blanco. Estaba sistematizando un producto que ya estaba en producción, con usuarios reales, mientras el roadmap seguía su ritmo normal.

02 — Reto

Había que extraer un sistema coherente, no inventarlo, y dentro de un stack que no podía cambiar de un día para otro.

Poner orden en el caos

La pregunta no era “cómo diseño el sistema ideal”. Era: ¿cómo saco un sistema coherente de algo que nunca se pensó como tal, sin detener ni un solo sprint?

Diseñar dentro de Bootstrap 4

Todo lo que documentaba tenía que sobrevivir al stack actual. Nada de componentes que no pudiera soportar sin una reescritura importante. Más de una vez, eso significó documentar el patrón “correcto según lo que ya funciona”, no el patrón ideal en abstracto, sabiendo que esa concesión era temporal.

03 — Enfoque

Cada pantalla ya contenía el sistema. Solo faltaba ponerle nombre.

Reconstruir el producto, pantalla por pantalla

No tenía el lujo de pausar el producto dos meses para definir primero los fundamentos. Así que fui por el otro camino: reconstruí en Figma cada pantalla existente, una a una —más de 80—, extrayendo los patrones reales sobre la marcha: qué espaciados se repetían, qué colores se usaban de verdad, qué variantes de botón existían aunque nadie les hubiera puesto nombre.

Más de 80 pantallas reconstruidas una a una: no rediseñadas, extraídas.

Mapear lo que ya existía en código

En paralelo, creé una base de datos en Notion que mapeaba cada componente que ya vivía en el código: qué era y dónde estaba.

La base de datos de Notion en acción: al abrir un componente se ve su registro completo de migración.

Construir para lo que venía, no solo para lo que existía

Revisé directamente el roadmap de producto para anticipar lo que el sistema necesitaría antes de que se convirtiera en una urgencia, incluida la migración que sabíamos que llegaría, de Laravel a Next.js.

04 — Solución

Un componente de menú de opciones. Veinte contextos distintos.

Fundamentos pensados para escalar

Colores, tamaños y espaciados se organizan como una escala real, no como valores sueltos. La mayoría de los componentes incluyen todos sus estados de interacción —hover, active, disabled— desde el principio.

Fundamentos de color y tipografía: la escala base de la que parte cada pantalla.
Todos los estados de interacción incluidos desde el principio: hover, active, disabled y error, en tres tamaños.
La misma disciplina aplicada a los botones: jerarquía, color y cada estado, todo en matriz.

Prueba a nivel de producto

El módulo de Propietarios: listado, creación, edición, detalle y subvistas, más de diez pantallas, todas construidas con las mismas piezas. La librería en sí son componentes maestros con variantes reales, organizados por dominio: un único componente de menú de opciones reutilizado en más de 20 lugares del producto: propietarios, contratos, incidencias, remesas y conceptos financieros.

El mismo componente de menú de opciones en tres contextos distintos: propietarios, contratos y conceptos financieros.

Documentación al ritmo de los lanzamientos

Cada vez que salía una funcionalidad nueva, también se actualizaba la base de datos de Notion: cada componente, cada modal, cada vista, documentados a medida que se construían, no después. Ese archivo documenta cada release y genera los mocks que entrego a los desarrolladores en cada kickoff, donde la especificación se prueba pantalla por pantalla para que nada se pierda entre el diseño y el código.

Esa base de datos de Notion se mantuvo con la ayuda de un agente de Notion AI, que ayudaba a estructurar y actualizar las fichas de componentes a medida que salían pantallas nuevas, para que la documentación fuera al ritmo de los releases en lugar de quedarse atrás.

05 — Impacto
+95% más rápido en cambios de marcaUn cambio de marca global pasó de semanas a horas gracias a una base de tokens.
~70% más rápido en diseño de pantallasUna pantalla nueva pasó de 4–8 horas a 1–2, una vez que los componentes y patrones ya existían.
80+ pantallasCada pantalla existente del producto se reconstruyó y sistematizó en Figma: no rediseñada, sino extraída de lo que ya estaba en producción.
20+ contextos de reutilizaciónUn componente de menú de opciones reutilizado en propietarios, contratos, incidencias y conceptos financieros.
06 — Reflexión y próximos pasos

No todos los rincones están pulidos. Es una decisión, no un descuido.

Convivir con deuda visible

Algunas páginas crecieron como listas planas, según las iba necesitando. Hay frames duplicados donde deberían ir instancias de componentes: el coste de iterar rápido, sola, sin tiempo para formalizar cada pieza. Se reorganizará cuando llegue el próximo gran cambio.

Lo que viene después de Bootstrap 4

La migración de Laravel/Bootstrap 4 a Next.js ya está en marcha, y el siguiente capítulo es shadcn/ui, más flexible y consistente que lo que permite hoy Bootstrap 4. Ese cambio también es el momento en que el sistema deja de ser un archivo que mantengo sola y empieza a tener más manos.

07 — Aprendizaje clave

El sistema ya estaba ahí. Solo necesitaba un nombre.

Construir un design system para un producto que ya está vivo es distinto de construirlo desde cero. No se trata de imponer el sistema “correcto”, sino de encontrar el patrón que ya existe, disperso y sin nombre, y ponerle nombre. La disciplina no fue dejarlo perfecto el primer día, sino mantenerlo vivo release tras release. Desde entonces, cada case study de Nester —Contract Templates, Digital Signature, Bank Reconciliation, Document Management— parte de esta misma base.

Siguiente proyecto · Nester · 2026

Contract Templates

→Ver case study