How monikasomalaraju/meeting-avoider-ai works
Meeting Avoider AI combines account and meeting management with transcript ingestion, AI-generated meeting knowledge, and reminders. Users schedule and review meetings in the web app, or send transcript text/audio from the Chrome extension; the backend stores transcripts, transcribes audio when needed, generates structured summaries, and provides per-meeting chat and history. Email reminders run in the backend, while browser reminders are handled by the web app and extension. The README documents additional dashboard, calendar, profile, and report capabilities; their detailed wiring is not established by the sampled source.
Main entry points: database.py SQLite database · main.py FastAPI app · popup.js Extension popup · summarization.py Transcript API
Components 22
Web app
- App pages
frontend/pages - Web interactions
frontend/assets/js - Browser reminders
frontend/assets/js/browser-notifications.js
Backend API
- FastAPI app
backend/app/main.py - Signup and login
backend/app/routes/auth.py - Meeting management
backend/app/routes/meeting.py - Profile and stats
backend/app/routes/user.py - Meeting records
backend/app/models/meeting.py - User records
backend/app/models/user.py - SQLite database
backend/app/database.py
Transcript knowledge
- Transcript API
backend/app/routes/summarization.py - AI processing
backend/app/services/ai_summary.py - Transcripts
backend/app/models/transcript.py - Structured summaries
backend/app/models/summary.py
Reminders
- Email reminder scheduler
backend/app/services/reminder_scheduler.py - Email delivery
backend/app/services/email_service.py
Chrome extension
- Extension popup
meeting-avoider-extension/popup.js - Reminder worker
meeting-avoider-extension/background.js
Other components
- Visitor / user
- SMTP service
- Groq AI API
- Active browser tab
Connections 31
- Visitor / user → App pages: opens pages
- App pages → Web interactions: loads interactions
- Web interactions → FastAPI app: calls API
- FastAPI app → Signup and login: dispatches auth
- FastAPI app → Meeting management: dispatches meetings
- FastAPI app → Profile and stats: dispatches profiles
- FastAPI app → Transcript API: dispatches summaries
- Signup and login → SQLite database: reads/writes users
- Meeting management → SQLite database: reads/writes meetings
- Profile and stats → SQLite database: reads/writes accounts
- Transcript API → AI processing: requests AI work
- Transcript API → SQLite database: reads/writes records
- Transcript API → Meeting records: links meetings
- AI processing → Groq AI API: transcribes / generates
- SQLite database → Transcripts: stores
- SQLite database → Structured summaries: stores
- SQLite database → Meeting records: stores
- SQLite database → User records: stores
- FastAPI app → Email reminder scheduler: starts loop
- Email reminder scheduler → SQLite database: checks meetings
- Email reminder scheduler → Email delivery: sends reminder
- Email delivery → SMTP service: sends email
- Web interactions → Browser reminders: requests reminders
- Browser reminders → Meeting management: polls meetings
- Visitor / user → Extension popup: uses extension
- Extension popup → Signup and login: logs in
- Extension popup → Active browser tab: captures transcript
- Extension popup → Transcript API: uploads transcript/audio
- Extension popup → Reminder worker: syncs reminders
- Reminder worker → Meeting management: fetches meetings
- Reminder worker → Active browser tab: opens meeting link