MannMathi is a comprehensive mobile application built with React Native and Expo, designed to assist farmers and agricultural enthusiasts. It features an intelligent chatbot, plant and soil disease diagnostics, weather updates, market prices, agricultural news, and scheme information to empower the farming community.
- Plant & Soil Doctor: Diagnose crop and soil diseases seamlessly.
- Smart Chatbot: AI-powered conversational agent for agricultural queries.
- Weather Forecasting: Real-time localized weather updates and alerts.
- Market Prices: Up-to-date commodity pricing for farmers.
- Agricultural News & Schemes: Stay informed about the latest news and government schemes.
- Multilingual Support: Select preferred language for an inclusive experience.
- Frontend: React Native, Expo, Expo Router
- Styling: NativeWind (Tailwind CSS for React Native)
- Backend/API: Node.js Express (Proxy Server)
- AI/ML Services: Groq SDK, Hugging Face Inference
- Database/Auth: Appwrite, Firebase
- Others: Axios, Cheerio, React Native Reanimated
graph TD
A[MannMathi] --> B[app]
A --> C[components]
A --> D[server]
A --> E[assets]
A --> F[constants]
A --> G[data]
A --> H[hooks]
A --> I[utils]
B --> B1[home.jsx]
B --> B2[chat-bot.jsx]
B --> B3[plant-doc.jsx]
B --> B4[soil-doc.jsx]
B --> B5[weather.jsx]
B --> B6[market.jsx]
B --> B7[schemes.jsx]
B --> B8[news.jsx]
C --> C1[ChatBubble.jsx]
D --> D1[proxy.js]
style A fill:#4CAF50,stroke:#388E3C,stroke-width:2px,color:#fff
style B fill:#81C784,stroke:#388E3C,color:#000
style C fill:#81C784,stroke:#388E3C,color:#000
style D fill:#81C784,stroke:#388E3C,color:#000
flowchart LR
subgraph Frontend [Mobile App - Expo/React Native]
UI[User Interface]
Router[Expo Router]
end
subgraph Backend [Backend Services]
Proxy[Node.js Proxy Server]
end
subgraph External [External APIs & Services]
AI[Groq & Hugging Face]
DB[Appwrite & Firebase]
WeatherMarket[Weather & Market APIs]
end
UI <--> Router
Router <--> Proxy
Router <--> AI
Router <--> DB
Proxy <--> WeatherMarket
Ensure you have the following installed:
- Node.js (v16 or higher)
- npm or yarn
- Expo CLI (
npm install -g expo-cli)
- Clone the repository and navigate to the project directory.
- Install dependencies:
npm install
-
Start the Expo development server:
npx expo start
-
Run the proxy server (if required for API requests):
cd server node proxy.js -
Open the app on your device or emulator:
- Press
ato open on Android. - Press
ito open on iOS. - Scan the QR code with the Expo Go app on your physical device.
- Press
Contributions, issues, and feature requests are welcome! Feel free to check the issues page.