Inspiration

Ever found yourself slouching at your desk, only to feel the strain in your back hours later? We did too. With so much screen time in our daily lives, we wanted a fun and effortless way to keep our posture in check—without relying on expensive ergonomic gear.

What it does

UpRight is a Chrome extension that sends friendly reminders every 20 minutes to check your posture. It also provides real-time posture analysis using your webcam to help you stay aligned and pain-free over time.

How we built it

  • Frontend: Javascript, HTML, CSS, Chrome Extension
  • Backend: Python, Flask, Mediapipe
  • Google Technology Used: Chrome Extension, Mediapipe

Challenges we ran into

  • Integrating front-end and back-end in a Chrome extension: Unlike a traditional web app, Chrome extensions have security constraints that made it tricky to send and receive data between JavaScript and Flask.
  • Working with real-time video streams: Ensuring smooth performance while processing posture data in real-time without lagging the user's system was a major challenge.
  • Mediapipe sensitivity issues: The pose detection model sometimes misidentified postures or reacted too sensitively to small movements, making it difficult to establish a consistent threshold for good posture.

Accomplishments that we're proud of

  • Successfully built a functional Chrome extension from scratch that integrates AI-based posture detection.
  • Achieved seamless real-time posture feedback with minimal processing delay, ensuring a smooth user experience.
  • Overcame communication challenges between JavaScript (frontend) and Flask (backend), learning how to work within Chrome's security constraints.
  • Created an engaging and user-friendly interface that makes checking posture easy and intuitive. Implemented a robust error-handling system to guide users through enabling camera access and understanding feedback messages.

What we learned

  • Chrome Extension Development: Gained hands-on experience with Chrome Extension development and usage
  • Real-time AI Processing: Learned how to work with Mediapipe for real-time posture detection and optimize it for performance.
  • Backend Integration: Strengthened our understanding of using Flask to handle API requests and process image data from the front end.
  • User Experience Design: Discovered the importance of clear, concise feedback to help users interpret posture results effectively.

What's next for UpRight

  • Stretch Break Suggestions: Recommend quick stretches to relieve muscle tension.
  • Eye Exercises: Suggest short exercises to reduce eye strain from prolonged screen time.
  • Stored Settings: Allow users to customize notification frequency, sensitivity levels, and enable/disable features.
  • Posture History & Insights: Track posture trends over time and provide analytics to help users improve their habits.
  • Mobile App Expansion: Explore bringing posture detection to mobile devices for even more accessibility.

Stay UpRight, stay awesome!

Share this project:

Updates