Smart farming platform offering free advice, tools, and insights to help farmers grow better, sustainably and profitably.
# Farm-Link Zambia: Agricultural Advisory Platform
A production-ready monorepo for Farm-Link Zambia, featuring React, TypeScript, Tailwind CSS, Shadcn UI, tRPC, and TanStack Query, with Google Cloud integration for RAG-powered agricultural advice. Built with pnpm and Turborepo for optimal developer experience.
## Stack Overview
Think of building a web app like putting on a theater production!
| Tool | Role | Analogy |
| ------------------ | --------------- | ---------------------------------------------- |
| **pnpm** | Package Manager | The super-organized prop master |
| **Turborepo** | Build System | The stage manager coordinating tasks |
| **React + Vite** | Frontend | The stage and lighting system |
| **TypeScript** | Type Safety | The script ensuring everyone knows their lines |
| **Tailwind CSS** | Styling | The costume designer's fabric swatches |
| **Shadcn UI** | Components | Pre-made costume patterns |
| **tRPC** | API Layer | The messenger between actors |
| **TanStack Query** | Data Fetching | Smart caching (remembers the script!) |
| **Vitest** | Testing | Dress rehearsals before the show |
| **Zod** | Validation | The bouncer checking IDs |
## Monorepo Structure
```markdown
├── .github/
│ ├── workflows/ # CI/CD pipelines (ready to use!)
│ ├── CODEOWNERS # Auto-assign reviewers
│ └── ISSUE_TEMPLATE/ # Issue & PR templates
│
├── apps/
│ ├── web/ # React frontend (Vite + Tailwind)
│ │ ├── src/
│ │ │ ├── App.tsx # Main application component
│ │ │ ├── hooks/ # Custom React hooks
│ │ │ ├── lib/ # Utilities (tRPC client, query client)
│ │ │ └── providers/# Context providers
│ │ …