Travel Booking Website

A comprehensive travel booking platform with authentication, multiple booking options, and user feedback system.

Features

  • Authentication: Login/Register system
  • Booking Services:
    • Air tickets
    • Railway tickets
    • Cab bookings
    • Bike rides
  • Destinations: Browse and explore travel destinations
  • Payment Integration: Secure payment processing
  • About Page: Company information
  • Feedback System: User reviews and feedback
  • Responsive Design: Mobile-friendly interface
  • Animations: Smooth transitions and interactive elements

Project Structure

├── backend/
│   ├── index.ts           # Main Hono server
│   ├── database/
│   │   ├── migrations.ts  # Database schema
│   │   └── queries.ts     # Database operations
│   └── routes/
│       ├── auth.ts        # Authentication routes
│       ├── bookings.ts    # Booking management
│       └── feedback.ts    # Feedback system
├── frontend/
│   ├── index.html         # Main HTML template
│   ├── components/
│   │   ├── App.tsx        # Main React app
│   │   ├── Login.tsx      # Authentication component
│   │   ├── Dashboard.tsx  # Main dashboard
│   │   ├── Destinations.tsx # Destinations page
│   │   ├── Booking.tsx    # Booking interface
│   │   ├── Payment.tsx    # Payment processing
│   │   ├── About.tsx      # About page
│   │   └── Feedback.tsx   # Feedback form
│   └── style.css          # Custom styles
└── shared/
    └── types.ts           # Shared TypeScript types

Technology Stack

  • Backend: Hono (TypeScript)
  • Frontend: React 18.2.0 with TypeScript
  • Database: SQLite
  • Styling: TailwindCSS
  • Animations: CSS transitions and transforms
  • Storage: Val Town Blob storage for user sessions

Getting Started

The application is automatically deployed on Val Town. Access the main interface through the HTTP endpoint.

API Endpoints

  • POST /api/auth/login - User authentication
  • POST /api/auth/register - User registration
  • GET /api/destinations - Get available destinations
  • POST /api/bookings - Create new booking
  • POST /api/payment - Process payment
  • POST /api/feedback - Submit feedback
  • GET /api/feedback - Get feedback list