FitStake

FitStake: Web3 running app. Stake crypto on your Strava goals. Bet on challenge winners.

FitStake

Created At

ETHOnline 2025

Project Description

FitStake is a decentralized mobile application (dApp) built on Web3 principles to create a "prove-it-or-lose-it" fitness incentive system.

The core problem it solves is the lack of real commitment in traditional fitness apps. FitStake addresses this by attaching real financial stakes to fitness goals.

Here is the complete user journey and platform concept, as described in your documentation:

Staking & Joining: A user creates or joins a specific fitness challenge on the mobile app (e.g., "Run 10km within 7 days"). To join, they must stake a set amount of cryptocurrency (ETH) from their mobile wallet (like MetaMask) into the project's smart contract. This stake is now locked.

Tracking: The user connects their Strava account to the app. They then perform the required fitness activity (e.g., they go for a 10km run) and record it on Strava as they normally would.

Verification: Once the activity is complete, the user requests verification within the FitStake app. This triggers the project's "Oracle System." This system automatically:

Fetches the activity data from the Strava API.

Validates that the activity meets the challenge criteria (e.g., correct activity type, sufficient distance, and within the time window).

If valid, the oracle sends a transaction to the smart contract, marking that user's task as complete.

Finalization & Payout: When the challenge duration ends, the finalizeChallenge function is called. The smart contract's logic automatically executes:

Winners: Participants who successfully completed the challenge (hasCompleted = true) are able to withdraw their original stake plus a proportional share of all the stakes from users who failed.

Losers: Participants who failed to complete the challenge forfeit their entire stake, which is then distributed among the winners.

In short, FitStake creates a transparent, automated, and high-stakes environment where users are financially incentivized to follow through on their fitness goals.

How it's Made

FitStake is a full-stack dApp built on four distinct layers. The user-facing component is a React Native (Expo) mobile app that uses WalletConnect to interact with the core Solidity smart contract, which was developed with Hardhat to lock user stakes and enforce challenge rules. To connect real-world Strava data to the blockchain, an Express.js backend validates activities and uniquely uses Lit Protocol as a decentralized, autonomous signer to securely send verification transactions. Finally, to ensure the app is responsive, the Envio indexer listens to all on-chain events using HyperIndex, providing an instant GraphQL API for the mobile app to read data quickly.

background image mobile

Join the mailing list

Get the latest news and updates