Skip to content

DavidAvalos14/CanchasFullStackI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🏟️ Sistema de Apartado de Canchas Deportivas

Proyecto Final – Desarrollo Web Fullstack 1 (MERN)

📌 Descripción General

Aplicación web fullstack desarrollada con el stack MERN (MongoDB, Express, React y Node.js) para la reservación de canchas deportivas por horario.
El sistema permite a los usuarios consultar disponibilidad, realizar reservaciones con pago ficticio y visualizar su historial.
Incluye soporte para múltiples sedes y cuenta con autenticación segura mediante JWT.

El proyecto está desplegado en Oracle Cloud Infrastructure (OCI) y accesible mediante un subdominio asignado por el instructor.


🚀 Tecnologías Utilizadas

Backend

  • Node.js
  • Express.js
  • MongoDB + Mongoose
  • JWT (Autenticación)
  • bcrypt (Hash de contraseñas)
  • express-validator (Validaciones)
  • dotenv
  • rate limiting básico

Frontend

  • React
  • React Router
  • Context API y Hooks
  • Axios
  • Componentes reutilizables

Infraestructura

  • Oracle Cloud Infrastructure (OCI)
  • MongoDB (Atlas o instancia propia)
  • Subdominio asignado

🔑 Funcionalidades Principales

👤 Usuarios

  • Registro y autenticación
  • Inicio de sesión con JWT
  • Historial de reservaciones

🏟️ Canchas

  • CRUD completo de canchas
  • Asignación por sede
  • Gestión de horarios

📅 Reservaciones

  • Calendario de disponibilidad
  • Reservación por fecha y horario
  • Simulación de pago
  • Prevención de traslapes

🌍 Multisedes

  • Gestión de múltiples sedes
  • Canchas asociadas a cada sede

🛡️ Seguridad

  • Contraseñas hasheadas con bcrypt
  • Autenticación y autorización con JWT
  • Sanitización de entradas
  • Rate limiting básico
  • Variables de entorno protegidas

📦 Instalación y Ejecución Local

1️⃣ Clonar el repositorio

git clone https://github.com/DavidAvalos14/CanchasFullStackI/.git
cd CanchasFullStackI

2️⃣ Configuración del Backend

cd backend
npm install

Crear archivo .env :

PUERTO=5000
MONGO_URL=tu_conexion_mongodb
JWT_SECRETO=tu_secreto

Ejecutar servidor:

npm run dev

3️⃣ Configuración del Frontend

cd frontend
npm install
npm start

🔌 Endpoints Principales (API)

Autenticación

  • POST /api/auth/register
  • POST /api/auth/login

Canchas

  • GET /api/canchas
  • POST /api/canchas
  • PUT /api/canchas/:id
  • DELETE /api/canchas/:id

Reservaciones

  • GET /api/reservaciones
  • POST /api/reservaciones
  • GET /api/reservaciones/usuario

Sedes

  • GET /api/sedes
  • POST /api/sedes

🌐 Despliegue

  • Backend desplegado en Oracle Cloud Infrastructure
  • Variables de entorno configuradas
  • Subdominio funcional
  • Logs y monitoreo básico

🤝 Trabajo en Equipo

  • Uso de Git y GitHub
  • Commits distribuidos
  • Participación equitativa

👥 Colaboradores

About

Proyecto final de desarrollo fullstack I

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •