Skip to content
ย 
ย 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

48 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐ŸŒ TripMesh

A web-based tourism marketplace platform that connects tourists with local guides, tour packages, and unique travel experiences.

TripMesh helps tourists discover personalized travel services while allowing local guides to showcase and manage their offerings.


๐Ÿ“Œ Project Overview

TripMesh is a Tourist-as-a-Service marketplace where users can:

  • Explore destinations and tour packages
  • Find and connect with local guides
  • Book personalized travel experiences
  • Manage tourist and guide profiles
  • Share reviews and ratings

The platform focuses on creating a trusted connection between tourists and local service providers.


๐Ÿš€ Application Flow Diagram

The following diagram represents the planned navigation flow, user roles, and major features of TripMesh.

image

๐Ÿ‘ฅ User Roles

๐Ÿงณ Tourist

Features:

  • Register and login
  • Browse tour packages
  • Search destinations
  • View guide profiles
  • Book tours
  • Give reviews and ratings
  • Manage profile

๐Ÿงญ Guide

Features:

  • Register as a guide
  • Manage guide profile
  • Create tour packages
  • Manage booking requests
  • Receive tourist reviews

๐Ÿ“‚ Project Structure

TripMesh/

โ”œโ”€โ”€ frontend/        # React frontend
โ”œโ”€โ”€ backend/         # Laravel backend
โ”œโ”€โ”€ docs/            # Documentation
โ””โ”€โ”€ README.md

๐Ÿ› ๏ธ Technology Stack

Frontend

  • React.js
  • Vite
  • Tailwind CSS

Backend

  • Laravel
  • PHP

Database

  • MySQL

Tools

  • Git & GitHub
  • VS Code
  • Postman

โš™๏ธ Backend Setup

Backend is developed using Laravel and located inside the backend folder.

Requirements

  • PHP 8.2+
  • Composer
  • MySQL
  • Laravel

Installation

Navigate to backend folder:

cd backend

Install dependencies:

composer install

Create environment file:

cp .env.example .env

Generate application key:

php artisan key:generate

Configure database information in .env.

Run migrations:

php artisan migrate

Start Laravel server:

php artisan serve

๐Ÿ—„๏ธ Database Structure

Entities

User Management

  • Users
  • Roles
  • Tourist Profiles
  • Guide Profiles

Tourism Management

  • Tour Packages
  • Destinations
  • Categories

Booking Management

  • Bookings
  • Payments

Engagement

  • Reviews
  • Ratings
  • Favorites

๐Ÿ”— Database Relationships

  • One Role has many Users

  • One User belongs to one Role

  • One User can have one Tourist Profile

  • One User can have one Guide Profile

  • One Guide can create many Tour Packages

  • One Destination has many Tour Packages

  • One Category contains many Tour Packages

  • One Tourist can create many Bookings

  • One Tour Package can have many Bookings

  • One Tourist can write many Reviews

  • One Package can receive many Reviews


๐ŸŒ API Route Plan

Authentication

Method Route
POST /api/register
POST /api/login
POST /api/logout
GET /api/profile

Guides

Method Route
GET /api/guides
POST /api/guides
GET /api/guides/{id}
PUT /api/guides/{id}
DELETE /api/guides/{id}

Tour Packages

Method Route
GET /api/packages
POST /api/packages
GET /api/packages/{id}
PUT /api/packages/{id}
DELETE /api/packages/{id}

Bookings

Method Route
GET /api/bookings
POST /api/bookings
GET /api/bookings/{id}
PUT /api/bookings/{id}

Reviews

Method Route
GET /api/reviews
POST /api/reviews
DELETE /api/reviews/{id}

๐Ÿงช Migration Status

Planned Laravel migrations:

  • create_roles_table
  • create_users_table
  • create_tourist_profiles_table
  • create_guide_profiles_table
  • create_destinations_table
  • create_categories_table
  • create_tour_packages_table
  • create_bookings_table
  • create_payments_table
  • create_reviews_table
  • create_favorites_table

Run migrations:

php artisan migrate:fresh

๐Ÿ”ฎ Future Enhancements

  • Real-time chat between tourists and guides
  • Online payment system
  • AI-based travel recommendations
  • Location-based guide matching
  • Mobile application support

๐Ÿค Contribution

  1. Create a feature branch
git checkout -b feature/your-feature-name
  1. Commit changes
git commit -m "Add feature"
  1. Push branch
git push origin feature/your-feature-name
  1. Create a Pull Request

๐Ÿ“„ License

This project is developed for academic purposes.

About

TripMesh is a Tourist-as-a-Service marketplace website that connects travelers with local guides, businesses, and experiences through a smart and user-friendly platform. Built with HTML, CSS, JavaScript, and PHP.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages