Inspiration
Modern inboxes mix critical alerts with routine messages. Important requests often get delayed simply because users must mentally triage every email. This project was inspired by the need to reduce that cognitive load while keeping humans in control of final decisions.
What it does
Email Decision Assistant analyzes an email’s subject and body and returns:
- An urgency level (URGENT / IMPORTANT / IGNORE)
- A short explanation of why
- A suggested next action
The user must explicitly approve the recommendation before the task is marked as completed, ensuring a human-in-the-loop workflow.
How we built it
The frontend is a single-page React app built with Vite. It presents a simple inbox layout with hardcoded sample emails and a clean analysis panel.
The backend is a Node.js + Express server that exposes a /analyze API endpoint. This endpoint integrates Google Gemini to generate a structured JSON response. A fallback response is implemented so the app remains fully functional even if the AI service is unavailable.
Challenges we ran into
The main challenge was ensuring consistent, structured AI output suitable for UI rendering. This was solved by enforcing a strict prompt format and adding robust fallback handling to guarantee reliability during demos.
What we learned
We learned how to integrate LLMs into a full-stack application, handle AI failure modes gracefully, and design a human-approval workflow that balances automation with control.
Log in or sign up for Devpost to join the conversation.