# Farm Manager
A comprehensive web application for banana farm management in Kenya.
## Overview
Farm Manager is a modern web application designed to streamline banana farm operations. It provides an integrated platform for tracking farm health, managing tasks, monitoring growth, recording financial transactions, and sharing agricultural knowledge.
## Features
- **Dashboard**: Comprehensive overview of farm operations and key metrics
- **Farm Management**: Track and manage multiple farms and plots
- **Task Management**: Assign and track farm-related tasks
- **Financial Management**: Record sales, expenses, and generate reports
- **Growth Tracking**: Monitor plant development and plan harvests
- **Knowledge Base**: Access agricultural best practices and guidance
- **Team Management**: Coordinate farm workers and assign responsibilities
- **User Authentication**: Secure role-based access control
## Tech Stack
- **Frontend**: Next.js, React, TypeScript, Tailwind CSS, shadcn/ui
- **Backend**: Next.js Server Actions, Drizzle ORM
- **Database**: Neon PostgreSQL (serverless)
- **Authentication**: NextAuth.js with email and Google OAuth
- **Deployment**: Vercel
## Getting Started
### Prerequisites
- Node.js (v18.17.0 or higher)
- npm or yarn
- Git
### Installation
1. Clone the repository
```bash
git clone
github.com
cd farm-manager
```
2. Install dependencies
```bash
npm install
# or
yarn install
```
3. Set up environment variables
Copy the `.env.example` file to `.env.local` and fill in the required values:
```bash
cp .env.example .env.local
```
4. Run the development server
```bash
npm run dev
# or
yarn dev
```
5. Open
localhost in your browser
### Database Setup
1. Create a Neon PostgreSQL database at neon.tech
2. Update the `DATABASE_URL` in your `.env.local` file
3. Run database migrations
```bash
npm run db:push
# or
yarn db:push
```
## Project Structure
```
farm-manager/
├── app/ # Nex …