Replicating Jekyll's `markdownify` filter in Nunjucks with Eleventy
Published:
Tags: Eleventy
Jekyll has a useful filter called markdownify
that converts a Markdown string into HTML. Nunjucks doesn’t have this filter.
I’ve replicated this in Eleventy by adding this into my .eleventy.js
file.
module.exports = function (eleventyConfig) {
const md = require("markdown-it")({
html: false,
breaks: true,
linkify: true,
});
eleventyConfig.addNunjucksFilter("markdownify", (markdownString) =>
md.render(markdownString),
);
};
In a Nunjucks template, you can now use {{ someMarkdownString | markdownify | safe }}
to convert any Markdown string to HTML.
I’m not 100% sure about the | safe
bit, but it’s working for me like this.