Website profiles · Technology insights · Alternatives

11ty.dev

Eleventy is a simpler static site generator

Paid content
Visit website
Profile views 2 Outbound visits 0 Normal
Eleventy is a simpler static site generator Full homepage screenshot

At a glance

Category
Other
Language
English
Paid-content signal
Paid contentObserved
Registered
2019
Hosting
VercelInferred
HTTPS certificate trusted
PassedObserved
Last updated

Website review

This review may include AI-generated content and is not individually verified. Domain, certificate and other facts come from the observed data on this page.

What is Eleventy?

Eleventy is a static site generator: a tool that turns templates, content files and data into plain HTML, CSS and JavaScript that you upload to a host. It is built to stay out of your way, so you write pages in the templating language you already prefer and let Eleventy assemble the output.

Where it fits

Use Eleventy when you want a fast, mostly static site without adopting a heavy framework. It suits blogs, documentation, marketing pages, portfolios and any project where content lives in Markdown or a CMS but the final result should be simple files. It is a poor fit if you need a full application framework with built-in user accounts, live dashboards or server-side form handling — those require separate services.

What makes it distinctive

  • Template language freedom. You are not locked into one syntax. The documentation lists HTML, Markdown, MDX, JavaScript, JSX, TypeScript, WebC, Nunjucks, Liquid, Handlebars, Mustache, EJS, HAML, Pug and Sass, and you can mix them in one project.
  • Data cascade. Data can come from front matter, template and directory data files, global data files and JavaScript data files, with a defined order of precedence. This is how you drive many pages from one data source.
  • Collections and pagination. You can group content (for example, all posts) and generate pages from data, which covers tag pages, archives and paginated lists.
  • Plugins. Official plugins handle images, RSS, syntax highlighting, internationalization and rendering, and there is a community plugin ecosystem.
  • Dev server. A built-in dev server supports local development, with Vite available for more advanced asset workflows.

A concrete reader scenario

Suppose you maintain a documentation site with 300 Markdown pages and want search-friendly HTML with no runtime framework. You would keep each page as Markdown, store navigation and metadata in global data files, use a layout for the shared shell, and let a collection build the sidebar and index pages. The build produces static files you can host almost anywhere. The trade-off is that anything dynamic — comments, search, authentication — needs an external service or client-side JavaScript.

Practical next step

Check that Node.js 18 or newer is installed by running node --version in a terminal, then create an index.md file and follow the Quick Start. If you are migrating an existing project, the Upgrade Helper plugin is worth reviewing before you change versions.

For comparison, other static site generators with official documentation include Hugo, Jekyll, Astro and Next.js.

How does Eleventy differ from other static site generators like Jekyll or Hugo?

Eleventy differs from Jekyll and Hugo mainly in what it asks you to learn and how much control it hands you. Jekyll is tightly bound to Ruby and to GitHub Pages conventions, so much so that "Jekyll" and "the default GitHub Pages build" are nearly the same thing. Hugo is a single compiled Go binary built for speed on large sites, with its own template syntax and content model. Eleventy is a Node.js tool that deliberately stays close to plain HTML, Markdown and JavaScript, and it lets you bring your own template languages instead of adopting one house style.

Where the practical differences show up

Template languages. Eleventy supports many at once — Markdown, Nunjucks, Liquid, Handlebars, Mustache, EJS, HAML, Pug, plus JavaScript, JSX, TypeScript, MDX and WebC — and you can mix them in one project. A Jekyll site is Liquid; a Hugo site is Go templates. If your team already writes Nunjucks or JSX, Eleventy is the only one of the three that won't force a rewrite.

Language runtime. Eleventy requires Node.js (the project recommends version 18 or newer) and you can verify it with node --version in a terminal. Jekyll needs Ruby; Hugo needs nothing installed because it ships as a binary. That last point matters if you want to build on a locked-down machine or a minimal CI image.

Build speed. Hugo's reputation rests on compiling very large sites quickly. Eleventy is fast for typical content sites but is interpreted JavaScript rather than compiled Go, so at tens of thousands of pages Hugo is usually the safer bet. Eleventy's answer is incremental and dev-server workflows rather than raw throughput.

Data and configuration. Eleventy's distinguishing feature is the data cascade: front matter, template and directory data files, and global data files merge in a defined order, with computed data and JavaScript data files available when you need to fetch or derive values. That is more flexible than Jekyll's _data and front matter model, and more explicit than Hugo's, at the cost of a concept to learn.

