Skip to main content

“A fit body, a calm mind, a house full of love. These things cannot be bought—they must be earned.” - @naval

At The Network State, we start every team meeting with fitness progress, so that we all keep each other accountable to get and keep healthy. I coined "proof-of-workout" for our fitness task submissions (https://thenetworkstate.com/proof-of-workout) and wanted to take our proofs of workout to the next level.

Each ring represents a different fitness metric: the red outer ring is calories burned (today, 2088 calories); the middle ring is minutes spent being active (185 mins); and the inner ring is "heart points," which is also a measure based on activity, but you get more points for more intense activities (37 points).

I wrote a script in Node to get my fitness data (I wear an Apple Watch), aggregate it across time intervals, and mint an NFT with the key metrics as metadata..

NFTs often point to images, but they don't necessarily have to: there's an "animation_url" that can point to videos and even HTML5 pages. I used this parameter in the OpenSea metadata specification to point to a simple React app which is server-side rendered with the correct data (this is because OpenSea embeds this in a sandboxed iframe and they don't like sending requests after page load to get that data). The metadata is also set to use OpenSea's "boost" gauges which do some aggregation across all previous values to visualize how you're doing relative to the max of each particular metric. That metadata is packaged in a JSON file and uploaded to Filecoin's brilliant nft.storage service, then included as the token URI when minting an NFT on my deployed contract. The result is my proof-of-workout, forever on-chain, readable, and... judge-able.

Thanks for reading. Stay fit.

I might work on a v2 in the future, which I'll call proof-of-steak.

Proof of Workout collection image
Contract Address0x8879...ade3
Token ID6
Token StandardERC-721
ChainPolygon
Last Updated2 years ago
Creator Earnings
0%

Proof-of-Workout for @zane1729 (2022-10-31)

visibility
47 views
  • Price
    USD Price
    Quantity
    Expiration
    From
  • Price
    USD Price
    Quantity
    Floor Difference
    Expiration
    From
keyboard_arrow_down
Event
Price
From
To
Date

Proof-of-Workout for @zane1729 (2022-10-31)

visibility
47 views
  • Price
    USD Price
    Quantity
    Expiration
    From
  • Price
    USD Price
    Quantity
    Floor Difference
    Expiration
    From

“A fit body, a calm mind, a house full of love. These things cannot be bought—they must be earned.” - @naval

At The Network State, we start every team meeting with fitness progress, so that we all keep each other accountable to get and keep healthy. I coined "proof-of-workout" for our fitness task submissions (https://thenetworkstate.com/proof-of-workout) and wanted to take our proofs of workout to the next level.

Each ring represents a different fitness metric: the red outer ring is calories burned (today, 2088 calories); the middle ring is minutes spent being active (185 mins); and the inner ring is "heart points," which is also a measure based on activity, but you get more points for more intense activities (37 points).

I wrote a script in Node to get my fitness data (I wear an Apple Watch), aggregate it across time intervals, and mint an NFT with the key metrics as metadata..

NFTs often point to images, but they don't necessarily have to: there's an "animation_url" that can point to videos and even HTML5 pages. I used this parameter in the OpenSea metadata specification to point to a simple React app which is server-side rendered with the correct data (this is because OpenSea embeds this in a sandboxed iframe and they don't like sending requests after page load to get that data). The metadata is also set to use OpenSea's "boost" gauges which do some aggregation across all previous values to visualize how you're doing relative to the max of each particular metric. That metadata is packaged in a JSON file and uploaded to Filecoin's brilliant nft.storage service, then included as the token URI when minting an NFT on my deployed contract. The result is my proof-of-workout, forever on-chain, readable, and... judge-able.

Thanks for reading. Stay fit.

I might work on a v2 in the future, which I'll call proof-of-steak.

Proof of Workout collection image
Contract Address0x8879...ade3
Token ID6
Token StandardERC-721
ChainPolygon
Last Updated2 years ago
Creator Earnings
0%
keyboard_arrow_down
Event
Price
From
To
Date