Tourister is a website that helps in managing Tours. It streamlines the planning and organization process for tour operators and individuals, making it easier and more efficient to plan and book tours.
You can check the deployed website here π: Tourister
Technology | Features |
---|---|
Node.js, Express.js | Backend of the application |
MongoDB Atlas, Mongoose | Database for the application |
Stripe | Online Payment Page |
Bcrypt | Password Management |
JSON Web Token | Authorization and Authentication |
SendGrid | Mail Services |
Render | Deployment |
This project consists of wide variety of advanced features:
- Fast, feature rich REST API (includes filters, sorts, pagination, and much more)
- Security Features such as Rate Limiting, Password Encryption, etc.
.
βββ controllers # This folder contains the controllers of the application. These controllers handle incoming requests from clients, interact with the model to retrieve or update data, and send responses back to the client.
βββ models # This folder handles the data and manages the schema of the data to be stored in the database.
βββ public # This folder handles images, JavaScript, and CSS that are related to the website and can be accessed by the client.
βββ Routes # This folder handles the routes of the application, determining what actions need to be performed for specific routes.
βββ utils # This folder manages the utility files that contain classes used throughout the website.
βββ views # This folder manages the templates used to generate the view of the website.
βββ .eslintrc.json
βββ .gitignore
βββ .prettierrc
βββ app.js
βββ package-lock.json
βββ package.json
βββ README.md
βββ server.js
Home page of the website | Login Page |
SignUp Page | Reviews Section |
Details Page | Book tour |
Payment Page | Booked Tours |
Account Settings | Password Settings |
To setup the project on your local environment, follow the given steps:
- Fork the Palaksharma23/Tourister repository.
- Clone the repository:
Replace the <USERNAME>
with your GitHub username.
Install dependencies
npm install
To start the server in development mode
npm run dev
For monitoring changes in the development mode, create a new terminal and run the following command in the directory
npm run watch:js
To start the server in production mode
npm run start:prod
Go to localhost:3000
to view the website.