My Data Dashboard

Live Data Pipeline

Real-time insights into my health and performance. This dashboard showcases data engineering, API integration, and interactive visualization.

Am I consistent with my workouts?

My Strain Journey

I need the peak strain to be changed for a percentage of the weeks on the current week or current year in which I had an aggregation of strain more than 10, which is the goal. Movement goes beyond counting steps — it's about real effort. WHOOP's strain score combines heart rate and activity to show how hard you actually push.

Each month, I aim for an average strain of 10 — that sweet spot between progress and burnout. The yellow dotted line marks my North Star for daily movement.

Below: Each square = one day. Brighter greens = higher strain (max: 21).

Skills: React Visualization · Real-time Data Processing · SQL Aggregation · Goal Tracking

272
Active Days
10.5
Avg Strain
56%
Weeks at Goal
23/41 weeks ≥10
Jan
Feb
Mar
Apr
May
Jun
Jul
Aug
Sep
Oct
Mon
Wed
Fri
Less
0: No Activity
1-2: Recovery Day
3-5: Rest Day
6-7: Light Activity
8-9: Moderate Activity
10-11: Good Training
12-13: Solid Training
14-15: High Training
16-17: Very High Training
18-19: Elite Performance
20-21: Exceptional Performance
More

Weekly Average Strain: Chasing the 10 Goal ⚡

Each dot represents my weekly average strain. Consistency above 10 means optimal fitness growth.

Jan
Feb
Mar
Apr
May
Jun
Jul
Aug
Sep
Oct
Above Goal (10+)
Below Goal
Target (10)
Last 3 Months
58.3%
Success Rate
Weeks at Goal
7 of 12
Last 12 Weeks
Average Strain
10.4
At Goal! 🎯
Am I winning my early morning battle?

The Morning Workout Challenge

Win The Morning, Win The Day

In October 2025, I committed to working out before 8:30 AM every day. This is my public accountability board — tracking every workout, every morning, for everyone to see.

Loading workout time data...

How does training impact recovery?

Strain vs. Recovery: The Core Performance Loop

Each dot represents one day, showing how training intensity impacts recovery capacity. The trend line reveals the fundamental relationship between effort and restoration.

