Inspiration
ShiftSaver was born from witnessing the chaotic ripple effect that occurs when a team member calls out sick. In fast-paced environments, a single "I can't make it" message on Discord usually triggers a frantic, manual scramble for managers to find coverage. We wanted to automate this "panic mode" by turning a simple chat notification into a coordinated, AI-driven action plan.
What it does
ShiftSaver acts as an intelligent bridge between team communication and scheduling.
Monitors Discord: A bot listens for absence reports and identifies when a shift is being dropped.
AI Action Plans: Using the Gemini API, the system analyzes the "messy" text of a call-out to determine the specific shift impacted and generates a priority-based outreach list.
Automates Outreach: It identifies available teammates and can initiate contact to fill the gap, ensuring the floor remains staffed.
Real-time Updates: The system aims to update the master schedule automatically once a replacement is found.
How we built it
We developed an event-driven architecture designed to minimize manual overhead:
Frontend: Built with Next.js for a responsive, modern dashboard.
Intelligence: Integrated the Gemini API to handle natural language understanding and decision-making logic.
Authentication: Leveraged Clerk to manage secure team logins and user profiles.
Communication: Connected a Discord bot to serve as the primary trigger for the automated workflow.
Challenges we ran into
Tech Stack Stability: Finalizing a stack was difficult as we navigated the limits of free tiers. We faced significant hurdles when our initial Supabase implementation failed, forcing us to pivot our data strategy and change tech stacks.
Deployment Hurdles: Configuring Vercel to play nicely with our environment variables and middleware for Clerk and Gemini was a steep learning curve.
Data Extraction: Teaching the AI to distinguish between casual chat and a definitive shift call-out required precise prompt engineering to extract clean data from Discord.
Accomplishments that we're proud of
Cross-Platform Integration: Successfully connecting Discord, an AI engine, and a web dashboard into one cohesive workflow.
Operational Logic: Implementing a "Coverage Deficit" model to mathematically prioritize which shifts need the most urgent attention.
Resilience: Pushing through infrastructure failures and pivoting our tools mid-build to ensure a functional prototype for Devpost.
What we learned
We learned that the "perfect" tech stack on paper often meets reality in the form of deployment errors and billing walls. This project taught us resilience. Specifically how to adapt when a core service like Supabase doesn't meet our needs. We also gained a deep appreciation for how AI can act as a proactive manager rather than just a passive tool.
What's next for ShiftSaver
The next step is to refine the two-way communication loop. We want to build out a feature where a replacement can click a single button in a text or Discord message to "claim" the shift, which would then instantly update the master schedule and notify the manager that the "fire" has been put out.
Built With
- react
- supabase
Log in or sign up for Devpost to join the conversation.