Saltar al contenido
JAJose Arias
Todos los proyectos

Full-stack · 2026

Necropsia Porcina

Atlas interactivo y registro de necropsias

Ver demo del atlasRepositorio privado.
Mi rol
Desarrollador Full-stack
Resultado clave
3roles con permisos: admin, veterinario y técnico
Stack
React 18ViteTailwind CSSNode.jsExpressSequelizeMySQL 8JWTMulterDocker ComposeNginx

01

Contexto

En una necropsia porcina el veterinario debe documentar los hallazgos órgano por órgano. Este sistema centraliza los casos y muestra, sobre un diagrama del cerdo, qué órganos tienen lesiones registradas.

02

Qué construí

  • Construí el frontend en React 18 + Vite + Tailwind CSS con un diagrama interactivo: zonas clicables sobre cada órgano que abren un modal con su imagen interna, nombre científico, descripción anatómica y hallazgos del caso.
  • Desarrollé la API REST en Node.js + Express con Sequelize sobre MySQL 8, con autenticación JWT y roles (admin, veterinario y técnico).
  • Implementé el registro de hallazgos por necropsia (tipo de lesión, severidad, descripción e imágenes) con subida de archivos mediante Multer.
  • Creé un panel de administración para dibujar las zonas clicables del diagrama sin tocar código.
  • Empaqueté todo con Docker Compose (base de datos, backend y frontend con Nginx) para levantarlo con un solo comando.

03

Arquitectura

  1. Frontend React

    Vite · Tailwind · diagrama interactivo

  2. Nginx

    Sirve el frontend y enruta la API

  3. API Express

    JWT · roles · Sequelize

  4. MySQL 8

    Órganos, necropsias, hallazgos y polígonos

    Imágenes

    Subidas con Multer

Despliegue con Docker Compose.
  • Entrada
  • Proceso
  • Almacenamiento
  • Salida

04

Decisiones técnicas

Zonas clicables editables desde la interfaz
El polígono de cada órgano se guarda en la base de datos y se dibuja desde un panel de administración, así que reajustar el mapa no requiere modificar código.
Resaltado automático de hallazgos
Los órganos con hallazgos registrados se pintan en rojo en el diagrama para identificarlos de un vistazo.
Permisos por rol
El administrador configura el mapa y gestiona órganos; el veterinario crea y edita necropsias y hallazgos; el técnico consulta.
Un solo comando con Docker Compose
MySQL solo es accesible dentro de la red de Docker y la API se expone únicamente a través de Nginx.

05

Resultado

  • Aplicación en línea con demo pública del atlas interactivo.
  • Registro completo de casos, hallazgos e imágenes por necropsia.