A Streamlit-based intelligent email assistant that connects to your Gmail inbox, fetches emails, and uses AI to summarize them โ highlighting key insights, tone, actions, and priorities.
โจ Built for productivity. Read less, act faster.
๐ Live Demo | ๐ Documentation | ๐ Report Bug
- Extracts key insights from each email using LLM summarization
- Highlights important actions, tone, and priority levels
- Categorizes emails automatically for better organization
- Filter by date range and read/unread status
- Limit the number of emails fetched
- Customizable search criteria
- Uses App Passwords for authentication (IMAP)
- Your credentials are never stored
- Session-based security
- Step-by-step guided interface:
- Connect to Gmail
- Choose filters
- Fetch & summarize
- View insights instantly
- Intuitive design with responsive layout
๐ฏ Live Application: https://email-pro.streamlit.app/
No installation required - just visit the link and start using the app!
| Component | Description |
|---|---|
| Frontend/UI | Streamlit |
| Backend Logic | Python 3.x |
| Email Fetching | IMAP via imaplib |
| Parsing | Python email library |
| Summarization | Custom LLM-based summarizer |
| Logging | logging module for debugging |
๐ง email-assistant/
โโโ app.py # Main Streamlit app
โโโ summarizer.py # AI summarization logic
โโโ utils.py # Helper utilities (cleaning, parsing, etc.)
โโโ gmail_connect_ui.py # Gmail login UI
โโโ fetch_settings_ui.py # Fetch filter settings
โโโ display_emails_ui.py # UI to show summarized emails
โโโ requirements.txt # Dependencies
โโโ email_app.log # (Generated) App logs
โโโ README.md # You're here!
- Login โ Connect using your Gmail credentials (App Password)
- Filter โ Choose your fetch range, unread filter, and count
- Fetch โ The app retrieves emails via IMAP
- Summarize โ Each email's content is analyzed and summarized using AI
- Display โ Summaries with actions, tone, and priority appear beautifully in Streamlit
git clone https://github.com/yourusername/email-assistant.git
cd email-assistantpython -m venv venv
source venv/bin/activate # (macOS/Linux)
venv\Scripts\activate # (Windows)pip install -r requirements.txtCreate a .env file for API keys if using external LLM services:
OPENAI_API_KEY=your_api_key_here
# or other LLM provider credentialsstreamlit run app.pyThe app will open in your browser at http://localhost:8501
-
Enable IMAP in your Gmail settings:
- Go to Settings โ See all settings โ Forwarding and POP/IMAP
- Enable IMAP access
-
Create an App Password:
- Go to Google Account Security
- Navigate to Security โ 2-Step Verification โ App passwords
- Generate a new app password for "Mail"
-
Use the App Password (not your Gmail login password) in the app
โก Reminder: SDE2- UI at Increff
๐ข Normal Priority
From: Voila - your professional assistant <voila@alerts.cutshort.io>
Date: Oct 27, 2025
๐ Summary:
Ariba Khan invited Sapna Khatik to apply for the SDE II - UI role at Increff.
The email encourages Sapna to respond or track the application via links.
๐ฌ Tone: Neutral
๐ Category: action_required
โ
Suggested Actions:
- Apply for the role
- Review similar job alerts
You can easily extend the functionality:
summarizer.pyโ Replace or upgrade the LLM summarization modeldisplay_emails_ui.pyโ Add pagination, filters, or search functionalityutils.pyโ Enhance content extraction or cleaning logic
- โ Add OAuth-based Gmail login
- ๐ Export summaries to CSV/PDF
- ๐งพ Smart daily digest email summaries
- ๐ง Multi-account or team dashboard view
- ๐ Advanced search and filtering options
- ๐ฑ Mobile-responsive design improvements
- ๐ค Integration with other email providers (Outlook, Yahoo)
Pull requests are welcome! If you'd like to add features or fix bugs:
- Fork the repo
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Submit a PR with clear description
MIT License ยฉ 2025 โ Developed by Sapna Singh Khatik
If you encounter any issues or have questions:
- Open an issue on GitHub
- Check the logs in
email_app.log - Review Gmail IMAP settings
โญ If you find this project helpful, please consider giving it a star!