https://github.com/akshat-rawat/avian
Airline Booking Management System
https://github.com/akshat-rawat/avian
ejs-templating mongodb nodejs
Last synced: about 1 year ago
JSON representation
Airline Booking Management System
- Host: GitHub
- URL: https://github.com/akshat-rawat/avian
- Owner: akshat-rawat
- Created: 2021-05-01T18:00:38.000Z (about 5 years ago)
- Default Branch: main
- Last Pushed: 2021-06-28T17:32:03.000Z (almost 5 years ago)
- Last Synced: 2025-03-29T03:32:06.554Z (about 1 year ago)
- Topics: ejs-templating, mongodb, nodejs
- Language: CSS
- Homepage: http://avian-official.herokuapp.com/
- Size: 260 KB
- Stars: 3
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Avian
Avian is a website where users can search, book and/or cancel flight tickets.
https://user-images.githubusercontent.com/78139798/123645171-b8d04f00-d843-11eb-8119-1d20533a5b05.mp4
## Live Demo
To see the project in action, go to [http://avian-official.herokuapp.com/](http://avian-official.herokuapp.com/)
## Getting Started
### Prerequisites
1. **Node.js** for running server-side JavaScript. You can find instructions on how to download and install Node.js for your computer [here](https://nodejs.org/en/download/).
2. **MongoDB** (Community Edition preferrably) to store data. Instructions on downloading and installing MongoDB on your computer can be found [here](https://docs.mongodb.com/manual/installation/).
### Installing
Once you have Node.js and MongoDB installed on your computer,
#### Clone or download this repository.
```sh
git clone https://github.com/akshat-rawat/Avian.git
```
#### Change the folder and Install dependencies.
```sh
cd avian
npm install
```
#### Create a `.env` file and add the following:
```sh
seshSECRET =
dbSECRET =
```
#### Run the project.
```sh
npm start
```
#### Open your web browser and visit the address `localhost:3000` and voila!
## Features
* Authentication:
* User login with email and password.
* For new user, there is a sign-up option.
* Authorization:
* User can only book and cancel ticktets after logging in.
* User cannot cancel flight tickets without being authenticated.
* Ticket booking functionalities:
* Search for tickets with necessary parameters.
* Filter search by price, duration or alphatical order.
* Contact feature for any queries.
* Flash messages responding to users' interaction with the app.
* Responsive web design.
## Built with
### Front-end
* [ejs](http://ejs.co/)
* [bootstrap](https://getbootstrap.com/)
* [jQuery](https://jquery.com/)
### Back-end
* [node.js](https://nodejs.org/en/)
* [express](https://expressjs.com/)
* [mongoDB](https://www.mongodb.com/)
* [mongoose](http://mongoosejs.com/)
* [async](http://caolan.github.io/async/)
* [helmet](https://helmetjs.github.io/)
* [passport](http://www.passportjs.org/)
* [express-session](https://github.com/expressjs/session#express-session)
* [connect-flash](https://github.com/jaredhanson/connect-flash#connect-flash)
### Platforms
* [git](https://git-scm.com/)
* [heroku](https://www.heroku.com/)
* [github](https://github.com/)