Empowering Farmers, Enriching Lives
FarmConnect is a mobile application designed to create a seamless online marketplace for farmers to sell their produce directly to buyers. The app aims to revolutionize agricultural trade by eliminating middlemen, promoting fair trade practices, and fostering direct communication between farmers and buyers.
- Login/Signup: Secure authentication for farmers.
- Post a Product: Add details of crops or produce, including price and quantity.
- Incoming Requests: View and manage requests from buyers.
- Chat with Buyers: Real-time chat to negotiate and finalize deals.
- Profile Update: Manage and update personal information.
- Login/Signup: Secure authentication for buyers.
- Browse Products: View all available products with advanced filtering options.
- Apply Bid: Submit bids for desired products.
- View Applied Bids: Keep track of bids submitted.
- Chat with Farmers: Real-time chat for better deal-making.
- Profile Update: Manage and update personal information.
- Real-Time Updates: Chat functionality powered by Supabase real-time database
Technology | Purpose |
---|---|
TypeScript | Strongly-typed development |
React Native | Cross-platform mobile app development |
Expo | Fast prototyping and deployment |
Supabase | Backend as a Service (BaaS) with real-time capabilities |
PostgreSQL | Relational database for structured data |
FarmConnect's database schema is designed to handle farmer and buyer interactions efficiently.
graph TD
A[Users] -->|One-to-Many| B[Conversations]
B -->|One-to-Many| C[Messages]
A -->|One-to-Many| D[Products]
D -->|Belongs-to| E[Crops]
D -->|Belongs-to| F[Categories]
G[Bids] -->|One-to-Many| D
- Users: Stores details of farmers and buyers.
- Products: Details about the crops/products being sold.
- Crops: Master table for crop categories.
- Categories: Subcategories for produce.
- Bids: Buyer bids on products.
- Conversations: Stores chat sessions.
- Messages: Handles individual chat messages.
Follow these steps to set up the project locally:
- Node.js (v16 or later)
- Expo CLI
- Supabase account with database setup
-
Clone the Repository
git clone https://github.com/govindKulk/farmconnect-expo-rn.git cd FarmConnect
-
Install Dependencies
npm install
-
Set Up Environment Variables
- Create a
.env
file in the root directory. - Add the following variables:
SUPABASE_URL=your_supabase_url SUPABASE_ANON_KEY=your_supabase_anon_key
- Create a
-
Run the Development Server
npm start
-
Open the App
- Scan the QR code with the Expo Go app on your phone.
- Payment Gateway Integration: Secure online payments for transactions.
- Analytics Dashboard: Insights for both farmers and buyers.
- Multi-Language Support: Expand accessibility to regional users.
- Crop Price Prediction: Use AI to predict optimal prices.
- Name: Govind Kulkarni
- Email: [[email protected]]
- LinkedIn: LinkedIn: Govind Kulkarni
Contributions, issues, and feature requests are welcome!
Feel free to check the issues page.