- Stable
3.0.0
Toggle Menu
5.81s
43.36s
Glossary
This page provides two lists of terms — one for Eleventy-specific terminology that may be useful for when building out a project using Eleventy, and one for industry jargon that may be useful for understanding context.
Work in progress: Edit this page
Eleventy-Specific Terminology
Template
A content file written in a format such as Markdown, HTML, Liquid, Nunjucks, and more, which Eleventy transforms into a page (or pages) in the built site. Templates can access data exposed through the data cascade with templating syntax.
Layout
A template which wraps around another template, typically to provide the scaffolding markup for content to sit in.
Read more about using layouts.
Data
Exposed via variables that can be used inside templates and layouts using templating syntax. The data for a given template is aggregated through a process called the data cascade.
Data Cascade
Eleventy's order of operations for evaluating all data for any given template, and for resolving conflicts that arise. The data cascade follows the principle of colocation, so data defined broadly to apply to many templates will be overruled by data that targets the given template more specifically.
Read more about the data cascade.
Filter
A function which can be used within templating syntax to transform data into a more presentable format. Filters are typically designed to be chained, so that the value returned from one filter is piped into the next filter.
Shortcode
A function which can be used within templating syntax to inject content into templates. Shortcodes can take many arguments, and can be thought of as a templating approach to reusable markup.
Collection
An array of templates, used to group similar content. Collections can be created by using tags or by calling the collections API in the Eleventy configuration.
Pagination
A way to create pages by iterating over data. The same template is applied to each chunk of the paginated data.
Plugin
A portable, installable Eleventy configuration which can add data, filters, shortcodes, and more to a project's setup.
Industry Terms and Buzzwords
Bask in the warm glow of this “Nobody ever got fired for buying IBM”-style feel-good industry jargon.
Our industry can be particularly bad about inventing words for things that already exist. Hopefully this page will help you navigate the labyrinth.
Static Sites
A static site is a group of generated HTML files. Content is built into the HTML files rather than using a dynamic back end language to generate the content on-the-fly. A dynamic site can appear static when you add caching rules to make the content stickier. A static site can appear dynamic when you run your build quickly and often.
Jamstack
Modern web development architecture based on client-side JavaScript, reusable APIs, and prebuilt Markup.—jamstack.org
Eleventy facilitates Jamstack sites—but you maintain full control over the JavaScript.
Progressive Enhancement
The idea that content should be the priority for a website's development. In other words, start with only essential content and functionality that works with as many users as possible, and then progressively enhance from there.
As stated in the MDN Web Docs: "Special notice should be taken of accessibility. Acceptable alternatives should be provided where possible."
Data-Driven
Make components and markup data-driven so that you don’t have a bunch of one-off copy-pasted HTML instances littered throughout your project.
Serverless Friendly
“You can take your front-end skills and do things that typically only a back-end can do. You can write a JavaScript function that you run and receive a response from by hitting a URL.”—The Power of Serverless from Chris Coyier
Take care to make sure that serverless functions are progressively enhanced. If you call serverless functions in client-side JavaScript, they should be used for features that are outside the core functionality of the site.
Lean Web
To be honest it’s kind of a stretch to relate Lean methodology to this project but the term just kinda feels right.
Zero Config
Zero config means that Eleventy can run without any command line parameters or configuration files.
We’ve taken care to setup Eleventy so that that running the stock eleventy
command uses sensible defaults. Lower the barrier to entry for that first project build to get up and running faster.
Convention over Configuration Routing
Can you believe that some frameworks require a centralized piece of configuration for routing? eleventy
routes map the file system, unless you override with a permalink
.
Pre-rendered Templates by Default
With the rise of client side rendering of templates in JavaScript came significant performance problems, especially with users of less-capable (but none-the-less still modern) hardware. Did you know they’re selling new mobile devices that are pretty hardware-limited?
Many frameworks switched to Server Side Rendering, which meant running an application server with middleware that would render the markup on demand for each request. Eleventy templates by default are generated (some call this pre-rendering) at build time for maximum performance. This way the web server only needs to fetch the static file and send it back to the user.
Hydration-less
Well, uh, we don’t inject or use any client-side JavaScript in Eleventy, so there’s nothing that needs hydration.
Apps not App Servers
Application servers can be slow. Instead of PHP, Java, or even Node.js dynamically generating page responses on the fly when the request comes in, have your pre-rendered templates ready to go for delivery! Maximum performance.
Single Page Applications (SPA) versus Multi-Page Applications (MPA)
Single Page Applications (SPA) use JavaScript to enable navigations between pages on a web site. Multi-Page Applications use the classic navigation model of the web and do a full page refresh to a new page.
Should you build a Single Page Application with Eleventy?
Where did the Name Come From?
Some might think that the name Eleventy is an homage to Spinal Tap (turn it up to eleven) or more directly, Lord of the Rings. I chose it because of a story my grandma Nonnie loved to tell about how I learned to count. Rather than move from ten to eleven like a normal child, I felt it appropriate to use the teen suffix for the numbers eleven and twelve, counting “ten, eleventy-teen, twelvety-teen, thirteen, …” I always liked that story and it seemed as appropriate a reason as any.—via
zachleat.com
What’s the difference between 11ty and Eleventy?
The 11ty
name refers to the over-arching organization and community. Eleventy
refers to the static site generator specifically. —via Issue #1283