FarmFresh

Overview

Problem/Motivation

Often smaller farms do not have the resources to sell their products to a larger audience. It is expensive and complicated to build and maintain a sophisticated platform for connecting with customers to sell their products. There are of course a variety of avenues for farmers to reach consumers such as seasonal farmers markets but their location and frequency is highly variable. The goal is to empower local farmers to connect directly with customers on their own terms.

This project was inspired by from my personal experiences. I had been buying unpasteurized milk and other hard to find products from a local farm for quite some time and began to really value having access to unique products from a local farm rather than solely being dependent on traditional retail grocery chains or farmers markets. The farm that I purchase from has a mobile trailer which is parked multiple times throughout the week at different locations during regular time slots in order to reach a wide variety of customers. The goal of this project is to create a platform to enable this coordination between local farmers and customers that is both extremely easy to operate and free for farmers.

Users

The target user group is local farmers interested in reaching more customers and customers who are interested in buying from local farms.

farmfresh product search page

Logistics

  • Duration: May 2018
  • The Team: James & Chris
  • My Role: Design, Development

Research & Results

Exploratory Research

To get a better understanding of the local farmers user group, I extensively searched through websites of smaller farmers to research into how they currently were selling their products to consumers. There were a variety of existing ways but there I couldn’t find any platform that would enable a farmer to register to easily have a means for connecting with and potential customers nearby. I spoke with several farmers in the form of unstructured interviews so simply get a understanding of their needs and how my platform could best serve them.

Design

Based on my research collected from conducting a competitive analysis and conversations with local farmers, I came up with a series of core tasks that the platform should be able to achieve.

  • Customers can use predictive search bar to query for products
  • Customers can search for products based on category filtering
  • Customers search results return closest location to them
  • Vendors can create a homepage to display their information
  • Vendors can add both products and selling locations to database

Following this I made a series of wireframes to plot out the various screens and their relationships that would exist within the platform.

farmfresh wireframes

Implementation

I created the application in a fairly short time-frame (~ 1 week) using React. I wanted to challenge myself to become familiar with newer technologies so I specifically choose build my node server with Koa.js rather than Express.js and GraphQl rather than REST.

The following are the technologies powering the application:

  • Client-side routing with React Router
  • Authentication using JSON web tokens and bcrypt
  • GraphQL server that enables sophisticated client-side querying
  • State management with Redux
  • Responsive mobile-first CSS Grid/ Flexbox Layout