A peer-to-peer marketplace mobile app that works offline using Bluetooth Low Energy (BLE). Connect with neighbors to trade goods, services, and find local activities.
- Sell items with photos
- Buy from neighbors
- Offer or find services
- Give away free items
- Social activities: drinks, parties, sports
- Board games and video games
- Walks and coffee meetups
Signal strength bars show distance:
- 5 bars: ≤30m (very close)
- 4 bars: 30-50m (close)
- 3 bars: 50-100m (nearby)
- 2 bars: 100-200m
- 1 bar: 200-500m
- 0 bars: >500m
- Direct chat with sellers and buyers
- Discuss details and plan meetups
- Fully offline using Bluetooth Low Energy
- Automatic sync between nearby devices
- Local data transfer via BLE
- No servers or external connections
- Data stays within the local device network
- Automatic distance calculation
- Real-time proximity indicators
- Precision within 30 meters
- iOS 13.0+ or Android 5.0+
- Bluetooth Low Energy support
- Permissions: Bluetooth, location, camera
git clone <repository-url>
cd doorstep30
npm installnpm startScan the QR code with Expo Go on your phone.
npm run android # Android
npm run ios # iOS (macOS only)
npm run web # Web browser- Open the app
- Complete registration (name, phone, description)
- App automatically starts searching for neighbors via Bluetooth
- Go to "Create Listing" tab
- Choose type (sell, buy, service, free)
- Add photo and description
- Set price if needed
- Tap "Create Listing"
- Go to "Find Company" tab
- Tap "+" to create listing
- Select activity type
- Set time and description
- Tap "Find Company"
- Tap a listing for details
- Use "Chat" to contact the author
- Discuss details or plan a meetup
doorstep30/
├── src/
│ ├── components/ # Reusable components
│ ├── screens/ # App screens
│ ├── services/ # BLE services
│ ├── context/ # React Context
│ └── utils/ # Utilities
├── assets/ # Images and icons
├── App.js # Main component
└── package.json # Dependencies
- BLEService - Bluetooth Low Energy management
- UserContext - User data management
- SignalStrengthIndicator - Proximity indicator
- AdCard - Listing card
- Create new screen in
src/screens/ - Add navigation in
App.js - Update BLE service for new message types
- BLE range limited to ~100m in ideal conditions
- Performance depends on nearby device count
- Requires Bluetooth enabled on all devices
- Location services must be enabled
MIT License - see LICENSE file
Doorstep30 - Connecting neighbors offline 🏠📱
