Skip to content

arkmish/GetSetTravel

Repository files navigation

GetSetTravel 🌍✈️

GetSetTravel is a modern, AI-powered travel planning application that creates personalized itineraries in seconds. Built with Next.js 15, FastAPI, and Google Gemini 1.5 Flash.

GetSetTravel Hero Placeholder

✨ Features

  • 🤖 AI-Powered Itineraries: Generates detailed day-by-day plans using Google Gemini LLM.
  • ⚡ Instant Recommendations: Suggests activities, hidden gems, and dining spots based on your interests.
  • 🏨 Smart Stay: Recommends top-rated hotels with direct booking links.
  • 💰 Currency Conversion: Plan your budget in INR, USD, EUR, GBP, or JPY.
  • 🔍 Smart Autocomplete: Select from 100+ popular global destinations.
  • 🔗 Deep Links: One-click Google Maps and search links for every activity and hotel.
  • 🎨 Glassmorphism UI: A premium, responsive design built with CSS Modules and Lucide Icons.

🛠️ Tech Stack

Frontend

  • Framework: Next.js 15 (App Router)
  • Language: TypeScript
  • Styling: Vanilla CSS (CSS Modules), Lucide React

Backend

  • Framework: FastAPI (Python 3.10+)
  • AI Model: Google Gemini 1.5 Flash (via google-generativeai)
  • Server: Uvicorn

🚀 Getting Started

Prerequisites

Option 1: One-Click Deploy (Free on Vercel) 🚀

This is the easiest way. It hosts both the Frontend and Backend for free.

  1. Push to GitHub: Make sure this code is in a GitHub repository.
  2. Import to Vercel:
    • Go to Vercel.
    • Import your GitHub repository.
  3. Environment Variables:
    • Add GEMINI_API_KEY in the Vercel Project Settings.
  4. Deploy: Click Deploy! Vercel will automatically detect Next.js and the Python backend using the vercel.json config.

Option 2: Docker ...


Option 2: Manual Setup

1. Backend Setup (Python)

cd backend
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
pip install -r requirements.txt

# Create .env file in backend/
echo "GEMINI_API_KEY=your_key_here" > .env

# Run Server
uvicorn app.main:app --reload

2. Frontend Setup (Node.js)

# In a new terminal, from the root directory
npm install
npm run dev

The app will be running at http://localhost:3000.

📂 Project Structure

/
├── app/                  # Next.js App Router (Frontend)
│   ├── api/              # Proxy routes
│   ├── plan/             # Itinerary Planner Pages
│   └── suggest/          # Destination Suggester
├── backend/              # FastAPI Server (Backend)
│   ├── app/
│   │   ├── api/          # Endpoints
│   │   ├── services/     # Gemini LLM Integration
│   │   └── schemas/      # Pydantic Models
│   └── requirements.txt
├── components/           # Reusable UI Components
├── lib/                  # Utilities & Constants
└── public/               # Static Assets

🤝 Contributing

Contributions are welcome! Please fork the repository and submit a pull request.

📄 License

MIT License.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors