Skip to content

flaviferri/HappyTravel-BackEnd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

86 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Happy Travel ✈️

Índice

Proyecto

Desarrollo de una aplicaciΓ³n de viajes en la que cada usuario puede ver, aΓ±adir, editar y eliminar destinos a los que quiere ir, ademΓ‘s de ver los destinos de otros usuarios.

La aplicaciΓ³n permite a los usuarios hacer login, y es a travΓ©s de esta autenticaciΓ³n que tienen acceso a editar y eliminar sus destinos creados.

En el proyecto se ha creado tanto la parte del Front on React js con Tailwind para el CSS partiendo de prototipos dados por el cliente, como toda la parte del Back con Java SpringBoot y PostgreSQL.

Requisitos previos

Funcionalidades

  • Poder ver todos los destinos
  • Formulario de registro
  • Formulario de acceso con e-mail y contraseΓ±a
  • Al acceder, el usuario autenticado ve los botones de editar y eliminar en sus destinos
  • Los usuarios regostrados pueden ver el detalle de cada destino
  • Todas als acciones del usuario con CRUD o registro/acceso tienen alertas
  • Todos los formularios tienen validaciΓ³n y control de errores
  • Cambio de iconos en navbar cuando el usuario accese a la app
  • Buscador funcional para buscar por nombre de destino o ubicaciΓ³n
  • Poder crear destinos
  • Poder editar destinos

Diagramas

Diagrama de flujo

Para entender la funcionalidad de la aplicaciΓ³n y la lΓ³gica a seguir se ha realizado un diagrama de flujo.

Ver diagrama de flujo

Diagrama de datos

Se ha normalizado a segunda forma las tablas de la base de datos, resultando en dos tablas: una de destinos y una de usuarios.

Ver diagrama de datos

InstalaciΓ³n πŸ› οΈ

Requerimientos

  1. Clona los repositorios:
Front:
 git clone https://github.com/LauraGDev/happy-travel-front

Back:
 git clone https://github.com/flaviferri/HappyTravel-BackEnd
  1. Haz npm install en el repo del front

  2. Crea tu base de datos y conectΓ‘la al repo del back:

pon el link de acceso, tu usuario y contraseΓ±a de pgAdmin o de tu BBDD en el archivo application.resources

Estructura del proyecto

Como proyecto Full-Stack, la estructura se divide en Front y en Back.

El back del proyecto se ha realziado con Java SpringBoot, con una arquitectura MVC de 3 capas.

La estructura final del back es la siguiente:

/
β”œβ”€β”€ happy-travel-back
β”‚   β”œβ”€β”€ src/
β”‚   β”‚    β”œβ”€β”€ main
β”‚   β”‚    β”‚     β”œβ”€β”€ java
β”‚   β”‚    β”‚     β”‚      β”œβ”€β”€ config
β”‚   β”‚    β”‚     β”‚      β”‚      β”œβ”€β”€ ApplicationConfig
β”‚   β”‚    β”‚     β”‚      β”‚      └── SecurityConfig
β”‚   β”‚    β”‚     β”‚      β”œβ”€β”€ controllers
β”‚   β”‚    β”‚     β”‚      β”‚      β”œβ”€β”€ AuthController
β”‚   β”‚    β”‚     β”‚      β”‚      β”œβ”€β”€ AuthResponse
β”‚   β”‚    β”‚     β”‚      β”‚      β”œβ”€β”€ DestinationController
β”‚   β”‚    β”‚     β”‚      β”‚      β”œβ”€β”€ LoginRequest
β”‚   β”‚    β”‚     β”‚      β”‚      β”œβ”€β”€ RegisterRequest
β”‚   β”‚    β”‚     β”‚      β”‚      └── UserController
β”‚   β”‚    β”‚     β”‚      β”œβ”€β”€ jwt
β”‚   β”‚    β”‚     β”‚      β”‚      └── JwtAuthenticationFilter
β”‚   β”‚    β”‚     β”‚      β”œβ”€β”€ models
β”‚   β”‚    β”‚     β”‚      β”‚      β”œβ”€β”€ Destination
β”‚   β”‚    β”‚     β”‚      β”‚      └── User
β”‚   β”‚    β”‚     β”‚      β”œβ”€β”€ repositories
β”‚   β”‚    β”‚     β”‚      β”‚      β”œβ”€β”€ DestinationRepository
β”‚   β”‚    β”‚     β”‚      β”‚      └── UserRepository
β”‚   β”‚    β”‚     β”‚      β”œβ”€β”€ role
β”‚   β”‚    β”‚     β”‚      β”‚      └── Role
β”‚   β”‚    β”‚     β”‚      β”œβ”€β”€ services
β”‚   β”‚    β”‚     β”‚      β”‚      β”œβ”€β”€ AuthService
β”‚   β”‚    β”‚     β”‚      β”‚      β”œβ”€β”€ DestinationService
β”‚   β”‚    β”‚     β”‚      β”‚      └── JwtService
β”‚   β”‚    β”‚     β”‚      └── HappyTravelApplication
β”‚   β”‚    β”‚     └── resources
β”‚   β”‚    β”‚          └── application.properties  
β”‚   β”‚    └── test
β”‚   β”‚        └── HappyTravelApplicationTests
β”‚   β”œβ”€β”€ target
β”‚   └── .mvn
β”œβ”€β”€ .gitignore
β”œβ”€β”€ mvnw
β”œβ”€β”€ mvnw.cmd
β”œβ”€β”€ pom.xml
└── README.md

TecnologΓ­as

Front

Back

Uso

El programa debe iniciarse primero en el back.

Para compilar:

Da al play para compilar automΓ‘ticamente.

Una vez iniciado el back, en el front:

npm run dev

Abre el enlace que aparece con tu puerto local.

Contribución 🀝

  1. Haz un fork al repositorio.
  2. Crea una nueva rama: git checkout -b feature/name.
  3. Haz tus cambios.
  4. Haz push de tu rama: git push origin feature/name.
  5. Crea un pull request.

CodersπŸ‘©β€πŸ’»

Las coders que hemos trabajado en este proyecto somos:

Demo

VersiΓ³n mΓ³vil:

happytravel-mobile.1.mp4

VersiΓ³n desktop:

home-ht register-ht logiin logged-home Captura de pantalla 2024-08-29 a les 18 07 44 Captura de pantalla 2024-08-29 a les 18 08 03 Captura de pantalla 2024-08-29 a les 18 08 31 Captura de pantalla 2024-08-29 a les 18 08 48 Captura de pantalla 2024-08-29 a les 18 09 28 Captura de pantalla 2024-08-29 a les 18 09 46

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages