InicioTrabajoLaboratorioCertificacionesBlogHablemos

© 2026 Juan Villegas. Todos los derechos reservados.

Arquitecto de Soluciones Digitales

    Volver

    MoniWow — API

    API — finanzas personales multi-tenant

    Backend NestJS del mobile de finanzas MoniWow: arquitectura hexagonal que replica el contrato que el mobile ya tenía definido, autenticación JWT con aislamiento real por hogar (workspace), y las mismas reglas de negocio corriendo también del lado servidor.

    Infraestructura & Backend

    El Reto

    El mobile ya definía el contrato completo (8 puertos, como si fueran endpoints) antes de que existiera un backend real. Faltaba construir una API que respetara ese contrato al pie de la letra, sin inventar validaciones nuevas, y que un hogar completo pudiera compartir sus datos sin filtrarse a otro.

    La Solución

    NestJS con arquitectura hexagonal, dominio puro sin dependencias de Nest ni Mongo. Cada uno de los 8 puertos del mobile se volvió un endpoint real; el JWT lleva el workspace embebido y decide qué hogar ve cada petición, verificado con dos hogares reales corriendo en paralelo sobre la misma base sin cruzarse.

    Tiempo de desarrollo

    En desarrollo activo desde julio 2026

    Proyecto relacionado

    MoniWow

    Rol en el proyecto

    Arquitecto de Soluciones y Dev Full Stack.

    Código

    Stack Técnico

    Backend

    NestJS

    Base de Datos

    MongoDBMongoose

    Infraestructura

    DockerTraefik

    Qué protege en producción

    • Autenticación JWT con secreto de firma obligatorio.
    • Contraseñas hasheadas con bcrypt.
    • Aislamiento de datos por hogar (workspace) en cada endpoint.
    • Contenedor Docker sin privilegios elevados.

    Infraestructura en producción

    • Desplegado en VPS propio con Traefik y Docker, mismo patrón de infraestructura que el resto del catálogo, con MongoDB compartida entre proyectos propios del mismo servidor.

    Cómo está desplegado

    App mobile (Expo / React Native)
    Traefik (reverse proxy + TLS automático)
    Contenedor Docker (API NestJS, build multi-stage con pnpm)
    MongoDB (instancia compartida con otros proyectos propios)
    React Flow
    Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.
    Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.
    CompartirLinkedIn

    ¿Necesitas algo similar?

    Hablemos sobre tu proyecto.

    Hablemos