Inspiration

We were inspired by the gap between tools that show you who is absent versus tools that tell you what to do about it. Notion, Asana, and Linear are great for task management — but none of them proactively handle coverage planning. We wanted to build the missing layer: an intelligent operations platform that collapses hours of manual coordination into a single click.

What We Built

Coverly is an AI-powered team coverage and task management platform. When a team member goes out of the office, Coverly automatically identifies at-risk tasks, analyzes the team's workload and skill set, and generates intelligent reassignment recommendations - complete with AI-written handoff docs so nothing gets lost in the transition.

How we built it

Coverly was built as a full-stack web application over 24 hours using a modern, real-time tech stack:

Layer Technology
Frontend Next.js 14 (App Router) + TypeScript
Styling Tailwind CSS + shadcn/ui
Auth Clerk
Database Convex (real-time backend)
AI OpenAI GPT-4o
Calendar ICS file parsing via ical.js

We also used Stitch with Google for Frontend and UI design, but we didn't have enough time to implement that in our actual codebase but kept images of our ideas of what we planned out.

Challenges we ran into

  1. Clerk + Convex JWT Authentication The biggest technical hurdle was getting Clerk's JWT tokens to pass correctly to Convex for server-side identity verification. ctx.auth.getUserIdentity() was returning null despite the JWT template being correctly configured. The fix required hardcoding the issuer domain directly in auth.config.ts rather than using an environment variable, which doesn't resolve at Convex build time.

  2. Real-time Data Consistency With multiple users updating availability and tasks simultaneously, ensuring the heatmap and task board stayed consistent required careful query design in Convex. We had to scope all queries to the user's activeOrgId and handle the migration from a single orgId field to an orgIds array without breaking existing documents.

  3. ICS Recurring Events Calendar files from universities and workplaces often use RRULE for recurring events. Our initial parser only handled single events, missing weekly recurring blocks entirely. We used the ical.js RecurExpansion API to expand recurring rules into individual date entries for the next 30 days.

  4. AI Response Reliability Getting GPT-4o to consistently return valid structured JSON required careful prompt engineering — explicitly forbidding markdown fences, specifying the exact schema, and using response_format: { type: "json_object" }. We also added silent fallbacks for hallucinated IDs rather than crashing the whole suggestion flow.

Accomplishments that we're proud of

What we learned

  • Convex's real-time reactivity is genuinely magical for collaborative tools — you get live updates for free without WebSocket boilerplate
  • Prompt engineering for structured outputs is as important as the model choice — a well-designed prompt beats a bigger model
  • ICS calendar parsing is surprisingly complex due to recurring event rules, timezones, and all-day event formats
  • Building an approval workflow (request → review → approve/reject) adds significant trust and accountability to AI-powered automation

What's next for Coverly - AI-Powered Team Coverage & Task Reassignment

What's Next

Coverly is just getting started. The most natural next step is direct Google Calendar OAuth integration, which would eliminate the manual .ics export step entirely - members would simply connect their calendar once and availability would sync automatically in the background. Alongside that, we want to add email notifications via Resend so team members are alerted the moment a task is reassigned to them, complete with the AI-generated handoff doc attached directly to the email.

On the analytics side, we're excited to build a team performance dashboard that tracks patterns over time - who is consistently overloaded, which projects generate the most reassignments, and how quickly the team recovers from OOO events. This data would make Coverly not just a reactive tool but a proactive planning resource That helps managers staff projects better from the start. Longer term, we see Coverly expanding into Slack and Microsoft Teams as a native integration, so coverage alerts and AI suggestions surface directly in the tools teams already live in. A mobile app would let members set their availability on the go, and enterprise features like SSO, audit logs, and custom approval workflows would make Coverly viable for larger organizations managing hundreds of people across multiple teams.

Built With

Share this project:

Updates