Skip to content

TripPlanner: AI‑powered travel planner with a Vite + React + TypeScript frontend, Go backend, and Hugging Face integration.

License

Notifications You must be signed in to change notification settings

shusingh/trip-planner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌍 AI Trip Planner

An intelligent full-stack web application that leverages AI to create personalized travel itineraries. Simply input your destination, travel dates, and interests to receive AI-powered recommendations for attractions, restaurants, activities, and more through the Groq API.

MIT License Go React TypeScript


🌟 Quick Links


✨ Key Features

  • Smart Trip Planning

    • Multi-step intuitive form with progress tracking
    • AI-powered personalized recommendations (via Groq with gemma2-9b-it)
    • Interactive destination selection with map integration
  • Modern Tech Architecture

    • Type-safe frontend with React + TypeScript
    • High-performance Go backend
    • AI integration via Groq (gemma2-9b-it)
    • Responsive UI with Hero UI components
  • Production-Ready

    • Comprehensive error handling
    • Client-side routing with fallback support
    • Optimized deployment configuration
    • Environment-based configuration

🛠 Technology Stack

Frontend

Backend

Infrastructure

  • Hosting: Render.com
    • Frontend: Static Site Hosting
    • Backend: Private Service
  • CI/CD: Automated deployments via Render

🚀 Getting Started

Prerequisites

  • Node.js 16 or higher with npm
  • Go 1.18 or higher
  • Groq API key with inference permissions
  • Git

Local Development Setup

  1. Clone the Repository

    git clone https://github.com/shusingh/TripPlanner.git
    cd TripPlanner
  2. Backend Setup

    cd backend
    cp .env.example .env
    # Configure your .env file:
    # GROQ_API_KEY=your_groq_api_key
    # PORT=8080
    
    go mod download
    go run cmd/tripplanner/main.go
  3. Frontend Setup

    cd ../frontend
    npm install
    
    # Create and configure .env
    echo "VITE_API_BASE_URL=http://localhost:8080" > .env
    
    npm run dev
  4. Access the Application


📦 Deployment Guide

Render.com Configuration

  1. Backend Service

    • Repository: Select your GitHub repository
    • Root Directory: /backend
    • Build Command: go build -o app cmd/tripplanner/main.go
    • Start Command: ./app
    • Environment Variables:
      • GROQ_API_KEY: Your Groq API key
  2. Frontend Static Site

    • Repository: Same GitHub repository
    • Root Directory: /frontend
    • Build Command: npm run build
    • Publish Directory: dist
    • Environment Variables:
      • VITE_API_BASE_URL: Your backend service URL
    • Add Rewrite Rule: /* /index.html 200

📁 Project Structure

TripPlanner/
├─ backend/                # Go API Service
│  ├─ cmd/
│  │  └─ tripplanner/     # Application entry point
│  ├─ internal/           # Internal packages
│  │  ├─ groq/           # Groq client
│  │  ├─ recommendations/ # Recommendation logic
│  │  └─ models/         # Data models
│  ├─ go.mod             # Go dependencies
│  └─ .env.example       # Environment template
│
├─ frontend/              # React Application
│  ├─ src/
│  │  ├─ pages/          # Route components
│  │  ├─ components/     # Reusable UI components
│  │  ├─ config/         # App configuration
│  │  └─ App.tsx         # Root component
│  ├─ public/            # Static assets
│  ├─ vite.config.ts     # Vite configuration
│  └─ package.json       # NPM dependencies
│
└─ README.md             # Project documentation

🤝 Contributing

We welcome contributions! Here's how you can help:

  • 🐛 Report bugs by opening an issue
  • 💡 Propose new features or improvements
  • 🔧 Submit pull requests
  • 🎨 Improve UI/UX design
  • 🤖 Enhance AI prompt engineering

Please read our Contributing Guidelines before making a pull request.


📄 License

This project is licensed under the MIT License - see the LICENSE file for details.


👏 Acknowledgments

About

TripPlanner: AI‑powered travel planner with a Vite + React + TypeScript frontend, Go backend, and Hugging Face integration.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published