---
title: "Eleventy (11ty) — Markdown Mirrors"
description: "Output your pages as both HTML and .md."
type: "page"
canonical: "https://audigeo.ai/docs/integrations/markdown-mirrors/eleventy"
---

# Eleventy — Markdown Mirrors

In `.eleventy.js`:

```js
module.exports = function (eleventyConfig) {
  // Treat any .md content as both HTML and a .md output
  eleventyConfig.addExtension("md", {
    outputFileExtension: "html",
  });

  // Second pass: also emit a parallel .md
  eleventyConfig.addTransform("md-mirror", function (content) {
    if (this.outputPath && this.outputPath.endsWith(".html")) {
      const fs = require("node:fs");
      const path = require("node:path");
      const mdPath = this.outputPath.replace(/\.html$/, ".md");
      const fm = `---\ntitle: ${JSON.stringify(this.frontMatter?.data?.title ?? "")}\ntype: "page"\ncanonical: ${JSON.stringify(this.url)}\n---\n\n`;
      fs.mkdirSync(path.dirname(mdPath), { recursive: true });
      fs.writeFileSync(mdPath, fm + (this.frontMatter?.content ?? ""));
    }
    return content;
  });
};
```

## llms-full.txt

Generate at build via a `_data` script or a dedicated `llms-full.njk` template emitting plain text.

## Verify

Run an AudiGEO audit. Target: `markdown_mirror` ≥ 7.