Extension model. Plugins cover images, RSS, syntax highlighting, internationalization, rendering and an upgrade helper, and there is a programmatic API plus configuration events if you need to hook into the build.

Choosing between them

If your priority is… Lean toward
No runtime to install, maximum build speed Hugo
GitHub Pages with zero configuration Jekyll
Writing in the templating language you already use Eleventy
Fine-grained control over data and per-page output Eleventy
A large existing Ruby or Go toolchain Jekyll or Hugo

A concrete test: take one real page from your site — with its layout, a list of related items, and one computed value such as a reading time — and build it in each candidate. Eleventy will feel familiar if that page is mostly HTML and JavaScript; Hugo will feel fastest; Jekyll will feel least surprising if you are already on GitHub Pages.

Start with the Quick Start on Eleventy, which walks through creating an index.md and running the build, then try the in-browser demo before committing to a migration.

What are the prerequisites and steps to start a new Eleventy project?

Eleventy needs a JavaScript runtime, and its own documentation recommends Node.js version 18 or newer. Check first with node --version in a terminal; if the command is missing or reports an older version, install Node.js before doing anything else. You do not need a framework, a bundler, or an account to begin.

First project, in order

  1. Confirm Node.js 18+ is available.
  2. Create a project folder and add an index.md file, either in a text editor or with a shell command such as echo '# Heading' > index.md (PowerShell users need the out-file -encoding utf8 variant to avoid encoding trouble).
  3. Run Eleventy against that folder and let it build the site into an output directory.
  4. Open the generated HTML in a browser, then start the dev server so edits rebuild and refresh automatically.
  5. Add configuration only when you need it: a config file for settings, a data directory for shared values, layouts for shared page structure.

The Eleventy documentation covers each of these in a Get Started section, and its Quick Start page is the shortest path to a working build.

What each prerequisite is actually for

Requirement Why it matters If you skip it
Node.js 18+ Eleventy runs on Node and installs through npm Commands fail outright or behave unpredictably on old runtimes
A terminal Installing packages, running builds, starting the dev server You can still edit files, but you cannot build or preview
A text editor Writing Markdown, templates and config None, but a Markdown-aware editor saves time
Basic Markdown Most content files are Markdown You can use HTML templates instead, at the cost of verbosity

A realistic first hour

Someone rebuilding a personal blog typically starts with one Markdown file, sees plain HTML come out, then adds a layout so every post shares a header and footer. The next step is usually a data file or front matter for titles and dates, and only after that does templating language choice matter. Eleventy supports many template languages, including Markdown, Nunjucks, Liquid, Handlebars, JavaScript, TypeScript and WebC, so you can pick one you already know rather than learning a new syntax on day one.

Choosing how far to go

If you only need a handful of static pages, stop after the dev server and a layout; adding plugins and a CMS integration early mostly adds moving parts. If you expect hundreds of pages, decide on collections and pagination before writing content, because retrofitting structure later means touching every file. The upgrade helper plugin is worth knowing about if you plan to track version changes over time, but it is not part of getting started.

A practical next step: build one page, add one layout, then add one collection. If any of those three steps feels awkward, the problem is usually configuration you added too early rather than Eleventy itself.

Can I try Eleventy without installing anything locally?

Yes. Eleventy offers a browser-based playground, so you can experiment with templates and see rendered output without installing Node.js or anything else on your machine. It is the fastest way to get a feel for how the tool works before committing to a local setup.

What the browser option is good for

  • Evaluating the template syntax. Eleventy supports many languages, including Markdown, Nunjucks, Liquid, Handlebars, WebC and JavaScript. A browser session lets you paste a small template and check how it renders.
  • Testing a data or layout idea. You can confirm whether a collection, permalink pattern or layout behaves the way you expect before wiring it into a real project.
  • Sharing a minimal reproduction. If you hit a snag, a browser-based example is an easy way to isolate the problem.

Where it stops being enough

The browser playground is a sandbox, not a project environment. It will not give you:

  • A real file tree. Local projects depend on directory structure, template and data file locations, and the data cascade. Those interactions are hard to judge in a single editable pane.
  • Plugins and configuration. Eleventy's plugin ecosystem, configuration files and build hooks are part of real work, and they need a local install.
  • Your own content and assets. Images, CSS, fonts and imported content all require files on disk.
  • Deployment behaviour. Output paths, permalinks and hosting quirks only show up once you build locally.

