site/eleventy.config.js
2025-07-01 23:18:31 -05:00

26 lines
No EOL
990 B
JavaScript

import { minify } from "terser";
import { transform } from "lightningcss";
import eleventyNavigationPlugin from "@11ty/eleventy-navigation";
import pluginFilters from "./_config/filters.js";
import syntaxHighlight from "@11ty/eleventy-plugin-syntaxhighlight";
export default function(eleventyConfig) {
eleventyConfig.addPassthroughCopy({ "sneexy/notebook/": "~sneexy/notebook/" }); // notebook page generated by quartz seperately - see https://forged.synth.download/sneexy/notebook
eleventyConfig.addPlugin(eleventyNavigationPlugin);
eleventyConfig.addPlugin(pluginFilters);
eleventyConfig.addPlugin(syntaxHighlight);
eleventyConfig.addPassthroughCopy("assets/");
eleventyConfig.addFilter("cssmin", function (code) {
const result = transform({
code: Buffer.from(code, 'utf-8'),
minify: true,
})
return result.code.toString('utf-8')
});
eleventyConfig.addFilter("jsmin", async function (code) {
const minified = await minify(code);
return minified.code;
});
};