An AI-powered Progressive Web Application (PWA) designed specifically for Indian smallholder farmers. KrushiMind provides offline-first access to essential farming tools, including crop identification, financial management, community engagement, and marketplace features.
- Crop Identification: AI-powered tool to identify crops and provide detailed information
- Financial Tools: Manage farm finances, access government schemes, and calculate profits
- Community Platform: Connect with other farmers, share experiences, and learn from the community
- Marketplace: Buy and sell agricultural products directly with other farmers
- Offline-First: Works without internet connection, syncs when online
- PWA Support: Installable on mobile devices for easy access
- Frontend: Next.js, React, Tailwind CSS
- AI/ML: TensorFlow.js, Google Generative AI
- Storage: IndexedDB, Local Storage
- Backend: Node.js, Express
- Database: SQLite3
- PWA: Next-PWA, Workbox
- Node.js (v14 or higher)
- npm or yarn
- Clone the repository:
git clone https://github.com/yourusername/krushimind.git
cd krushimind
- Install dependencies:
npm install
# or
yarn install
- Start the development server:
npm run dev
# or
yarn dev
- Open http://localhost:3000 in your browser.
npm run build
npm start
- Open the application in a supported browser (Chrome, Edge, etc.)
- Look for the install prompt or use the browser's menu to "Install" the app
- The app will be installed on your device and can be launched like a native application
For detailed architecture information, please refer to:
- JWT-based authentication
- Data encryption at rest
- Secure data transmission
- Input validation and sanitization
- Access control mechanisms
Key dependencies include:
- @google/generative-ai: For AI-powered features
- @tensorflow/tfjs: For machine learning capabilities
- next-pwa: For PWA functionality
- idb: For IndexedDB operations
- express: For backend server
- sqlite3: For local database
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- TensorFlow.js team for ML capabilities
- Next.js team for the amazing framework
- All contributors and supporters of the project