A practical path

Start in the browser to learn the template syntax and the relationship between data and layouts. Once you want to test collections, pagination or a plugin, install Node.js (version 18 or newer) and run a starter project. The official documentation covers both the browser try-out and the terminal-based quick start at Eleventy.

If you are choosing between static site generators, the browser playground is a low-cost way to compare Eleventy's templating approach against alternatives such as Hugo or Astro before installing any of them.

Which template languages and data formats can I use with Eleventy?

Eleventy supports a broad set of template languages and data formats, and its main design choice is that you can mix them in one project. A Markdown file can use Nunjucks layouts, a JavaScript data file can feed a Liquid template, and so on. That flexibility is the reason to choose Eleventy over generators that lock you into a single syntax.

Template languages

From the documentation, the supported template languages are:

  • HTML
  • Markdown
  • MDX
  • JavaScript
  • JSX
  • TypeScript
  • WebC
  • Nunjucks
  • Liquid
  • Handlebars
  • Mustache
  • EJS
  • HAML
  • Pug
  • Sass

You can also override or extend existing languages, and there is a "Virtual Templates" feature for generating output that isn't tied to a file on disk.

Data formats

Data can come from front matter, template and directory data files, or global data files. Eleventy's data cascade supports JavaScript data files and custom data file formats, and its documentation covers validating data as well. Common formats in practice are JSON, JavaScript modules and YAML-style front matter, though the exact set depends on the file extension and any custom format you register.

What this means for choosing

Situation Practical fit
You already write Markdown and want Nunjucks or Liquid layouts Straightforward; this is the core workflow
Your team prefers JavaScript or TypeScript everywhere Supported, including JSX and TypeScript templates
You want component-style authoring with scoped CSS WebC is the relevant option
You need a legacy or niche syntax such as Pug or HAML Supported, but check plugin and tooling support
You want one language only Eleventy works, but its multi-language flexibility is unused

A concrete example: a documentation site can keep content in Markdown, build navigation from a JavaScript global data file, and render shared chrome in Nunjucks, without converting anything.

Next step: pick your two most common formats, then check the "Template Languages" and "Data Cascade" sections of the guide at Eleventy to confirm the exact file extensions and configuration needed. If you are migrating, the Upgrade Helper plugin is worth reviewing before you commit to a version.

How do I deploy an Eleventy site to a hosting provider or CMS?

Deploying an Eleventy site is mostly a matter of deciding where the built output should live, because Eleventy itself produces plain static files rather than running a server. The deployment target only needs to serve a folder of HTML, CSS, JavaScript and assets.

The basic workflow

  1. Run your build command (commonly npx @11ty/eleventy) to generate the output directory, typically _site.
  2. Point your hosting provider at that output directory, or upload its contents.
  3. Configure the provider's build settings so it runs your build command on each push, if you want automatic deploys.

The Eleventy documentation includes a Deployment & Hosting section and notes that you can use a CMS, so the official guidance covers both static hosts and content-managed setups. Start there rather than guessing at provider-specific settings: Eleventy.

Choosing between a static host and a CMS

Approach Best for Trade-off
Static host (Netlify, Cloudflare Pages, GitHub Pages, Vercel) Personal sites, docs, marketing pages, blogs where content lives in Markdown Editors need Git access or a Git-based editing flow
Headless CMS plus a static host Teams with non-technical writers who need a familiar editing UI Extra service, API keys and a build trigger to maintain
Traditional server or shared hosting Situations where you must use existing infrastructure You manage uploads and caching yourself; no Git-based previews

For a concrete scenario: a solo developer writing Markdown in a Git repository is usually best served by connecting the repository to a static host and letting it run the Eleventy build on every commit. A marketing team with five writers is usually better served by a headless CMS whose content is pulled in at build time, with a webhook triggering a rebuild when an editor publishes.

Practical points that trip people up

  • Confirm which directory your provider expects. Many default to public or dist, while Eleventy's default is _site. Either change the provider setting or set Eleventy's output directory to match.
  • Check the Node.js version your provider uses. Eleventy recommends Node.js 18 or newer, so a provider pinned to an older runtime will fail the build.
  • If your site uses a path prefix (for example, a project page on GitHub Pages), set the path prefix option so asset URLs resolve correctly.
  • Keep the build command and output directory in a config file the provider reads, so the settings are versioned with the code rather than clicked in a dashboard.

