Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/camiloivcode/biblioteca-la-palabra/llms.txt

Use this file to discover all available pages before exploring further.

Biblioteca Popular La Palabra es un sistema de gestión bibliotecaria full-stack diseñado para digitalizar y centralizar las operaciones diarias de una biblioteca pública: registro de socios, catalogación de materiales, control de préstamos y devoluciones, administración de usuarios, y generación de reportes. Reemplaza los registros manuales con una interfaz web moderna y una API REST robusta, garantizando trazabilidad completa, reglas de negocio automatizadas (como el cálculo de mora y el límite de préstamos simultáneos) y control de acceso basado en roles.

Stack tecnológico

CapaTecnología
FrontendAstro + Bootstrap 5 + Tailwind CSS
BackendNode.js + Express (CommonJS)
Base de DatosMySQL 8 + Prisma ORM
AuthJWT — access token + refresh token
ContenedoresDocker + Docker Compose

Módulos del sistema

Dashboard

Estadísticas en tiempo real: socios activos, préstamos vigentes, materiales disponibles y alertas de mora.

Socios

CRUD completo de socios con filtros, paginación y gestión de estado (activo / moroso).

Materiales

Catálogo de libros, revistas y otros materiales con tipos, estados y asignación de autores y categorías.

Préstamos

Registro y devolución de préstamos con límite de 3 activos por socio y mora automática a los 30 días.

Autores & Categorías

Gestión del catálogo de autores y categorías (con selector de iconos) utilizados para clasificar materiales.

Usuarios

Administración de cuentas del sistema, asignación de roles y aprobación de solicitudes de registro. Solo disponible para ADMIN.

Reportes

Historial de préstamos, listado de socios morosos y ranking de materiales más solicitados.

Roles de usuario

El sistema implementa dos roles con permisos diferenciados:
RolAcceso
ADMINAcceso completo a todos los módulos, incluyendo la gestión de usuarios del sistema, aprobación de registros y configuración general.
BIBLIOTECARIOAcceso operativo a socios, materiales, préstamos, autores, categorías y reportes. No puede gestionar usuarios ni cambiar roles.
Los permisos se verifican en el backend mediante el middleware role.middleware.js (requireRole('ADMIN', ...)), por lo que las restricciones aplican tanto en la interfaz como en la API.

Servicios y puertos

Cada componente del sistema se ejecuta en un contenedor Docker independiente. Los puertos expuestos en el host durante el desarrollo local son:
ServicioHostDescripción
Frontendhttp://localhost:3000Interfaz web Astro
APIhttp://localhost:4000/apiAPI REST Express
phpMyAdminhttp://localhost:8080Gestor visual de base de datos
MySQLlocalhost:3307Conexión directa a MySQL 8
¿Listo para levantar el sistema? Sigue la guía de Quickstart para tener el entorno completo corriendo en menos de 5 minutos con Docker Compose.

Build docs developers (and LLMs) love