OpenFarm - The Database That Drives FarmBot

A project log for FarmBot - Open-Source CNC Farming

FarmBot is an open-source CNC farming machine and software package built for small scale, hyper local, DIY food production.

Rory AronsonRory Aronson 08/28/2014 at 20:100 Comments

We launched a Kickstarter campaign for OpenFarm, a free and open database for farming and gardening knowledge! OpenFarm came out of the need for FarmBot to access structured, detailed data for how to grow a plant in a specific environment with specific growing practices.

We found that this data did not yet exist and figured the best way to obtain it was with a website where anyone could contribute the data, much like Wikipedia. We then figured that if we were to build such a database, it should not be exclusive for FarmBot users, but accessible by anyone via an API, open licensing, and a dedicated frontend interface.

Check out the campaign and help fund this project!

//////////// From the Kickstarter Campaign:

Help us build the Wikipedia for farming and gardening!

The Problem

When searching for plant growing advice, it is common to run into the following situations:

The OpenFarm Solution

OpenFarm is a free and open database for farming and gardening knowledge. Similar to Wikipedia, the data is free for everyone to access and anyone can contribute content. Because people grow plants differently based on environmental conditions and growing practices, OpenFarm provides a framework for everyone to share their story, and for learners to find the best, most relevant content.

OpenFarm Growing Guides are structured stories for growing a specific plant with particular practices and environmental conditions. Below, is a mockup example of Nancy's Guide for growing Heirloom Tomatoes with organic practices, in a greenhouse. Below the image are descriptions for each of the sections of the guide.

Click here for a larger view of the image!Click here for a larger view of the image!

See what the Growing Guides will look like on a smartphone here.

In the example above, the Overview serves to introduce the reader to the guide by providing a photo of the plant at its maturity and a personal note from Nancy. There is also a table of contents for quickly jumping to another section.

Next is the Prerequisites section. Nancy has specified what prerequisites are required for her Guide, and based on the reader's OpenFarm profile a "Compatibility Score" is created. In the example above we see that Nancy's guide is 84% compatible with the reader and their garden because most of the prerequisites have green backgrounds, indicating that they are satisfied. Others have yellow and red backgrounds, indicating that they are not fully satisfied. Mouse-over tooltips show why each prerequisite was satisfied or not.

Following the Prerequisites section is the Timeline, allowing the reader to quickly see if it is the right time of year for them to grow the plant. The timeline is based on the reader's local weather history, and the Growing Degree-Days that the plant is projected to experience in that location.

If Prerequisites are met and it is the right time to grow the plant, the reader reaches theGrowing Instructions which are organized by the plant's life stages. In Nancy's guide there are the Prep, Sow, Germination, Seedling, Juvenile, Adult, Flowering, and Fruitingstages. Within each stage Nancy specified what things she recommends to do, and when and how to do them. Some examples:

In addition to the Life Stages, an Overview informs the reader of what tools, fertilizers, pesticides, and other supplies are called for throughout the Guide. A Summary lists expected time commitment and water usage over the plant's life, and other cumulative figures.

The last section is the Forum where the community can discuss the Guide, ask questions, post photos, and share additional advice. Forum posts can be tagged, searched, filtered, and given the "Green Thumbs Up."

Searching for Guides

Individual Guides will not be relevant for everyone, therefore an unlimited number of guides can be created for each plant. Some will be similar while others may be tailored to very different environmental conditions, plant varieties, or growing styles.

When users search the OpenFarm database they will be shown a list of all Guides that match their search term, sorted by compatibility and rating. The search results may be filtered by sun-shade requirements, growing practices, soil types, and more.

Below is a mockup example search page for Heirloom Tomatoes.

Click here for a larger view of the image!Click here for a larger view of the image!

Other Use Cases

Open Data and an API

All of OpenFarm's data will be licensed under a Creative Commons Attribution 4.0 International License, allowing everyone to:

Share — copy and redistribute the material in any medium or format; and

Adapt — remix, transform, and build upon the material for any purpose, even commercially.

In addition to openly licensing the data we are building a RESTful API for other applications or research projects.

Where we are Today

Today we have a barebones Ruby on Rails application built. One can create a user account, contribute data, and search the database. Check it out for yourself at!

What's Next

Interested in contributing to the project? Our code is hosted on GitHub. Check out the open issues, fork the repo, fix stuff or add things, and send in a pull request to master!

Campaign Budget

There are two things we are raising funds for with this campaign:

1) $2,500 will go towards hosting fees for the first year of running the website.

2) Every volunteer based project needs a champion to get off the ground. $3,500 will be used to provide a stipend to our project's champion to nurture OpenFarm in its early stages. The champion will provide vision, coordination among project contributors, and be responsible for keeping the project on track and moving forward.

The remaining $1,500 will go towards reward fulfillment and Kickstarter fees. Any additional funds raised will be saved for future hosting fees and paid development time.

Why Back OpenFarm

OpenFarm is a small step towards a sustainable future. By sharing our knowledge in an accessible and relevant manner, we empower ourselves and each other to take action. Growing a garden, restoring native habitats, landscaping more efficiently, and understanding our relationship with the environment are critical steps in our journey moving forward. Help us build OpenFarm for everyone to enjoy!


Follow OpenFarm