Title: Trabajo Final
Course: 2025 - LI - Desarrollo Web del Lado del Cliente 2-1 y 2-2

📘

Proyecto Final – Desarrollo Web del Lado del Cliente

🎯 **Objetivo general:

Desarrollar una aplicación web en React que consuma y administre datos a través de 6 REST APIs conectadas a una base de datos PostgreSQL. El sistema deberá permitir realizar operaciones básicas (Altas, Bajas, Consultas y Modificaciones) para cada una de las entidades o recursos definidos.**

🧩

Requisitos del proyecto:

1.

Número de APIs:

El proyecto deberá implementar 6 REST APIs distintas, cada una relacionada con una tabla o entidad de la base de datos PostgreSQL.

Ejemplos de entidades: usuarios, productos, servicios, órdenes, categorías, ubicaciones, etc.

2.

Base de datos:

- Debes diseñar tu modelo de base de datos en PostgreSQL.
- Cada tabla debe tener una clave primaria y, si aplica, relaciones entre ellas (por ejemplo, claves foráneas).
- Puedes usar herramientas como pgAdmin o DBeaver para gestionar tu base de datos.

3.

Backend:

- Desarrollado con Node.js + Express.
- Cada API debe tener las siguientes operaciones:
  - GET (consultar todos y por ID)
  - POST (alta)
  - PUT (modificación)
  - DELETE (baja)
- Conexión a PostgreSQL usando una librería como pg.

4.

Frontend (React):

- La aplicación React deberá tener una interfaz separada por componentes o secciones para cada API.
- Cada sección debe permitir:
  - Consultar registros (lista)
  - Agregar nuevos registros (formulario)
  - Editar registros existentes
  - Eliminar registros
- Puedes utilizar axios o fetch para consumir las APIs.
- Se valorará positivamente el uso de estilos organizados (Bootstrap, Tailwind, CSS Modules, etc.).

👨‍🏫

Presentación del proyecto:

- El proyecto debe ser explicado en persona al profesor.
- El alumno deberá mostrar:
  - El funcionamiento completo del frontend y backend.
  - Cómo están estructuradas las rutas del servidor.
  - Cómo se conectan las APIs con la base de datos PostgreSQL.
  - Cómo se realiza el consumo de esas APIs desde React.
- Fechas de presentación: del 2 al 13 de junio, en aula o por cita con el profesor.
- Se requiere que el alumno lleve su proyecto listo para demostración (en laptop o publicado en algún servidor local/remoto).