Geocab
On-chain ride sharing. Making drivers and passengers meet, fully decentralized.
Screenshots



Problem Statement
This project uses Arbitrum Stylus SDK, enabling the development of smart contracts in the Rust programming language. This enabled the contract to achieve good performance and memory efficiency. Leveraging this efficiency we manage fully on chain the compute of nearest drivers to passengers, using the geohash algorithm.
Solution
Contract: https://github.com/diseban/geocab Demo front end: https://github.com/diseban/web A Rust smart contract handles the driver registration and location updates. Aggregators can freely participate in the network, offering the services of aggregating multiple drivers and updating locations in batch. When a user requests a ride, invokes the contract to find a match. Leveraging the high performance afforded by the Stylus SDK and Rust programming language, the smart contract computes which driver is closest to the passenger, emitting an event notifying the driver and registering the active trip. Once the trip completes, the rider notifies the contract that it was completed succesfully, and the contract distributes the payments to the driver and a small fee to the platform.
Hackathon
ETHGlobal London
2024
Prizes
- 🏆
Stylus Project1st place
Arbitrum
- 🏆
Qualifying Arbitrum Submissions
Arbitrum
Contributors
- diegopy
13 contributions