> For the complete documentation index, see [llms.txt](https://fmtc.jaffaketchup.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://fmtc.jaffaketchup.dev/v9/stores-and-roots/roots-and-stores.md).

# Introduction

FMTC uses a *root* and *stores* to structure its data.

There is generally a single root (which generally corresponds to a single [backend](/v9/general/initialisation.md#backends)), which contains multiple stores. Cached tiles can belong to multiple stores, which keeps duplication minimized.

{% hint style="warning" %}
The structures use the ambient backend when a method is invoked on it, not at construction time.

Therefore, it is possible to construct an `FMTCStore`/`FMTCRoot` (see below) before initialisation, but 'using' it will throw `RootUnavailable`.
{% endhint %}
