feat: optimize component js post-build + new youtube component

This commit is contained in:
Cory Dransfeldt 2024-03-08 11:49:31 -08:00
parent e4bde98686
commit ecb23daebf
No known key found for this signature in database
20 changed files with 59 additions and 175 deletions

View file

@ -1,7 +1,6 @@
import syntaxHighlight from '@11ty/eleventy-plugin-syntaxhighlight'
import tablerIcons from 'eleventy-plugin-tabler-icons'
import postGraph from '@rknightuk/eleventy-plugin-post-graph'
import embedEverything from 'eleventy-plugin-embed-everything'
import markdownIt from 'markdown-it'
import markdownItAnchor from 'markdown-it-anchor'
@ -11,6 +10,7 @@ import htmlmin from 'html-minifier-terser'
import filters from './config/filters/index.js'
import { slugifyString } from './config/utils/index.js'
import { svgToJpeg } from './config/events/index.js'
import { minifyJsComponents } from './config/events/index.js'
import { tagList, tagMap, postStats, tagsSortedByCount } from './config/collections/index.js'
import { img } from './config/shortcodes/index.js'
@ -40,7 +40,6 @@ export default async function (eleventyConfig) {
highlightColorDark: '#60a5fa',
textColorDark: '#fff',
})
eleventyConfig.addPlugin(embedEverything);
// quiet build output
eleventyConfig.setQuietMode(true)
@ -68,6 +67,9 @@ export default async function (eleventyConfig) {
eleventyConfig.addPassthroughCopy({
'node_modules/@zachleat/webcare-webshare/webcare-webshare.js': 'assets/scripts/components/webcare-webshare.js'
})
eleventyConfig.addPassthroughCopy({
'node_modules/youtube-video-element/youtube-video-element.js': 'assets/scripts/components/youtube-video-element.js'
})
// enable merging of tags
eleventyConfig.setDataDeepMerge(true)
@ -134,6 +136,7 @@ export default async function (eleventyConfig) {
// events
eleventyConfig.on('afterBuild', svgToJpeg)
eleventyConfig.on('afterBuild', minifyJsComponents)
eleventyConfig.on('eleventy.after', () => {
execSync(`npx pagefind --site _site --glob "**/*.html"`, { encoding: 'utf-8' })
})

View file

@ -1,7 +1,8 @@
import fs from 'fs'
import Image from '@11ty/eleventy-img'
import { minify } from 'terser'
export const svgToJpeg = function () {
export const svgToJpeg = () => {
const socialPreviewImagesDir = '_site/assets/img/social-preview/'
fs.readdir(socialPreviewImagesDir, (err, files) => {
if (!!files && files.length > 0) {
@ -23,3 +24,17 @@ export const svgToJpeg = function () {
}
})
}
export const minifyJsComponents = async () => {
const jsComponentsDir = '_site/assets/scripts/components';
const files = fs.readdirSync(jsComponentsDir);
for (const fileName of files) {
if (fileName.endsWith('.js')) {
const filePath = `${jsComponentsDir}/${fileName}`;
const minified = await minify(fs.readFileSync(filePath, 'utf8'));
fs.writeFileSync(filePath, minified.code);
} else {
console.log('⚠ No js components found')
}
}
}

137
package-lock.json generated
View file

@ -14,7 +14,9 @@
"@daviddarnes/mastodon-post": "^1.1.1",
"@remy/webmention": "^1.5.0",
"@zachleat/pagefind-search": "^1.0.3",
"@zachleat/webcare-webshare": "^1.0.3"
"@zachleat/webcare-webshare": "^1.0.3",
"terser": "^5.29.1",
"youtube-video-element": "^1.0.0"
},
"devDependencies": {
"@11ty/eleventy": "3.0.0-alpha.5",
@ -27,7 +29,6 @@
"@rknightuk/eleventy-plugin-post-graph": "^1.0.6",
"child_process": "^1.0.2",
"dotenv-flow": "^4.1.0",
"eleventy-plugin-embed-everything": "^1.18.2",
"eleventy-plugin-tabler-icons": "^2.5.2",
"html-minifier-terser": "^7.2.0",
"ics-to-json-extended": "^1.1.4",
@ -1691,7 +1692,6 @@
"version": "0.3.5",
"resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
"integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
"dev": true,
"dependencies": {
"@jridgewell/set-array": "^1.2.1",
"@jridgewell/sourcemap-codec": "^1.4.10",
@ -1705,7 +1705,6 @@
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
"integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
"dev": true,
"engines": {
"node": ">=6.0.0"
}
@ -1714,7 +1713,6 @@
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
"integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
"dev": true,
"engines": {
"node": ">=6.0.0"
}
@ -1723,7 +1721,6 @@
"version": "0.3.5",
"resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.5.tgz",
"integrity": "sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ==",
"dev": true,
"dependencies": {
"@jridgewell/gen-mapping": "^0.3.0",
"@jridgewell/trace-mapping": "^0.3.9"
@ -1732,14 +1729,12 @@
"node_modules/@jridgewell/sourcemap-codec": {
"version": "1.4.15",
"resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz",
"integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==",
"dev": true
"integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg=="
},
"node_modules/@jridgewell/trace-mapping": {
"version": "0.3.25",
"resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
"integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
"dev": true,
"dependencies": {
"@jridgewell/resolve-uri": "^3.1.0",
"@jridgewell/sourcemap-codec": "^1.4.14"
@ -2911,7 +2906,6 @@
"version": "8.11.3",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz",
"integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==",
"dev": true,
"bin": {
"acorn": "bin/acorn"
},
@ -3220,8 +3214,7 @@
"node_modules/buffer-from": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
"integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==",
"dev": true
"integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ=="
},
"node_modules/call-bind": {
"version": "1.0.7",
@ -3550,15 +3543,6 @@
"iconv-lite": "^0.4.19"
}
},
"node_modules/deepmerge": {
"version": "4.3.1",
"resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz",
"integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==",
"dev": true,
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/define-data-property": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz",
@ -3735,97 +3719,12 @@
"node": ">=0.10.0"
}
},
"node_modules/eleventy-plugin-embed-everything": {
"version": "1.18.2",
"resolved": "https://registry.npmjs.org/eleventy-plugin-embed-everything/-/eleventy-plugin-embed-everything-1.18.2.tgz",
"integrity": "sha512-J/zxLnYN7bhVlbEnqxSswxKis6VjDndUFnE3I9ZdCzGFzlWVrXj933w5DOCobx/OZesuYN9VmapNgAHsGvFoAg==",
"dev": true,
"dependencies": {
"deepmerge": "^4.3.1",
"eleventy-plugin-embed-instagram": "^1.2.7",
"eleventy-plugin-embed-soundcloud": "^1.2.7",
"eleventy-plugin-embed-spotify": "^1.3.0",
"eleventy-plugin-embed-ted": "^1.0.1",
"eleventy-plugin-embed-tiktok": "^1.1.7",
"eleventy-plugin-embed-twitch": "^1.2.7",
"eleventy-plugin-embed-twitter": "^1.4.0",
"eleventy-plugin-vimeo-embed": "^1.3.8",
"eleventy-plugin-youtube-embed": "^1.10.2"
}
},
"node_modules/eleventy-plugin-embed-instagram": {
"version": "1.2.7",
"resolved": "https://registry.npmjs.org/eleventy-plugin-embed-instagram/-/eleventy-plugin-embed-instagram-1.2.7.tgz",
"integrity": "sha512-v6uSqeZiZU5L40lr4NTGBr+2Wbc81SqbNIllESEBQDFhS68g253WqkLaNs7gGh0k5hxhNuMt7ZZEBfous7jksw==",
"dev": true
},
"node_modules/eleventy-plugin-embed-soundcloud": {
"version": "1.2.7",
"resolved": "https://registry.npmjs.org/eleventy-plugin-embed-soundcloud/-/eleventy-plugin-embed-soundcloud-1.2.7.tgz",
"integrity": "sha512-0+VNeEcMiRySmyTmPmMhCwkbds44k9W4jWqUwjvk665TRagiXcCdj/BK2wl8vyiVrn/0arWeSCpol4NBb6BIvA==",
"dev": true,
"dependencies": {
"@11ty/eleventy-fetch": "^4.0.0"
}
},
"node_modules/eleventy-plugin-embed-spotify": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/eleventy-plugin-embed-spotify/-/eleventy-plugin-embed-spotify-1.3.0.tgz",
"integrity": "sha512-waVUtW5PO9aKYQEjnvHG4P5bPyKj+SSUBuDtqfF2K+j7dGItmEDD4DP7CmBz6lkn/LlJGmJ7uT4Mr6L4jAP4bg==",
"dev": true
},
"node_modules/eleventy-plugin-embed-ted": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/eleventy-plugin-embed-ted/-/eleventy-plugin-embed-ted-1.0.1.tgz",
"integrity": "sha512-F1CayKC05sGDAcdEgaZUP3Cs/71mwLT717sIUUiZWu+Gjd1Lp7m2gqL1R/uKnHN/CFxKYTpAA6ZNN/LCjg0ufw==",
"dev": true
},
"node_modules/eleventy-plugin-embed-tiktok": {
"version": "1.1.7",
"resolved": "https://registry.npmjs.org/eleventy-plugin-embed-tiktok/-/eleventy-plugin-embed-tiktok-1.1.7.tgz",
"integrity": "sha512-Yb/95hafIsKVsV11ebsX0PoYzpLQWWSbdznbvPfA0HIKjfTHGEt1q0XX5DRGPnn5tor7lM5sha9DMQPzJb/oGQ==",
"dev": true
},
"node_modules/eleventy-plugin-embed-twitch": {
"version": "1.2.7",
"resolved": "https://registry.npmjs.org/eleventy-plugin-embed-twitch/-/eleventy-plugin-embed-twitch-1.2.7.tgz",
"integrity": "sha512-E3oUtk5HhfgBaH9xpcnnByoddyyxuj0uhTzxD+UF5ftUU4pa0959HADBI1RuWUDssADzowpSes8m2gBgO4Peeg==",
"dev": true
},
"node_modules/eleventy-plugin-embed-twitter": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/eleventy-plugin-embed-twitter/-/eleventy-plugin-embed-twitter-1.4.0.tgz",
"integrity": "sha512-1e2oI0OJiVStywT48h6/IJDT4+XlH5EEVT1z87qV8wABAA022m2ozKuog21EEoI217aV2AM89R/FZ1oo1eD/mA==",
"dev": true,
"dependencies": {
"@11ty/eleventy-fetch": "^4.0.0",
"deepmerge": "^4.3.1"
}
},
"node_modules/eleventy-plugin-tabler-icons": {
"version": "2.5.2",
"resolved": "https://registry.npmjs.org/eleventy-plugin-tabler-icons/-/eleventy-plugin-tabler-icons-2.5.2.tgz",
"integrity": "sha512-3qVv8ENb3yTYEySKNlgjyrhl/+D2RRglCNsW+D4VPDGLAIrg8YK805XANnAa9ZzT8k01rkAd3i5LBsAJUi7gnA==",
"dev": true
},
"node_modules/eleventy-plugin-vimeo-embed": {
"version": "1.3.8",
"resolved": "https://registry.npmjs.org/eleventy-plugin-vimeo-embed/-/eleventy-plugin-vimeo-embed-1.3.8.tgz",
"integrity": "sha512-XU/XH/lrx9slUifFiRCsFh8XiDsZxCBh5MnFU8wAz8u8rCFX9PpmyveJ2oeDtDZjEINqaDC+YFSPsxoq59S3cQ==",
"dev": true
},
"node_modules/eleventy-plugin-youtube-embed": {
"version": "1.10.2",
"resolved": "https://registry.npmjs.org/eleventy-plugin-youtube-embed/-/eleventy-plugin-youtube-embed-1.10.2.tgz",
"integrity": "sha512-N0068hshDe+sG50SEk4zLbwClaTeyl000WiqmNACRG2Iwb2/iTVV4IGTv7d1yWz/5DGVpsHMniboHJSyChvc9w==",
"dev": true,
"dependencies": {
"@11ty/eleventy-fetch": "^4.0.0",
"deepmerge": "^4.3.1",
"lite-youtube-embed": "^0.3.0",
"string-replace-async": "^3.0.2"
}
},
"node_modules/encodeurl": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
@ -5358,12 +5257,6 @@
"integrity": "sha512-+dAZZ2mM+/m+vY9ezfoueVvrgnHIGi5FvgSymbIgJOFwiznWyA59mav95L+Mc6xPtL3s9gm5eNTlNtxJLbNM1g==",
"dev": true
},
"node_modules/lite-youtube-embed": {
"version": "0.3.2",
"resolved": "https://registry.npmjs.org/lite-youtube-embed/-/lite-youtube-embed-0.3.2.tgz",
"integrity": "sha512-b1dgKyF4PHhinonmr3PB172Nj0qQgA/7DE9EmeIXHR1ksnFEC2olWjNJyJGdsN2cleKHRjjsmrziKlwXtPlmLQ==",
"dev": true
},
"node_modules/lodash.assignin": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz",
@ -6937,7 +6830,6 @@
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true,
"engines": {
"node": ">=0.10.0"
}
@ -6946,7 +6838,6 @@
"version": "0.5.21",
"resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz",
"integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==",
"dev": true,
"dependencies": {
"buffer-from": "^1.0.0",
"source-map": "^0.6.0"
@ -6987,15 +6878,6 @@
"safe-buffer": "~5.2.0"
}
},
"node_modules/string-replace-async": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/string-replace-async/-/string-replace-async-3.0.2.tgz",
"integrity": "sha512-s6hDtXJ7FKyRap/amefqrOMpkEQvxUDueyvJygQeHxCK5Za90dOMgdibCCrPdfdAYAkr8imrZ1PPXW7DOf0RzQ==",
"dev": true,
"engines": {
"node": ">= 14.0.0"
}
},
"node_modules/string.prototype.trim": {
"version": "1.2.8",
"resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.8.tgz",
@ -7090,7 +6972,6 @@
"version": "5.29.1",
"resolved": "https://registry.npmjs.org/terser/-/terser-5.29.1.tgz",
"integrity": "sha512-lZQ/fyaIGxsbGxApKmoPTODIzELy3++mXhS5hOqaAWZjQtpq/hFHAc+rm29NND1rYRxRWKcjuARNwULNXa5RtQ==",
"dev": true,
"dependencies": {
"@jridgewell/source-map": "^0.3.3",
"acorn": "^8.8.2",
@ -7107,8 +6988,7 @@
"node_modules/terser/node_modules/commander": {
"version": "2.20.3",
"resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
"integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
"dev": true
"integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ=="
},
"node_modules/timers-ext": {
"version": "0.1.7",
@ -7555,6 +7435,11 @@
"resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
"integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
"dev": true
},
"node_modules/youtube-video-element": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/youtube-video-element/-/youtube-video-element-1.0.0.tgz",
"integrity": "sha512-1gVgshAKgQD3BkIJPBzxSjX/Kz47QXpFF9/HIsd8IBJf3LS5tn7kbD5hKMjem9y8NuwH38n6Z+XLRQDWohi+9g=="
}
}
}

