“Is this the food delivery thing from the masterplan?” you ask, refreshing an app to watch a tiny car icon circle the same block for the ninth time.
It is. Back in the masterplan I said something about food delivery, peer-to-peer, no platform skimming thirty percent. Talk is cheap. Code is also cheap, it just takes longer. So here’s FARE, the first of a handful of demo tests I’m running to find out what it actually takes to build useful applications on a decentralized stack, instead of just blogging about it.
The Cast
Three parties with no particular reason to trust each other: a customer who wants food, a driver who wants money, and a venue (restaurant, store, whatever) that wants to hand a bag to someone and get paid. Normally a dispatch company sits in the middle, assigns the jobs, holds the money, and keeps a generous slice for the trouble.
FARE deletes the dispatch company. Nobody at the dispatch company has returned my calls about this.
How It Works, Roughly
- The customer opens an order and puts the money in escrow.
- Drivers bid for the job in a reverse auction. The customer picks the winner, and it doesn’t have to be the cheapest bid, because a driver with a good track record and some skin in the game might be worth a dollar more than one with neither.
- At pickup, the driver and the venue both sign their GPS coordinates. At dropoff, the driver and the customer do the same. Two parties with opposite interests co-signing where they’re standing is a lot harder to fake than one party announcing “trust me, I’m outside.”
- The contract checks the signatures and the geometry, then pays out. The venue gets the order value, the driver gets the fare and the tip. Nobody gets a “service fee” for existing.
“And where does my home address go?” you ask, eyeing the smart speaker suspiciously.
Nowhere, which is my favorite part. When the order is created, only a hash of the drop location goes on chain. At dropoff, the driver proves with a zero-knowledge proof that they’re within range of that committed spot. No coordinate ever lands on chain. The network knows the delivery happened in the right place without ever learning where the right place is. It sounds like sorcery. It’s math. A lot of math.
Also, the fare is the only payment that’s required. Order value, tip, and stakes can all be zero, so a pizza place with an existing register can join without changing how it takes money, and adopt the full escrow flow later if it’s feeling brave.
What This Demo Is Testing
The question isn’t “can you put pizza on a blockchain.” You can. Please don’t. The question is whether untrusting strangers can coordinate a real-world errand peer to peer, with the chain as a neutral referee instead of a company as a not-so-neutral one. Bids, handoffs, location attestations, payouts, all settled between the people actually doing the work.
Where It Lives
FARE is running on the Paseo testnet, and you can poke at it at fare.javcon.io. For now it’s a regular hosted web app, out on the open internet like an animal. The plan is to move it into the Polkadot app as fare.dot once the features mature enough to take advantage of everything the platform hands you for free: on-chain names, decentralized storage for the app itself, and proof of personhood as a gate against someone registering four hundred fake drivers named Kevin.
It’s a testnet. The money is pretend. The pizza, tragically, is also pretend.
— Kasey