This is me trying a build a app where farmers can buy and sell products online.
# πΎ Gambian Farmers Market
### E-Farming Marketplace
**Connect Gambian farmers with buyers. Fresh products from farm to table.**
A full-stack web application where farmers can sell agricultural goods and buyers can purchase fresh products directly from farms.
---
## Why Choose Gambian Farmers Market?
| | |
|---|---|
| **πΎ Fresh Products** | Direct from farmers to ensure freshness and quality |
| **π° Fair Prices** | Cut middlemen and get the best prices |
| **π Fast Delivery** | Quick and reliable delivery to your doorstep |
| **π‘οΈ Secure Transactions** | Safe and secure payment options |
---
## Features
### For Buyers
β
Browse agricultural products by category
β
Search for specific products
β
Add products to shopping cart
β
Place orders
β
Track order status
β
View order history
β
Manage user profile
### For Farmers
β
List agricultural products for sale
β
Manage product inventory
β
View sales and orders
β
Track customer orders
β
Admin dashboard
## π οΈ Tech Stack
### π¨ Frontend
β
**React 18** - UI library
β
**Vite** - Build tool
β
**React Router** - Client-side routing
β
**Axios** - HTTP client
β
**CSS3** - Styling
### π§ Backend
β
**Node.js** - Runtime environment
β
**Express.js** - Web framework
β
**MongoDB** - NoSQL database
β
**Mongoose** - ODM (Object Document Mapper)
β
**JWT** - Authentication
β
**bcryptjs** - Password hashing
β
**Multer** - File uploads
β
**CORS** - Cross-origin resource sharing
## π Project Structure
```
Gambian Farmers Market/
β
βββ π server/ # Backend Application (Node.js + Express)
β βββ π models/ # MongoDB Schemas
β βββ π controllers/ # Business Logic
β βββ π routes/ # API Endpoints
β βββ π middleware/ # Authentication & Validation
β βββ π config/ # Configuration Files
β βββ π uploads/ # Uploaded Files
β βββ π server.js # Entry Point
β βββ π package.json
β βββ π .env.example # Environment Variables Template
β
βββ π client/ β¦