If you are unsure where to begin, pick a static host, connect the repository, set the build command and output directory, and confirm the first deploy renders your index page before adding a CMS.

Related questions

More questions →
Where to Find Eleventy Documentation, Tutorials, and Community Resources

The official Eleventy site (11ty.dev) is the single entry point for everything: the Get Started and Quick Start pages cover installation and your first file, the Guide section holds the full reference documentation, and Starter Projects, Tutorials, and Community pages cover learning and support. If you only need one thing, start at the Quick Start on the homepage — it tells you to install Node.js (version 18 or newer), verify it with node --version, then create an index.md file.

Documentation: where each part lives

The site organizes docs into a few distinct areas, and knowing which one you want saves time:

Section What it covers
Get Started / Quick Start Installing Node.js, creating your first Markdown file, running the build
Guide The full reference: configuration, templates, data, plugins, deployment
Learn Glossary, "Opening a Terminal," "Installing JavaScript," and background concepts
Advanced Programmatic API, configuration events, order of operations
Common Pitfalls Known traps to check before you debug from scratch

The Guide is the largest section and is where most reference questions land. Its subsections include Command Line Usage, Add a Configuration File, Copy Files to Output, Importing Content, Permalinks, Layouts, Collections, Pagination, and Using Data in Templates. There is also a dedicated Template Languages area covering HTML, Markdown, MDX, JavaScript, JSX, TypeScript, WebC, Nunjucks, Liquid, Handlebars, Mustache, EJS, HAML, Pug, and Sass — so you can check support for your preferred language before committing to it.

Version information

The site lists Stable 3.1.6 and Canary 4.0.0-alpha.10. If you are starting a new project, the stable release is the one the documentation is written against; the canary build is for testing upcoming changes.

Tutorials and starter projects

Two separate resources serve different needs:

  • Starter Projects — pre-built project scaffolds you can clone and modify. Useful when you want a working site structure rather than a blank directory.
  • Tutorials — step-by-step walkthroughs. Useful when you want to understand each piece as you build it.

There is also Try Eleventy in Your Browser, which lets you evaluate the tool without installing anything locally. That is the fastest way to decide whether the template syntax suits you before setting up Node.js.

The Quick Tips page sits alongside these and collects shorter, task-specific guidance.

Community and events

The Community section links to several ongoing resources:

  • Blog and Firehose — announcements and a stream of Eleventy-related posts
  • 11ty Bundle — a curated collection of Eleventy resources
  • Leaderboards — contributor activity
  • Eleventy Meetup — a recurring community meetup
  • 11ty Conference — a dedicated conference

There is also a How can I contribute? page and a Code of Conduct if you want to participate rather than just read.

Plugins, services, and deployment

Beyond core docs, the site documents an ecosystem:

Official plugins include Image, Fetch, Render, Internationalization (i18n), Upgrade Helper, RSS, Syntax Highlighting, InputPath to URL, Navigation, and HTML Bundle Id Attribute. There is also a Community Plugins listing and a Retired Plugins page, which is worth checking before adopting an older plugin.

Services covers Deployment & Hosting, Using a CMS, Runtime APIs, Screenshots, OpenGraph Image, IndieWeb Avatar Generator, Image Hosting, and Image Sparklines.

The Upgrade Helper plugin is specifically relevant if you are moving an existing project between major versions — check it before upgrading rather than after.

A practical path through the site

If you are new, this order avoids backtracking:

  1. Try Eleventy in Your Browser — confirm the workflow fits how you think.
  2. Quick Start — install Node.js 18+, create index.md, run the build.
  3. Starter Projects — pick a scaffold instead of building structure by hand.
  4. Tutorials — work through one end to end.
  5. Guide — return here for reference as specific needs come up (collections, pagination, data cascade).
  6. Common Pitfalls — read before filing a bug report.

For a specific decision — which template language, whether to use a CMS, where to host — the relevant Guide or Services page is the authoritative source, since these choices depend on your existing stack rather than on a single recommendation.

What is Eleventy (11ty.dev)?

Eleventy (often written as 11ty) is a static site generator: it takes templates and content files and turns them into a static HTML website. According to its official site, 11ty.dev, Eleventy describes itself as "a simpler static site generator." It's aimed at developers who want to build for the web with JavaScript but without the overhead of a heavier framework. If you want plain HTML output, control over your templates, and a tool that doesn't force a specific front-end framework on you, Eleventy is built for that use case.

