Skip to content

BasileDM/Travel-Agency-Symfony-Next

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

65 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Agence de voyage (symfony-next)

Contexte du projet

Ce projet est un site pour une agence de voyage fictive, utilisant React et Next.js pour la partie front-end, et Symfony pour la partie back-end. Le site est déployé sur Vercel.

Le cahier des charges stipulait que l'utilisateur pourrait :

  • Voir l'ensemble des voyages proposés par l'agence
  • Réserver un voyage
  • Voir les contacts de l'agence et envoyer un message

En back-office, l'utilisateur pourra en fonction de son rôle :

  • Voir les réservations et contacts
  • Ajouter/modifier/supprimer des réservations et demandes
  • Ajouter/modifier/supprimer des voyages

L'API du back-end devait pouvoir renvoyer les informations de la base de données et communiquer avec le front-end exclusivement en JSON.

Mise en place du projet

Commencez par cloner le projet :

git clone git@github.com:BasileDM/agence-voyage-symfony-next.git

Configuration back-end

Dans le dossier 'back-end', il est nécessaire de créer un fichier .env.local avec la ligne suivante, et remplacer les valeurs 'dbuser', 'dbpassword', '127.0.0.1', '3306' et '8.2.0' par les vôtres.

DATABASE_URL="mysql://dbuser:dbpassword@127.0.0.1:3306/monprojet?serverVersion=8.2.0&charset=utf8mb4"

Configuration front-end

Dans le dossier 'front-end', il faut modifier le fichier config.js contenu dans 'brief7-front-end/src/js/config.js' et modifier la valeur de 'API_URL' par votre adresse d'API.

export const API_URL = "http://localhost:8000/api/

À la racine du projet back-end si vous utilisez un server Nginx ajoutez la ligne suivant dans le fichier .conf :

location /votre_nom/nom_du_projet/ {
  add_header Access-Control-Allow-Origin https://votreurl.com;

Versions et prérequis

Routes API

  • /api/trips (GET) : pour la liste de tous les voyages
  • /api/trip/Trip name (GET) : Pour les détails d'un voyage
  • /api/destinations (GET) : Pour la liste des destinations
  • /api/categories (GET) : Pour la liste des catégories
  • /api/reservation/new (POST) : Pour soumettre une nouvelle réservation
  • /api/contact/new (POST) : Pour soumettre une demande de contact

Fichiers utiles

Le fichier MCD avec son schéma se trouvent dans le dossier Ressources

About

✈ An online travel agency website made with React/Next and Symfony.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published