Skip to content

Latest commit

 

History

History
47 lines (33 loc) · 1.76 KB

File metadata and controls

47 lines (33 loc) · 1.76 KB

Diversion 🛤️

Find scenic and interesting routes between two locations by discovering points of interest along alternative paths. Instead of just getting from A to B, find routes that pass by cafes, parks, museums, and other places that match your preferences.

https://diversion.streamlit.app/

Features

  • Smart Route Discovery: Finds alternative routes within your time constraints
  • POI-Based Scoring: Discovers restaurants, parks, museums, and cultural sites along routes
  • AI-Powered Recommendations: Uses OpenAI to explain why each route is interesting
  • Interactive Maps: Visual route comparison with POI markers
  • Customizable Preferences: Weight routes by scenic areas, food, culture, and walkability

Quick Start

Local Development

  1. Install dependencies:

    pip install -r requirements.txt
  2. Set up API keys:

  3. Run the app:

    streamlit run app.py

Streamlit Community Cloud Deployment

For public deployment without exposing your API keys, the app accepts API keys through the UI:

  1. Deploy to Streamlit Community Cloud:

    • Connect your GitHub repository to Streamlit Community Cloud
    • No environment variables needed - users enter their own API keys
  2. User provides keys:

    • Users enter their Google Maps and OpenAI API keys in the sidebar
    • Keys are stored only for the current session
    • No keys are saved or logged

This approach protects your API costs while allowing public deployment.