Building MachineConvert: a static site where every number has to show its source
If you train in more than one gym, you know the problem: 60 kg on one brand's leg press is not 60 kg on another's. Levers, cams and pulleys change the force you actually feel, so the number on the stack doesn't carry over. I built MachineConvert to catalog strength machines across brands and to answer one question: "I lift X on this machine, what is it on that one?" Here is how it's built, and…
Strength training can vary based on the machine used, as the force you feel differs from machine to machine due to levers, cams and pulleys. To address this inconsistency, I created MachineConvert, a static site that catalogs strength machines across brands and helps you determine what a weight would be on another machine. The site follows a single rule: every number must be backed by a source, including a URL and an exact quote, along with a date and confidence level.
If any of these elements are missing, the site displays "no data" instead. The three confidence levels are measured, manufacturer, and estimated, with measured being the highest confidence level. Manufacturer stack weights are stored in the machine record, separate from the measurement data, and the comparator uses only measured or estimated force curves.
When the comparator provides a number, it is labeled with the lowest confidence level of the two machines involved, and both machines display their own badge to indicate the confidence level. The catalog currently includes data for 24 brands, 50 product lines, and 283 machines, with 353 manufacturer values confirmed through sources and 81 estimated points.
No measured data has been added yet, and the site clearly states this. The site is built as a static site, utilizing JSON data, vanilla JS, and prerendered entry pages for each route. It has no framework or backend, consisting of 289 pages, each with its own title, description, canonical URL, and JSON-LD structured data. The site's design features a synthwave grid in pure CSS, inspired by a Miami-at-night aesthetic.
The grid is created using a repeating gradient with GPU-accelerated animation, and a navy layer ensures legibility. The site offers accessibility features, including WCAG AA contrast ratios and keyboard navigation, and has undergone thorough testing for performance and accessibility issues. Measurements can only be submitted through a moderated process, requiring proof for measured entries and a detailed method for estimated entries. The moderation process helps maintain the quality of data on the site.
Written by urgent.news from Dev.to's reporting — not their text. Machine-written — may contain errors; check the original before relying on it.