Eleventy The possum is Eleventy’s mascot

Eleventy Documentation

This is an older version of Eleventy. Go to the newest Eleventy docs (current path: /docs/data-global/) or the full release history.
Menu

Global Data Files #

Your global data folder is controlled by the dir.data configuration option. All *.json and module.exports values from *.js files in this directory will be added into a global data object available to all templates.

Example #

Consider a JSON data file located at _data/userList.json with the following content:

[
"user1",
"user2"
]

This data will be available to your templates under the userList key like this:

{
userList: [
"user1",
"user2"
]
}

Folders #

If a data file is in a folder, the folder name will inform your global data object structure. For example, in our previous example, consider if our userList.json file was moved into a users folder at _data/users/userList.json.

Our data will be now available to your templates under a users key like so:

{
users: {
userList: [
"user1",
"user2"
]
}
}

Using JavaScript instead of JSON #

Read more about using module.exports values in arbitrary JavaScript data files.

Sources of Data #

When the data is merged in the Eleventy Data Cascade, the order of priority for sources of data is (from highest priority to lowest):

  1. Computed Data
  2. Front Matter Data in a Template
  3. Front Matter Data in Layouts
  4. Template Data Files
  5. Directory Data Files (and ascending Parent Directories)
  6. Global Data Files

Other pages in Data Cascade:


Related Docs