Skip to content

apuntesdejava/fullstack-quarkus-react-tutorial

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

QuarkStack 🔥

Full-Stack con Quarkus + React — de cero a la nube Curso completo, gratuito, en español.

YouTube License Quarkus React Java Node


📖 ¿Qué es esto?

QuarkStack es el proyecto del curso homónimo: un sistema de gestión de tareas colaborativo en tiempo real (estilo Jira simplificado), construido con Quarkus y React, desplegado en Azure.

El curso cubre desde los fundamentos hasta producción, incluyendo:

  • Arquitectura Hexagonal real con Maven multi-módulo (el compilador hace cumplir las reglas)
  • CQRS con PostgreSQL para escrituras y MongoDB para lecturas
  • Event-Driven Architecture con Apache Kafka
  • Programación reactiva con Mutiny y Server-Sent Events
  • Seguridad con OIDC y Keycloak
  • Observabilidad con OpenTelemetry + Grafana (métricas, trazas y logs)
  • Frontend en React 19 desde cero para Java devs
  • Testing con JUnit 5, Mockito y Testcontainers
  • Despliegue en Azure Container Apps con GitHub Actions

🗂️ Índice de Episodios

# Episodio Tag
00 Bienvenida y arquitectura del proyecto ep-00
01 Setup del entorno completo ep-01
02 Arquitectura Hexagonal: puertos y adaptadores ep-02
03 El dominio: entidades, VOs y casos de uso ep-03
... ... ...

Consulta el Episodio 00 para el índice completo del curso.


🚀 Inicio rápido

Asegúrate de tener instalados: Java 21, Node 24 LTS, Docker Desktop y Git. El setup detallado está en el Episodio 01.

🐧 Bash:

git clone git@github.com:apuntesdejava/fullstack-quarkus-react-tutorial.git
cd fullstack-quarkus-react-tutorial

# Infraestructura local
docker compose -f infra/docker/docker-compose.yml up -d

# Backend (desde el módulo runner)
cd backend
./mvnw quarkus:dev -pl quarkstack-runner

# Frontend (en otra terminal)
cd frontend
npm install
npm run dev

🪟 PowerShell:

git clone git@github.com:apuntesdejava/fullstack-quarkus-react-tutorial.git
cd fullstack-quarkus-react-tutorial

# Infraestructura local
docker compose -f infra/docker/docker-compose.yml up -d

# Backend (desde el módulo runner)
cd backend
.\mvnw.cmd quarkus:dev -pl quarkstack-runner

# Frontend (en otra terminal)
cd frontend
npm install
npm run dev
Servicio URL
Frontend React http://localhost:5173
Backend API http://localhost:8080
Swagger UI http://localhost:8080/swagger-ui
Quarkus Dev UI http://localhost:8080/q/dev
Kafka UI http://localhost:8090

🏗️ Stack Tecnológico

Backend: Quarkus 3.x · Jakarta EE · MicroProfile · Mutiny · Panache · Flyway · OpenTelemetry

Frontend: React 19 · Vite · Tailwind CSS · React Router · TanStack Query

Infraestructura: PostgreSQL · MongoDB · Apache Kafka · Keycloak · Docker

Cloud: Azure Container Apps · Azure Static Web Apps · Azure Event Hubs · Azure Cosmos DB


🗂️ Estructura del Repositorio

fullstack-quarkus-react-tutorial/
│
├── backend/                        ← Proyecto Maven multi-módulo
│   ├── pom.xml                     ← Parent POM
│   ├── quarkstack-domain/          ← Java puro. Sin frameworks.
│   ├── quarkstack-application/     ← Casos de uso. Solo conoce al dominio.
│   ├── quarkstack-adapter-rest/    ← JAX-RS + OpenAPI (Quarkus)
│   ├── quarkstack-adapter-persistence/ ← Panache PG + Mongo + Flyway
│   ├── quarkstack-adapter-messaging/   ← SmallRye + Kafka
│   └── quarkstack-runner/          ← Ensambla todo. Ejecuta Quarkus.
│
├── frontend/                       ← React 19 + Vite + Tailwind CSS
│
├── infra/
│   ├── docker/                     ← Docker Compose local
│   └── azure/                      ← Scripts Az CLI para despliegue
│
└── docs/                           ← Tutoriales por episodio

Árbol completo con todos los archivos y el episodio donde se crean: docs/ESTRUCTURA.md


📋 Prerrequisitos

  • Java 21
  • Node 24 LTS
  • Docker Desktop
  • Git

📄 Licencia

Apache License 2.0 — ver LICENSE


QuarkStack — Construido con ❤️ y mucho ☕

About

Este es un tutorial para aprender a hacer una aplicación funcional y conocer a fondo Quarkus con React

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors