JourneyHive is a comprehensive travel ticketing platform designed to make exploring, booking, and managing trips seamless and efficient. Built with modern technologies, JourneyHive offers a user-friendly interface and powerful backend capabilities to ensure a smooth user experience.
- Explore: Discover destinations, available travel classes, and schedules.
- Book: Reserve tickets for specific destinations, travel classes, and dates.
- Search: Find tickets based on destination, class, or date.
- Cancel: Cancel tickets with ease.
- View History: Check past bookings and travel history.
- Track Status: Monitor the status of booked tickets.
- React.js: For building a dynamic and responsive user interface.
- Java Spring Boot: Provides a robust and scalable backend framework.
- Spring Security: Ensures secure access and protects user data.
- JWT: JSON Web Tokens for secure authentication and session management.
- OAuth2: Enables third-party sign-ins with Google and GitHub.
- PostgreSQL: Used for storing ticket, user, and booking data securely.
- Spring JPA: Simplifies data persistence and repository management.
- BCrypt Password Encoder: Securely hashes and verifies user passwords.
- Frontend: Hosted on Vercel.
- Backend: Deployed on Render and AWS Free Tier (Elastic Beanstalk).
- Database: Managed using AWS RDS for high availability and reliability.
- Route Maps: Display routes or journey maps for booked tickets.
- Node.js and npm installed
- Java Development Kit (JDK) 17 or later
- PostgreSQL database
- Navigate to the
clientfolder. - Install dependencies:
npm install
- Configure .env file using .env.example
- Start client:
npm start
- Navigate to the
serverfolder. - Add and configure
application.propertiesfile inresourcesfolder:server.port=<port_number> spring.datasource.url=<database_url> spring.datasource.username=<database_username> spring.datasource.password=<database_password>
- Start the application:
./mvnw spring-boot:run
- Real-time notifications: Notify users about ticket updates in real time.
- Third-party API integration: Connect with additional travel APIs for more options.
- AI-based recommendations: Provide personalized destination suggestions.
Contributions are welcome! Feel free to submit issues or pull requests to improve JourneyHive.
This project is licensed under the MIT License.
For inquiries or support, please contact Aditya Batgeri at [email protected].