How Eleventy works

A static site generator sits between your source files and your published site. You write content (for example, Markdown) and templates, and Eleventy processes them into finished HTML files you can host anywhere.

The official site frames this around a few ideas:

  • Simpler by design — the homepage tagline is "Eleventy is a simpler static site generator."
  • JavaScript-based tooling — Eleventy requires a way to run JavaScript on your computer, and the docs recommend Node.js (version 18 or newer).
  • Template flexibility — the documentation lists support for many template languages, including HTML, Markdown, MDX, JavaScript, JSX, TypeScript, WebC, Nunjucks, Liquid, Handlebars, Mustache, EJS, HAML, Pug, and Sass.

So rather than locking you into one templating system, Eleventy lets you mix and match the languages you already know.

What you need to get started

Before installing, confirm your environment. The official Quick Start gives these prerequisites and first steps:

  1. Check for Node.js. Run node --version in a Terminal. Eleventy recommends Node.js version 18 or newer.
  2. Install Node.js if needed. If node isn't found, or the reported version is below 18, install Node.js before continuing.
  3. Create a content file. For example, create an index.md Markdown file in your text editor, or run one of the commands the docs provide for macOS, Linux, Windows, and cross-platform setups.

The docs also note you can try Eleventy in your browser, which is useful if you want to see how it behaves before setting up a local environment.

Why developers choose Eleventy

Based on the site's own framing, the appeal comes down to a few practical points:

Consideration What Eleventy offers
Output Static HTML sites
Complexity Positioned as "simpler" than heavier alternatives
Language JavaScript-based, with Node.js as the recommended runtime
Templates A wide range of supported template languages
Extensibility A plugin system, including community plugins

The documentation covers advanced topics too — configuration, the data cascade, collections, pagination, the dev server, internationalization, and a programmatic API — so the "simple" positioning doesn't mean it's limited to trivial sites.

Where to go next

If you've decided Eleventy fits your project, the natural next steps from the official docs are:

  • Get Started and Quick Start for installation and your first site.
  • Why Eleventy? for the project's own rationale.
  • Starter Projects and Tutorials if you'd rather learn from an existing setup.
  • Plugins and Community Plugins when you need to extend functionality.

One note on versions: the site lists a Stable version (3.1.6) and a Canary version (4.0.0-alpha.10) at the time of the source material. If you're starting a new project, the Stable release is the safer default, while Canary is for testing upcoming changes.

Why should you use Eleventy instead of other static site generators?

Eleventy (11ty.dev) is a static site generator that turns templates and data into plain HTML files. Choose it if you want a lightweight build tool that does not lock you into one template language, and if you care about build speed and simple output. It is less suited if you want a batteries-included framework with a built-in CMS, client-side routing, or a large opinionated plugin ecosystem out of the box.

What Eleventy actually is

Eleventy is described on its own site as "a simpler static site generator." It takes your content and templates, runs them through a build step, and writes static files to an output folder. There is no required runtime on the server side — the result is static HTML, CSS, and assets you can host almost anywhere.

The site lists a "Why Eleventy?" section alongside Get Started, Performance, and Learn, which signals that the project positions simplicity and performance as core reasons to pick it.

The main reasons to choose it

It does not force a single template language

This is the clearest differentiator. Eleventy supports many template languages, and the docs list them explicitly:

  • HTML
  • Markdown
  • MDX
  • JavaScript, JSX, TypeScript
  • WebC
  • Nunjucks, Liquid, Handlebars, Mustache, EJS
  • HAML, Pug
  • Sass

You can mix languages in one project — for example, Markdown for blog posts and Nunjucks for layouts. Other generators often commit you to one templating system, which becomes a migration cost if your team already knows a different one.

Simpler mental model

The build pipeline is content plus templates plus data, producing static files. The documentation is organized around concrete tasks — Command Line Usage, Add a Configuration File, Copy Files to Output, Permalinks, Layouts, Collections, Pagination — rather than a large framework abstraction. If you have used a static site generator before, the concepts transfer quickly.

Performance-oriented

The site maintains a Performance section and a "Built With Eleventy" showcase. Static output means no server-side rendering per request, which is the baseline performance advantage of any static generator; Eleventy's own emphasis is on keeping the generator itself light and the build fast.

