StealThis .dev

Gym — Client Progress View

A trainer-facing progress dashboard for a single gym client, with an avatar header, goal and since-date, and an animated SVG adherence ring. A metric tab switcher re-renders self-drawn line charts for body weight, bench and squat over twelve weeks, alongside a KPI strip, a measurements table with chest, waist and arm deltas, a session-attendance heat strip and a coaching-notes timeline. A Send-program button and an inline note composer append entries live, all in dependency-free vanilla JS.

Labで開く
html css vanilla-js
ターゲット: JS HTML

コード

Client Progress View

A focused, high-energy panel a coach opens to review one member at a glance. The header pairs a neon avatar with the client’s goal, membership start date and an animated SVG adherence ring, while a KPI strip surfaces weight, bench 1RM, body-fat and session counts with up / down deltas. The whole layout is dark, athletic and tap-friendly, and reflows cleanly down to small phones.

The centrepiece is a self-drawn SVG chart — no charting library — with a tab switcher for Weight, Bench and Squat. Each tab recomputes the domain, gridlines, gradient fill, trend line and hoverable data points, then updates the footer stats. Below it sit a measurements table with per-site deltas, a twelve-week session-attendance heat strip, and a coaching-notes timeline.

The Send program button shows a sending / sent micro-state and toast, while Add note opens an inline composer: pick a tag (Training, Nutrition, Recovery, Flag), write a line, and it prepends to the timeline with a subtle entrance animation. Everything is vanilla JS with a small toast() helper.

Illustrative trainer UI — fictional data, not medical or coaching advice.