-
Notifications
You must be signed in to change notification settings - Fork 83
Roadmap: Event Automation Pipeline
Zayan Hoodani edited this page Feb 9, 2026
·
7 revisions
There's a lot of existing resources for students, but they're spread out across emails, group chats, and flyers. If this website is to become a unified source of information about events on campus, we have to make announcing events as easy as possible. So, we're creating a pipeline that allows for events to be created from a photo of a flyer or a forwarded email.
Use this outline to track our progress. Sub-features are nested to indicate scope, and ordered by priority.
-
1.1. Infrastructure & Research
- Research & Select OCR Engine (Issue: Research OCR)
-
1.2. Core Logic
- Create Mock OCR Service (for testing)
- Create Date Extraction Utility (Regex)
- Create Location Extraction Utility
-
1.3. UI Integration
- Integrate Camera/Upload on Create Event Page
- Auto-fill form fields from OCR result
-
2.1. Infrastructure & Research
- Research & Select Email Webhook Provider (Issue: Research Email Provider)
- Configure DNS & "Inbound Parse" settings
-
2.2. Webhook Implementation
- Create Basic Webhook API Route (
POST /api/webhooks/email) - Define Email Payload Validation Schema
- Create Basic Webhook API Route (
-
4.1. Database Schema
- Add
recurrence_rulecolumn to Events table
- Add
-
4.2. Logic
- Parse natural language ("every Friday") into recurrence rules
-
5.1. Infrastructure
- Set up AWS S3 for Image Storage (Issue: S3 Client & Upload)
-
5.2. OCR Implementation (Scribe.js)
- Create OCR Helper Function (Issue: Implement Scribe OCR)
- Decision: We are using Scribe.js (Local/Serverless) over Google Cloud Vision to keep costs zero.
-
6.1. AI Integration
- Set up DeepSeek API Client (Issue: DeepSeek Setup)
- Create Prompt Engineering Template (Issue: Define Event Parsing Prompt)
-
6.2. Parsing Logic
- Implement
parseEventFromTextservice (Connects OCR output to DeepSeek) - Map AI JSON response to Database Schema
- Implement
-
7.1. Create Event Page
- Add "Upload Flyer" button to UI
- Auto-fill form fields with data returned from AI