Skip to content

Plataforma de blogging RESTful en Spring Boot que permite crear, consultar, actualizar y eliminar blogs. Cada post se asocia a una categoría y múltiples etiquetas. Incluye validaciones, mapeo con MapStruct, filtros por término de búsqueda, y persistencia en base de datos con JPA.

Notifications You must be signed in to change notification settings

kgonzagao/BlogginPlatform

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📝 Blogging Platform API

Plataforma RESTful para la gestión de publicaciones de blog, desarrollada con Spring Boot. Permite crear, consultar, actualizar, eliminar y buscar blogs, cada uno asociado a una categoría y múltiples etiquetas.

Realmente esta práctica fue hecha con fines educativo por lo cual, se puede encontrar puntos a mejorar.

Este proyecto es una práctica realizada a partir de la página roadmap.sh

📌 Características

  • CRUD de publicaciones de blog
  • Asociación con categorías y etiquetas
  • Filtro de publicaciones por término de búsqueda (título, contenido, categoría o tags)
  • Validación de datos con Jakarta Validation
  • Mapeo DTO ↔ Entidad usando MapStruct
  • Gestión automática de timestamps (creación y actualización)
  • Arquitectura en capas (Controller, Service, Repository)

⚙️ Tecnologías

  • Java 21
  • Spring Boot 3+
  • Spring Data JPA
  • Jakarta Validation
  • MapStruct
  • Lombok
  • MySQL (configurable)
  • Maven

📁 Estructura del Proyecto

com.api.BloggingPlatform
│
├── persistence
│ ├── Entity
│ └── Repository
│
├── presentation
│ ├── controller
│ ├── dto
│
├── service
│ ├── impl
│
├── util
│ └── mapper

🛠️ Endpoints Principales

Método Ruta Descripción
GET /api/posts Obtener todos los blogs
GET /api/posts/{id} Obtener un blog por su ID
GET /api/posts?term=xxx Buscar blogs por término
POST /api/posts Crear un nuevo blog
PUT /api/posts/{id} Actualizar un blog existente
DELETE /api/posts/{id} Eliminar un blog

📦 Ejemplo de JSON para crear un blog

{
  "title": "Mi primer post",
  "content": "Este es el contenido del blog",
  "category": "Tecnología",
  "tags": ["Java", "Spring", "API"]
}

✅ Pruebas

Puedes usar herramientas como Postman, curl para probar los endpoints.

📄 Licencia

Este proyecto está bajo la Licencia Apache 2.0.

About

Plataforma de blogging RESTful en Spring Boot que permite crear, consultar, actualizar y eliminar blogs. Cada post se asocia a una categoría y múltiples etiquetas. Incluye validaciones, mapeo con MapStruct, filtros por término de búsqueda, y persistencia en base de datos con JPA.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages