Extracta
Finds what you’d miss..
Submitted for Hack Day 2026 by MLH and Foss Club CEV.
💡 Inspiration
We've all been there: The class WhatsApp group is spamming 500 messages an hour. buried somewhere in those Good Morning stickers and random chatter is a critical assignment deadline or a registration link for a hackathon. Extracta was born from the frustration of missing out simply because important information got lost in the noise.
🚀 What it does
Extracta is an intelligent Android application that silently listens to your WhatsApp notifications and uses Advanced AI (Google Gemini) to separate the signal from the noise.
When a message comes in, Extracta:
- Analyzes the content in real-time.
- Detects if it's an Event, Assignment, Exam, Hackathon, or Deadline.
- Extracts key details: Title, Description, Venue, Date, Time, and Registration Links.
- Prioritizes based on urgency (Critical, High, Medium, Low).
- Organizes everything into a clean, clutter-free dashboard.
✨ Key Features
- 🤖 AI-Powered Extraction: Uses Gemini 2.5 Flash Lite to understand context, slang, and informal text patterns often found in student groups.
- 🏷️ Smart Categorization: Automatically tags messages as
Assignment,Exam,Hackathon,Workshop, etc. - 🚨 Intelligent Priority: Flags deadlines as 'Critical' if they are within 24 hours.
- 🔗 One-Tap Action: Detected registration links and meeting URLs are extracted for one-tap access.
- ⏰ Reminder System: Set reminders for assignments and exams directly from the extracted event card.
- 🧹 Swipe to Dismiss: Easily clean up your feed when tasks are done.
- 🔒 Privacy Focused: Runs on your device's notification listener; we only process text when necessary.
📱 Screenshots
| Analyzed Events | Categories & Filtering | Dark Mode Support |
|---|---|---|
| (Place screenshot here) | (Place screenshot here) | (Place screenshot here) |
🛠️ Tech Stack
- Language: Kotlin
- UI Framework: Jetpack Compose (Material 3 Design)
- AI Engine: Google Gemini API (2.5-flash-lite)
- Architecture: MVVM (Model-View-ViewModel)
- Local Database: Room Database (SQLite)
- Background Services: Android NotificationListenerService
- Async Processing: Kotlin Coroutines & Flow
⚙️ How to Run
- Clone the Repository
bash git clone https://github.com/yourusername/Extracta.git - Open in Android Studio
- Ensure you have the latest version of Android Studio (Koala or later recommended).
- Configure API Key
- Get a key from Google AI Studio.
- Open
GeminiAnalysisService.ktand add your key (or set it up inlocal.properties).
- Build & Run
- Connect your Android device or use an emulator.
- Run the app.
- Permissions
- The app will ask for Notification Access. This is required to read WhatsApp messages.
- Grant the permission in system settings when prompted.
🧠 The AI Model
We utilize the gemini-2.5-flash-lite model for its balance of speed and accuracy. The prompt engineering focuses on extracting structured JSON data from unstructured chat messages, handling various date formats and handling "Hinglish" or informal language often used in college groups.
🔮 Future Roadmap
- [ ] Google Calendar Sync: Automatically add extracted events to your calendar.
- [ ] Canvas/Classroom Integration: Cross-reference with LMS.
- [ ] Group-Specific Rules: Ignore the "Family" group, prioritize "Class Rep".
👥 Team
- Sourabh - Lead Developer & AI Integration
- [Teammate Name] - UI/UX Designer
- [Teammate Name] - Backend/Logic
Built with ❤️ for Hack Day 2026
Log in or sign up for Devpost to join the conversation.