Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

13 Commits
Β 
Β 
Β 
Β 

Repository files navigation

🎨 Tour & Travel Project

Welcome to the Tour & Travel App project! This is a clean, interactive, and responsive web application built to master component architecture, component decomposition, and props management in React using Tailwind CSS for rapid styling.


🌍 Tour & Travel App

A modern, responsive React application for showcasing holiday travel packages. Built with React, Vite, React Router, and styled with CSS.

Master component architecture, props drilling, and responsive design patterns


πŸ› οΈ Tech Stack

  • Framework: React.js (Vite Template)
  • Styling: CSS
  • Language: JavaScript (ES6+), HTML, CSS
  • Hosting: Vercel

✨ Features

  • 🎨 Modular Components – 5+ reusable, independent UI components
  • πŸ”„ Props Drilling – Seamless data flow through component hierarchy
  • πŸ“± Fully Responsive – Mobile, tablet, and desktop optimized
  • ⚑ Lightning Fast – Vite-powered development with Hot Module Replacement (HMR)
  • 🎯 Modern Styling – CSS for rapid, utility-first design
  • πŸ›£οΈ React Router – Multi-page navigation and routing
  • πŸš€ Production Ready – Clean, maintainable, scalable codebase

πŸ› οΈ Tech Stack

Technology Version Purpose
React ^19.2.7 UI framework
Vite ^8.1.1 Build tool & dev server
React Router DOM ^7.18.1 Client-side routing
CSS ^3.7.18 Utility-first styling
JavaScript ES6+ Language
oxlint ^1.71.0 Code linting

πŸ“‚ Project Structure

Tour_Travel_Project/
β”œβ”€β”€ index.html              # HTML entry point
β”œβ”€β”€ vercel.json             # Vercel
β”œβ”€β”€ package.json            # Project dependencies and scripts
β”œβ”€β”€ package-lock.json 
β”œβ”€β”€ vite.config.js          # Vite configuration
β”œβ”€β”€ public/                 # Static assets
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ App.css             # Main app styles
β”‚   β”œβ”€β”€ App.jsx             # Main app component
β”‚   β”œβ”€β”€ index.css           # Global styles
β”‚   β”œβ”€β”€ main.jsx            # Application entry point
β”‚   β”œβ”€β”€ Components/         # Reusable UI components
β”‚   β”‚   β”œβ”€β”€ AboutUs.css
β”‚   β”‚   β”œβ”€β”€ AboutUs.jsx
β”‚   β”‚   β”œβ”€β”€ ContactForm.css
β”‚   β”‚   β”œβ”€β”€ ContactForm.jsx
β”‚   β”‚   β”œβ”€β”€ Destination.css
β”‚   β”‚   β”œβ”€β”€ Destination.jsx
β”‚   β”‚   β”œβ”€β”€ DestinationData.jsx
β”‚   β”‚   β”œβ”€β”€ Footer.css
β”‚   β”‚   β”œβ”€β”€ Footer.jsx
β”‚   β”‚   β”œβ”€β”€ Hero.css
β”‚   β”‚   β”œβ”€β”€ Hero.jsx
β”‚   β”‚   β”œβ”€β”€ MenuItem.jsx
β”‚   β”‚   β”œβ”€β”€ NavBar.css
β”‚   β”‚   β”œβ”€β”€ NavBar.jsx
β”‚   β”‚   β”œβ”€β”€ Trip.css
β”‚   β”‚   β”œβ”€β”€ Trip.jsx
β”‚   β”‚   └── TripData.jsx
β”‚   └── Routes/            # Page-level route components
β”‚       β”œβ”€β”€ About.jsx
β”‚       β”œβ”€β”€ Contact.jsx
β”‚       β”œβ”€β”€ Home.jsx
β”‚       └── Services.jsx
β”œβ”€β”€ Router/                # Additional router-based app folder
β”‚   β”œβ”€β”€ Dockerfile
β”‚   β”œβ”€β”€ package.json
β”‚   β”œβ”€β”€ README.md
β”‚   β”œβ”€β”€ tsconfig.json
β”‚   β”œβ”€β”€ vite.config.ts
β”‚   β”œβ”€β”€ app/
β”‚   β”‚   β”œβ”€β”€ app.css
β”‚   β”‚   β”œβ”€β”€ root.tsx
β”‚   β”‚   β”œβ”€β”€ routes.ts
β”‚   β”‚   β”œβ”€β”€ routes/
β”‚   β”‚   β”‚   └── home.tsx
β”‚   β”‚   └── welcome/
β”‚   β”‚       └── welcome.tsx
β”‚   └── public/
└── README.md              # This file

