| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- import {
- compileSass,
- copy,
- generateFavicons,
- imageToWebP,
- optimiseSvg,
- renderMarkdownWithTemplate,
- } from "./processors.js"
- export const tasks = [
- {
- name: "styles",
- inputFiles: [{ pattern: "styles/**/*.scss", ignore: "**/_*.scss" }],
- stripPaths: ["styles/"],
- outputDir: "static/styles/",
- outputFileExtension: ".css",
- processor: compileSass,
- },
- {
- name: "icons",
- inputFiles: [{ pattern: "images/icons/*.svg" }],
- stripPaths: ["images/"],
- outputDir: "static/",
- outputFileExtension: ".svg",
- processor: optimiseSvg,
- },
- {
- name: "images",
- inputFiles: [{ pattern: "images/content/*.jpg" }],
- stripPaths: ["images/content/"],
- outputDir: "images/",
- outputFileExtension: ".webp",
- imageSizes: [
- "640w", "768w", "1024w", "1366w", "1600w", "1920w", "2560w",
- ],
- quality: 80,
- processor: imageToWebP,
- },
- {
- name: "favicons",
- inputFiles: [{ pattern: "images/favicon/*" }],
- stripPaths: ["images/favicon/"],
- outputDir: "static/meta/",
- processor: generateFavicons,
- },
- {
- name: "pages",
- inputFiles: [{ pattern: "markdown/*.md" }],
- stripPaths: ["markdown/"],
- outputFileExtension: ".html",
- processor: renderMarkdownWithTemplate,
- },
- {
- name: "static files",
- inputFiles: [{ pattern: "static/*" }],
- stripPaths: ["static/"],
- processor: copy,
- },
- ]
- export const opts = {
- outDir: "dist/",
- runDir: process.cwd(),
- cacheDir: ".cache",
- logLevel: "debug",
- defaultTemplate: "default",
- include: {
- styles: [{ pattern: "~/.rhedyn/styles/*.scss" }],
- },
- templateDirs: ["templates/", "~/.rhedyn/templates/"],
- clean: true,
- site: {
- name: "Website generated by Rhedyn",
- shortName: "Rhedyn test site",
- description: "A website generated from files using Rhedyn",
- author: "Craig Fletcher",
- url: "https://www.leakypixel.net",
- language: "en-GB",
- backgroundColor: "#22242c",
- themeColor: "#f00",
- },
- }
- const defaults = {
- opts,
- tasks,
- }
- export default defaults
|