About the Project

Inspiration
Coordinating study sessions with friends was always messy — too many group chats, doodle polls, and last-minute changes. We wanted something where you could just say out loud “find us 2 hours tomorrow after 3pm” and instantly get a booked time that works for everyone.

What We Learned
We learned how to design a full-stack scheduling system on a tight timeline, handle natural language parsing for time constraints, and integrate with AWS DynamoDB for reliable, serverless persistence. We also gained experience connecting multiple APIs (voice, LLM, Google Calendar) into a single streamlined workflow.

How We Built It

  • Frontend: Next.js 14 (App Router) + TypeScript + Tailwind for a fast, clean UI.
  • Backend: API routes in Next.js backed by AWS DynamoDB, storing groups, members, and calendar events.
  • Scheduling: Custom overlap algorithm that merges busy intervals across members, inverts to free time, and suggests the top available slots.
  • Parsing: Regex fallback to convert transcripts into constraints, with hooks ready to swap in Groq LLM for richer understanding.
  • Integrations: Designed for VAPI (voice → text) and Google Calendar (push events directly to members’ calendars).

Challenges

  • Modeling flexible calendar data in DynamoDB and ensuring queries stayed fast.
  • Getting natural language like “tomorrow evening” to map cleanly into hours and dates.
  • Handling time zones and making results feel intuitive across different members.
  • Balancing hackathon speed with production-ready extensibility.
Share this project:

Updates