How uvindu12/agroedge-frontend works
AgroEdge is a farmer-facing agricultural management platform: farmers create crop sessions, record farm activities, and review session summaries and reports, alongside crop recommendations and a farmer community. The repository separates a Next.js client from several backend services. Sampled activity controllers show session and upload persistence and summary calculation; the README documents recommendation, machine-learning, and community capabilities. Their detailed client wiring is not established by the sampled source, so those links are kept conservative.
Main entry points: api.ts API client · app Next.js app · server.js Activity API · uploadController.js Activity uploads
Components 21
Farmer interface
- Next.js app
client/src/app - Farm dashboards
client/src/app/components/dashboard - Activity pages
client/src/app/activities - Reports
client/src/app/farmer-report/page.tsx - API client
client/src/lib/api.ts
Farm operations
- Activity API
server/activity/server.js - Session handling
server/activity/controllers/sessionController.js - Activity uploads
server/activity/controllers/uploadController.js - Upload routes
server/activity/routes/uploadRoutes.js - Session routes
server/management/server/routes/sessionRoutes.js - Farm records
server/activity/models/Session.js - Session summaries
server/activity/services/calculationService.js - KPI reporting
server/activity/routes/kpiRoutes.js
Decision support
- Crop recommender
server/crop-recommendation-system/routes/api.js - ML service
server/ML_backend/app/main.py - KPI computation
server/ML_part/recommendation_part/app/main.py
Community and profiles
- Community API
server/community/server.js - Live chat
server/community/sockets/chat.js - User profiles
server/user-profile/routes/api.js - Community data
server/community/config/db.js
Other components
- Farmer
Connections 23
- Farmer → Next.js app: uses
- Next.js app → Farm dashboards: opens
- Next.js app → Activity pages: opens
- Next.js app → Reports: opens
- Farm dashboards → API client: requests data
- Activity pages → API client: submits activity
- Reports → API client: requests reports
- API client → Activity API: API requests
- Activity API → Session routes: mounts routes
- Activity API → Upload routes: mounts routes
- Session routes → Session handling: dispatches
- Upload routes → Activity uploads: dispatches
- Session handling → Farm records: reads and writes
- Activity uploads → Farm records: checks sessions
- Activity uploads → Session summaries: calculates summaries
- Session summaries → Farm records: summarizes records
- API client → Crop recommender: recommendation requests
- API client → ML service: ML requests
- API client → Community API: community requests
- Community API → Live chat: sets up sockets
- Community API → Community data: uses database
- API client → User profiles: profile requests
- KPI reporting → KPI computation: posts KPI