FarmConnect - Farmer Community Platform

A vibrant platform where farmers can manage their crops and livestock, connect with other farmers, and discuss agricultural topics.

Features

  • User Authentication: Username-based registration and login
  • Crop & Livestock Management: Upload and manage farm assets
  • Community Lobby: Real-time discussions about farming issues
  • Personal Dashboard: View and manage your farm inventory
  • Responsive Design: Works on desktop and mobile devices

Project Structure

├── backend/
│   ├── database/
│   │   ├── migrations.ts    # Database schema setup
│   │   └── queries.ts       # Database query functions
│   ├── routes/
│   │   ├── auth.ts         # Authentication routes
│   │   ├── crops.ts        # Crop management routes
│   │   ├── livestock.ts    # Livestock management routes
│   │   └── discussions.ts  # Community discussion routes
│   └── index.ts            # Main server entry point
├── frontend/
│   ├── components/
│   │   ├── App.tsx         # Main application component
│   │   ├── Dashboard.tsx   # Farmer dashboard
│   │   ├── Lobby.tsx       # Community discussion lobby
│   │   └── Auth.tsx        # Login/register forms
│   ├── index.html          # Main HTML template
│   └── index.tsx           # Frontend entry point
└── shared/
    └── types.ts            # Shared TypeScript types

Technology Stack

  • Backend: Hono.js API framework
  • Database: SQLite for data persistence
  • Frontend: React with TypeScript
  • Styling: TailwindCSS for responsive design
  • Real-time: Polling for live updates

Getting Started

The app is automatically deployed on Val Town. Simply access the HTTP endpoint to start using the platform.

Database Schema

  • users: User accounts with usernames
  • crops: Crop inventory with details
  • livestock: Livestock inventory with details
  • discussions: Community discussion posts