Farmer Brand is a full-stack agriculture marketplace platform built with Flutter (Frontend) and Node.js + Express (Backend).
The platform enables farmers to sell products directly to customers, manage inventory, and handle orders efficiently with secure authentication and real-time updates.
- JWT-based authentication
- bcrypt password hashing
- OTP login with phone verification
- Role-based access (Farmer / Customer / Admin)
- Secure middleware route protection
- Add agricultural products
- Upload product images
- Manage pricing & stock
- Update product availability
- Track incoming orders
- Dashboard for sales overview
- Browse products by category
- Search products (keyword-based search)
- View product details
- Add to cart
- Place orders
- Track order status
- Real-time order creation
- Order status tracking:
- 🟡 Pending
- 🔵 Confirmed
- 🚚 Shipped
- 🟢 Delivered
- 🔴 Cancelled
- Inventory auto-update after purchase
- Clean and responsive UI
- Connectivity-aware UX (online/offline handling)
- Advanced search optimization
- State management integration
- Smooth navigation flow
- Secure token storage
- RESTful API architecture
- Product CRUD APIs
- Order management APIs
- Image upload using Multer
- MongoDB database integration
- Admin monitoring routes
- Push notifications for:
- New orders
- Order confirmation
- Delivery updates
- Firebase integration for device token handling
Flutter App
↓ REST API
Node.js + Express
↓
MongoDB Database
↓
Firebase Services
- Modular backend structure
- Scalable API design
- Secure token-based communication
- Flutter
- Dart
- Firebase
- Connectivity Plus
- Node.js
- Express.js
- MongoDB
- JWT
- bcrypt
- Multer
- Firebase Admin SDK
- Direct farmer-to-customer selling model
- Secure authentication & role management
- Real-time order lifecycle tracking
- Inventory management system
- Scalable marketplace architecture
This project is licensed under the MIT License.