Agent-as-a-Service platform enabling agronomists to train configurable AI agents that scale agricultural extension services in Ghana, built on a reusable multi-tenant architecture.
# Cultivate — AaaS Platform for Agricultural Extension
> **Agent-as-a-Service (AaaS) platform** that lets agronomists train configurable AI agents to scale agricultural extension services in Ghana.
**Project:** CS Applied Capstone at Ashesi University
**Developer:** Kelvin Ahiakpor
**Supervisor:** Dr. David Ebo Adjepon-Yamoah
**Partner:** Farmitecture (Accra-based urban farming startup)
---
## 🌱 Project Overview
Cultivate addresses the **1:1,500 agronomist-to-farmer ratio** problem in Ghana by enabling agronomists to create AI agents that provide on-demand agricultural advice to farmers via chat. Think of it as "ChatGPT for farming" where agronomists control the knowledge base and quality.
### Two User Types
- **Agronomists** — Train agents, upload knowledge bases (PDFs/docs), review flagged queries, monitor usage
- **Farmers** — Chat with AI agents, get instant agricultural advice, rate responses
---
## 🚀 Quick Start
### Prerequisites
- Node.js 20+
- PostgreSQL database (Supabase)
- `.env` file configured
### Installation
```bash
# Install dependencies
npm install
# Generate Prisma client
npx prisma generate
# Seed test data
npm run db:seed
# Start development server
npm run dev
```
Visit
localhost
**Test Accounts:**
- Agronomist: `agronomist@farmitecture.com` / `password123`
- Farmer: `farmer@farmitecture.com` / `password123`
For detailed setup instructions, see SETUP.md.
---
## 📦 Tech Stack
| Component | Technology | Reason |
|-----------|-----------|--------|
| Framework | Next.js 16 App Router | SSR, API routes, TypeScript |
| Database | Supabase PostgreSQL | Session Pooler (dev) / Transaction Pooler (prod) |
| ORM | Prisma 7 + PrismaPg | Type-safe DB access |
| Auth | NextAuth.js v5 | Email/password, role-based |
| Styling | Tailwind CSS | Rapid prototyping |
| UI Components | Radix UI + shadcn/ui | Accessible, customizable |
| Icons | Lucide React | Consistent icon system |
| LLM | Claude Sonnet 4.5 | Via Anthropic SDK |
| AI …