Plataformas y SaaS MVP funcional

Guía Médica Monagas

Directorio médico del estado Monagas con verificación documental de profesionales, planes y pagos, panel de administración y una app Android e iOS conectada a la misma API.

Sector
Salud · Directorio profesional
Período
Sept. 2026 – actualidad
Estado
MVP funcional
Captura de escritorio de guiamedicamonagas.com tomada automáticamente el 21 de October de 2026

Contexto

Encontrar un médico de confianza en Monagas dependía de recomendaciones y redes sociales. La plataforma reúne médicos, especialidades, farmacias, laboratorios y clínicas en un directorio público por municipio.

Problema o necesidad

Un directorio de salud necesita confianza: comprobar que cada profesional es quien dice ser, proteger los datos de los pacientes y permitir que los profesionales gestionen su perfil y su plan sin trabajo manual constante.

Objetivo de la solución

Perfiles verificados, áreas privadas por rol, cobro de planes en bolívares con la tasa del BCV y una app móvil que siga funcionando con mala conectividad.

Arquitectura general

Monorepo con frontend Next.js (App Router, renderizado en servidor) y API NestJS sobre Fastify. PostgreSQL con Prisma, Redis, Meilisearch para la búsqueda, almacenamiento compatible con S3 (MinIO) y Caddy como proxy con HTTPS, todo definido en Docker Compose. La app Expo/React Native es un cliente de la misma API y comparte el canal en tiempo real (Socket.IO): no tiene base de datos propia.

Mi participación

Arquitectura y desarrollo completo: API, web, base de datos, app móvil, configuración de despliegue con Docker y flujos de integración continua.

Funcionalidades implementadas

  • Directorio público de médicos, especialidades y organizaciones por municipio.
  • Registro, verificación de correo, recuperación de contraseña y autenticación en dos pasos.
  • Verificación documental de profesionales con cola de revisión administrativa.
  • Planes por nivel con pagos por Pago Móvil revisados por administración y tasa BCV sincronizable.
  • Agenda, citas y notificaciones; permisos del paciente sobre sus datos de salud.
  • Panel de administración con analítica, auditoría, SEO y gestión de cookies.
  • App móvil para Android e iOS (Expo) con modo sin conexión y datos locales cifrados.

Desafíos técnicos y decisiones

  1. Compartir una API entre la web y la app sin duplicar reglas: el contrato de endpoints se documenta en la plataforma y la API rechaza campos desconocidos.
  2. Funcionar sin conexión en el móvil: los cambios quedan en una cola ordenada, se reintentan con esperas crecientes y los datos se guardan cifrados (AES-GCM) con la clave en el almacén seguro del sistema.
  3. Exponer el mínimo de datos de salud: sin conexión solo se guarda la ficha básica del paciente, y los permisos sobre datos clínicos pueden revocarse.

Tecnologías utilizadas

  • Next.js
  • NestJS
  • TypeScript
  • PostgreSQL
  • Prisma
  • React Native
  • Expo
  • Redis
  • Meilisearch
  • Socket.IO
  • Docker
  • Caddy
  • Vitest
  • Playwright

Seguridad y operación

JWT con refresh tokens, contraseñas con Argon2, autenticación en dos pasos, cifrado de campos sensibles con AES-256-GCM y rotación de claves, auditoría, límites de peticiones y cabeceras de seguridad. GitHub Actions ejecuta integración continua, búsqueda de secretos con Gitleaks, auditoría de dependencias, análisis con OWASP ZAP y una comprobación periódica de disponibilidad. El repositorio incluye scripts de backup y de prueba de restauración. La plataforma no es un dispositivo médico ni cuenta con certificaciones.

Capturas

Capturas reales del proyecto, sin datos personales: las imágenes con personas o datos de terceros se difuminan.

La portada se actualiza automáticamente desde la web pública cuando cambia su interfaz. Última actualización: 21 de October de 2026.

Estado actual

MVP funcional El flujo principal funciona y está publicado; quedan tareas de endurecimiento y ampliación.

Resultados comprobables

Web pública en guiamedicamonagas.com. La app Android está generada como build de pruebas con firma de desarrollo y no está publicada en las tiendas.

Repositorio y demo

Construyamos tu próximo sistema

Cuéntame el proceso que quieres resolver; te respondo con preguntas concretas o un siguiente paso.