Skip to content

advanced-computer-lab/Software-Engineers-in-Tears-2.0

Repository files navigation

Software-Engineers-in-Tears-2.0


Hello!

Welcome to Dune Airlines

The aim of this project is to create a complete Airline Reservation System. Our website allows individuals can reserve and pay for flights in order to travel to different countries and sometimes domestic cities.We offer only round trips. No one way tickets.


This project was implemented using MERN stack technologies in JavaScript. The project architecture is MVC style. Backend requests are handled in App.js file and the backend route controllers are in the Routes folder. All frontend styling and functionalities are in the client folder. Database Schemas are handled in the Models folder.

Project has been deployed on Heroku app. You can access it through: https://dunes-airlines.herokuapp.com/

To run the project on VS code, first clone our repository "git clone https://github.com/advanced-computer-lab/Software-Engineers-in-Tears-2.0.git". Then make sure you install the necessary files or softwares by running "npm i" in your console. Afterwards, split your terminal and run backend by running "node App.js" in console. To run the front end, run "cd client/src", then "npm i", then run "npm start" in the second console.

Emailing API used is nodemailer (https://nodemailer.com/about/)

Payment by card was handled using Stripe API(https://thushaltk.medium.com/how-to-add-stripe-payment-gateway-to-your-mern-project-82f34691dc57)

Authentication was handled by jsonWebTokens (https://jwt.io/)

Password encryption done by bcrypt (https://auth0.com/blog/hashing-in-action-understanding-bcrypt/)


There are 3 navigation modes on the website:Admin,Guest and User. Each have different access priviliges to the website's features

Admin Mode

An admin can create,view, update and delete flights at all times.

Guest Mode

A guest user can search and view a list of all available depart or return flights upon his search criteria. He/She are able to select flights of prefernce and preview a summary of all it's details. If the guest user wishes to proceed and book this flight they must go to the sign up page and register to be user to access further features.

User Mode

A registered user is able to access all guest mode features plus now he/she can book desired flights and pay for them. In addition, they can access their bookings list and modify their reservations at any time. The user is also able to update his account information when desired. A user will recieve confirmation payment emails for any booking transactions he/she makes.


You can see demos of all our features here: https://drive.google.com/drive/folders/102ocBTJ5EoavL9sjOI32jkqZAciL2iIT?usp=sharing

Both an admin and a registered user can login by their credentials from the log in page.

Our UX/UI stands out. The design and colors are unique than other airlines websites. The user experience is easy, simple, and direct.


Suggested uncompleted future feature

1- The top navigation bar buttons in the homepage.

2- The "manage booking", "check-in" and "Hotels" section in the user homepage.

3- The loyality Skywards program features.

4- Create an mobile application version!


How to contribute?

You can send your implementations for the suggested features to [email protected]. Feel free to also send us your feedback and suggestions too.


Our project was inspired by :

https://www.qatarairways.com/

https://www.etihad.com/


Resources,links,and articles that helped us:

https://blog.logrocket.com/mern-stack-tutorial/.

https://www.w3schools.com/REACT/DEFAULT.ASP

https://www.youtube.com/playlist?list=PLZlA0Gpn_vH_uZs4vJMIhcinABSTUH2bY

Our Color Palette:https://colorhunt.co/palette/f4f4f4f0a500cf7500000000

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages