- Member 1: Ammar Haziq bin Zainal (2217763)
- Member 2: Nur Amira Binti Azhari (2217176)
- Member 3: Nik Shameera Azfareeha Binti Nik Shamlan (2213916)
- Member 4: Amirah Amnani binti Mohd Hushini @ Mohd Husaini (2215714)
- Member 5: Nur Nisa Nasuha Binti Nazri (2216458)
Tourista is a comprehensive web-based tour management system designed to streamline the process of planning and booking tours for customers. Developed using the Laravel framework, the system leverages modern web technologies to provide an intuitive and user-friendly interface. Tourista caters to individuals and families seeking seamless travel arrangements, combining essential features like flight, hotel, rental vehicle, tour packages, and attraction bookings into a unified platform.
The system empowers users to explore curated travel packages, customize their itineraries, and manage all aspects of their travel plans effortlessly. With a secure payment gateway integration, Tourista ensures safe and reliable financial transactions, making it the go-to platform for stress-free travel planning.
The primary goal of Tourista is to simplify travel planning by integrating multiple booking options into a single platform. It is designed to:
- Save users time and effort by consolidating services.
- Provide transparency with clear pricing and itinerary details.
- Offer flexibility through customizable packages.
- Ensure secure transactions and protect user data.
-
User Authentication:
- Create: Allow users to register by providing personal information such as username, email, and password.
- Read: Display the user's profile and other features after the user has successfully logged in.
- Update: Allow users to update their profile information, such as changing their email address, password, and contact details.
- Delete: Allow users to delete or deactivate their accounts.
-
Flight Booking:
User
- Create: Allow users to book a flight by entering required details such as departure and arrival locations , travel date and passenger count.
- Read: Display available flights schedules based on user inputs.
Admin
- Create: Allow users to book a flight by entering required details such as departure and arrival locations , travel date and passenger count.
- Update: Allow users to modify their flight bookings, including changing flight dates and edit passenger count.
- Delete: Let users cancel their flight.
-
Hotel Booking:
User
- Create: Allow users to book hotel rooms by selecting a hotel, room type, check-in and check-out dates, and the number of guests.
- Read: Display a list of available hotels with detailed descriptions, including room types, pricing, amenities, and availability based on the selected dates.
Admin
- Create: Allow users to book hotel rooms by selecting a hotel, room type, check-in and check-out dates, and the number of guests.
- Update: Allow users to modify their existing bookings by changing the check-in/out dates, room type, or number of guests, subject to availability.
- Delete: Allow users to cancel their booking.
-
Car Rental Booking:
User
- Create: Allow users to book a car by entering required details like dates, location, and preferences.
- Read: Display car listings with detailed descriptions, availability, and pricing.
Admin
- Create: Allow users to book a car by entering required details like dates, location, and preferences.
- Update: Enable users to modify bookings, such as changing dates or vehicle type.
- Delete: Delete bookings from the database, ensuring that cancellations are handled according to the company’s cancellation policies.
-
Tour Package Booking:
User
- Create: Allow users to book a tour packages by selecting one of the packages available.
- Read: Display a complete details about packages like the price per pax, duration and etc.
Admin
- Create: Allow users to book a tour packages by selecting one of the packages available.
- Update: Allow users to modify the pax for the tour packages.
- Deleet: Allow users to cancel their booking.
-
Attraction Booking:
User
- Create: Enable users to book attractions by selecting desired locations,date and category attractions.
- Read:Display a comprehensive list of available attractions with descriptions, ratings, operational hours, and ticket pricing.
Admin
- Create: Enable users to book attractions by selecting desired locations,date and category attractions.
- Update:Allow users to modify their bookings, such as adjusting the date and or number of participants.
- Delete: Permit users to cancel attraction bookings only before payment is completed.
-
Payment Integration:
- Create: Allow users to make a payment for their bookings.
- Read: Display all the details like total price that need to pay, the information of their information, and etc.
-
Home Page: The landing page for users that provides an overview of the system, highlights its key features, and includes options for login and registration.
Booking Option: This section allows users to choose their preferred booking option, whether it's Hotel Booking, Car Rental, Flight Booking, Tour Package Booking, or Attraction Booking. The user will then need to fill out a simple form for further use in the system.
Our Best Tour: This section highlights our best tours that users can choose from.
Our Services: This section displays the services provided by Tourista, including Hotel Booking, Flight Booking, Car Rental, Attraction Booking, and Tour Package Booking.
-
About Us Page: This page provides information about our platform, Tourista, along with reviews from our valued past customers.
-
Teams: This page introduces the team members who worked behind this project and their individual contributions to making it a success.
-
Header: The header includes navigation options for users, such as Home, About Us, and Teams, along with options for Login or Sign Up.
-
Footer: The footer includes information such as contact information, social media links, and quick navigation links to enhance user's navigation.
- Register
A seamless and welcoming screen for new users to sign up. The form captures essential user details like name, email, and password, with robust validation to ensure accuracy. Friendly success or error messages guide users through the process, making account creation quick and easy

