Challenge
Important events and dates buried in emails were being missed. Manually scanning emails daily and adding calendar entries was time-consuming and error-prone. Early automation created too many false positives from newsletters and marketing emails.
📅 Solution
Built an automated workflow that intelligently scans emails and creates Google Calendar events:
- Service account authentication (no re-authorization needed)
- Smart filtering with EVENT_KEYWORDS and NON_EVENT_KEYWORDS arrays
- Scans gmail.com inbox
- Extracts dates from email text using natural language processing
- Creates calendar events automatically with duplicate detection
- Scheduled to run daily at 12:01 AM via cron job
- Cleanup script removed 150+ unhelpful "Event from email" entries
Tech Stack: Node.js, Google Calendar API, Google Gmail API
Status
⚡ **Active & Running Daily**
- Successfully processing emails nightly
- Smart filters prevent newsletter false positives
- Service account auth stable and reliable
Next Steps
- [x] Monitor for false positives/negatives
- [ ] Optional: Add email summary reports of events created
- [ ] Optional: Support for recurring events
- [ ] Optional: Calendar category/color coding by email source
- [ ] Future: Web dashboard to review/approve events before creation