Inspiration

We noticed how most posture fix tools are just braces or straps that hold your body still for a while. They don’t actually teach you to sit better or recognize when strain builds up. We wanted something smarter and simpler that people who already have neck or wrist pain could actually use every day.

What it does

Ergonomiq tracks your posture, blink rate, and typing intensity in real time. It reminds you to adjust before pain sets in and helps you understand your habits through simple graphs and insights. You can run it fully in the browser or pair it with our tiny wrist device that vibrates when you type too hard or for too long.

How we built it

We run MediaPipe Tasks (Face & Pose Landmarkers) entirely in the browser to track head tilt, blink cadence, and posture deltas in real time, then hand those metrics to a React/Vite/Tailwind + shadcn UI that’s gated by Firebase Auth. Each session payload, posture frames, blink stats, and user profile updates, streams into Firestore, where we recompute analytics and feed the dashboard visualizations built with Recharts. On the hardware side, an Arduino-powered BioAmp EXG Pill samples wrist EMG; a Python pipeline (pyFirmata, NumPy/SciPy) filters the signal, tags RSI intervals, and posts them to a FastAPI service that the dashboard polls alongside simulated data when the sensor isn’t connected.

Challenges we ran into

Getting MediaPipe Pose + Face Landmarkers to stay stable across different webcams and lighting meant building our own calibration flow and smoothing logic, otherwise the head‑tilt and blink metrics spiked wildly. On the data side we fought Firestore write limits and consistency issues when uploading multi- part sessions, so we refactored the sync pipeline to chunk posture and eye data separately and retry on auth drops. The wrist EMG stack was even trickier, pyFirmata streams are noisy, so extracting reliable envelopes required a multi-stage filter plus adaptive thresholds, and we had to build a FastAPI shim with simulated data to keep the dashboard usable whenever the BioAmp rig wasn’t plugged in.

Accomplishments that we're proud of

  • Shipped a fully client-side posture coach that blends MediaPipe vision, Firebase Auth, and Firestore without relying on GPU backends.
  • Dialed in the BioAmp wrist module so the EMG stream syncs with the dashboard’s analytics, whether data is live or replayed from FastAPI.
  • Wrapped the ergonomics data in a cohesive UI, sessions, alerts, and device health all live in one React experience that people actually enjoy using.

What we learned

Bridging browser CV with local hardware meant obsessing over calibration, filtering, and sync logic just as much as model choice. We learned that ergonomic tools hit differently when you design for people already dealing with pain, every detail from copy to pacing to visuals has to feel supportive, not clinical. Finally, we saw how privacy and responsiveness go hand in hand: keeping inference on-device and batching Firestore writes kept latency low while giving users full ownership of their data.

What's next for Ergonomiq

Our next step is to validate the product by manufacturing an initial batch of 100 wrist monitor units, complete with PCBs and enclosures. We’ll sell these at a limited scale to gather real feedback from users already dealing with posture and wrist strain. Based on that data, we’ll iterate on both the hardware and dashboard experience. We’re also planning to partner with clinics and universities that work with carpal tunnel and posture-related conditions, offering early access and discounted units to study real recovery outcomes. These collaborations will help refine Ergonomiq into a clinically trusted and user-loved solution.

Built With

+ 3 more
Share this project:

Updates