// Plugins import { InputPathToUrlTransformPlugin } from "@11ty/eleventy"; import pluginRss from "@11ty/eleventy-plugin-rss"; import pluginEleventyNavigation from "@11ty/eleventy-navigation"; import pluginSyntaxHighlight from "@11ty/eleventy-plugin-syntaxhighlight"; import pluginEmbedEverything from "eleventy-plugin-embed-everything"; import pluginWordcount from "eleventy-plugin-wordcount-extended"; import pluginTOC from "@uncenter/eleventy-plugin-toc"; // Custom Configurations import markdownItConfig from "./src/_config/markdown-it.js"; import filesConfig from "./src/_config/files.js"; import collectionsConfig from "./src/_config/collections.js"; import filtersConfig from "./src/_config/filters.js"; import shortCodesConfig from "./src/_config/shortcodes.js"; export default function(eleventyConfig) { // Plugins eleventyConfig.addPlugin(InputPathToUrlTransformPlugin); eleventyConfig.addPlugin(pluginRss); eleventyConfig.addPlugin(pluginEleventyNavigation); eleventyConfig.addPlugin(pluginSyntaxHighlight, { preAttributes: { tabindex: 0 } }); eleventyConfig.addPlugin(pluginEmbedEverything, { add: ['soundcloud'] }); eleventyConfig.addPlugin(pluginWordcount); eleventyConfig.addPlugin(pluginTOC, { tags: ['h2', 'h3', 'h4', 'h5', 'h6'], wrapper: function (toc) { return ``; }, }); // Custom Configurations eleventyConfig.addPlugin(markdownItConfig); eleventyConfig.addPlugin(filesConfig); eleventyConfig.addPlugin(collectionsConfig); eleventyConfig.addPlugin(filtersConfig); eleventyConfig.addPlugin(shortCodesConfig); // Eleventy bundle plugin eleventyConfig.addBundle("css"); eleventyConfig.addBundle("js", { toFileDirectory: "assets/js" }); return { markdownTemplateEngine: "njk", htmlTemplateEngine: "njk", dir: { input: "src" } }; };