Juan PabloDesarrollador de softwareSi lo puedes imaginar, lo podemos hacer.

Enterizos Shop

Plataforma para gestionar el ciclo completo de una tienda de ropa: catálogo, inventario, pedidos, pagos, facturación y envíos. La base ya está construida y probada (arquitectura y reglas de negocio); la tienda y las integraciones reales serán las próximas etapas.

enterizos shopEnterizos Shop: página de inicio del sitioPróximamente
Estado
En desarrollo
Desde
julio de 2026
Stack
Next.jsTypeScriptPostgreSQLPrismaTurborepoGraphile WorkerBetter AuthVitestGitHub Actions

Problemas y cómo los resolví

  1. 01

    ProblemaEl inventario de una tienda pierde precisión cuando solo se guarda un número que se sobrescribe.

    SoluciónLo diseñé como un registro de movimientos: cada entrada, salida o ajuste queda documentado, de modo que el stock puede reconstruirse y conciliarse (decisión registrada en un ADR).

  2. 02

    ProblemaUn pedido nunca debe quedar en un estado inconsistente, como enviado sin estar pagado.

    SoluciónLos pedidos siguen una máquina de estados explícita, con las transiciones permitidas definidas de antemano.

  3. 03

    ProblemaLos eventos entre la base de datos y las tareas en segundo plano no pueden perderse.

    SoluciónPatrón outbox transaccional: el evento se guarda en la misma transacción que el cambio y un worker con Graphile Worker lo procesa.

  4. 04

    ProblemaEn un proyecto de esta escala, la arquitectura tiende a deteriorarse con cada cambio si no se supervisa.

    SoluciónReglas de dependencias entre módulos verificadas automáticamente en cada cambio, junto con integración continua, análisis de seguridad con CodeQL y detección de código sin uso.

Qué está construido

  • Arquitectura documentada y congelada, con 14 decisiones registradas (ADR).
  • Monorepo con aplicación web, worker de tareas y controles de calidad automatizados.
  • 36 módulos de negocio (catálogo, inventario, carrito, pedidos, pagos, facturación y envíos, entre otros), cada uno con sus pruebas.
  • Una prueba automatizada que recorre el flujo completo de una venta, desde el catálogo hasta el envío.

Qué sigue en desarrollo

  • Conectar los módulos a la base de datos (actualmente almacenan los datos en memoria).
  • Panel de administración de catálogo e inventario, en desarrollo.
  • Tienda pública e integración con proveedores reales de pago, facturación y envíos.
  • Piloto privado con pedidos reales.