Inspiration
After graduating high school, our friend group scattered across different universities, cities, and schedules. While we all still cared about each other, staying in touch became harder than expected. Group chats slowly went quiet, social media felt performative, and catching up started to feel like a task rather than something natural.
We wanted a way to keep up with each other’s lives that felt authentic, personal, and low-effort; something closer to a real conversation than a text thread or curated post. That idea became Waffle.
What it does
Waffle allows users to create or join private groups with their friends and share short, 1–2 minute video life updates (vlogs). Instead of typing messages, users communicate through voice and face, making updates feel more human and meaningful.
To help users stay connected without feeling overwhelmed, Waffle also generates AI-powered weekly or monthly recaps that summarize group updates into themes, so no one feels left behind even if they miss a few posts.
How we built it
We built Waffle with a React Native (Expo) frontend and a TypeScript-based backend, allowing us to move quickly while keeping the system scalable and maintainable.
For video uploads and playback, we used unsigned URLs to securely store and fetch user vlogs without routing large media files directly through our backend. This kept uploads fast and reduced server overhead. We used FFmpeg to process videos, extract audio, and prepare media for transcription and recap generation.
On the backend, we integrated Gemini to handle multiple AI-driven features. Video transcripts are generated and passed into Gemini to create themed summaries and weekly/monthly recaps for each group. We also used Gemini to generate guided vlog prompts, helping users focus their updates and reduce the friction of knowing what to say.
Overall, our architecture separates media handling, AI processing, and user experience, allowing Waffle to remain lightweight while still delivering meaningful, human-centered features.
Challenges we ran into
One of the biggest technical challenges we faced was figuring out how to reliably transcribe short-form video vlogs. Since Waffle is built entirely around video updates, transcription was essential for generating accurate AI summaries and recaps. This required coordinating video processing, audio extraction, and AI integration while ensuring the results were fast and reliable enough for a smooth user experience.
Another major challenge was dividing up the work effectively within a very short timeframe. With frontend, backend, AI integration, and design all happening in parallel, we had to quickly identify clear ownership areas while still coordinating closely to avoid blocking each other. Learning how to break the product into independent pieces and trust each other to execute was critical to staying productive throughout the hackathon.
Balancing technical complexity with time constraints pushed us to prioritize ruthlessly and focus only on features that supported our core vision.
Accomplishments that we're proud of
- Building a fully functional end-to-end product within a short timeframe
- Designing a unique interaction model focused entirely on video, not text
- Creating AI recaps that actually feel useful instead of overwhelming
- Maintaining a strong product vision centered on warmth, privacy, and authenticity
What we learned
We learned how powerful constraints can be in product design. Limiting interactions to short, video-only updates made communication feel more intentional and authentic, rather than overwhelming or performative.
On the technical side, we gained hands-on experience integrating multiple AI services, handling asynchronous workflows, and designing a mobile-first application that prioritizes emotional user experience over feature complexity.
Just as importantly, we learned the value of effective collaboration under time pressure. Splitting up work clearly helped us avoid merge conflicts and allowed everyone to stay productive, while consistent communication was essential when it came time to integrate frontend, backend, and AI components into a single, cohesive product.
Overall, this project reinforced the importance of building something people want to return to, not something that constantly demands attention.
What's next for Waffle
- Refine Waffle into a fully polished mobile-first app with improved accessibility and onboarding
- Improve monthly AI recaps with better theme extraction and more meaningful summaries -Improve the UI/UX Design
Built With
- bcrypt
- cloud-functions
- expo-sdk
- express.js
- gemini-api
- google-cloud
- javascript
- mongodb
- node.js
- react-native
- speech-to-text-api
- typescript
Log in or sign up for Devpost to join the conversation.