Inspiration
We've all been there, juggling multiple syllabi, assignment sheets, course schedules, frantically searching through PDFs to find that one deadline we know we're forgetting. The inspiration for Ask Ethan came from a simple but universal student frustration: deadline chaos. We realized that while professors provide all the information we need, it's scattered across countless documents in different formats. We wanted to create a solution that would let students upload their course materials once and automatically have a unified, organized calendar of every single deadline.
What it does
Ask Ethan is an AI-powered deadline management system that transforms chaos into clarity. Students drag and drop their syllabi, assignment sheets, or course schedules (PDFs, Word docs, images), and Ethan our AI assistant, extracts course information, assignments, due dates, weights, and descriptions from the documents. The website organizes assignments, exams, etc, by date in a unified calendar interface. Ethan also breaks them down into small tasks to complete, making the assignments or exams more manageable and making sure that the user completes them or prepares for them on time. Everything appears in one clean interface where students can track progress, mark items complete, and never miss a deadline again. Still a little bit lost in all those tasks? Click on Ethan and he'll tell you what your tasks are for the day, week or semester.
How we built it
Tech Stack:
- Frontend: SvelteKit with a modern, gradient-heavy design system
- Backend: Node.js with SvelteKit server routes
- Database: MongoDB with Mongoose for flexible schema management
- AI: Google Gemini 2.5 Flash for document parsing and extraction
- PDF Processing: PDF.js for text extraction
- Authentication: Auth0 for secure user authentication
- Voice Generation: ElevenLabs to give a voice to Ethan
Architecture: We built two distinct AI pipelines:
- Syllabus Mode: Uses a comprehensive prompt to extract semester info, multiple courses, and all assignments with validation via Zod schemas
- Assignment Mode: Uses a specialized prompt to parse individual assignments and generate task breakdowns with time estimates
Challenges we ran into
AI Consistency: Getting Gemini to return structured JSON reliably was harder than expected. We had to implement robust parsing that handles markdown code blocks, varying response formats, and extraction failures gracefully.
Context Switching: Balancing two different AI modes (syllabus vs. assignment) while maintaining clean code architecture required careful separation of concerns.
Date Handling: Dealing with date formats across PDF extraction, AI parsing, ISO strings, and MongoDB timestamps created numerous edge cases we had to handle.
PDF Text Extraction: Not all PDFs are created equal—some have complex layouts, images embedded as text, or unusual formatting that made extraction tricky.
Relational Data: Maintaining proper foreign key relationships across our document-based MongoDB schema (semesters → courses → syllabi → assignments → tasks) while keeping queries efficient.
Accomplishments that we're proud of
We're proud that our AI successfully extracts deadlines from real syllabi with impressive accuracy. We built a UI with smooth animations and an engaging user experience that makes deadline management feel less like a chore. Our dual-mode intelligence system supports both bulk syllabus uploads and detailed assignment breakdowns, giving users flexibility in how they interact with the app. The system handles edge cases with smart defaults like auto-generating semesters when not provided and handling missing data. We shipped a complete feature set from upload to task tracking, creating a fully functional product rather than just a demo. We are also proud that we designed a clean database architecture that maintains proper relationships across semesters, courses, syllabi, assignments, and tasks while keeping everything efficient and scalable.
What we learned
We discovered that small changes in AI prompting can dramatically affect output quality and consistency, requiring careful iteration to get reliable results. We learned that user experience matters deeply; the prettiest upload animations mean nothing if the core extraction fails, teaching us to balance visual polish with technical reliability. Implementing Zod for schema validation proved invaluable, catching countless edge cases in AI outputs before they became bugs and saving us hours of debugging. SvelteKit's powerful approach to server routes and reactivity made building this application much faster than we expected, demonstrating how the right framework can accelerate development. Finally, we learned how to use MongoDB for document databases, allowing us to iterate quickly.
What's next for Ask Ethan
Calendar Integration: Export to Google Calendar, Outlook, or Apple Calendar
Smart Notifications: Set reminders based on assignment weight, estimated time, and deadline proximity
Performance Analytics: Track completion rates, time accuracy, identify patterns in workload
Mobile App: Native iOS/Android apps for on-the-go deadline checking
Back to Back Conversations: Being able to talk to Ethan and ask him questions like "What's due this week?" or "Show me all my CS assignments"
Built With
- elevenlabs
- gemini
- javascript
- mongodb
- python
- sveltkit

Log in or sign up for Devpost to join the conversation.