Drupal-based farmOS manages food, farmers, and community

No readers like this yet.
FarmOS screenshot

Mike Stenta. CC BY-SA 4.0.

FarmOS is a Drupal-based software project aimed at easing the day-to-day management of a farm. It allows different roles to be assigned to managers, workers, and viewers. Managers can monitor how things are going with access to the whole system, workers can use the record-keeping tools, and viewers have read-only access to, for example, certify the farm's records.

I spoke with Mike Stenta, lead developer of farmOS and active developer since 2010, and he had a number of reasons for using Drupal and putting their files, code, and documentation on GitHub.

"I settled on Drupal for farmOS because I see it as a good intersection of flexibility, scalability, and community," Stenta said. "It uses a modular architecture, so you can build applications in Drupal like building Legos. The community is huge, and the number of contributed modules and themes is mind-boggling. If you can think of it, you can probably build it in Drupal—and chances are someone already has."

FarmOS's Mike Stenta

Fourteen modules are currently being developed, including Farm Access, Farm Admin, Farm Asset, Farm Crop, and more.

"The focus right now is laying a strong groundwork so that others can more easily join in and contribute," Stenta said. "The world of agriculture wasn't even on my radar until 2008. I started college in computer science, but switched to art and photography—partly because web development wasn't in the curriculum. After college I found my way to the Olympic Peninsula in Washington state. There I worked as a farm apprentice. Then I came back to the east coast. In 2010, I helped my friend start a small CSA in Connecticut, and the philosophy of food and cultivation sank in deeply over those years. It shaped my direction profoundly."

Then, he had the inspiration for farmOS. It came from some software he developed for the CSA. To take it to the next level he started generalizing his work, which led to the creation of the modules that are the core of farmOS today. Stenta is also working on a general ledger module for Drupal, which is a double-entry accounting system similar to popular proprietary products.

The community surrounding the project is important too, and farmOS is looking for beta testers and other contributors to the project. 

"FarmOS is developed by a handful of contributors, and more are getting involved steadily," Stenta said. "Community is everything, and it's important to foster good communication and planning in any open source project. We publish monthly roadmaps and invite people to help. All the planning and task management is done in the Drupal issue queues and on GitHub, so it's transparent and accessible. The monthly development meetings are a new experiment we're trying to invite more people into the conversation. The project is still very young, but the interest has been huge and it's starting to take on a life of its own."

User profile image.
Educator, entrepreneur, open source advocate, life long learner, Python teacher. M.A. in Educational Psychology, M.S. Ed. in Educational Leadership, Linux system administrator.


Rather than develop an accounting general ledger from scratch, why not use existing drupal ERP modules?https://www.drupal.org/project/erp

That's a great question and I hope MIke will answer it here later. I'm glad you raised my awareness of the module. I had been looking for an open source alternative to Quickbooks and the Erp modules just might be my answer.

In reply to by Zeeshan Hasan (not verified)

Good question Zeeshan. I chose to start Ledger (http://drupal.org/project/ledger) a few years ago with the goal of creating a true "double-entry" bookkeeping system (https://en.wikipedia.org/wiki/Double-entry_bookkeeping_system) in Drupal, similar to the popular open source GnuCash (desktop application).

As far as I know, none of the existing ERP solutions for Drupal include a double-entry bookkeeping component. I haven't tried the ERP module that you pointed out, but it is only available for Drupal 6 and has not been touched in over 3 years. Ledger was built from the ground up using Drupal 7's Entity API, so it is more robust and in-line with coding and architectural standards - and it's ready to be ported to Drupal 8 without much work.

There is another similar project called ERPAL (http://drupal.org/project/erpal) - but it does not have a bookkeeping component in it. I have recently been connected with one of the people involved in that project and we may try to work together at some point to integrate Ledger

So I do see a need for a general (and singularly focused) bookkeeping system in Drupal, and that's why I created Ledger.

Hope that answers your question! :-)

In reply to by Zeeshan Hasan (not verified)

How many farms are currently using the software and what kind of feedback are you getting from them ?

I have been working closely with a handful of farmers using farmOS, and the overall response has been great! It doesn't do everything - but the ability to easily record logs and track movements of things is a common compliment. There are a lot of great ideas for next steps - and the way it is structured should allow a vibrant community of add-on modules to develop.

For more official numbers, Drupal.org collects usage statistics which can be viewed here: https://www.drupal.org/project/usage/farm (These are tallied based on the number of farmOS sites that have the Update module enabled, which is what communicates with drupal.org.)

In reply to by Bruno (not verified)

I have asked Mike Stenta to reply to this and hope to have an answer for you soon.

Creative Commons LicenseThis work is licensed under a Creative Commons Attribution-Share Alike 4.0 International License.