This is a web application for booking trains, hotels, and cars. It offers users the ability to search for, book, and manage their travel plans. The application features secure authentication using JWT tokens, email notifications after successful bookings, and user-friendly login and signup pages.
- JWT Authentication: Users can securely sign up, log in, and manage sessions with JSON Web Tokens (JWT).
- Booking System: Users can book trains, hotels, and cars and receive a confirmation email upon successful booking.
- Email Notifications: Automated email notifications are sent to users after a successful booking.
- Login and Signup Pages: User-friendly login and signup pages for easy access.
- Responsive Design: The frontend is responsive and mobile-friendly.
- React JS: For building the user interface.
- CSS/Bootstrap: For responsive design and layout.
- Axios: For making HTTP requests to the backend API.
- Node.js: For the backend server.
- Express.js: For routing and handling API requests.
- JWT (JSON Web Tokens): For secure user authentication and session management.
- Nodemailer: For sending confirmation emails to users after bookings.
- MongoDB: For storing user data, booking information, and more.
- Node.js installed
- MongoDB installed or use a cloud-based MongoDB service like MongoDB Atlas
-
Clone the repository:
git clone https://github.com/vinayganta10/JourneyEase.git cd JourneyEase
-
Install the backend dependencies:
cd backend npm install
-
Install the frontend dependencies:
cd ../frontend npm install
-
Set up environment variables for the backend: Create a
.env
file in thebackend
directory with the following details:PORT=5000 MONGO_URI=your_mongodb_uri JWT_SECRET=your_jwt_secret EMAIL_SERVICE=your_email_service EMAIL_USERNAME=your_email_username EMAIL_PASSWORD=your_email_password
-
Start the backend server:
cd backend npm start
-
Start the frontend server:
cd ../frontend npm start
Contributions are welcome! Please fork the repository and create a pull request.