🎯 Component Overview

Core Components

Component Purpose
NavBar Displays the top navigation bar with menu links and a mobile toggle.
Hero Shows the landing banner section with image, title, description, and CTA button.
Trip Renders the recent trips section with multiple trip cards.
TripData Displays an individual trip card with image, heading, and details.
Destination Shows featured destinations with image-based content blocks.
DestinationData Displays a single destination section with text and images.
AboutUs Presents the company history, mission, and vision.
Footer Displays the page footer content.
ContactForm Provides a contact form UI for user inquiries.

Route Pages

  • Home – Main landing page combining hero, trips, and destinations
  • About – Company information section
  • Services – Service-related page content
  • Contact – Contact page with a form

πŸ“¦ How to Setup & Build This Project From Scratch

Every time I initialize a new React + Tailwind CSS project, I follow these exact standard steps. You can use this guide to recreate or understand the workspace structure:

Step 1: Initialize Vite Project

Run the following command in your terminal:

npm create vite@latest

During the prompt configuration, fill out the selections exactly like this:

​Proceed? y

​Project Name: Your_Project_Name ​ Package Name: your_package_name ​

Select a framework: React ​

Select a variant: JavaScript

​With oxy? No ​

Install with npm? Yes


πŸ’» How to Run the Project Local Environment

​If you want to pull this project and run it again locally, simply execute these commands:

# Navigate to the project folder
cd Bg_Changer_Project

# Start the local development server
npm run dev


πŸš€ Getting Started

Prerequisites

  • Node.js (v16 or higher)
  • npm package manager
  • Basic knowledge of React and JavaScript

Installation

  1. Clone the repository
git clone https://github.com/MehmoodCoder/Tour_Travel_App.git
cd Tour_Travel_App/Tour_Travel_Project
  1. Install dependencies
npm install
  1. Start the development server
npm run dev
  1. Open in browser

Project Link : Tuor App


πŸ“œ Available Scripts

Development

npm run dev

Run oxlint to check code quality and style.


🎨 Styling Guide

This project uses ** CSS ** for all styling.


🌐 Deployment

Deploy to Vercel

  1. Push your code to GitHub
  2. Go to vercel.com
  3. Click "New Project"
  4. Connect your GitHub repository
  5. Connect the exact project folder containing package.json to avoid nested directory issues
  6. Vercel automatically detects Vite settings
  7. Toggle the "Build Command" and write npm run build manually to override it
  8. Click "Deploy"

πŸ“š Learning Resources


πŸ’‘ Core Concepts Covered

  • βœ… Component Decomposition – Breaking complex UIs into reusable pieces
  • βœ… Props Management – Passing data and functions through component trees
  • βœ… React Hooks – State management with hooks
  • βœ… Conditional Rendering – Showing/hiding content based on conditions
  • βœ… List Rendering – Displaying dynamic data with .map()
  • βœ… CSS-in-JS & Utility Classes – Styling with Tailwind
  • βœ… Responsive Design – Mobile-first approach with media queries
  • βœ… Client-Side Routing – Multi-page navigation with React Router

πŸ‘€ Author

MehmoodCoder


πŸ“„ License

This project is open source and available under the MIT License.


🀝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“ Changelog

v1.0.0 (Initial Release)

  • ✨ Responsive homepage with hero section
  • 🎯 Trip and destination showcases
  • πŸ“„ Multi-page routing with React Router
  • πŸ’… CSS styling
  • πŸ“± Mobile-responsive design

πŸ™ Acknowledgments


Happy coding without chai ! β˜•

About

🌍 Tour & Travel App is a responsive React site for holiday packages. πŸ› οΈ β€‹πŸ§© Modules: 5+ reusable components. β€‹πŸ”„ Props: Data drilled to child cards. β€‹πŸ“± UI: Mobile-responsive via Tailwind. β€‹πŸš€ Fast, clean, and production ready!

Topics

Resources

Stars

Watchers

Forks

Contributors

Languages