SideQuest OC ๐Ÿ†

First Place Overall & Community Track Winner @ Laserhacks 2026

SideQuest OC is a location-based mobile app that transforms your city into a game world. By combining real-time geolocation with Gemini 2.5 Flash, the app generates context-aware missions based on your surroundings and character persona.

๐ŸŒŸ Key Features

  • Gemini 2.5 Flash Game Master: Powers a high-speed engine that generates epic, narrative-driven missions in under 10 seconds.
  • Persona-Driven Gameplay: Quests are tailored to four distinct classesโ€”Adventurer, Chill Explorer, Social Seeker, and Solo Thinkerโ€”each with unique quest vibes and mission types.
  • AI Vision Verification: Uses Gemini Vision to act as an automated referee, analyzing uploaded photos to verify quest completion while maintaining a "generous" acceptance policy for selfies and landmarks.
  • Intelligent POI Discovery: A custom utility that translates vague user "intents" (like "a scenic viewpoint") into concrete Google Places data.
  • Live Community Feed: A real-time record of completed quests, including proof photos, XP rewards, and global leaderboards.

๐Ÿ› ๏ธ Technical Stack

Backend

  • Core: FastAPI (Python).
  • AI Integration: LangChain Google GenAI (utilizing Gemini 2.5 Flash).
  • Database: SQLAlchemy with SQLite for managing users, levels, and quest history.
  • External APIs: Google Maps Services (Places API) for location intelligence.

Frontend

  • Framework: React + Vite.
  • Styling: Tailwind CSS with a "Cartoon-Style" custom UI.
  • Location: Browser Geolocation API for real-time tracking and "Radar" sweeping.

๐Ÿ—๏ธ How It Works

The system operates through a specialized "Engine" that manages two primary AI pipelines:

  1. Quest Generation: The engine uses a SideQuest Pydantic schema to force Gemini into returning structured JSON. It injects your current location data and character persona into a system prompt to ensure the mission feels local and "in-character".
  2. Multimodal Verification: When you upload a photo, the app sends the image and the quest context to Gemini. It uses a specific "ACCEPT/REJECT" logic to determine if the photo reasonably represents the completion of the task.

๐Ÿš€ Setup & Installation

  1. Environment: Create a .env file in the root with:

    • VITE_GEMINI_API_KEY
    • VITE_GOOGLE_MAPS_API_KEY
  2. Backend:

    pip install -r requirements.txt
    python main.py
    
  3. Frontend:

    cd my-react-app
    npm install
    npm run dev
    

๐Ÿ† Hackathon Credits

Built for Laserhacks 2026 and winning 1st place overall along with the community track out of 80+ participants. SideQuest OC was recognized for its technical polish, creative use of the new Gemini 2.5 Flash model, and its ability to turn mundane locations into community-driven adventures.

Share this project:

Updates