11ty

Eleventy Documentation

This documentation is for an older version. Go to the newest Eleventy docs or check out the full release history.

Documentation Pages

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 #

The order of priority for sources of data is (from highest priority to lowest):

  1. Front Matter Data
  2. Template Data Files
  3. Directory Data Files (and ascending Parent Directories)
  4. Global Data Files