Cómo diseño productos y proyectos para tener composición y acelerar el desarrollo.
El problema real
El problema era que dentro de un mismo proyecto, tenia muchas inconsistencias de diseño (bordes distintos, headings de diferentes tamaños), código duplicado (mismos componentes, distintos lugares), bugs (lógica de sincronización), entre otras.
Principios de diseño
Estos son algunos de los principios dentro de mi sistema:
-
globals.css de shadcn: con esto mantengo misma composición visual. mismos bordes, tamaños, colores, etc.
-
Estructura de carpetas: me aseguro de saber donde esta cada parte y como se conecta la app.
(Insertar imagen: estructura de carpetas de las webs y del CLI)
-
Desarrollo de producto: decisiones a tomar para saber que arquitectura tener según el producto.
Trade-offs
Hoy en día sacrifico el setup rápido inicial por la mantenibilidad a largo plazo.
Tener una estructura de trabajo fija implica dedicarle más tiempo al setup inicial que uno rapido donde me quedaban mucho sin cubrir que, a largo plazo me costaba tiempo, consistencia y reusabilidad. por lo que en un tiempo el mantenimiento se volvia un trabajo muy complejo.
Ahora talvez pierdo rapidez de lanzar un MVP pero lo equilibro creando productos más duraderos.
Resultado
Este patrón se repite entre los templates construidos de formaUI y la propia web de FormaUI, la web del CLI e incluso este portfolio.
