Project Info
Inspiration
We often find ourselves hunched over our laptops and looking at the screen for a little too long, barely moving for hours. Long periods of sitting are proven to cause stiffness, fatigue and poor posture. But realistically, who's going to bust out a full yoga post at their desk at work/school? That's where desk exercises, or Deskercises, come in.
What it does
Users can schedule stretch breaks through their Google calendar or follow a Pomodoro-style workflow. At each break, the app guides them through quick, desk-friendly stretches using real-time pose detection to track accuracy and completion. With voice coaching and feedback powered by LLM, Deskercise makes micro-movement fun and engaging. Users earn points for completing stretches correctly, turning breaks into a gamified wellness routine that fits seamlessly into their day.
How we built it
We built Deskercise using a set of AI-powered and web technologies to deliver a seamless, interactive experience: ReactJS – Built the responsive frontend and UI flow for desktop stretch sessions. Google MediaPipe – Enabled real-time pose detection via webcam to track and validate stretch accuracy. Gemini 2.5 Flash – Used to interpret posture data and generate personalized stretch break recommendations based on user's Google Calendar for the day Vapi – Voice-guided coaching system that delivers real-time instructions and motivational feedback. Google Cloud – Integrated calendar functionality to schedule or sync stretch breaks with the user’s daily workflow. Potentials of Deskercise Deskercise has strong applications in both B2B and B2C markets — bringing smart, desk-friendly movement to a wide range of users who spend long hours seated. 🚀 Use Cases 🏢 Corporate Employee Wellness Initiatives: Offer Deskercise as a workplace wellness tool to promote better posture, energy, and productivity across teams. 🏢 Corporate Employee Wellness Initiatives: Offer Deskercise as a workplace wellness tool to promote better posture, energy, and productivity across teams. ☎️ Call Centers: Help agents combat sedentary fatigue with light, guided stretches during shift breaks — no need to leave their desks. ☎️ Call Centers: Help agents combat sedentary fatigue with light, guided stretches during shift breaks — no need to leave their desks. 🕹️ Gaming Communities : Encourage streamers and gamers to take short, guided breaks to reduce strain and stay alert during long play sessions. 🕹️ Gaming Communities : Encourage streamers and gamers to take short, guided breaks to reduce strain and stay alert during long play sessions. 📚 Study Spaces: Support students during intense study periods with low-effort movement prompts that boost focus and reduce stiffness. 📚 Study Spaces: Support students during intense study periods with low-effort movement prompts that boost focus and reduce stiffness. 💻 Remote Workers / Freelancers: Give home-based professionals the tools to stay active and mindful of their health, right from their workspace. 💻 Remote Workers / Freelancers: Give home-based professionals the tools to stay active and mindful of their health, right from their workspace.
🏃♂️ Deskercise.AI
Your AI-Powered Desk Wellness Companion
🔗 View on DevPost | 📊 Presentation
🎯 The Problem
3AM at hackathons. Endless office hours. Study marathons.
Millions of people spend hours glued to screens, developing "tech neck," stiffness, and fatigue. Traditional solutions? Awkward yoga poses in public spaces or forgetting to stretch entirely.
💡 Our Solution
Deskercise.AI transforms your workspace into a wellness station with AI-powered stretch coaching that actually works for real environments.
"Hour 28 of our hackathon — the rest of the venue looked like a caffeine-fueled zombie apocalypse. Meanwhile, our team was doing shoulder rolls guided by our own AI coach every Pomodoro break. While others crashed at 3AM, we were still sharp, energized, and coding clean. We didn't just build Deskercise; we lived it, and it literally saved our hackathon."
-- The Deskercise.AI Team, UC Berkeley AI Hackathon 2025
🚀 Key Features
🍅 Smart Break Management
- Pomodoro timer with intelligent stretch recommendations
- Automatic session tracking and analytics
- Calendar integration for meeting break reminders
🤖 AI Stretch Coach
- Real-time pose detection using MediaPipe
- Voice-powered guidance with conversational AI
- Live form correction and personalized feedback
- Progress tracking with XP and streaks
🎯 Desk-Friendly Design
- Exercises designed for office/study environments
- No awkward poses or equipment needed
- Webcam-based monitoring with privacy-first approach
🛠️ Tech Stack
| Component | Technology | Purpose |
|---|---|---|
| Frontend | React + Ant Design | User interface |
| Computer Vision | MediaPipe Pose | Real-time pose detection |
| AI Coach | Vapi + Gemini | Conversational guidance |
| Multi-Agent | Unify | Coming Soon... |
⚡ Quick Start
# Clone and install
git clone https://github.com/yourusername/deskercise.git
cd deskercise
npm install
# Set up environment variables
cp sample.env .env
# Edit .env with your actual API keys (see API Setup section below)
# Start development server
npm start
Requirements:
- Node.js 14+
- Modern browser with webcam
- API keys for Google Calendar, Gemini AI, and Vapi Voice AI
🔑 API Setup
Deskercise requires several API keys to function properly. Follow these steps to get your keys:
1. Google APIs (Calendar & OAuth)
- Go to Google Cloud Console
- Create a new project or select existing one
- Enable the following APIs:
- Google Calendar API
- Google+ API
- Create OAuth 2.0 credentials for
REACT_APP_GOOGLE_CLIENT_ID - Create API key for
REACT_APP_GOOGLE_API_KEY
2. Google Gemini AI
- Visit Google AI Studio
- Create a new API key
- Add it as
REACT_APP_GEMINI_API_KEY
3. Vapi Voice AI
- Sign up at Vapi.ai
- Create a new assistant
- Get your API key and assistant ID
- Add them as
REACT_APP_VAPI_API_KEYandREACT_APP_VAPI_ASSISTANT_ID
Environment Variables
Copy sample.env to .env and replace the placeholder values:
cp sample.env .env
Then edit .env with your actual API keys:
REACT_APP_GOOGLE_CLIENT_ID=your_actual_google_client_id
REACT_APP_GOOGLE_API_KEY=your_actual_google_api_key
REACT_APP_GEMINI_API_KEY=your_actual_gemini_api_key
REACT_APP_VAPI_API_KEY=your_actual_vapi_api_key
REACT_APP_VAPI_ASSISTANT_ID=your_actual_vapi_assistant_id
Note: Never commit your .env file to version control. It's already included in .gitignore.
🎮 How It Works
- Set Your Focus Time - Start a Pomodoro session
- Get Smart Reminders - AI suggests stretch breaks at optimal times
- Follow AI Guidance - Voice coach walks you through exercises
- Perfect Your Form - Real-time pose analysis ensures proper technique
- Track Progress - Build streaks and improve your wellness metrics
🧠 AI Architecture
MediaPipe Pose → Pose Analysis → Unify Coordinator
↓ ↓
Webcam Feed ←→ Real-time Feedback ←→ Vapi Voice Coach
↓
Gemini LLM (Context)
Smart Agents:
- HoldTrackerAgent: Monitors pose duration and quality
- FeedbackAgent: Generates contextual improvement suggestions
- VoiceCoachAgent: Provides natural language guidance
- XPTrackerAgent: Gamifies progress with streaks and achievements
- PlannerAgent: Selects optimal exercises based on user history
👥 Meet The Team
🌟 Market Impact
Corporate Wellness
- Reduce healthcare costs from repetitive strain injuries
- Boost employee productivity and satisfaction
- Seamless integration with existing workflows
Educational Institutions
- Combat "Zoom fatigue" in remote learning
- Promote healthy study habits
- Scalable solution for student wellness programs
Individual Users
- Prevent long-term posture-related health issues
- Gamified approach increases engagement
- Privacy-focused design builds trust
🚀 Future Roadmap
🤖 AI Enhancements
- Multilingual voice coaching with cultural adaptation
- Predictive wellness analytics to prevent strain before it occurs
- Eye tracking integration for comprehensive fatigue detection
- Smart calendar analysis for optimal break scheduling
- Advanced pose tracking analysis for better tracking.
- More Real-time AI coach assistance with dynamic workout adjustments
📱 Platform Expansion
- Mobile companion app
- Team challenges and corporate dashboards
- Wearable device integration
- VR/AR stretch environments
🏆 Awards & Recognition
🥇 CalHacks AI 2025 - Best AI Tool
Built in 36 hours, Deskercise represents the future of workplace wellness through intelligent, accessible, and engaging technology.
📞 Get Involved
Ready to transform workplace wellness?
- 🌐 Demo: DevPost Submission
- 📧 Contact: Connect with our team on LinkedIn
- 🤝 Partnerships: Open to corporate pilots and educational collaborations
Made with ❤️ for a healthier digital world
Because your wellbeing shouldn't wait for the weekend
Analysis
View
Metric
- 18
- 2
Figures cover GitHub contributors during the hackathon window. A co-authored commit counts in full for each author, so per-member totals add up to more than the whole-team figures.
Technology
- CSSIn code
- HTMLIn code
- JavaScriptIn code
- ReactIn code
- Google GeminiClaimed
4 of 5 appear in the indexed code. 1 claimed on Devpost could not be matched to code, which may simply mean the tool leaves no trace in the repository.
AI coding agents
No AI coding agent signals were found in this repository.
Detected from committed agent config files and commit authorship. Absence of a signal is not proof an agent was unused.
Codebase size
Source size
240 KB
Source files
50
Counts recognized source files only; vendored directories, binaries and lockfiles are excluded, so this is smaller than the repository on disk.
Repository
rappleit/Deskercise
66 files · 9.4 MB · @ c84588a
Structure
Interface
26 files · 39%Screens, components and styles rendered to the user.
Application logic
14 files · 21%Domain rules, services and shared utilities.
Supporting
Layers are inferred from where files sit in the tree, not from reading the code. A project that names its directories unconventionally will read oddly here — open the file browser to check anything the diagram implies.
Languages
- JavaScript88%
- HTML9%
- Markdown3%
- CSS0%
Share of indexed source by file size. Binary and vendored files are excluded.
Dependencies
package.json
npm · 19- @google-cloud/local-auth
- @google/genai
- @react-oauth/google
- @testing-library/dom
- @testing-library/jest-dom
- @testing-library/react
- @testing-library/user-event
- antd
- axios
- dayjs
- gapi
- gapi-script
- googleapis
- react
- react-dom
- react-icons
- react-router-dom
- react-scripts
- +1 more
Declared in the repository’s manifests at the indexed commit. A declared package is not proof it is used, and runtime dependencies are listed first.
This project’s features have not been analysed yet.
Export this project's context (description, README, evidence, key source files) to chat with an AI agent elsewhere.