AI-assisted hybrid agricultural financing platform for Burkina Faso — academic prototype and bachelor thesis
# AgriLens Platform
AgriLens is an AI-assisted hybrid agricultural-financing platform designed for
Burkina Faso. It combines farmer and investor mobile journeys, a portal for
partner financial institutions, an AgriLens operations console, a
tenant-isolated institution API, and an explainable versioned assessment
mechanism.
All people, projects, amounts, assessments, and financial operations included
in this academic prototype are synthetic.
## Applications
- `apps/mobile`: Expo application for farmers and private investors.
- `apps/institution-portal`: web workspace for partner financial institutions.
- `apps/operations-console`: web supervision console for AgriLens.
- `apps/institution-api`: NestJS API with PostgreSQL RLS, audit, persisted
application analysis, and integration tests.
## Shared packages
- `packages/design-tokens`: visual identity shared by the applications.
- `packages/shared-types`: frontend domain contracts.
- `packages/mock-api`: synthetic records and asynchronous service interfaces.
## Infrastructure
Docker Compose provides PostgreSQL 16, Redis 7, MinIO, Mailpit, and the
institution API. The database is migrated and seeded deterministically when
the API starts.
## Commands
```bash
npm install
npm run typecheck
npm run build:web
npm test --workspace=@agrilens/institution-api
docker compose up -d --build postgres redis minio mailpit institution-api
npm run dev:mobile
npm run dev:institution
npm run dev:operations
```
## Thesis
The English bachelor thesis, LaTeX source, diagrams, interface evidence, and
reproduction guide are stored in `thesis/`. A compiled submission copy is
available as `Agrilens-Thesis.pdf`.
## Academic and operational boundary
AgriLens is non-custodial. Live identity verification, lending, investment
administration, insurance, and movement of funds require authorised external
partners. AlphaScore is explainable decision support and never replaces the
authorised human decision.