A JavaFX-powered platform built for the Global Travel Desktop project, enabling company managers to integrate flights, hotels, activities, users, and private cars in one intelligent interface. Developed as part of the PIDEV 3A coursework at Esprit School of Engineering, this solution simplifies corporate travel planning by offering a centralized platform that streamlines booking, tracking, and managing business trips.
- 🔐 Secure Authentication with role-based access (Admin, Employee, Manager)
- 🛫 Flight Management with real-time delay calculation
- 🏨 Hotel Booking with room availability and PDF export
- 🚗 Private Car Services with dynamic route mapping
- 📅 Google Calendar Integration for activity scheduling
- 📈 Dashboards & Analytics for trip tracking
- 🧠 AI Integration for delay prediction and smart feedback translation
- 🗂️ Admin Panel to manage users, companies, and services
- JavaFX (FXML, CSS)
- Java 17
- Maven
- MySQL
- Azure AI (Delay prediction)
- Lingva Translate API
- OpenStreetMap + Geocoding API
- Google Calendar API
- MailJet, Abstract API, hCaptcha
- IntelliJ IDEA
- GitHub Actions
global-travel
├── README.md
├── pom.xml
├── src
│ ├── main
│ │ ├── java
│ │ │ ├── com
│ │ │ │ ├── globalTravel
│ │ │ │ │ ├── controllers
│ │ │ │ │ ├── models
│ │ │ │ │ ├── services
│ │ │ │ │ └── utils
│ │ │ │ └── main
│ │ │ └── resources
│ │ │ ├── css
│ │ │ ├── fxml
│ │ │ └── images
│ │ └── test
├── target
└── .gitignore
git clone https://github.com/GlobalTravel/global-travel.git
cd global-travel
mvn clean install
mvn javafx:run
This project was completed under the guidance of the Esprit School of Engineering, as part of the PIDEV 3A engineering curriculum.
This project was developed as part of the PIDEV 3A coursework at Esprit School of Engineering by:
- Aziz Amri - Flight Management & AI Integration
- Jassem Lazaar - Hotel Booking System
- Rayen Neji - User Authentication & Admin Panel
- Amir Ben Ali - Private Car Services & Maps
- Mohamed Said Hachani - Activities & Calendar Integration
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request