¡Bienvenidos a GymBook! 🎉 Esta es una aplicación diseñada para gestionar tu gimnasio de manera eficiente y sencilla. A continuación, encontrarás toda la información necesaria para comenzar a usarla.
- 🚀 Características
- 📦 Instalación
- 📧 Configurar MailDev
- 🛠️ Tecnologías Utilizadas
- 📖 Uso
- 🧪 Pruebas
- 📊 Base de Datos
- 🤝 Contribuciones
- 📞 Contacto
- 👥 Personas Implicadas
- Registro de Usuarios: Permite a los usuarios registrarse y gestionar su información personal. 📝
- Clases y Entrenadores: Visualiza las clases disponibles y los entrenadores asignados. 🏋️♂️
- Inscripciones: Los usuarios pueden inscribirse en las clases de su elección. 📅
- Gestión de Roles: Administra diferentes roles de usuario (administrador, entrenador, etc.). 👥
- Configuración de Notificaciones: Personaliza las preferencias de notificación. 🔔
- Modo Oscuro: Cambia a un tema oscuro para una mejor experiencia visual. 🌙
- Java 17 o superior
- Maven
- Node.js y npm (para usar MailDev)
-
Clona el repositorio:
git clone https://github.com/tu_usuario/GymBook.git
-
Navega al directorio del proyecto:
cd GymBook -
Instala las dependencias:
mvn install -
Ejecuta la aplicación:
mvn spring-boot:run -
Accede a la aplicación: Abre tu navegador en
http://localhost:8080.
MailDev es un servidor SMTP local que permite simular el envío de correos electrónicos, útil para desarrollo.
npm install -g maildev
O alternativamente, puedes ejecutarlo directamente con npx sin instalarlo globalmente:
npx maildevSi lo tienes instalado globalmente, simplemente ejecuta:
maildevUna vez iniciado, accede a la interfaz visual en:
http://localhost:1080
- Java
- Spring Boot
- JPA (Java Persistence API)
- MySQL
- React
- Axios para las solicitudes HTTP
- Registro de Usuario: Dirígete a la página de registro y completa el formulario.
- Iniciar Sesión: Usa tus credenciales para acceder a tu cuenta. 🔑
- Reservar Clases: Navega a la sección de clases y selecciona la que deseas reservar.
- Configuración: Ajusta tus preferencias en la sección de configuración. ⚙️
-
POST:
http://localhost:8080/auth/login -
Cuerpo (JSON):
{
"email": "ana.garcia@example.com",
"password": "password123"
}- POST:
http://localhost:8080/auth/forgot-password - Cuerpo (JSON):
{
"email": "ana.garcia@example.com"
}- POST:
http://localhost:8080/usuarios - Cuerpo (JSON):
{
"nombre": "Nombre del Usuario",
"email": "usuario@example.com",
"password": "tu_contraseña",
"telefono": "123456789"
}- GET:
http://localhost:8080/usuarios
- GET:
http://localhost:8080/usuarios/{id}
- PUT:
http://localhost:8080/usuarios/{id} - Cuerpo (JSON):
{
"nombre": "Nuevo Nombre",
"email": "nuevo_email@example.com",
"password": "nueva_contraseña",
"telefono": "12345678"
}- DELETE:
http://localhost:8080/usuarios/{id}
- GET:
http://localhost:8080/entrenadores
- GET:
http://localhost:8080/entrenadores/{id}
- GET:
http://localhost:8080/clases
- GET:
http://localhost:8080/clases/{id}
- POST:
http://localhost:8080/disciplinas - Cuerpo (JSON):
{
"nombre": "Nombre de la Disciplina"
}- GET:
http://localhost:8080/disciplinas
La estructura de la base de datos se puede visualizar en el siguiente diagrama:
¡Las contribuciones son bienvenidas! Si deseas contribuir, por favor sigue estos pasos:
- Haz un fork del proyecto.
- Crea una nueva rama (
git checkout -b feature/nueva-caracteristica). - Realiza tus cambios y haz un commit (
git commit -m 'Añadir nueva característica'). - Envía un pull request.
Si tienes alguna pregunta o sugerencia, no dudes en contactarme:
- GitHub: ClaudiaCalero
- GitHub: samcrugom
- GitHub: Jose Moreno
- GitHub: Edward Alban













