Skip to content

Repository files navigation

API REST para la aplicaci贸n de gesti贸n de inventario de imprenta

Autor: ArmandoEnrique1010K

Descripci贸n

El proyecto est谩 construido siguiendo una arquitectura de monolito modular, donde cada m贸dulo encapsula su propio dominio y mantiene una arquitectura en capas para mejorar la organizaci贸n, escalabilidad y mantenibilidad del sistema.

Los servicios compartidos se encuentran en un m贸dulo common reducido, evitando acoplamiento innecesario entre m贸dulos.

La API proporciona autenticaci贸n, gesti贸n de usuarios, productos, categor铆as, im谩genes y operaciones relacionadas con el inventario.

Vista previa

El proyecto ha sido suspendido en Render debido a incidencias relacionadas con el acceso. Se han detectado m煤ltiples intentos de acceso no autorizados que han comprometido la estabilidad de la API REST.

Caracter铆sticas

  • Arquitectura monol铆tica modular
  • Arquitectura en capas
  • Autenticaci贸n JWT
  • Roles y autorizaci贸n
  • Gesti贸n de usuarios
  • Gesti贸n de productos
  • Gesti贸n de categor铆as
  • Gesti贸n de ordenes de entrega
  • Subida de im谩genes con Cloudinary
  • Env铆o de correos electr贸nicos
  • Variables de entorno seguras
  • Modo demo configurable
  • API REST escalable y mantenible

Diagrama UML

Diagrama UML

Variables de entorno

PORT = Puerto donde se ejecutar谩 la aplicaci贸n. En Render debe ser 10000.

SPRING_DATASOURCE_URL = URL de conexi贸n a la base de datos MySQL.

SPRING_DATASOURCE_USERNAME = Usuario de la base de datos MySQL.

SPRING_DATASOURCE_PASSWORD = Contrase帽a de la base de datos MySQL.

TEST_ENV_VAR = Variable utilizada para pruebas internas y validaciones durante el desarrollo.

DEFAULT_IMAGE_URL = URL de la imagen por defecto que se asignar谩 cuando un producto o usuario no tenga imagen subida.

FIRST_USER_EMAIL = Correo electr贸nico del primer usuario administrador creado autom谩ticamente al iniciar la aplicaci贸n.

FIRST_USER_PASSWORD = Contrase帽a del primer usuario administrador creado autom谩ticamente.

MAILERSEND_API_TOKEN = Token de autenticaci贸n de MailerSend utilizado para el env铆o de correos electr贸nicos.

MAILERSEND_TEST_DOMAIN = Dominio configurado en MailerSend para realizar pruebas de env铆o de correos.

CLOUDINARY_CLOUD_NAME = Nombre de la nube de Cloudinary utilizada para almacenar im谩genes.

CLOUDINARY_API_KEY = API Key de Cloudinary utilizada para autenticaci贸n.

CLOUDINARY_API_SECRET = API Secret de Cloudinary utilizada para autenticaci贸n segura.

FRONTEND_URL = URL del frontend autorizada para comunicarse con la API REST.

DEMO_MODE = Activa o desactiva el modo demo de la aplicaci贸n. Debe ser true o false. Cuando est谩 activado, se crean autom谩ticamente usuarios de prueba ineditables.

Licencia

Este proyecto es de uso educativo y de portafolio.

About

馃 API REST para la aplicaci贸n de gesti贸n de inventario para imprentas hecho con Spring Boot

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages