AgriLoop is a hackathon MVP for shared farm equipment coordination.
The backend provides a JSON API for:
- user registration/login (JWT auth)
- equipment records
- rental groups and participants
- deterministic schedule generation
- handoff confirmation workflow (return + receipt)
- issue detection when handoff conditions disagree
- AI-powered (with fallback) risk/demo summaries
- demo seed/reset endpoints
A Vue 3 frontend boilerplate is included in frontend/.
.
├── backend/ # FastAPI + MongoDB backend
├── frontend/ # Vue 3 + Vite frontend boilerplate
├── frontend-imp.md # Frontend implementation guide + API schemas
├── docker-compose.yml # Backend stack (api + mongo + mongo-express)
└── .env # Root environment configuration
- Docker + Docker Compose
- Node.js 20+ and npm (for frontend local dev)
Use only the root env files.
- Copy
.env.exampleto.env - Remove the
.exampleextension (result must be exactly.env)
Example:
cp .env.example .envdocker compose up --buildBackend URLs:
- API:
http://localhost:8000 - Swagger docs:
http://localhost:8000/docs - Mongo:
localhost:27017 - Mongo Express:
http://localhost:8081
In a second terminal (while backend is running):
bash backend/app/scripts/e2e.shThis script validates the main API flow from health -> auth -> scheduling -> handoffs -> AI -> delay.
cd frontend
npm install
npm run devFrontend URL:
- App:
http://localhost:5173
The frontend should call backend endpoints at http://localhost:8000.
Branding assets were moved to:
frontend/public/branding/*
Favicon is wired in:
frontend/index.html
and served from:
frontend/public/favicon.icofrontend/public/favicon-32x32.pngfrontend/public/favicon-16x16.png
Detailed frontend visual scope and API request/response schemas are documented in:
frontend-imp.md