View file

@ -1,6 +1,6 @@
{
"name": "coryd.dev",
"version": "7.7.0",
"version": "7.8.0",
"description": "The source for my personal site. Built using 11ty.",
"type": "module",
"scripts": {
@ -26,7 +26,9 @@
"@daviddarnes/mastodon-post": "^1.1.1",
"@remy/webmention": "^1.5.0",
"@zachleat/pagefind-search": "^1.0.3",
"@zachleat/webcare-webshare": "^1.0.3"
"@zachleat/webcare-webshare": "^1.0.3",
"terser": "^5.29.1",
"youtube-video-element": "^1.0.0"
},
"devDependencies": {
"@11ty/eleventy": "3.0.0-alpha.5",
@ -39,7 +41,6 @@
"@rknightuk/eleventy-plugin-post-graph": "^1.0.6",
"child_process": "^1.0.2",
"dotenv-flow": "^4.1.0",
"eleventy-plugin-embed-everything": "^1.18.2",
"eleventy-plugin-tabler-icons": "^2.5.2",
"html-minifier-terser": "^7.2.0",
"ics-to-json-extended": "^1.1.4",

View file

@ -0,0 +1,3 @@
<script type="module" src="/assets/scripts/components/youtube-video-element.js"></script>
<style>youtube-video{aspect-ratio:16/9!important;width:100%!important}</style>
<youtube-video controls src="{{ url }}"></youtube-video>

View file

@ -12,7 +12,7 @@ textarea {
color: var(--text-color) !important;
background-color: var(--background-color) !important;
border: 1px solid var(--accent-color) !important;
padding: var(--sizing-sm) !important;
padding: var(--sizing-sm);
font-size: var(--font-size-base) !important;
width: 100% !important;
border-radius: var(--rounded-md) !important;

View file

@ -55,7 +55,7 @@
padding-left: 2.375rem !important;
padding-top: 0 !important;
padding-bottom: 0 !important;
height: calc(53px * var(--pagefind-ui-scale)) !important;
height: 42px !important;
}
.pagefind-ui__search-clear {
@ -108,3 +108,8 @@
color: var(--color-lightest) !important;
background-color: var(--accent-color-hover) !important;
}
.pagefind__placeholder {
height: 42px !important;
font-weight: var(--font-weight-heavy);
}

File diff suppressed because one or more lines are too long

View file

@ -11,10 +11,10 @@ image: /assets/img/ogi/search.jpg
{% render "../assets/styles/components/pagefind.css" %}
{% endcapture %}
<style>{{ css }}</style>
<pagefind-search _show_images="false">
<pagefind-search _show_images="false" _show_empty_filters="false">
<form action="https://duckduckgo.com/" method="get" style="min-height: 3.2em;">
<label>
<input placeholder="Search" type="search" name="q" autocomplete="off" autofocus>
<input class="pagefind__placeholder" placeholder="Search" type="search" name="q" autocomplete="off" autofocus>
</label>
<input type="hidden" placeholder="Search" name="sites" value="coryd.dev">
</form>

View file

@ -7,4 +7,4 @@ tags: ['music']
This sample sounds promising. I can't wait to hear more from _Reflektor_ on the 9th.<!-- excerpt -->
https://www.youtube.com/watch?v=4i2wp3GkNrg
{% render "partials/youtube-player.liquid", url:"https://www.youtube.com/watch?v=4i2wp3GkNrg" %}

View file

@ -7,4 +7,4 @@ tags: ['music']
Damien Jurado has been one of my favorite musicians for years. He's a talented, albeit nervous, performer and a gifted songwriter.<!-- excerpt --> The announcement that he'll have a new record out in 2014 is exciting and something that I am very much looking forward to. If the new material he played live when I saw him at the Bootleg Theater in April is any indication it should be even more experimental and unique than _Maraqopa_. I cannot wait to hear it.
https://www.youtube.com/watch?v=NNpAj1U1_5Q
{% render "partials/youtube-player.liquid", url:"https://www.youtube.com/watch?v=NNpAj1U1_5Q" %}

View file

@ -9,4 +9,4 @@ A wonderful new video for one of the highlights of Dawes' most recent album _Sto
Damien Jurado gave "Museum of Flight" off of _Maraqopa_ a similar treatment that's also very [much worth checking out](https://www.youtube.com/watch?v=CCcAKNSJ3Ac).
https://www.youtube.com/watch?v=zUWu8Ny36dc
{% render "partials/youtube-player.liquid", url:"https://www.youtube.com/watch?v=zUWu8Ny36dc" %}

View file

@ -7,4 +7,4 @@ tags: ['music', 'video']
One of punk's greatest bands live via Marinet TVM. I still need to see them live and sincerely hope I get the chance to before they hang things up. Superb performance.<!-- excerpt -->
https://www.youtube.com/watch?v=euTMEIqTTfk
{% render "partials/youtube-player.liquid", url:"https://www.youtube.com/watch?v=euTMEIqTTfk" %}

View file

@ -7,4 +7,4 @@ tags: ['video', 'music']
Not out of place at all at an open mic night. Excellent.<!-- excerpt -->
https://www.youtube.com/watch?v=_GnemKx1tlk
{% render "partials/youtube-player.liquid", url:"https://www.youtube.com/watch?v=_GnemKx1tlk" %}

View file

@ -9,4 +9,4 @@ Beautiful, stripped down song from a musician with a strong voice and truly hear
[Grab his album here »](http://skinandbonesmusic.bandcamp.com)
https://www.youtube.com/watch?v=wB52fQkjZkE
{% render "partials/youtube-player.liquid", url:"https://www.youtube.com/watch?v=wB52fQkjZkE" %}

View file

@ -7,4 +7,4 @@ tags: ['music', 'video']
A well-produced documentary and a great look at a band who, ten years later (and after only one album), still means so much to so many people.<!-- excerpt -->
https://www.youtube.com/watch?v=MoSP7lNJTqk
{% render "partials/youtube-player.liquid", url:"https://www.youtube.com/watch?v=MoSP7lNJTqk" %}

View file

@ -6,4 +6,4 @@ tags: ['music']
---
Absolutely classic.<!-- excerpt -->
https://www.youtube.com/watch?v=gzC0RNkBXM0
{% render "partials/youtube-player.liquid", url:"https://www.youtube.com/watch?v=gzC0RNkBXM0" %}

View file

@ -6,6 +6,6 @@ tags: ['music']
---
I could not be more excited for this release.<!-- excerpt -->
https://www.youtube.com/watch?v=V8ia-nyd_K8
{% render "partials/youtube-player.liquid", url:"https://www.youtube.com/watch?v=V8ia-nyd_K8" %}
Kudos to Roadburn Festival [for commissioning the piece](https://roadburn.com/premiere-waste-of-space-orchestra-seekers-reflection/).

View file

@ -10,4 +10,4 @@ tags:
[I've been streaming music again](https://coryd.dev/posts/2023/i-dont-want-streaming-music/) in part (and I know this is ridiculous) because Spotify is ubiquitous, well-integrated and has a — well — [API that's usable for my purposes](https://coryd.dev/posts/2023/road-to-madness-apple-music-charts/). I still buy music I stream from Bandcamp and archive it and I still buy too many shirts to support bands (I also import missing music into playlists and playlist folders as an analog to albums). I've also been able to scrobble listens more reliably and found some really great bands like [PUP](https://open.spotify.com/artist/6A7uqgC2N1nUhrCLAytHxN). We'll see if it lasts, but it feels like a good balance for now.<!-- excerpt -->
https://www.youtube.com/watch?v=iVuB1ZASrGw
{% render "partials/youtube-player.liquid", url:"https://www.youtube.com/watch?v=iVuB1ZASrGw" %}

View file

@ -7,4 +7,4 @@ tags: ['Eleventy', 'javascript', 'automation']
My talk from the Eleventy meetup about building [my now page](https://coryd.dev/now) (you even get to see how much I resemble my avatar).<!-- excerpt -->
https://www.youtube.com/watch?v=AzcFZJYEpnQ
{% render "partials/youtube-player.liquid", url:"https://www.youtube.com/watch?v=AzcFZJYEpnQ" %}