diff --git a/eleventy.config.js b/eleventy.config.js
index 3032cd1e..85cdc218 100644
--- a/eleventy.config.js
+++ b/eleventy.config.js
@@ -8,6 +8,7 @@ const pluginRss = require("@11ty/eleventy-plugin-rss");
const syntaxHighlight = require("@11ty/eleventy-plugin-syntaxhighlight");
const eleventyNavigationPlugin = require("@11ty/eleventy-navigation");
const Image = require("@11ty/eleventy-img");
+const faviconsPlugin = require("eleventy-plugin-gen-favicons");
async function picture(image) {
// netlifycms have a tendency to create an empty image in the markdown image: "" so test for this and kill it
@@ -76,6 +77,7 @@ module.exports = function (eleventyConfig) {
eleventyConfig.addPlugin(syntaxHighlight);
eleventyConfig.addPlugin(eleventyNavigationPlugin);
+ eleventyConfig.addPlugin(faviconsPlugin);
// Shortcodes
eleventyConfig.addNunjucksAsyncShortcode("picture", picture);
eleventyConfig.addShortcode("imageurl", require("./src/system/11ty/shortcode/imageurl"));
diff --git a/package-lock.json b/package-lock.json
index 2b0d540f..1307f27b 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,16 +1,17 @@
{
"name": "saga11",
- "version": "0.5.5beta",
+ "version": "0.6beta",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "saga11",
- "version": "0.5.5beta",
+ "version": "0.6beta",
"license": "MIT",
"dependencies": {
"calendar-link": "^2.2.0",
"dotenv-cli": "^6.0.0",
+ "eleventy-plugin-gen-favicons": "^1.1.1",
"html-minifier": "^4.0.0",
"netlify-cms-proxy-server": "^1.3.24",
"netlify-plugin-cache": "^1.0.3",
@@ -1276,7 +1277,6 @@
"version": "4.2.3",
"resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz",
"integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==",
- "dev": true,
"dependencies": {
"color-convert": "^2.0.1",
"color-string": "^1.9.0"
@@ -1565,7 +1565,6 @@
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz",
"integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==",
- "dev": true,
"dependencies": {
"mimic-response": "^3.1.0"
},
@@ -1580,7 +1579,6 @@
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz",
"integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==",
- "dev": true,
"engines": {
"node": ">=4.0.0"
}
@@ -1621,7 +1619,6 @@
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz",
"integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==",
- "dev": true,
"engines": {
"node": ">=8"
}
@@ -1818,6 +1815,38 @@
"node": ">=0.10.0"
}
},
+ "node_modules/eleventy-plugin-gen-favicons": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/eleventy-plugin-gen-favicons/-/eleventy-plugin-gen-favicons-1.1.1.tgz",
+ "integrity": "sha512-02ZpUtJ2mHEp/sQ4JQmWqUSsyDJ77BZD8kgUBoUtN5S+jwK9Mu36tjhaz+bh1BQiC9ih85YCFtn1Mai1f076pg==",
+ "dependencies": {
+ "fast-deep-equal": "^3.1.3",
+ "png-to-ico": "^2.1.8",
+ "sharp": "^0.31.0"
+ }
+ },
+ "node_modules/eleventy-plugin-gen-favicons/node_modules/sharp": {
+ "version": "0.31.1",
+ "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.31.1.tgz",
+ "integrity": "sha512-GR8M1wBwOiFKLkm9JPun27OQnNRZdHfSf9VwcdZX6UrRmM1/XnOrLFTF0GAil+y/YK4E6qcM/ugxs80QirsHxg==",
+ "hasInstallScript": true,
+ "dependencies": {
+ "color": "^4.2.3",
+ "detect-libc": "^2.0.1",
+ "node-addon-api": "^5.0.0",
+ "prebuild-install": "^7.1.1",
+ "semver": "^7.3.7",
+ "simple-get": "^4.0.1",
+ "tar-fs": "^2.1.1",
+ "tunnel-agent": "^0.6.0"
+ },
+ "engines": {
+ "node": ">=14.15.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/libvips"
+ }
+ },
"node_modules/enabled": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz",
@@ -1915,7 +1944,6 @@
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz",
"integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==",
- "dev": true,
"engines": {
"node": ">=6"
}
@@ -2009,6 +2037,11 @@
"@types/yauzl": "^2.9.1"
}
},
+ "node_modules/fast-deep-equal": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
+ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
+ },
"node_modules/fast-glob": {
"version": "3.2.12",
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz",
@@ -2259,8 +2292,7 @@
"node_modules/github-from-package": {
"version": "0.0.0",
"resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz",
- "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==",
- "dev": true
+ "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw=="
},
"node_modules/glob": {
"version": "8.0.3",
@@ -3293,7 +3325,6 @@
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz",
"integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==",
- "dev": true,
"engines": {
"node": ">=10"
},
@@ -3483,8 +3514,7 @@
"node_modules/napi-build-utils": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz",
- "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==",
- "dev": true
+ "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg=="
},
"node_modules/negotiator": {
"version": "0.6.3",
@@ -3547,7 +3577,6 @@
"version": "3.24.0",
"resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.24.0.tgz",
"integrity": "sha512-YPG3Co0luSu6GwOBsmIdGW6Wx0NyNDLg/hriIyDllVsNwnI6UeqaWShxC3lbH4LtEQUgoLP3XR1ndXiDAWvmRw==",
- "dev": true,
"dependencies": {
"semver": "^7.3.5"
},
@@ -3558,8 +3587,7 @@
"node_modules/node-addon-api": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.0.0.tgz",
- "integrity": "sha512-CvkDw2OEnme7ybCykJpVcKH+uAOLV2qLqiyla128dN9TkEWfrYmxG6C2boDe5KcNQqZF3orkqzGgOMvZ/JNekA==",
- "dev": true
+ "integrity": "sha512-CvkDw2OEnme7ybCykJpVcKH+uAOLV2qLqiyla128dN9TkEWfrYmxG6C2boDe5KcNQqZF3orkqzGgOMvZ/JNekA=="
},
"node_modules/node-fetch": {
"version": "2.6.7",
@@ -3966,6 +3994,35 @@
"semver-compare": "^1.0.0"
}
},
+ "node_modules/png-to-ico": {
+ "version": "2.1.8",
+ "resolved": "https://registry.npmjs.org/png-to-ico/-/png-to-ico-2.1.8.tgz",
+ "integrity": "sha512-Nf+IIn/cZ/DIZVdGveJp86NG5uNib1ZXMiDd/8x32HCTeKSvgpyg6D/6tUBn1QO/zybzoMK0/mc3QRgAyXdv9w==",
+ "dependencies": {
+ "@types/node": "^17.0.36",
+ "minimist": "^1.2.6",
+ "pngjs": "^6.0.0"
+ },
+ "bin": {
+ "png-to-ico": "bin/cli.js"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/png-to-ico/node_modules/@types/node": {
+ "version": "17.0.45",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz",
+ "integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw=="
+ },
+ "node_modules/pngjs": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-6.0.0.tgz",
+ "integrity": "sha512-TRzzuFRRmEoSW/p1KVAmiOgPco2Irlah+bGFCeNfJXxxYGwSw7YwAOAcd7X28K/m5bjBWKsC29KyoMfHbypayg==",
+ "engines": {
+ "node": ">=12.13.0"
+ }
+ },
"node_modules/postcss": {
"version": "8.4.16",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.16.tgz",
@@ -4149,7 +4206,6 @@
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.1.tgz",
"integrity": "sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==",
- "dev": true,
"dependencies": {
"detect-libc": "^2.0.0",
"expand-template": "^2.0.3",
@@ -4573,7 +4629,6 @@
"version": "1.2.8",
"resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz",
"integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==",
- "dev": true,
"dependencies": {
"deep-extend": "^0.6.0",
"ini": "~1.3.0",
@@ -5048,7 +5103,6 @@
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz",
"integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==",
- "dev": true,
"funding": [
{
"type": "github",
@@ -5068,7 +5122,6 @@
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz",
"integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==",
- "dev": true,
"funding": [
{
"type": "github",
@@ -5260,7 +5313,6 @@
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
"integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==",
- "dev": true,
"engines": {
"node": ">=0.10.0"
}
@@ -5449,7 +5501,6 @@
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
"integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==",
- "dev": true,
"dependencies": {
"safe-buffer": "^5.0.1"
},
@@ -6660,7 +6711,6 @@
"version": "4.2.3",
"resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz",
"integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==",
- "dev": true,
"requires": {
"color-convert": "^2.0.1",
"color-string": "^1.9.0"
@@ -6893,7 +6943,6 @@
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz",
"integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==",
- "dev": true,
"requires": {
"mimic-response": "^3.1.0"
}
@@ -6901,8 +6950,7 @@
"deep-extend": {
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz",
- "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==",
- "dev": true
+ "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA=="
},
"defined": {
"version": "1.0.0",
@@ -6929,8 +6977,7 @@
"detect-libc": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz",
- "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==",
- "dev": true
+ "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w=="
},
"detective": {
"version": "5.2.1",
@@ -7075,6 +7122,33 @@
"jake": "^10.8.5"
}
},
+ "eleventy-plugin-gen-favicons": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/eleventy-plugin-gen-favicons/-/eleventy-plugin-gen-favicons-1.1.1.tgz",
+ "integrity": "sha512-02ZpUtJ2mHEp/sQ4JQmWqUSsyDJ77BZD8kgUBoUtN5S+jwK9Mu36tjhaz+bh1BQiC9ih85YCFtn1Mai1f076pg==",
+ "requires": {
+ "fast-deep-equal": "^3.1.3",
+ "png-to-ico": "^2.1.8",
+ "sharp": "^0.31.0"
+ },
+ "dependencies": {
+ "sharp": {
+ "version": "0.31.1",
+ "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.31.1.tgz",
+ "integrity": "sha512-GR8M1wBwOiFKLkm9JPun27OQnNRZdHfSf9VwcdZX6UrRmM1/XnOrLFTF0GAil+y/YK4E6qcM/ugxs80QirsHxg==",
+ "requires": {
+ "color": "^4.2.3",
+ "detect-libc": "^2.0.1",
+ "node-addon-api": "^5.0.0",
+ "prebuild-install": "^7.1.1",
+ "semver": "^7.3.7",
+ "simple-get": "^4.0.1",
+ "tar-fs": "^2.1.1",
+ "tunnel-agent": "^0.6.0"
+ }
+ }
+ }
+ },
"enabled": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/enabled/-/enabled-2.0.0.tgz",
@@ -7146,8 +7220,7 @@
"expand-template": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz",
- "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==",
- "dev": true
+ "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg=="
},
"express": {
"version": "4.18.1",
@@ -7226,6 +7299,11 @@
"yauzl": "^2.10.0"
}
},
+ "fast-deep-equal": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
+ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q=="
+ },
"fast-glob": {
"version": "3.2.12",
"resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.12.tgz",
@@ -7433,8 +7511,7 @@
"github-from-package": {
"version": "0.0.0",
"resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz",
- "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==",
- "dev": true
+ "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw=="
},
"glob": {
"version": "8.0.3",
@@ -8200,8 +8277,7 @@
"mimic-response": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz",
- "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==",
- "dev": true
+ "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ=="
},
"min-indent": {
"version": "1.0.1",
@@ -8347,8 +8423,7 @@
"napi-build-utils": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz",
- "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==",
- "dev": true
+ "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg=="
},
"negotiator": {
"version": "0.6.3",
@@ -8401,7 +8476,6 @@
"version": "3.24.0",
"resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.24.0.tgz",
"integrity": "sha512-YPG3Co0luSu6GwOBsmIdGW6Wx0NyNDLg/hriIyDllVsNwnI6UeqaWShxC3lbH4LtEQUgoLP3XR1ndXiDAWvmRw==",
- "dev": true,
"requires": {
"semver": "^7.3.5"
}
@@ -8409,8 +8483,7 @@
"node-addon-api": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-5.0.0.tgz",
- "integrity": "sha512-CvkDw2OEnme7ybCykJpVcKH+uAOLV2qLqiyla128dN9TkEWfrYmxG6C2boDe5KcNQqZF3orkqzGgOMvZ/JNekA==",
- "dev": true
+ "integrity": "sha512-CvkDw2OEnme7ybCykJpVcKH+uAOLV2qLqiyla128dN9TkEWfrYmxG6C2boDe5KcNQqZF3orkqzGgOMvZ/JNekA=="
},
"node-fetch": {
"version": "2.6.7",
@@ -8693,6 +8766,28 @@
"semver-compare": "^1.0.0"
}
},
+ "png-to-ico": {
+ "version": "2.1.8",
+ "resolved": "https://registry.npmjs.org/png-to-ico/-/png-to-ico-2.1.8.tgz",
+ "integrity": "sha512-Nf+IIn/cZ/DIZVdGveJp86NG5uNib1ZXMiDd/8x32HCTeKSvgpyg6D/6tUBn1QO/zybzoMK0/mc3QRgAyXdv9w==",
+ "requires": {
+ "@types/node": "^17.0.36",
+ "minimist": "^1.2.6",
+ "pngjs": "^6.0.0"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "17.0.45",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz",
+ "integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw=="
+ }
+ }
+ },
+ "pngjs": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-6.0.0.tgz",
+ "integrity": "sha512-TRzzuFRRmEoSW/p1KVAmiOgPco2Irlah+bGFCeNfJXxxYGwSw7YwAOAcd7X28K/m5bjBWKsC29KyoMfHbypayg=="
+ },
"postcss": {
"version": "8.4.16",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.16.tgz",
@@ -8803,7 +8898,6 @@
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.1.tgz",
"integrity": "sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==",
- "dev": true,
"requires": {
"detect-libc": "^2.0.0",
"expand-template": "^2.0.3",
@@ -9139,7 +9233,6 @@
"version": "1.2.8",
"resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz",
"integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==",
- "dev": true,
"requires": {
"deep-extend": "^0.6.0",
"ini": "~1.3.0",
@@ -9490,14 +9583,12 @@
"simple-concat": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz",
- "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==",
- "dev": true
+ "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q=="
},
"simple-get": {
"version": "4.0.1",
"resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz",
"integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==",
- "dev": true,
"requires": {
"decompress-response": "^6.0.0",
"once": "^1.3.1",
@@ -9639,8 +9730,7 @@
"strip-json-comments": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
- "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==",
- "dev": true
+ "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ=="
},
"supports-color": {
"version": "7.2.0",
@@ -9785,7 +9875,6 @@
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
"integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==",
- "dev": true,
"requires": {
"safe-buffer": "^5.0.1"
}
diff --git a/package.json b/package.json
index c461fece..fc515403 100644
--- a/package.json
+++ b/package.json
@@ -20,11 +20,11 @@
"license": "MIT",
"devDependencies": {
"@11ty/eleventy": "^2.0.0-canary.16",
+ "@11ty/eleventy-fetch": "^3.0.0",
"@11ty/eleventy-img": "^2.0.1",
"@11ty/eleventy-navigation": "^0.3.5",
"@11ty/eleventy-plugin-rss": "^1.2.0",
"@11ty/eleventy-plugin-syntaxhighlight": "^4.1.0",
- "@11ty/eleventy-fetch": "^3.0.0",
"@tailwindcss/forms": "^0.5.2",
"@tailwindcss/typography": "^0.5.4",
"luxon": "^3.0.1",
@@ -35,6 +35,7 @@
"dependencies": {
"calendar-link": "^2.2.0",
"dotenv-cli": "^6.0.0",
+ "eleventy-plugin-gen-favicons": "^1.1.1",
"html-minifier": "^4.0.0",
"netlify-cms-proxy-server": "^1.3.24",
"netlify-plugin-cache": "^1.0.3",
diff --git a/src/content/_data/site.json b/src/content/_data/site.json
index 4e15cdc0..393be985 100644
--- a/src/content/_data/site.json
+++ b/src/content/_data/site.json
@@ -3,11 +3,13 @@
"color": "#e413d1",
"keywords": "11ty",
"header": "",
+ "faviconcolor": "#000000",
"authoremail": "Ragnar@valhalla",
"rss": true,
"authorname": "Ragnar",
"country": "denmark",
"errorpage": "404 Ush It haz broken",
- "title": "Saga11",
+ "title": "Saga 11",
+ "icon": "",
"description": "saga11"
-}
+}
\ No newline at end of file
diff --git a/src/system/icon.njk b/src/system/icon.njk
new file mode 100644
index 00000000..6fe3b27b
--- /dev/null
+++ b/src/system/icon.njk
@@ -0,0 +1,20 @@
+{# test if there is an icon #}
+{% if site.icon %}
+ {% set icon = 'src/' + site.icon %}
+{% else %}
+ {% set icon = "src/system/icon.svg" %}
+{% endif %}
+
+{% favicons icon,
+ appleIconBgColor= site.faviconcolor,
+ manifestData={
+ "name": site.title ,
+ "short_name": site.title,
+ "start_url": "./",
+ "scope": "/",
+ "display": "standalone",
+ "background_color": site.color,
+ "theme_color": site.color,
+ "description": site.description
+ }
+%}
diff --git a/src/themes/grunn/assets/icon/icon.svg b/src/system/icon.svg
similarity index 100%
rename from src/themes/grunn/assets/icon/icon.svg
rename to src/system/icon.svg
diff --git a/src/system/netlifycms/settings/site.njk b/src/system/netlifycms/settings/site.njk
index 57aa76f8..cbb34d47 100644
--- a/src/system/netlifycms/settings/site.njk
+++ b/src/system/netlifycms/settings/site.njk
@@ -1,9 +1,12 @@
{% raw %}
- label: "Site Settings"
name: "sitesettings"
- file: "src/content/data/site.json"
+ file: "src/content/_data/site.json"
fields:
- { label: Title, name: title, widget: string }
+ - { label: (fave)icon, name: icon, widget: image, choose_url: false, required: false, hint: "The icon is used to create favions Only takes square images - preferable an sbvg"}
+ - { label: Icon color, name: faviconcolor, widget: color, required: true, enableAlpha : true }
+ - { label: Browesercolor, name: color, widget: color, required: false }
- { label: Seo default Description, name: description, widget: text, required: false }
- { label: Seo default Keywords, name: keywords, widget: text, required: false }
- { label: Header, name: header, widget: text, required: false, hint: "Data block placed inside the header tag ex for tracking scripts" }
@@ -12,5 +15,5 @@
- { label: "RSS Feed", name: rss, widget: boolean, default: true, hint: "/feed.xml",}
- { label: "RSS Author", name: authorname, widget: string, required: false, hint: "Feed Author name"}
- { label: "RSS Author Email" , name: Authoremail,widget: string, required: false,hint: "Feed Author name"}
- - { label: Browesercolor, name: color, widget: color, required: false }
+
{% endraw %}
diff --git a/src/system/netlifycms/settings/some.njk b/src/system/netlifycms/settings/some.njk
index 5e513245..16109a00 100644
--- a/src/system/netlifycms/settings/some.njk
+++ b/src/system/netlifycms/settings/some.njk
@@ -2,7 +2,7 @@
- label: "Social Network links"
name: "some"
- file: "src/content/data/some.json"
+ file: "src/content/_data/some.json"
fields:
- {
diff --git a/src/system/systempages/webmanifest.njk b/src/system/systempages/webmanifest.njk
index cd110c27..07e0d695 100644
--- a/src/system/systempages/webmanifest.njk
+++ b/src/system/systempages/webmanifest.njk
@@ -1,5 +1,5 @@
---
-permalink: /manifest.webmanifest
+permalink: /manifest.webmanifestXX
eleventyExcludeFromCollections: true
---
{
diff --git a/src/themes/grunn/assets/icon/icon-192.png b/src/themes/grunn/assets/icon/icon-192.png
deleted file mode 100644
index 2aa1b0ad..00000000
Binary files a/src/themes/grunn/assets/icon/icon-192.png and /dev/null differ
diff --git a/src/themes/grunn/assets/icon/icon-512.png b/src/themes/grunn/assets/icon/icon-512.png
deleted file mode 100644
index 3fbc47f1..00000000
Binary files a/src/themes/grunn/assets/icon/icon-512.png and /dev/null differ
diff --git a/src/themes/grunn/assets/icon/icon-apple-touch.png b/src/themes/grunn/assets/icon/icon-apple-touch.png
deleted file mode 100644
index 9c39b943..00000000
Binary files a/src/themes/grunn/assets/icon/icon-apple-touch.png and /dev/null differ
diff --git a/src/themes/grunn/assets/icon/icon-safari.png b/src/themes/grunn/assets/icon/icon-safari.png
deleted file mode 100644
index fc2f9bae..00000000
Binary files a/src/themes/grunn/assets/icon/icon-safari.png and /dev/null differ
diff --git a/src/themes/grunn/assets/icon/maskable-icon.png b/src/themes/grunn/assets/icon/maskable-icon.png
deleted file mode 100644
index cf2ce16d..00000000
Binary files a/src/themes/grunn/assets/icon/maskable-icon.png and /dev/null differ
diff --git a/src/themes/grunn/assets/icon/maskable-icon2.png b/src/themes/grunn/assets/icon/maskable-icon2.png
deleted file mode 100644
index 1dbc9ac3..00000000
Binary files a/src/themes/grunn/assets/icon/maskable-icon2.png and /dev/null differ
diff --git a/src/themes/grunn/includes/head/icon.njk b/src/themes/grunn/includes/head/icon.njk
deleted file mode 100644
index 88d69fca..00000000
--- a/src/themes/grunn/includes/head/icon.njk
+++ /dev/null
@@ -1,8 +0,0 @@
-{# SITE ICONS
-------------------------------------------------
-#}
-{%- if env.mode != 'prod' %}{%- endif -%}
-
-
-
-
diff --git a/src/themes/grunn/layouts/default.njk b/src/themes/grunn/layouts/default.njk
index a1624400..d2848541 100644
--- a/src/themes/grunn/layouts/default.njk
+++ b/src/themes/grunn/layouts/default.njk
@@ -24,13 +24,6 @@ Calls the _base/base.njk that is holding all the basic html
-{% for item in rickandmortycharacters %}
- {{ item.name }}
-
-{% endfor %}
-
-
-
{%- include "edit.njk" %}
{%- include "footer.njk" %}
diff --git a/src/themes/grunn/layouts/html.njk b/src/themes/grunn/layouts/html.njk
index 3dd9092d..75339b16 100644
--- a/src/themes/grunn/layouts/html.njk
+++ b/src/themes/grunn/layouts/html.njk
@@ -9,30 +9,25 @@