Eleventy is a Simpler Static Site Generator.
v0.9.0 Documentation
Support Eleventy:
- ⭐️ Starring us on GitHub! This will increase our project’s visibility on staticgen.com, a big giant list of static site generators.
- 🐦 Follow us on Twitter @eleven_ty!
- 🎁 Join 32 other lovely people and become an Eleventy Supporter!
Install
- Install to your Local project (preferred):
npm install @11ty/eleventy
- Already installed in your local project? Upgrade your version:
npm update @11ty/eleventy
- Want to install globally?
npm install -g @11ty/eleventy
- Already installed globally? Upgrade your Global version:
npm update -g @11ty/eleventy
- Read more about local versus global installation
Thank you to the 10 contributors that helped with this release!
@danielstaleiny @veleek @aarongustafson @edwardhorsford @Ryuno-Ki @paulshryock @jakearchibald @MadeByMike @Munter (and @zachleat I guess)
Changelog
Features
- Shows Eleventy version in standard console output (should help me out a lot when debugging issues 👀) #657
- Relative Includes added in Nunjucks, Liquid (already supported in EJS and Pug) #190
- Adds support for Passthrough Copy output directory remapping #452 Thank you @MadeByMike!
- Throws an error if two input templates attempt to write to the same output file (overlapping permalinks) #322 #562
- Allows custom options (and formats) in front matter #410
- e.g. use TOML in your front matter #113
- e.g. use Front Matter excerpts
- Adds
page.filePathStem
variable for permalinks #244 - JavaScript Templates (
*.11ty.js
) #622 #627 Thanks @jakearchibald!- Throws an error when a JavaScript template returns invalid data format #626
- When using classes, we now re-use the same instance for data and rendering
- Add support for JavaScript objects a la
exports = { data: {}, render: function() {}
- Add support for JavaScript Class Fields (Node 12 feature) a la:
exports = class { data = {}; render() {} }
- Add support for multiple exports a la
exports.data = {}; exports.render = function() {}
- Fails gracefully when class/object is missing a render method.
- Config file functions do not yet support returning promises, now we throw an error when this happens. #612 Thanks @Munter!
- Current behavior auto-ignores
node_modules
directory if.gitignore
does not exist. Eleventy will now also auto-ignore if.gitignore
does exist but is empty. #389 Thank you @danielstaleiny! - Eleventy searches for file extensions are now cross-platform case insensitive. #509 #517 Thanks @veleek!
Bug fixes
- Shows path to template on template rendering errors (No more
Unknown path
) #547 - Fixes
page.fileSlug
with JavaScript Templates (was returningfileName.11ty
, should befileName
) #588 - Fixes issue with Liquid shortcode argument parsing (failed on
page.*
variables) #600 - Fixes issue with
eleventyExcludeFromCollections
templates incorrectly throwingTemplateContentPrematureUseError
errors. #522 - Upgrades
browser-sync
to remove audit report #428 - Fixes issue with empty tags in front matter #557 Thanks @edwardhorsford!
- Fix for
TemplateContentPrematureUseError
error when using pagination #551, #634.
Docs and other
- Adds new layouts directory to debug output #574 Thanks @paulshryock!
- Adds links to plugins from README #570 Thanks @Ryuno-Ki!
Dependency Major Release Bumps
Note that dev-dependencies
are not included here.
fast-glob
from v2 to v3: Release notes
chokidar
from v2 to v3: requires Node 8+ Release notesdependency-tree
from v6 to v7: upgraded precinct from 5.x to 6.x for some typescript things ¯_(ツ)_/¯ (No release notes for this project: issue filed)fs-extra
from v7 to v8: Release notesmultimatch
from v3 to v4: requires Node 8+ Release notes
Administration
- Issues fixed in v0.9.0 Milestone
- All code changes from v0.8.3 to v0.9.0
- Code coverage stats for v0.9.0
npm audit
found 0 vulnerabilities in 7917 scanned packages