OutDesk
Smart Leave & Task Management Platform for academic institutions
Automate leave approvals and detect burnout with AI
Educational institutions struggle with manual leave approval processes and lack visibility into employee burnout. Paper-based systems lead to delays and data loss, leaving administrators with no way to correlate leave patterns with actual workload or stress levels.
The Solution
OutDesk is a comprehensive platform built with a Flutter mobile app and a high-performance FastAPI backend. It introduces ML-based burnout detection that analyzes leave patterns, task loads, and working hours to proactively alert administrators.
Core Capabilities
- Student/Faculty Leave Requests: Simple leave request submission with an intuitive calendar view.
- Automatic Approvals: Rules-based engine to instantly approve eligible leaves based on predefined criteria.
- Burnout Detection: AI alerts that trigger when patterns indicate potential faculty or student burnout.
- Real-time Updates: Live synchronization across all devices with Firebase push notifications.
Technical Implementation
The backend is built using FastAPI to handle high concurrency during peak request hours (e.g., beginning of the semester).
@app.post("/api/leaves/apply") async def apply_leave(request: LeaveRequest, user: User = Depends(get_current_user)): # 1. Validate rules engine eligibility = rules_engine.check_eligibility(user, request) if not eligibility.is_valid: raise HTTPException(status_code=400, detail=eligibility.reason) # 2. Check auto-approval rules if eligibility.can_auto_approve: leave = await create_approved_leave(user, request) await notify_supervisors(leave) return {"status": "auto_approved", "leave_id": leave.id} # 3. Route to manual approval workflow leave = await create_pending_leave(user, request) return {"status": "pending_approval", "leave_id": leave.id}
Impact
OutDesk is actively used by 5+ institutions, successfully managing over 1000+ leave requests monthly, while keeping API response times under 150ms at the 95th percentile.