farmOS is built as a set of separate but inter-dependent Drupal projects.

Drupal is a modular system, and farmOS follows in those footsteps by providing all of it's features as singularly-focused modules on top of Drupal core.

All of these various modules, their dependencies, third-party libraries, and the official farmOS Drupal theme are packaged together into a farm-focused Drupal distribution that is collectively referred to as "farmOS".

Distributions of Drupal are roughly analogous to distributions of Linux. They serve to collect various code and configuration together in an intentional way. More information can be found in the Drupal distribution documentation.

To learn more about Drupal in general, refer to the Drupal documentation.


The purpose of the farmOS distribution is to collect all the modules in one package, along with some default configuration, theming, etc. has an automated packaging system, so if you are getting started with farmOS, downloading and installing a packaged release is the recommended approach. See installing farmOS for more information.

The farmOS repository itself does not include a fully-built codebase. So if you clone it from or Github, you will either need to build it yourself with Drush or use Docker.


Included in farmOS

These modules are included directly in the farmOS distribution repository:

Other modules

These modules aren't included with the farmOS distribution, but they can be added to extend your farmOS functionality:

For more information and documentation about these modules, see farmOS community modules.


The official farmOS theme ("Farm Theme") that is included with farmOS is a Drupal theme based off of Bootstrap.

External Tools