Skip to content

NereaTM/FanCollector-API

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FanCollector

API diseñada para gestionar colecciones de items coleccionables (figuras, cartas, merchandising, etc.).

Tecnologías utilizadas

Java Spring Maven Docker MariaDB Git GitHub Spring Security JWT

Requisitos previos

Antes de ejecutar el proyecto, asegúrate de tener instalado:

Estructura del proyecto

  • /config: Configuración (ModelMapper)
  • /controller: Controladores REST y rutas HTTP
  • /domain: Entidades JPA
  • /dto: Entrada/salida de datos
  • /exception: Excepciones personalizadas
  • /repository: Repositorios JPA
  • /security: Configuración JWT y autenticación
  • /service: Lógica de negocio
  • /util: Utilidades

Endpoints

  • Autenticación (/auth)
  • Usuarios (/usuarios)
  • Colecciones (/colecciones)
  • Items (/items)
  • Usuario-Item (/usuario-items)
  • Usuario-Colección (/usuario-colecciones)

Instalación y arranque

  1. Clonar el repositorio

    git clone https://github.com/NereaTM/FanCollector.git
    cd fancollector
  2. Crear archivo .env en la raíz del proyecto:

    MARIADB_USER=fancollector_user
    MARIADB_PASSWORD=tu_password
    MARIADB_DATABASE=fancollector
    MARIADB_ROOT_PASSWORD=root_password
  3. Levantar la base de datos

    docker-compose up -d

Nota: No necesitas crear la base de datos manualmente. Docker Compose la crea automáticamente al levantar el contenedor

  1. Ejecutar la aplicación
    mvn spring-boot:run

La API estará disponible en http://localhost:8080

Autenticación

La API utiliza JWT para autenticación

  1. Te registras
  2. Te logeas y devuelve un token
  3. Usar el token: Incluir en header Authorization: Bearer {token}

Roles disponibles

  • ADMIN: Poder absoluto (público y privado). Único que puede crear usuarios y asignar roles
  • MODS: Permisos de USER + editar/borrar contenido público
  • USER: Ver público, crear y gestionar sus propias colecciones/items, modificar perfil propio
  • NO-AUTH: Crear usuario nuevo y ver colecciones públicas

Detener el proyecto

# Detener la aplicación: Ctrl+C

# Detener Docker:
docker-compose down

Colección de Postman

Ver Postman


Proyecto escolar de DAM Curso 2025–2026

About

Aplicación en Spring para gestionar colecciones

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages