add a TOC, more nutrition info stuff, update some styles and templates
This commit is contained in:
parent
863ed9c128
commit
a29ee38e0e
18 changed files with 534 additions and 86 deletions
|
@ -9,6 +9,7 @@ import prettier from "prettier";
|
||||||
import dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
import utc from "dayjs/plugin/utc.js";
|
import utc from "dayjs/plugin/utc.js";
|
||||||
import clean from "eleventy-plugin-clean";
|
import clean from "eleventy-plugin-clean";
|
||||||
|
import toc from "eleventy-plugin-toc";
|
||||||
import site from "./site/_data/site.js";
|
import site from "./site/_data/site.js";
|
||||||
import { feedPlugin } from "@11ty/eleventy-plugin-rss";
|
import { feedPlugin } from "@11ty/eleventy-plugin-rss";
|
||||||
import { execSync } from 'child_process';
|
import { execSync } from 'child_process';
|
||||||
|
@ -139,6 +140,8 @@ export default (config) => {
|
||||||
|
|
||||||
config.addPlugin(eleventyAutoCacheBuster);
|
config.addPlugin(eleventyAutoCacheBuster);
|
||||||
|
|
||||||
|
config.addPlugin(toc);
|
||||||
|
|
||||||
config.on('eleventy.after', () => {
|
config.on('eleventy.after', () => {
|
||||||
execSync(`npx pagefind --site dist --glob \"**/*.html\"`, { encoding: 'utf-8' });
|
execSync(`npx pagefind --site dist --glob \"**/*.html\"`, { encoding: 'utf-8' });
|
||||||
});
|
});
|
||||||
|
|
383
package-lock.json
generated
383
package-lock.json
generated
|
@ -16,6 +16,7 @@
|
||||||
"dayjs": "^1.11.11",
|
"dayjs": "^1.11.11",
|
||||||
"eleventy-auto-cache-buster": "^0.8.1",
|
"eleventy-auto-cache-buster": "^0.8.1",
|
||||||
"eleventy-plugin-clean": "^2.0.1",
|
"eleventy-plugin-clean": "^2.0.1",
|
||||||
|
"eleventy-plugin-toc": "^1.1.5",
|
||||||
"markdown-it-anchor": "^9.0.1",
|
"markdown-it-anchor": "^9.0.1",
|
||||||
"markdown-it-link-attributes": "^4.0.1",
|
"markdown-it-link-attributes": "^4.0.1",
|
||||||
"markdown-it-prism": "^3.0.0",
|
"markdown-it-prism": "^3.0.0",
|
||||||
|
@ -861,6 +862,12 @@
|
||||||
"url": "https://github.com/sponsors/sindresorhus"
|
"url": "https://github.com/sponsors/sindresorhus"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/boolbase": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
|
||||||
|
"integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==",
|
||||||
|
"license": "ISC"
|
||||||
|
},
|
||||||
"node_modules/brace-expansion": {
|
"node_modules/brace-expansion": {
|
||||||
"version": "1.1.12",
|
"version": "1.1.12",
|
||||||
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz",
|
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz",
|
||||||
|
@ -883,6 +890,165 @@
|
||||||
"node": ">=8"
|
"node": ">=8"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/cheerio": {
|
||||||
|
"version": "1.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.1.0.tgz",
|
||||||
|
"integrity": "sha512-+0hMx9eYhJvWbgpKV9hN7jg0JcwydpopZE4hgi+KvQtByZXPp04NiCWU0LzcAbP63abZckIHkTQaXVF52mX3xQ==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"cheerio-select": "^2.1.0",
|
||||||
|
"dom-serializer": "^2.0.0",
|
||||||
|
"domhandler": "^5.0.3",
|
||||||
|
"domutils": "^3.2.2",
|
||||||
|
"encoding-sniffer": "^0.2.0",
|
||||||
|
"htmlparser2": "^10.0.0",
|
||||||
|
"parse5": "^7.3.0",
|
||||||
|
"parse5-htmlparser2-tree-adapter": "^7.1.0",
|
||||||
|
"parse5-parser-stream": "^7.1.2",
|
||||||
|
"undici": "^7.10.0",
|
||||||
|
"whatwg-mimetype": "^4.0.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18.17"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/cheeriojs/cheerio?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/cheerio-select": {
|
||||||
|
"version": "2.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz",
|
||||||
|
"integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==",
|
||||||
|
"license": "BSD-2-Clause",
|
||||||
|
"dependencies": {
|
||||||
|
"boolbase": "^1.0.0",
|
||||||
|
"css-select": "^5.1.0",
|
||||||
|
"css-what": "^6.1.0",
|
||||||
|
"domelementtype": "^2.3.0",
|
||||||
|
"domhandler": "^5.0.3",
|
||||||
|
"domutils": "^3.0.1"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/fb55"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/cheerio-select/node_modules/dom-serializer": {
|
||||||
|
"version": "2.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz",
|
||||||
|
"integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"domelementtype": "^2.3.0",
|
||||||
|
"domhandler": "^5.0.2",
|
||||||
|
"entities": "^4.2.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/cheeriojs/dom-serializer?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/cheerio-select/node_modules/domhandler": {
|
||||||
|
"version": "5.0.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz",
|
||||||
|
"integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==",
|
||||||
|
"license": "BSD-2-Clause",
|
||||||
|
"dependencies": {
|
||||||
|
"domelementtype": "^2.3.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 4"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/fb55/domhandler?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/cheerio-select/node_modules/domutils": {
|
||||||
|
"version": "3.2.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz",
|
||||||
|
"integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==",
|
||||||
|
"license": "BSD-2-Clause",
|
||||||
|
"dependencies": {
|
||||||
|
"dom-serializer": "^2.0.0",
|
||||||
|
"domelementtype": "^2.3.0",
|
||||||
|
"domhandler": "^5.0.3"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/fb55/domutils?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/cheerio/node_modules/dom-serializer": {
|
||||||
|
"version": "2.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz",
|
||||||
|
"integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"domelementtype": "^2.3.0",
|
||||||
|
"domhandler": "^5.0.2",
|
||||||
|
"entities": "^4.2.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/cheeriojs/dom-serializer?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/cheerio/node_modules/domhandler": {
|
||||||
|
"version": "5.0.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz",
|
||||||
|
"integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==",
|
||||||
|
"license": "BSD-2-Clause",
|
||||||
|
"dependencies": {
|
||||||
|
"domelementtype": "^2.3.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 4"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/fb55/domhandler?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/cheerio/node_modules/domutils": {
|
||||||
|
"version": "3.2.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz",
|
||||||
|
"integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==",
|
||||||
|
"license": "BSD-2-Clause",
|
||||||
|
"dependencies": {
|
||||||
|
"dom-serializer": "^2.0.0",
|
||||||
|
"domelementtype": "^2.3.0",
|
||||||
|
"domhandler": "^5.0.3"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/fb55/domutils?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/cheerio/node_modules/htmlparser2": {
|
||||||
|
"version": "10.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-10.0.0.tgz",
|
||||||
|
"integrity": "sha512-TwAZM+zE5Tq3lrEHvOlvwgj1XLWQCtaaibSN11Q+gGBAS7Y1uZSWwXXRe4iF6OXnaq1riyQAPFOBtYc77Mxq0g==",
|
||||||
|
"funding": [
|
||||||
|
"https://github.com/fb55/htmlparser2?sponsor=1",
|
||||||
|
{
|
||||||
|
"type": "github",
|
||||||
|
"url": "https://github.com/sponsors/fb55"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"domelementtype": "^2.3.0",
|
||||||
|
"domhandler": "^5.0.3",
|
||||||
|
"domutils": "^3.2.1",
|
||||||
|
"entities": "^6.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/cheerio/node_modules/htmlparser2/node_modules/entities": {
|
||||||
|
"version": "6.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz",
|
||||||
|
"integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==",
|
||||||
|
"license": "BSD-2-Clause",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.12"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/fb55/entities?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/chokidar": {
|
"node_modules/chokidar": {
|
||||||
"version": "3.6.0",
|
"version": "3.6.0",
|
||||||
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
|
"resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
|
||||||
|
@ -961,6 +1127,77 @@
|
||||||
"node": ">= 8"
|
"node": ">= 8"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/css-select": {
|
||||||
|
"version": "5.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz",
|
||||||
|
"integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==",
|
||||||
|
"license": "BSD-2-Clause",
|
||||||
|
"dependencies": {
|
||||||
|
"boolbase": "^1.0.0",
|
||||||
|
"css-what": "^6.1.0",
|
||||||
|
"domhandler": "^5.0.2",
|
||||||
|
"domutils": "^3.0.1",
|
||||||
|
"nth-check": "^2.0.1"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/fb55"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/css-select/node_modules/dom-serializer": {
|
||||||
|
"version": "2.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz",
|
||||||
|
"integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"domelementtype": "^2.3.0",
|
||||||
|
"domhandler": "^5.0.2",
|
||||||
|
"entities": "^4.2.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/cheeriojs/dom-serializer?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/css-select/node_modules/domhandler": {
|
||||||
|
"version": "5.0.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz",
|
||||||
|
"integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==",
|
||||||
|
"license": "BSD-2-Clause",
|
||||||
|
"dependencies": {
|
||||||
|
"domelementtype": "^2.3.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 4"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/fb55/domhandler?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/css-select/node_modules/domutils": {
|
||||||
|
"version": "3.2.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/domutils/-/domutils-3.2.2.tgz",
|
||||||
|
"integrity": "sha512-6kZKyUajlDuqlHKVX1w7gyslj9MPIXzIFiz/rGu35uC1wMi+kMhQwGhl4lt9unC9Vb9INnY9Z3/ZA3+FhASLaw==",
|
||||||
|
"license": "BSD-2-Clause",
|
||||||
|
"dependencies": {
|
||||||
|
"dom-serializer": "^2.0.0",
|
||||||
|
"domelementtype": "^2.3.0",
|
||||||
|
"domhandler": "^5.0.3"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/fb55/domutils?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/css-what": {
|
||||||
|
"version": "6.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz",
|
||||||
|
"integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==",
|
||||||
|
"license": "BSD-2-Clause",
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 6"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/fb55"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/dayjs": {
|
"node_modules/dayjs": {
|
||||||
"version": "1.11.13",
|
"version": "1.11.13",
|
||||||
"resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz",
|
"resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.13.tgz",
|
||||||
|
@ -1127,6 +1364,15 @@
|
||||||
"@11ty/recursive-copy": "^3.0.0"
|
"@11ty/recursive-copy": "^3.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/eleventy-plugin-toc": {
|
||||||
|
"version": "1.1.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/eleventy-plugin-toc/-/eleventy-plugin-toc-1.1.5.tgz",
|
||||||
|
"integrity": "sha512-Fo5AZZSBH8CKvz0axJQA9nmnTFOflAMFrngaKER4rOz3C6oDwqxK8N+kNFepmIsieTPkrH+iREWLJ+/9j5JjUg==",
|
||||||
|
"license": "ISC",
|
||||||
|
"dependencies": {
|
||||||
|
"cheerio": "^1.0.0-rc.10"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/email-addresses": {
|
"node_modules/email-addresses": {
|
||||||
"version": "5.0.0",
|
"version": "5.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/email-addresses/-/email-addresses-5.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/email-addresses/-/email-addresses-5.0.0.tgz",
|
||||||
|
@ -1149,6 +1395,19 @@
|
||||||
"node": ">= 0.8"
|
"node": ">= 0.8"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/encoding-sniffer": {
|
||||||
|
"version": "0.2.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/encoding-sniffer/-/encoding-sniffer-0.2.1.tgz",
|
||||||
|
"integrity": "sha512-5gvq20T6vfpekVtqrYQsSCFZ1wEg5+wW0/QaZMWkFr6BqD3NfKs0rLCx4rrVlSWJeZb5NBJgVLswK/w2MWU+Gw==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"iconv-lite": "^0.6.3",
|
||||||
|
"whatwg-encoding": "^3.1.1"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/fb55/encoding-sniffer?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/entities": {
|
"node_modules/entities": {
|
||||||
"version": "4.5.0",
|
"version": "4.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz",
|
||||||
|
@ -1627,6 +1886,18 @@
|
||||||
"node": ">= 0.8"
|
"node": ">= 0.8"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/iconv-lite": {
|
||||||
|
"version": "0.6.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
|
||||||
|
"integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"safer-buffer": ">= 2.1.2 < 3.0.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.10.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/ignore": {
|
"node_modules/ignore": {
|
||||||
"version": "5.3.2",
|
"version": "5.3.2",
|
||||||
"resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
|
"resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
|
||||||
|
@ -2250,6 +2521,18 @@
|
||||||
"node": ">=0.10.0"
|
"node": ">=0.10.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/nth-check": {
|
||||||
|
"version": "2.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz",
|
||||||
|
"integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==",
|
||||||
|
"license": "BSD-2-Clause",
|
||||||
|
"dependencies": {
|
||||||
|
"boolbase": "^1.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/fb55/nth-check?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/nunjucks": {
|
"node_modules/nunjucks": {
|
||||||
"version": "3.2.4",
|
"version": "3.2.4",
|
||||||
"resolved": "https://registry.npmjs.org/nunjucks/-/nunjucks-3.2.4.tgz",
|
"resolved": "https://registry.npmjs.org/nunjucks/-/nunjucks-3.2.4.tgz",
|
||||||
|
@ -2370,6 +2653,70 @@
|
||||||
"integrity": "sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q==",
|
"integrity": "sha512-/2qh0lav6CmI15FzA3i/2Bzk2zCgQhGMkvhOhKNcBVQ1ldgpbfiNTVslmooUmWJcADi1f1kIeynbDRVzNlfR6Q==",
|
||||||
"license": "MIT"
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
|
"node_modules/parse5": {
|
||||||
|
"version": "7.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/parse5/-/parse5-7.3.0.tgz",
|
||||||
|
"integrity": "sha512-IInvU7fabl34qmi9gY8XOVxhYyMyuH2xUNpb2q8/Y+7552KlejkRvqvD19nMoUW/uQGGbqNpA6Tufu5FL5BZgw==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"entities": "^6.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/inikulin/parse5?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/parse5-htmlparser2-tree-adapter": {
|
||||||
|
"version": "7.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.1.0.tgz",
|
||||||
|
"integrity": "sha512-ruw5xyKs6lrpo9x9rCZqZZnIUntICjQAd0Wsmp396Ul9lN/h+ifgVV1x1gZHi8euej6wTfpqX8j+BFQxF0NS/g==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"domhandler": "^5.0.3",
|
||||||
|
"parse5": "^7.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/inikulin/parse5?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/parse5-htmlparser2-tree-adapter/node_modules/domhandler": {
|
||||||
|
"version": "5.0.3",
|
||||||
|
"resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz",
|
||||||
|
"integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==",
|
||||||
|
"license": "BSD-2-Clause",
|
||||||
|
"dependencies": {
|
||||||
|
"domelementtype": "^2.3.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 4"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/fb55/domhandler?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/parse5-parser-stream": {
|
||||||
|
"version": "7.1.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/parse5-parser-stream/-/parse5-parser-stream-7.1.2.tgz",
|
||||||
|
"integrity": "sha512-JyeQc9iwFLn5TbvvqACIF/VXG6abODeB3Fwmv/TGdLk2LfbWkaySGY72at4+Ty7EkPZj854u4CrICqNk2qIbow==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"parse5": "^7.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/inikulin/parse5?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/parse5/node_modules/entities": {
|
||||||
|
"version": "6.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz",
|
||||||
|
"integrity": "sha512-aN97NXWF6AWBTahfVOIrB/NShkzi5H7F9r1s9mD3cDj4Ko5f2qhhVoYMibXF7GlLveb/D2ioWay8lxI97Ven3g==",
|
||||||
|
"license": "BSD-2-Clause",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.12"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/fb55/entities?sponsor=1"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/parseurl": {
|
"node_modules/parseurl": {
|
||||||
"version": "1.3.3",
|
"version": "1.3.3",
|
||||||
"resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
|
"resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
|
||||||
|
@ -2659,6 +3006,12 @@
|
||||||
"queue-microtask": "^1.2.2"
|
"queue-microtask": "^1.2.2"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/safer-buffer": {
|
||||||
|
"version": "2.1.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
|
||||||
|
"integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
|
||||||
|
"license": "MIT"
|
||||||
|
},
|
||||||
"node_modules/section-matter": {
|
"node_modules/section-matter": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz",
|
||||||
|
@ -3017,6 +3370,15 @@
|
||||||
"integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==",
|
"integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==",
|
||||||
"license": "MIT"
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
|
"node_modules/undici": {
|
||||||
|
"version": "7.10.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/undici/-/undici-7.10.0.tgz",
|
||||||
|
"integrity": "sha512-u5otvFBOBZvmdjWLVW+5DAc9Nkq8f24g0O9oY7qw2JVIF1VocIFoyz9JFkuVOS2j41AufeO0xnlweJ2RLT8nGw==",
|
||||||
|
"license": "MIT",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=20.18.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/universalify": {
|
"node_modules/universalify": {
|
||||||
"version": "2.0.1",
|
"version": "2.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
|
||||||
|
@ -3048,6 +3410,27 @@
|
||||||
"integrity": "sha512-DEAoo25RfSYMuTGc9vPJzZcZullwIqRDSI9LOy+fkCJPi6hykCnfKaXTuPBDuXAUcqHXyOgFtHNp/kB2FjYHbw==",
|
"integrity": "sha512-DEAoo25RfSYMuTGc9vPJzZcZullwIqRDSI9LOy+fkCJPi6hykCnfKaXTuPBDuXAUcqHXyOgFtHNp/kB2FjYHbw==",
|
||||||
"license": "MIT"
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
|
"node_modules/whatwg-encoding": {
|
||||||
|
"version": "3.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz",
|
||||||
|
"integrity": "sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==",
|
||||||
|
"license": "MIT",
|
||||||
|
"dependencies": {
|
||||||
|
"iconv-lite": "0.6.3"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/whatwg-mimetype": {
|
||||||
|
"version": "4.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-4.0.0.tgz",
|
||||||
|
"integrity": "sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==",
|
||||||
|
"license": "MIT",
|
||||||
|
"engines": {
|
||||||
|
"node": ">=18"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/which": {
|
"node_modules/which": {
|
||||||
"version": "2.0.2",
|
"version": "2.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
|
||||||
|
|
|
@ -20,6 +20,7 @@
|
||||||
"dayjs": "^1.11.11",
|
"dayjs": "^1.11.11",
|
||||||
"eleventy-auto-cache-buster": "^0.8.1",
|
"eleventy-auto-cache-buster": "^0.8.1",
|
||||||
"eleventy-plugin-clean": "^2.0.1",
|
"eleventy-plugin-clean": "^2.0.1",
|
||||||
|
"eleventy-plugin-toc": "^1.1.5",
|
||||||
"markdown-it-anchor": "^9.0.1",
|
"markdown-it-anchor": "^9.0.1",
|
||||||
"markdown-it-link-attributes": "^4.0.1",
|
"markdown-it-link-attributes": "^4.0.1",
|
||||||
"markdown-it-prism": "^3.0.0",
|
"markdown-it-prism": "^3.0.0",
|
||||||
|
|
|
@ -30,7 +30,7 @@
|
||||||
{%- if author -%}
|
{%- if author -%}
|
||||||
<author>{{ author }}</author>
|
<author>{{ author }}</author>
|
||||||
{%- endif -%}
|
{%- endif -%}
|
||||||
{%- if date -%}
|
{%- if date and not omitMetadata -%}
|
||||||
<date>{{ date | formatDate("MMMM D, YYYY") }}</date>
|
<date>{{ date | formatDate("MMMM D, YYYY") }}</date>
|
||||||
{%- endif -%}
|
{%- endif -%}
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -4,11 +4,14 @@ tags: timeline
|
||||||
permalink: about/index.html
|
permalink: about/index.html
|
||||||
title: About
|
title: About
|
||||||
---
|
---
|
||||||
{{ content | safe }}
|
<main data-pagefind-body>
|
||||||
|
{{ content | safe }}
|
||||||
{% for item in collections.timeline | reverse %}
|
<section>
|
||||||
{% if item.data.title !== "About" and not item.data.draft %}
|
{% for item in collections.timeline | reverse %}
|
||||||
<h3 id="{{item.data.time}}"><a class="header-anchor" href="#{{item.data.time}}" aria-hidden="true"></a>{{ item.data.title | markdown | safe }} <aside>{{item.data.time}}</aside></h3>
|
{% if item.data.title !== "About" and not item.data.draft %}
|
||||||
<p>{{ item.data.description | markdown | safe }}</p>
|
<h3 id="{{item.data.time}}"><a class="header-anchor" href="#{{item.data.time}}" aria-hidden="true"></a>{{ item.data.title | markdown | safe }} <aside>{{item.data.time}}</aside></h3>
|
||||||
{% endif %}
|
<p>{{ item.data.description | markdown | safe }}</p>
|
||||||
{% endfor %}
|
{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
</section>
|
||||||
|
</main>
|
||||||
|
|
|
@ -34,9 +34,7 @@ title: Joshua's Homepage
|
||||||
<body data-font="english" data-path="{{ page.url }}">
|
<body data-font="english" data-path="{{ page.url }}">
|
||||||
<script>{% include "-darklight.js" %}</script>
|
<script>{% include "-darklight.js" %}</script>
|
||||||
{% include "-header.njk" %}
|
{% include "-header.njk" %}
|
||||||
<main data-pagefind-body>
|
{{ content | safe }}
|
||||||
{{ content | safe }}
|
|
||||||
</main>
|
|
||||||
{% include "-footer.njk" %}
|
{% include "-footer.njk" %}
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|
|
@ -3,16 +3,23 @@ layout: "base.njk"
|
||||||
eleventyComputed:
|
eleventyComputed:
|
||||||
title: "{{ page.fileSlug | capitalize }}"
|
title: "{{ page.fileSlug | capitalize }}"
|
||||||
---
|
---
|
||||||
{{ content | safe }}
|
|
||||||
{% set tag = page.fileSlug %}
|
<main>
|
||||||
{% if collections[tag] %}
|
<section data-pagefind-body>
|
||||||
<section>
|
{{ content | safe }}
|
||||||
{% for item in collections[tag] | reverse %}
|
|
||||||
<article class="item-summary">
|
|
||||||
<a href="{{ item.url }}">{{ item.data.title }}</a>
|
|
||||||
{% if item.data.date %}<aside>{{item.data.date | formatDate("MMMM DD, YYYY")}}</aside>{% endif %}
|
|
||||||
<p class="item-summary-description">{{ item.data.description }}</p>
|
|
||||||
</article>
|
|
||||||
{% endfor %}
|
|
||||||
</section>
|
</section>
|
||||||
{% endif %}
|
{% set tag = page.fileSlug %}
|
||||||
|
{% if collections[tag] %}
|
||||||
|
<section>
|
||||||
|
{% for item in collections[tag] | reverse %}
|
||||||
|
<article class="item-summary">
|
||||||
|
<a href="{{ item.url }}">{{ item.data.title }}</a>
|
||||||
|
{% if item.data.date %}
|
||||||
|
<aside>{{ item.data.date | formatDate("MMMM DD, YYYY") }}</aside>
|
||||||
|
{% endif %}
|
||||||
|
<p class="item-summary-description">{{ item.data.description }}</p>
|
||||||
|
</article>
|
||||||
|
{% endfor %}
|
||||||
|
</section>
|
||||||
|
{% endif %}
|
||||||
|
</main>
|
|
@ -1,6 +1,6 @@
|
||||||
:root {
|
:root {
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
font-size: clamp(14px, 9px + 0.5vw, 24px);
|
font-size: clamp(14px, 8px + 0.65vw, 24px);
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
@ -103,6 +103,13 @@ body[data-theme="dark"] {
|
||||||
color: var(--c-text-dark);
|
color: var(--c-text-dark);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
mark {
|
||||||
|
background: var(--c-highlight);
|
||||||
|
color: inherit;
|
||||||
|
border-radius: 0.4rem;
|
||||||
|
box-shadow: 0 0 0.75em 0.25em var(--c-highlight);
|
||||||
|
}
|
||||||
|
|
||||||
*,
|
*,
|
||||||
:after,
|
:after,
|
||||||
:before {
|
:before {
|
||||||
|
@ -150,12 +157,40 @@ main p img {
|
||||||
max-width: 100%;
|
max-width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
section {
|
section:nth-child(n+2) {
|
||||||
margin-top: 1rem;
|
margin-top: 1rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.footnote-item:target,
|
header.toc {
|
||||||
.footnote-ref :target {
|
display: block;
|
||||||
|
margin: 0;
|
||||||
|
font-size: var(--s-1);
|
||||||
|
ol {
|
||||||
|
display: inline;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
li {
|
||||||
|
display: inline;
|
||||||
|
list-style: none;
|
||||||
|
&:nth-child(n+2):before {
|
||||||
|
content: ' · ';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.toc > ol::before {
|
||||||
|
content: "Contents: ";
|
||||||
|
}
|
||||||
|
.toc ol ol {
|
||||||
|
&::before {
|
||||||
|
content: "(";
|
||||||
|
}
|
||||||
|
&::after {
|
||||||
|
content: ")";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
:target {
|
||||||
animation: ping 1s ease-out;
|
animation: ping 1s ease-out;
|
||||||
&,
|
&,
|
||||||
a {
|
a {
|
||||||
|
@ -236,6 +271,10 @@ span.aside {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ul, ol {
|
||||||
|
padding-left: 1.5rem;
|
||||||
|
}
|
||||||
|
|
||||||
ul.collection {
|
ul.collection {
|
||||||
padding-left: 0;
|
padding-left: 0;
|
||||||
> li {
|
> li {
|
||||||
|
@ -438,7 +477,10 @@ h4 {
|
||||||
position: relative;
|
position: relative;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
text-shadow: 0 0 0.5em var(--c-highlight);
|
text-shadow: 0 0 0.5em var(--c-highlight);
|
||||||
margin-top: 1.5rem;
|
margin-top: 0;
|
||||||
|
main > &:nth-child(n+2) {
|
||||||
|
margin-top: 1.5rem;
|
||||||
|
}
|
||||||
margin-bottom: 0.5rem;
|
margin-bottom: 0.5rem;
|
||||||
&:hover .header-anchor {
|
&:hover .header-anchor {
|
||||||
opacity: 1;
|
opacity: 1;
|
||||||
|
@ -466,7 +508,6 @@ h1 {
|
||||||
margin-bottom: 0;
|
margin-bottom: 0;
|
||||||
}
|
}
|
||||||
.header-meta {
|
.header-meta {
|
||||||
margin-bottom: calc(0.75 * var(--s3));
|
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
|
@ -512,6 +553,7 @@ h1 {
|
||||||
}
|
}
|
||||||
|
|
||||||
main {
|
main {
|
||||||
|
margin-top: calc(0.75 * var(--s3));
|
||||||
h1,
|
h1,
|
||||||
h2,
|
h2,
|
||||||
h3,
|
h3,
|
||||||
|
|
|
@ -1,27 +1,29 @@
|
||||||
---
|
---
|
||||||
layout: "base.njk"
|
layout: "base.njk"
|
||||||
---
|
---
|
||||||
{{ content | safe }}
|
<main data-pagefind-body>
|
||||||
{%- for name, collection in collections -%}
|
{{ content | safe }}
|
||||||
{%- if name in ["posts"] -%}
|
{%- for name, collection in collections -%}
|
||||||
<h2>{{name | capitalize }}</h2>
|
{%- if name in ["posts"] -%}
|
||||||
<ul class="collection">
|
<h2>{{name | capitalize }}</h2>
|
||||||
{%- for item in collection | reverse -%}
|
<ul class="collection">
|
||||||
{%- if (loop.index <= 5) -%}
|
{%- for item in collection | reverse -%}
|
||||||
<li>
|
{%- if (loop.index <= 5) -%}
|
||||||
<a href="{{item.url}}">{{item.data.title}}</a>
|
<li>
|
||||||
{%- if item.data.date -%}
|
<a href="{{item.url}}">{{item.data.title}}</a>
|
||||||
<aside>{{item.data.date | formatDate("MMMM DD, YYYY") }}</aside>
|
{%- if item.data.date -%}
|
||||||
{%- endif -%}
|
<aside>{{item.data.date | formatDate("MMMM DD, YYYY") }}</aside>
|
||||||
<p>{{item.data.description | safe}}</p>
|
{%- endif -%}
|
||||||
</li>
|
<p>{{item.data.description | safe}}</p>
|
||||||
{%- endif -%}
|
</li>
|
||||||
{%- if (loop.index == 6) -%}
|
{%- endif -%}
|
||||||
<li>
|
{%- if (loop.index == 6) -%}
|
||||||
<a href="/{{name}}/">More {{name}}…</a>
|
<li>
|
||||||
</li>
|
<a href="/{{name}}/">More {{name}}…</a>
|
||||||
{%- endif -%}
|
</li>
|
||||||
{%- endfor -%}
|
{%- endif -%}
|
||||||
</ul>
|
{%- endfor -%}
|
||||||
{%- endif -%}
|
</ul>
|
||||||
{%- endfor -%}
|
{%- endif -%}
|
||||||
|
{%- endfor -%}
|
||||||
|
</main>
|
||||||
|
|
|
@ -1,11 +1,13 @@
|
||||||
---
|
---
|
||||||
layout: base.njk
|
layout: base.njk
|
||||||
---
|
---
|
||||||
|
{% if not omitTOC %}
|
||||||
{{ content | safe }}
|
<header class="toc">{{ content | toc('{"tags":["h2", "h3"],"wrapper":"span"}') | safe }}</header>
|
||||||
|
{% endif %}
|
||||||
|
<main data-pagefind-body="data-pagefind-body">
|
||||||
|
{{ content | safe }}
|
||||||
|
</main>
|
||||||
<script data-isso="//comments.apps.seigler.net/" src="//comments.apps.seigler.net/js/embed.min.js"></script>
|
<script data-isso="//comments.apps.seigler.net/" src="//comments.apps.seigler.net/js/embed.min.js"></script>
|
||||||
|
|
||||||
<section id="isso-thread" data-title="{{computedTitle}}">
|
<section id="isso-thread" data-title="{{computedTitle}}">
|
||||||
<noscript>Javascript needs to be activated to view comments.</noscript>
|
<noscript>Javascript needs to be activated to view comments.</noscript>
|
||||||
</section>
|
</section>
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
---
|
---
|
||||||
title: Books
|
title: Books
|
||||||
layout: "base.njk"
|
layout: "post.njk"
|
||||||
|
omitTOC: true
|
||||||
---
|
---
|
||||||
These books had a big influence on my thinking and taste.
|
These books had a big influence on my thinking and taste.
|
||||||
|
|
||||||
|
|
|
@ -3,7 +3,10 @@ layout: base.njk
|
||||||
permalink: search/index.html
|
permalink: search/index.html
|
||||||
title: Search
|
title: Search
|
||||||
---
|
---
|
||||||
<div class="searchCard">
|
|
||||||
<div id="searchbox"></div>
|
<main>
|
||||||
|
<div class="searchCard">
|
||||||
|
<div id="searchbox"></div>
|
||||||
<script src="/pagefind/pagefind-ui.js" onload="new PagefindUI({ element: '#searchbox', showImages: false, resetStyles: false, autofocus: true });"></script>
|
<script src="/pagefind/pagefind-ui.js" onload="new PagefindUI({ element: '#searchbox', showImages: false, resetStyles: false, autofocus: true });"></script>
|
||||||
</div>
|
</div>
|
||||||
|
</main>
|
||||||
|
|
|
@ -11,8 +11,6 @@ In an attempt to remedy my newfound illiteracy, I started exploring symbolism, w
|
||||||
|
|
||||||
From there I started listening to the [Lord of Spirits](https://www.ancientfaith.com/podcasts/lordofspirits) podcast. I learned that commonplace, obvious understanding of existence as material _and spiritual_ has been mostly lost, displaced by modern confidence that the material world is the limit of reality, over which sovereign mankind rules. The ancient faith of Christianity, known now as "Eastern Orthodoxy", corresponds with reality, especially spiritual patterns of reality as we see more plainly every week, better than anything else I know.
|
From there I started listening to the [Lord of Spirits](https://www.ancientfaith.com/podcasts/lordofspirits) podcast. I learned that commonplace, obvious understanding of existence as material _and spiritual_ has been mostly lost, displaced by modern confidence that the material world is the limit of reality, over which sovereign mankind rules. The ancient faith of Christianity, known now as "Eastern Orthodoxy", corresponds with reality, especially spiritual patterns of reality as we see more plainly every week, better than anything else I know.
|
||||||
|
|
||||||
## Additional thoughts
|
|
||||||
|
|
||||||
For a while I think my highest values have been freedom and truth. A desire to be solely responsible for myself, and a desire to understand myself and the world fully and accurately. But I didn't realize that my chief obstacle is hardly megacorps and governments: I am ruled by my own out-of-control desires: for comfort, pleasure, control, satisfaction, even self-mastery. In a paradise where my every whim was manifested, I would still be a slave to desire, consuming and _wanting_ more and more.
|
For a while I think my highest values have been freedom and truth. A desire to be solely responsible for myself, and a desire to understand myself and the world fully and accurately. But I didn't realize that my chief obstacle is hardly megacorps and governments: I am ruled by my own out-of-control desires: for comfort, pleasure, control, satisfaction, even self-mastery. In a paradise where my every whim was manifested, I would still be a slave to desire, consuming and _wanting_ more and more.
|
||||||
|
|
||||||
Investigating eastern orthodoxy, this ancient Christianity, revealed a better path to freedom and truth: aiming higher. Every action and choice is in service to something. Instead of serving little tyrannical gods like comfort or pleasure, or potentially nobler gods like a country or even a "liberty movement", I will attempt to serve the Most High.
|
Investigating eastern orthodoxy, this ancient Christianity, revealed a better path to freedom and truth: aiming higher. Every action and choice is in service to something. Instead of serving little tyrannical gods like comfort or pleasure, or potentially nobler gods like a country or even a "liberty movement", I will attempt to serve the Most High.
|
||||||
|
|
|
@ -6,7 +6,7 @@ description: How to self-host Forgejo and automatically serve your web build bra
|
||||||
|
|
||||||
I recently started self-hosting [Forgejo](https://forgejo.org/), but I wanted something to replace GitHub pages, which has been very convenient for publishing little website projects. My server runs Debian, so I decided to use [webhook](https://github.com/adnanh/webhook) and [Caddy](https://caddyserver.com/). I'm very happy how it turned out.
|
I recently started self-hosting [Forgejo](https://forgejo.org/), but I wanted something to replace GitHub pages, which has been very convenient for publishing little website projects. My server runs Debian, so I decided to use [webhook](https://github.com/adnanh/webhook) and [Caddy](https://caddyserver.com/). I'm very happy how it turned out.
|
||||||
|
|
||||||
## The result
|
## The objective
|
||||||
When I push a `gh-pages` branch to any public repository on my Forgejo instance, the name of the repo is used as a domain name (e.g. [marklink.pages.seigler.net](https://marklink.pages.seigler.net/)) and the branch contents are automatically served with SSL. If I push updates to the branch, they are automatically published. If the branch or repo is deleted, the site is taken down.
|
When I push a `gh-pages` branch to any public repository on my Forgejo instance, the name of the repo is used as a domain name (e.g. [marklink.pages.seigler.net](https://marklink.pages.seigler.net/)) and the branch contents are automatically served with SSL. If I push updates to the branch, they are automatically published. If the branch or repo is deleted, the site is taken down.
|
||||||
|
|
||||||
## How to do it
|
## How to do it
|
||||||
|
|
|
@ -20,13 +20,12 @@ date: 2025-06-13
|
||||||
- Top with the remaining 4 tablespoons of butter, parsley, and salt and pepper to taste.
|
- Top with the remaining 4 tablespoons of butter, parsley, and salt and pepper to taste.
|
||||||
- Serve immediately or leave in the pan, covered, until ready to serve. These will stay warm for 20 more minutes or so with no problems.
|
- Serve immediately or leave in the pan, covered, until ready to serve. These will stay warm for 20 more minutes or so with no problems.
|
||||||
|
|
||||||
## Notes:
|
## Notes
|
||||||
We use 4.5 tsp of Better than Bullion with 28oz water, replacing the broth and bullion cube.
|
We use 4.5 tsp of Better than Bouillon with 28oz water, replacing the broth and bouillon cube.
|
||||||
We also usually brown some canned chicken and add it at the same time as the butter and seasonings.
|
We also usually brown some canned chicken and add it at the same time as the butter and seasonings.
|
||||||
|
|
||||||
Original recipe from [bunsinmyoven](https://www.bunsinmyoven.com/amish-egg-noodles/)
|
Original recipe from [bunsinmyoven](https://www.bunsinmyoven.com/amish-egg-noodles/)
|
||||||
|
|
||||||
## Nutrition Information:
|
## Nutrition Information
|
||||||
Makes 6 servings. Each serving:
|
Makes 6 servings. Each serving:
|
||||||
**Calories** 328kcal (16%), **Fat** 14g (22%), Saturated Fat 7g (44%), **Cholesterol** 77mg (26%), **Sodium** 758mg (33%), **Total Carbohydrates** 41g (14%), Fiber 2g (8%), Sugar 1g (1%), **Protein** 9g (18%), **Vitamin C** 10.3mg (12%), **Vitamin A** 400IU (8%), **Iron** 1.5mg (8%)
|
**Calories** 328kcal (16%), **Total Fat** 14g (22%), Saturated Fat 7g (44%), Cholesterol 77mg (26%), **Sodium** 758mg (33%), **Total Carbohydrates** 41g (14%), Dietary Fiber 2g (8%), Sugar 1g (1%), **Protein** 9g (18%), **Vitamin C** 10.3mg (12%), **Vitamin A** 400IU (8%), **Iron** 1.5mg (8%), **Calcium** 41mg (4%), **Potassium** 266mg (8%)
|
||||||
**Calcium** 41mg (4%), **Potassium** 266mg (8%)
|
|
|
@ -5,21 +5,21 @@ date: 2025-05-20
|
||||||
---
|
---
|
||||||
|
|
||||||
## Ingredients
|
## Ingredients
|
||||||
- 2 Boneless Skinless Chicken Breasts, cooked and diced
|
- 2 boneless skinless chicken breasts, cooked and diced
|
||||||
- 8 ounces Orzo Pasta
|
- 8 ounces Orzo pasta
|
||||||
- 2 Celery Stalks, finely diced
|
- 2 celery stalks, finely diced
|
||||||
- 2 Carrots, finely diced
|
- 2 carrots, finely diced
|
||||||
- 1/2 Yellow Onion, finely diced
|
- 1/2 yellow onion, finely diced
|
||||||
- 5 tablespoons Butter
|
- 5 tablespoons butter
|
||||||
- 2 tablespoons Olive Oil
|
- 2 tablespoons olive oil
|
||||||
- 2 cups Chicken Broth
|
- 2 cups chicken broth
|
||||||
- ½ cup Heavy Whipping Cream
|
- ½ cup heavy whipping cream
|
||||||
- 1 teaspoon Chicken Bouillon Powder
|
- 1 teaspoon chicken bouillon powder
|
||||||
- 1/3 cup All Purpose Flour
|
- 1/3 cup all purpose flour
|
||||||
|
|
||||||
## Instructions
|
## Instructions
|
||||||
|
|
||||||
1. Cook the orzo per the package instructions.
|
1. Cook the Orzo per the package instructions.
|
||||||
2. While that cooks, make a mirepoix:
|
2. While that cooks, make a mirepoix:
|
||||||
1. In a large skillet over medium high heat add the butter and olive oil.
|
1. In a large skillet over medium high heat add the butter and olive oil.
|
||||||
2. Once the butter is melted add in the diced onion, carrots and celery.
|
2. Once the butter is melted add in the diced onion, carrots and celery.
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
export default {
|
export default {
|
||||||
layout: "base.njk",
|
layout: "post.njk",
|
||||||
tags: ["recipes"],
|
tags: ["recipes"],
|
||||||
|
omitMetadata: true,
|
||||||
|
omitTOC: true,
|
||||||
};
|
};
|
||||||
|
|
|
@ -10,14 +10,14 @@ date: 2025-05-05
|
||||||
- 2 cups long grain white rice
|
- 2 cups long grain white rice
|
||||||
- 4 cups water
|
- 4 cups water
|
||||||
- 8 oz tomato sauce
|
- 8 oz tomato sauce
|
||||||
- 2 Tbsp chicken or vegetable bullion powder
|
- 2 Tbsp chicken or vegetable bouillon powder
|
||||||
- 1.5 cups water
|
- 1.5 cups water
|
||||||
|
|
||||||
## Instructions
|
## Instructions
|
||||||
|
|
||||||
1. Add oil to a large frying pan over medium-high heat.
|
1. Add oil to a large frying pan over medium-high heat.
|
||||||
2. Add uncooked rice, stirring continually until rice is toasted.
|
2. Add uncooked rice, stirring continually until rice is toasted.
|
||||||
3. Stir in 4 cups water, tomato sauce, and bullion.
|
3. Stir in 4 cups water, tomato sauce, and bouillon.
|
||||||
4. Return to boil and leave uncovered **10 minutes**.
|
4. Return to boil and leave uncovered **10 minutes**.
|
||||||
5. Stir in 1.5 cups water and return to a boil.
|
5. Stir in 1.5 cups water and return to a boil.
|
||||||
6. Reduce heat to low and cover. Simmer **10 minutes**.
|
6. Reduce heat to low and cover. Simmer **10 minutes**.
|
||||||
|
@ -28,3 +28,7 @@ Enjoy!
|
||||||
## Notes
|
## Notes
|
||||||
|
|
||||||
Original recipe from [dollartreedinners](https://www.tiktok.com/t/ZT2Qy1AtF/)
|
Original recipe from [dollartreedinners](https://www.tiktok.com/t/ZT2Qy1AtF/)
|
||||||
|
|
||||||
|
## Nutrition Information
|
||||||
|
|
||||||
|
Makes 4 servings. Each serving: **Calories** 441kcal (22%), **Total Fat** 11.3g (17%), Saturated Fat 1.9g (10%), Trans Fat 0.1g, Cholesterol 1mg (0%), **Sodium** 56mg (2%), **Total Carbohydrates** 76g (25%), Dietary Fiber 2g (6%), Sugars 0g, **Protein** 7g, **Vitamin A** (1%), **Vitamin C** (9%), **Calcium** (7%), **Iron** (24%)
|
Loading…
Add table
Add a link
Reference in a new issue