Data handling is a first-class feature

Eleventy has a documented data cascade: front matter data, template and directory data files, global data files, and computed data. It also supports JavaScript data files and custom data file formats, plus a validateData-style configuration area. If your site pulls from local files, APIs, or generated data, this is where Eleventy is stronger than minimal generators.

Extensibility without a heavy core

Plugins are opt-in. The docs list official plugins (Image, Fetch, Render, Internationalization, Upgrade Helper, RSS, Syntax Highlighting, InputPath to URL, Navigation, HTML Bundle, Id Attribute) and a separate community plugins section. You add what you need instead of inheriting a large default stack.

Where it is a weaker fit

  • No built-in CMS. The docs point to "Using a CMS" as a separate concern. If you need an editing UI for non-technical authors, you bring your own (headless CMS, Git-based editor, etc.).
  • No client-side app framework. Eleventy outputs static files. If you need a single-page application with routing and hydration, that is a different tool category.
  • You assemble more yourself. Compared with all-in-one frameworks, you will make more decisions about structure, asset pipeline, and deployment.

Requirements and how to start

Eleventy requires a way to run JavaScript. The site recommends Node.js version 18 or newer.

  1. Check your Node version in a terminal:
    node --version
    
    If Node is missing or reports a version below 18, install Node.js first.
  2. Create a Markdown file, for example index.md. The docs show terminal commands for macOS/Linux, Windows, and cross-platform:
    echo '# Heading' > index.md
    
    On Windows PowerShell:
    echo '# Heading' | out-file -encoding utf8 'index.md'
    
  3. Run the build (see the Quick Start and Command Line Usage docs for the exact command for your setup). The expected result is an output folder containing generated HTML.

There is also a "Try Eleventy in Your Browser" option on the site if you want to test it before installing anything locally.

Version context

The site currently lists Stable 3.1.6 and Canary 4.0.0-alpha.10. If you are starting a new project, the stable line is the safer default; the canary line is for testing upcoming changes. An Upgrade Helper plugin exists for moving between versions.

A practical way to decide

If you need… Eleventy is a good fit Consider something else
Multiple template languages in one project Yes Frameworks locked to one templating system
Fast builds and plain static output Yes SSR-first frameworks
A built-in admin UI for editors No CMS-integrated platforms
Client-side routing / SPA behavior No App frameworks
Opt-in plugins only Yes Batteries-included stacks

If your project is content-driven — a blog, documentation site, marketing pages, or a data-backed static site — and you want to keep the toolchain small and the template choice open, Eleventy is a reasonable default. If you need an editing interface or an interactive application, plan for an additional layer or pick a different tool.

What do you need to run Eleventy, and how do you start?

To run Eleventy you need a way to execute JavaScript on your computer, and the official recommendation is Node.js version 18 or newer. Once Node.js is in place, you create a Markdown file such as index.md and run Eleventy to generate your site. The steps below cover checking your setup, installing Node.js if needed, and producing your first output.

Check whether Node.js is already installed

Open a terminal and run:

node --version

The expected result is a version number. If the command is not found, or the number is below 18, install Node.js before continuing. Eleventy's own documentation frames this as a prerequisite rather than an optional step, so treat the version check as the gate for everything that follows.

If you are unsure what a terminal is, Eleventy's docs link to a separate explanation — the short version is that it is a text-based way to run commands on your machine, available on macOS, Linux, and Windows.

Create your first content file

Eleventy works from files in your project directory. A minimal starting point is a Markdown file named index.md. You can create it in any text editor, or from the terminal.

On macOS or Linux:

echo '# Heading' > index.md

On Windows (PowerShell):

echo '# Heading' | out-file -encoding utf8 'index.md'

The expected result is a file containing a single Markdown heading. Eleventy will later turn that into HTML output.

Run Eleventy and verify the result

With Node.js 18+ available and index.md in place, run Eleventy from your project directory. The expected result is a generated output file (by default an HTML file derived from your Markdown). If you see output files appear, your setup is working; if the command fails, the most common cause is a Node.js version below 18 or Node.js not being on your PATH.

Where to go next

