Carry is a decentralized delivery network that rewards both couriers and communities using real-world incentives, zkCompression for scalable data, and DAO-driven governance.
Carry reimagines last-mile delivery by turning idle cars into active crypto nodes. It enables users to:
- 📦 Create and accept delivery jobs on-chain
- 🔐 Use zkCompression to reduce storage and transaction costs
- 🚗 Earn passive crypto by running “Car-as-a-Node”
- 🧠 Participate in DAO governance to vote on features and fees
- 🛰 Track deliveries in real time with decentralized communication
- Solana + Anchor: Smart contract framework
- zkCompression (Light Protocol): Verifiable, low-cost off-chain data
- React Native: Mobile app frontend
- Solana Mobile Wallet Adapter: Wallet authentication
- TypeScript: Client-side logic and contract interaction
- DAO Framework: Community governance and voting
| Feature | Description |
|---|---|
| Delivery Job Marketplace | Senders post delivery tasks with crypto rewards |
| zkCompression | Compress delivery metadata off-chain, commit Merkle root on-chain |
| Car-as-a-Node | Couriers earn extra by providing coverage/data passively |
| DAO Governance | Token holders vote on protocol decisions, fees, and upgrades |
| Realtime Tracking & Calls | Location tracking + secure calls between senders and couriers |
| Courier Ranking System | Area-based ranking and reward multipliers for top performers |
git clone https://github.com/osas2211/carry.git
cd carry
This is an [Expo](https://expo.dev) project created with [`create-expo-app`](https://www.npmjs.com/package/create-expo-app).
## Get started
1. Mobile setup
```bash
cd mobile```
2. Install dependencies
```bash
npm install```
3. Start the app
```bash
npx expo startIn the output, you'll find options to open the app in a
- development build
- Android emulator
- iOS simulator
- Expo Go, a limited sandbox for trying out app development with Expo
You can start developing by editing the files inside the app directory. This project uses file-based routing.
When you're ready, run:
npm run reset-projectThis command will move the starter code to the app-example directory and create a blank app directory where you can start developing.
To learn more about developing your project with Expo, look at the following resources:
- Expo documentation: Learn fundamentals, or go into advanced topics with our guides.
- Learn Expo tutorial: Follow a step-by-step tutorial where you'll create a project that runs on Android, iOS, and the web.
Join our community of developers creating universal apps.
- Expo on GitHub: View our open source platform and contribute.
- Discord community: Chat with Expo users and ask questions.