271
Data Points
10.5
Avg Strain
60%
Avg Recovery
-31%
Correlation
051015200%25%50%75%100%Date: 1/15/2025 Strain: 12.5 Recovery: 74%Date: 1/16/2025 Strain: 14.7 Recovery: 42%Date: 1/17/2025 Strain: 14.8 Recovery: 64%Date: 1/18/2025 Strain: 12.3 Recovery: 34%Date: 1/19/2025 Strain: 11.9 Recovery: 51%Date: 1/20/2025 Strain: 6.0 Recovery: 89%Date: 1/21/2025 Strain: 7.7 Recovery: 60%Date: 1/22/2025 Strain: 12.0 Recovery: 1%Date: 1/23/2025 Strain: 14.7 Recovery: 89%Date: 1/24/2025 Strain: 15.7 Recovery: 45%Date: 1/25/2025 Strain: 14.6 Recovery: 2%Date: 1/26/2025 Strain: 14.3 Recovery: 67%Date: 1/27/2025 Strain: 18.3 Recovery: 51%Date: 1/28/2025 Strain: 12.2 Recovery: 91%Date: 1/29/2025 Strain: 16.6 Recovery: 55%Date: 1/30/2025 Strain: 7.6 Recovery: 91%Date: 1/31/2025 Strain: 14.7 Recovery: 39%Date: 2/1/2025 Strain: 12.8 Recovery: 68%Date: 2/2/2025 Strain: 13.9 Recovery: 52%Date: 2/3/2025 Strain: 6.1 Recovery: 62%Date: 2/4/2025 Strain: 9.8 Recovery: 60%Date: 2/5/2025 Strain: 8.7 Recovery: 53%Date: 2/6/2025 Strain: 10.6 Recovery: 65%Date: 2/7/2025 Strain: 14.5 Recovery: 6%Date: 2/8/2025 Strain: 7.0 Recovery: 75%Date: 2/9/2025 Strain: 9.1 Recovery: 38%Date: 2/10/2025 Strain: 12.8 Recovery: 70%Date: 2/11/2025 Strain: 5.9 Recovery: 61%Date: 2/12/2025 Strain: 6.6 Recovery: 1%Date: 2/14/2025 Strain: 7.2 Recovery: 78%Date: 2/15/2025 Strain: 15.4 Recovery: 51%Date: 2/16/2025 Strain: 16.4 Recovery: 55%Date: 2/17/2025 Strain: 6.2 Recovery: 88%Date: 2/18/2025 Strain: 13.8 Recovery: 64%Date: 2/19/2025 Strain: 7.4 Recovery: 74%Date: 2/20/2025 Strain: 13.1 Recovery: 48%Date: 2/21/2025 Strain: 4.1 Recovery: 67%Date: 2/22/2025 Strain: 16.1 Recovery: 38%Date: 2/23/2025 Strain: 6.6 Recovery: 72%Date: 2/24/2025 Strain: 15.5 Recovery: 40%Date: 2/25/2025 Strain: 11.6 Recovery: 59%Date: 2/26/2025 Strain: 11.1 Recovery: 47%Date: 2/27/2025 Strain: 10.2 Recovery: 53%Date: 2/28/2025 Strain: 2.0 Recovery: 94%Date: 3/1/2025 Strain: 15.5 Recovery: 65%Date: 3/2/2025 Strain: 8.4 Recovery: 1%Date: 3/3/2025 Strain: 7.9 Recovery: 86%Date: 3/4/2025 Strain: 12.6 Recovery: 80%Date: 3/5/2025 Strain: 11.9 Recovery: 51%Date: 3/6/2025 Strain: 11.0 Recovery: 77%Date: 3/7/2025 Strain: 14.9 Recovery: 44%Date: 3/8/2025 Strain: 14.0 Recovery: 55%Date: 3/9/2025 Strain: 14.9 Recovery: 52%Date: 3/10/2025 Strain: 3.5 Recovery: 62%Date: 3/11/2025 Strain: 9.5 Recovery: 57%Date: 3/12/2025 Strain: 8.3 Recovery: 45%Date: 3/13/2025 Strain: 7.1 Recovery: 36%Date: 3/15/2025 Strain: 8.4 Recovery: 85%Date: 3/16/2025 Strain: 15.0 Recovery: 43%Date: 3/17/2025 Strain: 15.6 Recovery: 56%Date: 3/18/2025 Strain: 13.3 Recovery: 90%Date: 3/19/2025 Strain: 13.2 Recovery: 84%Date: 3/20/2025 Strain: 14.0 Recovery: 74%Date: 3/21/2025 Strain: 13.1 Recovery: 72%Date: 3/22/2025 Strain: 16.0 Recovery: 90%Date: 3/23/2025 Strain: 14.3 Recovery: 39%Date: 3/25/2025 Strain: 9.9 Recovery: 72%Date: 3/26/2025 Strain: 13.1 Recovery: 66%Date: 3/27/2025 Strain: 12.8 Recovery: 69%Date: 3/28/2025 Strain: 14.7 Recovery: 75%Date: 3/29/2025 Strain: 8.6 Recovery: 64%Date: 3/30/2025 Strain: 7.5 Recovery: 78%Date: 3/31/2025 Strain: 11.9 Recovery: 78%Date: 4/1/2025 Strain: 8.1 Recovery: 53%Date: 4/2/2025 Strain: 7.0 Recovery: 98%Date: 4/3/2025 Strain: 16.4 Recovery: 57%Date: 4/4/2025 Strain: 7.8 Recovery: 1%Date: 4/5/2025 Strain: 14.7 Recovery: 27%Date: 4/6/2025 Strain: 9.1 Recovery: 68%Date: 4/7/2025 Strain: 10.5 Recovery: 77%Date: 4/8/2025 Strain: 12.8 Recovery: 95%Date: 4/9/2025 Strain: 8.4 Recovery: 98%Date: 4/10/2025 Strain: 9.6 Recovery: 37%Date: 4/11/2025 Strain: 8.7 Recovery: 47%Date: 4/12/2025 Strain: 10.6 Recovery: 61%Date: 4/13/2025 Strain: 7.7 Recovery: 1%Date: 4/14/2025 Strain: 13.4 Recovery: 63%Date: 4/15/2025 Strain: 13.9 Recovery: 69%Date: 4/16/2025 Strain: 12.4 Recovery: 57%Date: 4/17/2025 Strain: 10.6 Recovery: 56%Date: 4/18/2025 Strain: 11.9 Recovery: 1%Date: 4/19/2025 Strain: 8.3 Recovery: 41%Date: 4/20/2025 Strain: 10.5 Recovery: 47%Date: 4/21/2025 Strain: 20.4 Recovery: 59%Date: 4/22/2025 Strain: 7.3 Recovery: 93%Date: 4/23/2025 Strain: 11.1 Recovery: 52%Date: 4/24/2025 Strain: 6.0 Recovery: 67%Date: 4/25/2025 Strain: 13.9 Recovery: 61%Date: 4/26/2025 Strain: 9.6 Recovery: 60%Date: 4/27/2025 Strain: 8.4 Recovery: 42%Date: 4/28/2025 Strain: 8.0 Recovery: 78%Date: 4/29/2025 Strain: 11.9 Recovery: 86%Date: 4/30/2025 Strain: 11.6 Recovery: 75%Date: 5/2/2025 Strain: 7.9 Recovery: 68%Date: 5/3/2025 Strain: 7.9 Recovery: 50%Date: 5/4/2025 Strain: 12.8 Recovery: 69%Date: 5/5/2025 Strain: 16.8 Recovery: 32%Date: 5/6/2025 Strain: 9.9 Recovery: 45%Date: 5/7/2025 Strain: 0.3 Recovery: 84%Date: 5/8/2025 Strain: 12.3 Recovery: 52%Date: 5/9/2025 Strain: 10.0 Recovery: 65%Date: 5/10/2025 Strain: 6.8 Recovery: 69%Date: 5/11/2025 Strain: 16.3 Recovery: 35%Date: 5/12/2025 Strain: 18.6 Recovery: 36%Date: 5/13/2025 Strain: 5.2 Recovery: 80%Date: 5/14/2025 Strain: 6.7 Recovery: 60%Date: 5/15/2025 Strain: 6.0 Recovery: 73%Date: 5/16/2025 Strain: 9.1 Recovery: 55%Date: 5/17/2025 Strain: 11.2 Recovery: 75%Date: 5/18/2025 Strain: 16.3 Recovery: 82%Date: 5/19/2025 Strain: 16.9 Recovery: 47%Date: 5/20/2025 Strain: 5.2 Recovery: 83%Date: 5/21/2025 Strain: 7.7 Recovery: 64%Date: 5/22/2025 Strain: 7.3 Recovery: 94%Date: 5/23/2025 Strain: 11.3 Recovery: 82%Date: 5/24/2025 Strain: 9.5 Recovery: 64%Date: 5/25/2025 Strain: 8.4 Recovery: 88%Date: 5/26/2025 Strain: 16.9 Recovery: 50%Date: 5/27/2025 Strain: 6.1 Recovery: 57%Date: 5/28/2025 Strain: 6.7 Recovery: 59%Date: 5/29/2025 Strain: 8.9 Recovery: 62%Date: 5/30/2025 Strain: 5.5 Recovery: 77%Date: 5/31/2025 Strain: 6.8 Recovery: 52%Date: 6/1/2025 Strain: 5.8 Recovery: 55%Date: 6/2/2025 Strain: 16.1 Recovery: 68%Date: 6/3/2025 Strain: 8.0 Recovery: 78%Date: 6/4/2025 Strain: 8.5 Recovery: 85%Date: 6/5/2025 Strain: 9.7 Recovery: 78%Date: 6/6/2025 Strain: 8.2 Recovery: 90%Date: 6/7/2025 Strain: 4.2 Recovery: 47%Date: 6/8/2025 Strain: 7.5 Recovery: 70%Date: 6/9/2025 Strain: 9.0 Recovery: 48%Date: 6/10/2025 Strain: 6.4 Recovery: 49%Date: 6/11/2025 Strain: 7.1 Recovery: 58%Date: 6/12/2025 Strain: 10.4 Recovery: 44%Date: 6/13/2025 Strain: 4.2 Recovery: 20%Date: 6/14/2025 Strain: 8.5 Recovery: 62%Date: 6/15/2025 Strain: 7.5 Recovery: 82%Date: 6/16/2025 Strain: 9.9 Recovery: 73%Date: 6/17/2025 Strain: 5.6 Recovery: 55%Date: 6/18/2025 Strain: 8.3 Recovery: 61%Date: 6/19/2025 Strain: 8.7 Recovery: 42%Date: 6/20/2025 Strain: 4.4 Recovery: 71%Date: 6/21/2025 Strain: 10.4 Recovery: 1%Date: 6/22/2025 Strain: 14.8 Recovery: 29%Date: 6/23/2025 Strain: 12.3 Recovery: 44%Date: 6/24/2025 Strain: 7.4 Recovery: 44%Date: 6/25/2025 Strain: 7.6 Recovery: 74%Date: 6/26/2025 Strain: 9.4 Recovery: 70%Date: 6/27/2025 Strain: 9.2 Recovery: 81%Date: 6/28/2025 Strain: 8.8 Recovery: 74%Date: 6/29/2025 Strain: 13.3 Recovery: 58%Date: 6/30/2025 Strain: 10.4 Recovery: 74%Date: 7/1/2025 Strain: 5.1 Recovery: 49%Date: 7/2/2025 Strain: 12.9 Recovery: 24%Date: 7/3/2025 Strain: 11.4 Recovery: 38%Date: 7/4/2025 Strain: 8.0 Recovery: 76%Date: 7/5/2025 Strain: 15.8 Recovery: 53%Date: 7/6/2025 Strain: 13.2 Recovery: 30%Date: 7/7/2025 Strain: 9.1 Recovery: 78%Date: 7/8/2025 Strain: 7.8 Recovery: 63%Date: 7/9/2025 Strain: 12.4 Recovery: 52%Date: 7/11/2025 Strain: 9.6 Recovery: 93%Date: 7/12/2025 Strain: 13.7 Recovery: 66%Date: 7/13/2025 Strain: 11.4 Recovery: 80%Date: 7/14/2025 Strain: 7.4 Recovery: 80%Date: 7/15/2025 Strain: 7.6 Recovery: 50%Date: 7/16/2025 Strain: 13.5 Recovery: 49%Date: 7/17/2025 Strain: 11.9 Recovery: 48%Date: 7/18/2025 Strain: 6.2 Recovery: 68%Date: 7/19/2025 Strain: 10.3 Recovery: 21%Date: 7/20/2025 Strain: 12.9 Recovery: 60%Date: 7/21/2025 Strain: 18.5 Recovery: 44%Date: 7/22/2025 Strain: 5.7 Recovery: 92%Date: 7/23/2025 Strain: 9.3 Recovery: 70%Date: 7/24/2025 Strain: 7.8 Recovery: 74%Date: 7/25/2025 Strain: 15.4 Recovery: 29%Date: 7/26/2025 Strain: 14.2 Recovery: 27%Date: 7/27/2025 Strain: 7.4 Recovery: 95%Date: 7/28/2025 Strain: 7.1 Recovery: 84%Date: 7/29/2025 Strain: 10.4 Recovery: 96%Date: 7/31/2025 Strain: 6.8 Recovery: 79%Date: 8/1/2025 Strain: 12.5 Recovery: 63%Date: 8/2/2025 Strain: 8.5 Recovery: 59%Date: 8/3/2025 Strain: 12.3 Recovery: 42%Date: 8/4/2025 Strain: 17.5 Recovery: 21%Date: 8/5/2025 Strain: 8.1 Recovery: 91%Date: 8/8/2025 Strain: 5.7 Recovery: 50%Date: 8/9/2025 Strain: 16.1 Recovery: 49%Date: 8/10/2025 Strain: 8.4 Recovery: 48%Date: 8/11/2025 Strain: 14.7 Recovery: 58%Date: 8/12/2025 Strain: 11.3 Recovery: 60%Date: 8/13/2025 Strain: 12.0 Recovery: 65%Date: 8/14/2025 Strain: 13.3 Recovery: 75%Date: 8/15/2025 Strain: 9.1 Recovery: 94%Date: 8/16/2025 Strain: 11.8 Recovery: 52%Date: 8/17/2025 Strain: 20.7 Recovery: 22%Date: 8/18/2025 Strain: 6.4 Recovery: 68%Date: 8/19/2025 Strain: 6.7 Recovery: 76%Date: 8/20/2025 Strain: 11.8 Recovery: 69%Date: 8/21/2025 Strain: 6.9 Recovery: 77%Date: 8/22/2025 Strain: 9.2 Recovery: 78%Date: 8/23/2025 Strain: 12.3 Recovery: 44%Date: 8/24/2025 Strain: 10.4 Recovery: 34%Date: 8/25/2025 Strain: 16.7 Recovery: 44%Date: 8/26/2025 Strain: 8.0 Recovery: 93%Date: 8/27/2025 Strain: 11.5 Recovery: 66%Date: 8/28/2025 Strain: 12.8 Recovery: 74%Date: 8/29/2025 Strain: 7.8 Recovery: 51%Date: 8/30/2025 Strain: 6.7 Recovery: 82%Date: 8/31/2025 Strain: 5.3 Recovery: 85%Date: 9/1/2025 Strain: 9.7 Recovery: 65%Date: 9/2/2025 Strain: 12.8 Recovery: 52%Date: 9/3/2025 Strain: 11.1 Recovery: 46%Date: 9/4/2025 Strain: 12.0 Recovery: 78%Date: 9/5/2025 Strain: 7.6 Recovery: 67%Date: 9/6/2025 Strain: 13.2 Recovery: 32%Date: 9/7/2025 Strain: 9.3 Recovery: 40%Date: 9/8/2025 Strain: 6.4 Recovery: 90%Date: 9/9/2025 Strain: 14.2 Recovery: 60%Date: 9/10/2025 Strain: 6.9 Recovery: 63%Date: 9/11/2025 Strain: 9.0 Recovery: 56%Date: 9/12/2025 Strain: 6.2 Recovery: 32%Date: 9/13/2025 Strain: 14.0 Recovery: 53%Date: 9/14/2025 Strain: 6.8 Recovery: 51%Date: 9/15/2025 Strain: 8.4 Recovery: 80%Date: 9/16/2025 Strain: 7.9 Recovery: 69%Date: 9/17/2025 Strain: 12.3 Recovery: 84%Date: 9/18/2025 Strain: 15.0 Recovery: 71%Date: 9/19/2025 Strain: 11.5 Recovery: 53%Date: 9/20/2025 Strain: 6.7 Recovery: 98%Date: 9/21/2025 Strain: 7.8 Recovery: 59%Date: 9/22/2025 Strain: 16.0 Recovery: 72%Date: 9/23/2025 Strain: 7.1 Recovery: 63%Date: 9/24/2025 Strain: 11.3 Recovery: 52%Date: 9/25/2025 Strain: 11.7 Recovery: 67%Date: 9/26/2025 Strain: 9.1 Recovery: 68%Date: 9/27/2025 Strain: 10.2 Recovery: 33%Date: 9/28/2025 Strain: 8.2 Recovery: 32%Date: 9/29/2025 Strain: 13.1 Recovery: 13%Date: 9/30/2025 Strain: 7.4 Recovery: 25%Date: 10/1/2025 Strain: 10.9 Recovery: 74%Date: 10/2/2025 Strain: 6.0 Recovery: 85%Date: 10/3/2025 Strain: 4.7 Recovery: 73%Date: 10/4/2025 Strain: 11.5 Recovery: 65%Date: 10/5/2025 Strain: 9.1 Recovery: 57%Date: 10/6/2025 Strain: 19.6 Recovery: 45%Date: 10/7/2025 Strain: 12.2 Recovery: 64%Date: 10/8/2025 Strain: 8.7 Recovery: 79%Date: 10/9/2025 Strain: 13.9 Recovery: 68%Date: 10/12/2025 Strain: 4.6 Recovery: 64%Date: 10/13/2025 Strain: 19.0 Recovery: 41%Date: 10/14/2025 Strain: 4.4 Recovery: 84%Date: 10/15/2025 Strain: 13.9 Recovery: 64%Date: 10/16/2025 Strain: 7.4 Recovery: 78%Date: 10/17/2025 Strain: 9.4 Recovery: 78%Date: 10/18/2025 Strain: 5.2 Recovery: 88%Date: 10/19/2025 Strain: 9.0 Recovery: 33%Date: 10/20/2025 Strain: 18.4 Recovery: 34%Date: 10/21/2025 Strain: 4.4 Recovery: 80%Date: 10/23/2025 Strain: 14.3 Recovery: 67%Strain ScoreRecovery Score (%)

Recovery Zones

Optimal Recovery (67%+): 114 days
Moderate Recovery (34-66%): 130 days
Poor Recovery (<34%): 27 days

Correlation Analysis

Trend: Negative Moderate correlation

Higher strain days tend to result in lower recovery scores—suggesting the need for better load management.

🎯60% Recovery Target

10.7 strain
R² = 0.093
Based on your personal pattern
How do I distribute my training time?

Training Analytics

Time-series analysis showing training distribution across different sports and workout types. Each bar reveals session counts and total hours of activity.

Monthly Training Hours

Weightlifting
Running
Boxing
0h7h15h22h29hJanFebMarAprMayJunJulAugSepOctHours

Yearly Distribution

LOADING
Weightlifting
102.6h121 sessions
Running
19.2h18 sessions
Boxing
11.6h32 sessions

Want to see how this was built?

Dive into the technical architecture, challenges solved, and the data pipeline powering this dashboard.

Read the case study