From ff94b1ade6cf8ccc5b89903d26fe1fe72782cfbc Mon Sep 17 00:00:00 2001 From: TheThomaas Date: Mon, 13 Nov 2023 21:36:23 +0100 Subject: [PATCH] Update .eleventy.js --- .eleventy.js | 46 +++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 43 insertions(+), 3 deletions(-) diff --git a/.eleventy.js b/.eleventy.js index b545d82..f75195b 100644 --- a/.eleventy.js +++ b/.eleventy.js @@ -1,10 +1,50 @@ +const pluginRss = require("@11ty/eleventy-plugin-rss"); + +// module import filters +const { + getDatetime, + getMonthDay, + getYear, + toFullDate, + renderSass, +} = require('./config/filters/index.js'); + module.exports = eleventyConfig => { eleventyConfig.setUseGitIgnore(false); + + eleventyConfig.addPlugin(pluginRss); + + eleventyConfig.addWatchTarget('./src/assets'); + + eleventyConfig.addCollection('posts', collection => { + return [...collection.getFilteredByGlob('./src/posts/*.md')].reverse(); + }); + eleventyConfig.addFilter("getDatetime", getDatetime) + eleventyConfig.addFilter("getMonthDay", getMonthDay) + eleventyConfig.addFilter("getYear", getYear) + eleventyConfig.addFilter("toFullDate", toFullDate) + eleventyConfig.addFilter("sass", renderSass) + eleventyConfig.addFilter("getAllTags", collection => { + let tagSet = new Set(); + for(let item of collection) { + (item.data.tags || []).forEach(tag => tagSet.add(tag)); + } + return Array.from(tagSet); + }); + + + eleventyConfig.addLayoutAlias('base', 'base.njk'); + eleventyConfig.addLayoutAlias('home', 'home.njk'); + eleventyConfig.addLayoutAlias('blog', 'blog.njk'); + eleventyConfig.addLayoutAlias('post', 'post.njk'); + + eleventyConfig.addShortcode('year', () => `${new Date().getFullYear()}`); // current year, stephanie eckles + return { - markdownTemplateEngine: 'liquid', - dataTemplateEngine: 'liquid', - htmlTemplateEngine: 'liquid', + markdownTemplateEngine: 'njk', + dataTemplateEngine: 'njk', + htmlTemplateEngine: 'njk', dir: { input: 'src', output: 'dist',