Convert posters and flyers into ready-to-use calendar events using AI (Gemini), with options to download .ics files or add events directly to Google Calendar.
This app was built with Streamlit + Gemini API + Python.
- 🧠 AI Event Extraction from flyer images
- 📸 Upload up to 5 flyers at once
- ✏️ Edit extracted event details before exporting
- 📥 Download individual or merged .ics files
- 🌐 Directly add events to Google Calendar (one or all events)
- 🗑️ Remove individual events or clear all
- ⚡ Fast, clean UI with streamlined workflow
flyer2calendar/
│
├── app.py
├── requirements.txt
├── README.md
│
├── backend/
│ ├── extraction.py
│ ├── calendar_utils.py
│ └── __init__.py
│
├── posters/ # sample flyers (optional)
git clone https://github.com/YOUR_USERNAME/flyer2calendar.git
cd flyer2calendarpython3 -m venv venv
source venv/bin/activate # Mac/Linux
venv\Scripts\activate # Windowspip install -r requirements.txtCreate a .env file in the project root:
GEMINI_API_KEY=your_api_key_here
Each user provides their own Gemini API key — your repo stays safe.
streamlit run app.pyThe app will open at:
- Local: http://localhost:8501
- Network: http://:8501
- Upload 1–5 flyer images
- Gemini extracts event info
- You review/edit the results
- Choose:
- Download .ics
- Add to Google Calendar
- Add ALL to Google Calendar
- Done!
See requirements.txt:
streamlit
python-dotenv
Pillow
google-generativeai
Pull requests are welcome!
If you'd like to improve extraction accuracy or UI, feel free to open an issue.
Enjoy using Flyer2Calendar!
For issues or ideas, reach out anytime.