- Login
A straightforward login screen where users can securely access their accounts by entering their email/username and password. Simple yet effective authentication to get users into their personalized experience with just a few taps

- Hotels
Explore a wide array of hotels to suit your travel needs. Filter through various options, such as destination, check-in/check-out dates, and guest numbers, to find the perfect stay. Detailed listings showcase stunning images,name, pricing, location and available rooms. Convenient booking options ensure a smooth process from browsing to reservation

- Rentals
Rent the ideal car for your trip with ease. Search through various rental cars based on pickup location, dates, and vehicle type. Each listing comes with name of the car, attractive images, and prices that help users make informed choices. With the booking option right at hand, securing a car has never been easier.

- Flight
Discover a variety of flights tailored to your travel preferences. Search by departure location, destination, dates, and passenger count to find the best options. Each flight is accompanied by helpful details such as pricing, images, flight date and type of flight . With a quick and simple booking option, users can confirm their travel plans effortlessly.

- Trips
Embark on exciting pre-planned travel packages designed for every type of traveler. Browse through diverse categories, ranging from budget to luxury, and explore stunning images, prices, and detailed descriptions of each trip. Easily book the perfect getaway with just a few clicks.

- Attractions
Uncover the best attractions at your chosen destination. Use filters to explore various activities based on your interests, location, and preferred dates. Each attraction listing includes captivating descriptions, name of packages, prices, and images. Booking options are readily available for users to secure their experience with ease.

- Payment
Complete your booking in a secure, user-friendly environment. The payment section enables users to make hassle-free payments via credit card while reviewing a detailed purchase summary. A simple billing form ensures smooth transactions, making checkout quick and stress-free.

- Login
Admins can access the platform securely through a dedicated login page, with a unique username and password to ensure confidentiality and control over the admin features.

- Hotels
Easily manage hotel listings with an intuitive admin interface. Admin can create, update and delete hotel entries, and view a detailed history of user bookings for a comprehensive understanding of the property’s performance.

- Rentals
The admin panel offers complete control over rental car listings. Admin can create new entries, update existing details, or delete outdated vehicles. Admins can also view user booking history, ensuring smooth operations and up-to-date offerings.

- Flight
Manage flights efficiently from the admin view. Admins can create new flight listings, update current options, or delete flights that are no longer available. The panel also provides valuable insights into flight booking history, ensuring all options are in line with demand

- Trips
Take charge of travel packages with ease. Admins can create, update and delete outdated offers from the catalog. View detailed booking information to monitor popularity and demand for each package.

- Attractions
Simplify attraction management with an easy-to-use admin panel. Admins can create, update and delete attraction listings and track bookings to ensure that the most popular activities are always available for users.

Developing our project, Tourista, came with several challenges, especially at the beginning. One of the biggest difficulties we faced was communication within the team. Since we were not familiar with each other, it was hard to share ideas, understand how everyone worked, and collaborate effectively.
Another challenge we encountered was using GitHub for collaboration. Many team members were not familiar with GitHub's features, such as version control, pull requests, and resolving merge conflicts. This led to delays and confusion, especially when multiple members were working on the same files.
As time went on, we worked to solve these problems by having regular team discussions, using tools to help us collaborate more effectively, and being open and honest in our communication. For GitHub, we took the time to learn its features through tutorials and practiced using it as part of our workflow. These efforts helped us build trust, improve teamwork, and manage our codebase more effectively.
In the end, we were able to work well as a team and successfully complete the project. Along the way, we also improved our skills in problem-solving, teamwork, and using GitHub for version control. This experience taught us how important it is to communicate, adapt, and stay determined to reach our goals.
- Athuraliya, A., & Creately. (2022, December 12). Sequence Diagram Tutorial – Complete Guide with Examples. Creately. https://creately.com/guides/sequence-diagram-tutorial/
- Car rental in Malaysia | Book a car Online - WAHDAH. (n.d.). https://www.wahdah.my/
- Booking.com. (n.d.). https://www.booking.com/




























