AgroLink SL β Sierra Leone farm-to-buyer marketplace. React Native + Expo SDK 54 + Firebase + Gemini AI.
# πΎ AgroLink SL
**Sierra Leone's Farm-to-Buyer Mobile Marketplace**
Connect smallholder farmers directly with urban buyers β no middlemen, fair prices, real-time delivery tracking, and AI-powered farming advice.
---
## Tech Stack
| Layer | Technology |
|---|---|
| Framework | React Native 0.81.5 + **Expo SDK 54** |
| Language | TypeScript 5.9 (strict mode) |
| Navigation | Expo Router 6 (file-based) |
| Backend | Google Firebase (Auth + Firestore) |
| AI Assistant | Google Gemini 1.5 Flash (AgroBot) |
| Payments | Orange Money Β· Africell Money Β· Cash on Delivery |
| State | React Context (useAuth, useCart, useProducts) |
---
## Features
- **Dual Role System** β separate experiences for Farmers and Buyers
- **Live Market** β 24 seeded products across 8 categories
- **AgroBot AI** β Gemini-powered farming assistant with offline fallback
- **Order Tracking** β animated 5-step delivery timeline
- **Mobile Money** β Orange Money & Africell Money PIN simulation
- **Farm Coins** β loyalty reward system for buyers
- **Farmer Dashboard** β inventory, orders, and revenue analytics
- **Flash Deals** β featured discounted products on home screen
---
## Quick Start
### 1 β Clone & install
```bash
git clone
github.com
cd agrolink-sl
npm install
```
### 2 β Start the app
```bash
npx expo start --clear
```
Scan the QR code with **Expo Go** on your phone, or press `w` to open in browser.
### 3 β Seed the database (first time only)
```bash
node scripts/seed.mjs
```
### 4 β Test both roles
- Register as **Farmer** β go to "My Farm" tab β add products β manage orders
- Register as **Buyer** β browse market β add to basket β checkout β track delivery
---
## Project Structure
```
app/
tabs/ # Bottom nav screens (Home, Cart, Dashboard, Orders, AgroBot, Profile)
orders/[id].tsx # Order detail + delivery tracking
product/[id].tsx# Product detail
ai-assistant.tsx# AgroBot full chat screen
checkout.tsx # Order checkout
payme β¦