A comprehensive system for managing farmers, fields, harvests, payments, and reports with a React frontend and MongoDB backend.
.
├── backend/ # Node.js + Express backend with MongoDB
│ ├── src/ # Source code
│ │ ├── config/ # Database configuration
│ │ ├── controllers/ # Request handlers
│ │ ├── models/ # Data models
│ │ ├── routes/ # API routes
│ │ ├── services/ # Business logic
│ │ └── server.ts # Main server file
│ ├── .env # Environment variables
│ ├── package.json # Backend dependencies
│ └── README.md # Backend documentation
├── database/ # Database schema files
│ ├── schema.sql # Original SQL schema
│ └── mongodb-schema.md # MongoDB schema design
├── design/ # Design documents
│ └── dashboards.md # Dashboard wireframes
└── frontend/ # React + TypeScript frontend
├── src/ # Source code
│ ├── services/ # API service clients
│ ├── App.tsx # Main application component
│ └── main.tsx # Entry point
├── package.json # Frontend dependencies
└── README.md # Frontend documentation
- React 18+
- TypeScript
- Vite
- Axios for HTTP requests
- Node.js
- Express.js
- MongoDB with official MongoDB driver
- TypeScript
- MongoDB
- Node.js (v14 or higher)
- MongoDB (v4.4 or higher) - Installation Guide
- npm or yarn
-
Clone the repository
-
Install frontend dependencies:
cd frontend npm install -
Install backend dependencies:
cd backend npm install
-
Configure MongoDB connection in
backend/.env:MONGODB_URI=mongodb://localhost:27017/fmis DB_NAME=fmis PORT=5000
-
Make sure MongoDB is running on your system
cd backend
npm run devThe backend server will start on port 5000 by default.
cd frontend
npm run devThe frontend development server will start on port 5173 by default.
cd backend
npm run build
npm startcd frontend
npm run buildThis project is licensed under the MIT License.