The Eleventy documentation lists several directions once the first build works:

  • Starter projects and tutorials — pre-built structures you can copy instead of assembling configuration yourself.
  • Template languages — Eleventy supports HTML, Markdown, MDX, JavaScript, JSX, TypeScript, WebC, Nunjucks, Liquid, Handlebars, Mustache, EJS, HAML, Pug, and Sass, so you can pick what you already know.
  • Configuration — adding a config file, copy files to output, add CSS/JS/fonts, and set up permalinks, layouts, and collections.
  • Plugins — including an Upgrade Helper plugin listed in the docs, plus Image, Fetch, Render, RSS, and syntax highlighting.

The current stable version shown in the documentation is 3.1.6, with a canary release at 4.0.0-alpha.10. The docs also offer a browser-based way to try Eleventy without a local install, which is useful if you want to see the output before committing to a Node.js setup.

What template languages and content features does Eleventy support?

Eleventy supports a wide range of template languages — from HTML and Markdown to JavaScript, TypeScript, WebC, Nunjucks, Liquid, Handlebars, Mustache, EJS, HAML, Pug, and Sass — and pairs them with a data cascade, layouts, collections, pagination, and a plugin/config system. You can mix languages within one project, so the practical answer is: pick whatever fits each file, and Eleventy will render it to static output.

Template languages

Eleventy's documented template languages fall into a few groups:

Group Languages
Core web formats HTML, Markdown, MDX
JavaScript-family JavaScript, JSX, TypeScript
Component-oriented WebC
Traditional templating Nunjucks, Liquid, Handlebars, Mustache, EJS, HAML, Pug
Stylesheet Sass

Because these are listed as supported template languages, a single project can use Markdown for blog posts, Nunjucks or Liquid for shared layouts, and JavaScript or TypeScript for data-driven pages. Eleventy also documents overriding languages and virtual templates, which matter when you want custom handling rather than the default file-extension mapping.

Content and data features

Beyond rendering syntax, Eleventy's content model is what lets you organize a site:

  • Front matter data — per-file metadata, including custom front matter.
  • Data cascade — the documented order in which data from template, directory, and global sources is merged.
  • Template & directory data files and global data files — shared data scoped to a folder or the whole project.
  • JavaScript data files and custom data file formats — generate data programmatically.
  • Computed data — derive values from other data.
  • Validate data — check data before it reaches templates.
  • Layouts — wrap content in shared structure.
  • Collections and the Collections API — group content and query it.
  • Pagination and pagination navigation — generate multiple pages from one template.
  • Permalinks — control output URLs.
  • Content dates — drive ordering and date-based logic.
  • Create pages from data — build pages directly from data sources.

Extending the build

Configuration and plugins cover the parts templates don't:

  • Configuration file and global data for project-wide settings.
  • Filters (url, slugify, log, get*CollectionItem, inputPathToUrl) and shortcodes (getBundle, getBundleFileUrl) for reusable template logic.
  • Plugins, including official ones for Image, Fetch, Render, i18n, Upgrade Helper, RSS, Syntax Highlighting, InputPath to URL, Navigation, and HTML Bundle Id Attribute, plus community plugins.
  • Preprocess and postprocess content hooks, ignore files, and environment variables.
  • Internationalization (i18n) support.
  • Watch files and dev servers, including the Eleventy Dev Server and Vite.
  • A Programmatic API and configuration events for advanced builds.

Getting started with a template language

  1. Confirm you can run JavaScript: Eleventy recommends Node.js version 18 or newer. Check with node --version in a Terminal; if it's missing or below 18, install Node.js first.
  2. Create a content file, for example an index.md Markdown file, using your editor or a terminal command such as echo '# Heading' > index.md.
  3. Add a layout or data file when you need shared structure or site-wide values.
  4. Run the build and verify the generated output — the expected result is static HTML produced from your chosen template language.

Common pitfalls are documented under Common Pitfalls, and the Glossary and Quick Tips pages are useful when a term or behavior is unclear.

Choosing a language

There's no single required language. Use Markdown or HTML for straightforward content, a traditional templating language (Nunjucks, Liquid, Handlebars, Mustache, EJS, HAML, Pug) when you want logic in markup, and JavaScript, JSX, TypeScript, or WebC when you want components or programmatic rendering. If you're unsure, start with Markdown plus one templating language for layouts, then add others as the project grows — Eleventy's data cascade and collections work the same way regardless of which language a given file uses.

Website Overview

Identifiable technologies and additional version or configuration signals make the service easier to fingerprint, which may help targeted scanners narrow their checks. An established domain and managed infrastructure suggest continuity of operations and may support dependable delivery, although neither guarantees service quality.

