Release 8.0 - In-session Logging and Additional Peer Insights
PKPeter Klimek

On the surface the version 8 release looks pretty minor. We've added a handful of new features and quality of life improvements, but behind the scenes there's been a lot of work happening. Before we get to that, let's cover what's new.
New Peer Insights results
We launched Peer Insights for Crimpd+ users in 2024 with support for the Finger Strength Test, Weighted Pull-up Test, and Hip Flexibility Test. Those were the tests we had enough data on to properly segment users across peer groups (boulder/sport, male/female/all, grade buckets). Since then we've recorded thousands of new data points across our other assessment tests, so we've expanded Peer Insights to cover them too. Starting in version 8 you'll be able to see how you compare to your peers on the following tests:
Existing
- Finger Strength Test
- Weighted Pull-up Test
- Hip Flexibility Test
New
- Finger Strength Test - One-arm
- Small Edges Test
- Open Grip Test
- Front 3 Open Drag Test
- Edge Lift Test
In-session logging
The second major feature is in-session logging, which lets you record your details live in a table as you move through the workout. This should make it easier to keep track of the weights used, how hard each set felt, and any notes you'd like to capture for a given set.
A couple of things moved to make room. The "Reps 3/5" and "Sets 2/4" counters are gone, since the table shows that and more. Exercise details — targets, focus points, notes — tuck into a collapsible header, there when you want them and out of the way when you don't.
As part of this change we are migrating fully to set-based logging for exercises, so you'll notice some long overdue changes to the Log Workout screen too. This change mirrors recent enhancements we made to the Lattice app. While they each have a different design, the goal of each is the same and over time we'll work to unify these further.
Leave the workout running
The third new feature lets you minimize an interactive workout and keep using the app while it runs.
Hit minimize and the full-screen timer collapses into a compact mini-player pinned to the bottom of the screen, similar to the way a music app keeps a track playing while you browse. It shows the time remaining and gives you Pause, Resume, Skip, and Stop. Tap it to return to the full workout. The timer keeps ticking, the audio cues keep firing on schedule, and the screen wake-lock stays on so your phone doesn't sleep mid-rest.
So you can check your next workout while you rest, or look up the weights and grades you used last time you did this one.
Two smaller things
Better caching. We've made significant improvements to how we cache workouts. This means the app should feel snappier when you're training in a gym with a poor cell connection. We don't have full offline support just yet, but these changes lay the groundwork for it.
Workout-details refresh. The exercise list on a workout's details page is now a flat list with thin inset dividers and photos. Overall a minor change, but something we've been wanting to do for a while.
The part you'll never see but is worth talking about
Almost everything above is the small half of the release. The bigger half is a rewrite of how the app works under the hood, and it should be totally invisible unless we messed up (so please let us know at support@crimpd.com if we broke something).
Crimpd is about nine years old. The first code was written for a very different app, and over nine years of features getting bolted on, the foundation accumulated the kind of cruft that every long-lived codebase does. State was managed inconsistently, the data layer had grown organically rather than deliberately, and adding anything new meant carefully not breaking five things you couldn't see. It still worked — but every new feature was getting slower and riskier to build. It also predates agentic coding tools, so it just wasn't designed for the pace of development they enable.
So we rebuilt the foundation on both ends. The app moved to a single, consistent way of managing state, replacing a mix of older patterns. The backend — the server that stores your training data — was migrated from a JavaScript/Node.js codebase to 100% TypeScript with validation at every boundary. As part of that we completely rebuilt our testing infrastructure, and the test suite more than doubled in size. The benefit is on our side of the screen: building and shipping what you do see gets faster and less risky from here. The server-side changes already shipped last weekend, and they went mostly smoothly aside from a handful of minor bugs — so thanks to everyone who reported issues.
It's an odd release to ship, since we spent the bulk of a development cycle on work whose payoff is mostly future work. But it's the kind of maintenance that determines whether the app keeps getting better or slowly grinds to a halt, and after nine years it was overdue.
Try it
8.0.x is live on the web now and will start rolling out to iOS and Android over the next week. The rewrite touched a lot, so if you hit something that feels off, please let us know.
-pk
About the author
PKPeter Klimek
Co-founder & Developer
Peter is the co-founder of Crimpd and the CTO of Lattice Training. He builds training tools for climbers who want to get stronger without guesswork. When he's not working, he can be found building trails and developing new boulders in the Pacific Northwest.