Real-time PC & Fitbit Monitoring System
A dashboard that combines Fitbit health data (heart rate, steps) with live PC usage metrics (CPU, memory, uptime, process count) to help users maintain a healthier work rhythm.
The system shows both streams of data side-by-side in real time so you can see how long you’ve been at the computer and how your body is responding which makes it easier to know when to take a break and move.
- Live Fitbit metrics: current & resting heart rate, recent steps, heart-rate history chart
- Live PC metrics: CPU, memory, disk, active processes, system uptime
- Real-time updates via WebSockets
- Log custom activities from the web app directly to your Fitbit account
- Priority-based background task scheduler
- Thread-safe caching to reduce API calls and manage tokens securely
- SQLite storage for historical data and trends
- Backend: Python, Flask, Flask-SocketIO
- Frontend: HTML/CSS/JS, Chart.js, jQuery
- Real-time: WebSockets (Socket.IO)
- Database: SQLite
- APIs & Libraries: Fitbit Web API (OAuth 2.0),
psutil - Architecture: Priority-based task scheduler + thread-safe cache
- Create a
.envfile in the project root and add your Fitbit credentials:
FITBIT_CLIENT_ID=your_client_id
FITBIT_CLIENT_SECRET=your_client_secret
FITBIT_REDIRECT_URI=http://localhost:5000/callback
2. Run these commands:
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
python server.py