Domain and Registration

Registered in 2019, this domain has about 7 years of history. That suggests continuity, although ownership and purpose may have changed. Transfer-protection status is present, helping reduce the risk of unauthorized domain transfers. The registrar is Squarespace Domains II LLC., a widely used domain service provider. The domain uses the common .dev extension, which is not an independent safety signal.

DNS and Email

Nameservers are provided by NS1, indicating managed DNS hosting. MX records point to the Fastmail email service. SPF and DMARC are configured. DKIM status is unknown. DNSSEC signatures were not detected, so this additional DNS authenticity protection is not confirmed. The lowest observed DNS TTL is 300 seconds.

TLS and Certificates

The certificate uses an RSA 2048-bit public key, offering broad client compatibility. The server supplied a complete certificate chain. No organization name is present in the certificate; the available fields are consistent with domain validation. The certificate was issued by Let's Encrypt, commonly associated with automated certificate services. The certificate's total validity is about 89 days, consistent with a short renewal cycle.

HTTP and Browser Security

The response lacks these common security headers: CSP, X-Content-Type-Options, Referrer-Policy, Permissions-Policy, clickjacking protection. CORS permits any origin to read this response. This is common for public resources; sensitive responses need narrower handling. No X-Powered-By header was found, reducing one common source of backend fingerprinting information. No obvious internal addresses or debug information were found in the headers. The Server header contains the custom value Vercel.

Technology Stack Analysis

The public page identifies Eleventy (Build Awesome) 4.0.0, Vercel, with exact versions exposed for 1 technologies. These details can narrow vulnerability checks, although exposure alone is not a vulnerability.

Search and Social Sharing

The Generator tag identifies Eleventy (Build Awesome) v4.0.0, making the publishing system easier to fingerprint. No homepage canonical URL was detected. If duplicate URLs exist, consolidation may be less explicit. The title has 43 characters, within a common display range. A meta description is present, with 43 characters. The observed directives allow indexing and link following.

Hosting and Email

DNSNS1
HostingVercel
EmailFastmail
Approximate IP geolocation (inferred; a CDN or proxy may differ from the origin server) United States flagUnited States Inferred 66.33.60.34

Registration details

RDAP / WHOIS

RegistrarSquarespace Domains II LLC.
Registered2019-05-24
Expires2027-05-24
Domain statusclient delete prohibited、client transfer prohibited
Nameserversdns1.p03.nsone.net、dns2.p03.nsone.net、dns3.p03.nsone.net、dns4.p03.nsone.net
DNSSECunsigned

DNS records

DNS

TypeNameValueTTLPriority
Acname.vercel-dns.com66.33.60.34300—
Acname.vercel-dns.com76.76.21.164300—
MX11ty.devin1-smtp.messagingengine.com360010
MX11ty.devin2-smtp.messagingengine.com360020
NS11ty.devdns1.p03.nsone.net3600—
NS11ty.devdns2.p03.nsone.net3600—
NS11ty.devdns3.p03.nsone.net3600—
NS11ty.devdns4.p03.nsone.net3600—
TXT11ty.devv=spf1 include:spf.messagingengine.com ?all3600—
CNAMEwww.11ty.devcname.vercel-dns.com3600—
DMARC_dmarc.11ty.devv=DMARC1; p=quarantine; rua=mailto:[email protected]; aspf=r; pct=1003600—

TLS and certificates

TLS / SSL

AssessmentNormal configuration
Supported protocolsTLSv1.2、TLSv1.3
Negotiated protocolTLSv1.3
Certificate subjectwww.11ty.dev
IssuerLet's Encrypt
Valid until2026-11-11T05:05 · Remaining when checked: 33 days
Verification detailsCertificate trust: Passed · Hostname match: Passed

HTTP response headers

HTTP

HeaderValue
content-typetext/html; charset=utf-8
cache-controlpublic, max-age=0, must-revalidate
serverVercel
strict-transport-securitymax-age=63072000
access-control-allow-origin*

Identified technologies

Eleventy (Build Awesome) 4.0.0Vercel

Pages, Search and Sharing

Meta descriptionEleventy is a simpler static site generator
Canonical URLNot detected
LanguageEnglish (default)
Twitter CardNot detected

No robots.txt found

No sitemaps found

User reviews (0)

  • No reviews yet.