---
agentTools:
  projectIndex: https://docs.project-fifo.net/llms.txt
---

# Introduction

[block:image]
{
  "images": [
    {
      "image": [
        "https://files.readme.io/LHKx7EtRQ1yM1QD3hCME_nodetree.png",
        "nodetree.png",
        "451",
        "266",
        "#b4b9ba",
        ""
      ]
    }
  ]
}
[/block]

**Project FiFo** is an open-source Cloud Management and Orchestration system for [SmartOS](https://smartos.org/).

Established in **March 2012** with a single uncompromising development objective - to be the most solid, efficient and reliable foundation for production cloud Infrastructure. All FiFo core [services](/docs/chunter) are written from the ground up for stability, speed, clustering, fault tolerance and resilience.

FiFo uses [LeoFS](http://leo-project.net/leofs/) as its required storage platform of choice. **LeoFS** is an unstructured, highly available & distributed S3 Compatible Object Store.

Project FiFo does **NOT** require any dedicated hardware and uses standard SmartOS and regular zones - **without** creating any interdependency for virtual machines to function. All operations are performed via the comprehensive FiFo **API**.

Spinning up a fully operational FiFo cloud is essentially a **2 stage** process.

[block:api-header]
{
  "type": "basic",
  "title": "1. Setup LeoFS Storage"
}
[/block]

[block:callout]
{
  "type": "success",
  "title": "This may be skipped",
  "body": "LeoFS is not required for a minimal setup, this steps can be skipped if at the end if the fifo setup instead of calling `sniffle-admin init-leo` the s3 host is set to `no_s3` by executing `sniffle-admin config set storage.s3.host no_s3`.\n\nPlease be aware that when not using leo backups won't be functioning, and setting up the correct imgadm sources are *your responsibility*.\n\nThis configuration is purely meant for test setups and while provided is currently consider to be not be supported."
}
[/block]

It is possible to use FiFo with other S3 services (including Amazons S3) as well, setting them up is however not part of this documentation. Correctly setting those services up is outside of the scope and will not be supported. The `sniffle-admin config set` [command](https://docs.project-fifo.net/docs/sniffle#section-global-configuration) can be used to configure FiFo to use those endpoints. As a general rule, for non local services lowering the up and download parallelism can improve throughput.

[block:html]
{
  "html": "<a class=\"fifo-button blue\" href=\"/docs/leofs-overview\">LeoFS Install Guide</a>"
}
[/block]

[block:api-header]
{
  "type": "basic",
  "title": "2. Install FiFo"
}
[/block]

[block:html]
{
  "html": "<a class=\"fifo-button\" href=\"/docs/fifo-overview\">FiFo Install Guide</a>"
}
[/block]