Compare commits

..
17 Commits
Author SHA1 Message Date
inherentlee 4209ff3927 better filename system
continuous-integration/drone/push Build is passing
2026-09-24 20:40:06 -07:00
inherentlee e8e544763f try to fix the OG image
continuous-integration/drone/push Build is passing
2026-09-24 20:29:24 -07:00
inherentlee 9df297946d add two more stops for card one
continuous-integration/drone/push Build is passing
2026-09-24 20:24:59 -07:00
inherentlee 1566f5c30b sitemap
continuous-integration/drone/push Build is passing
2026-09-23 14:51:36 -07:00
inherentlee 2257e5f6ed sitemap
continuous-integration/drone/push Build is failing
2026-09-23 14:31:33 -07:00
inherentlee 571819921c 404 page
continuous-integration/drone/push Build is passing
2026-09-23 13:55:44 -07:00
inherentlee 147ec683b6 remove filename segment of image plugin
continuous-integration/drone/push Build is passing
2026-09-23 13:32:34 -07:00
inherentlee d460fd8e09 add card two link
continuous-integration/drone/push Build is passing
2026-09-23 13:20:05 -07:00
inherentlee c1e45e326b remove extraneous text
continuous-integration/drone/push Build is passing
2026-09-22 19:08:31 -07:00
inherentlee e174ec486f mogrify that shit
continuous-integration/drone/push Build is passing
2026-09-22 19:02:57 -07:00
inherentlee 51000f7fa0 completed card and some wording tweaks
continuous-integration/drone/push Build is passing
2026-09-22 19:01:08 -07:00
inherentlee cfa2bb9150 final stop for card two
continuous-integration/drone/push Build is passing
2026-09-22 18:50:23 -07:00
inherentlee 679b3b291e markdown-it-anchor
continuous-integration/drone/push Build is passing
2026-09-22 18:16:25 -07:00
inherentlee 66aba72fcc woops
continuous-integration/drone/push Build is passing
2026-09-22 18:09:58 -07:00
inherentlee 1a39752fa2 add (bad) img to stop 2
continuous-integration/drone/push Build is passing
2026-09-18 15:59:30 -07:00
inherentlee 72b0d17aa3 last signature on card two
continuous-integration/drone/push Build is passing
2026-09-18 12:04:59 -07:00
inherentlee 015b6bfdd9 add mystery stop markers
continuous-integration/drone/push Build is passing
2026-09-17 20:02:27 -07:00
20 changed files with 102 additions and 23 deletions

No files matched your search

-4
View File
@@ -50,10 +50,6 @@ svg {
margin: 0; margin: 0;
} }
.stop img {
width: 100%;
}
.stop p { .stop p {
margin: 0; margin: 0;
color: var(--color-text); color: var(--color-text);
+1
View File
@@ -58,6 +58,7 @@ img, picture, video, canvas, svg {
display: block; /* 6. Improve media defaults */ display: block; /* 6. Improve media defaults */
max-width: 100%; /* 6. Improve media defaults */ max-width: 100%; /* 6. Improve media defaults */
height: auto; /* 6. Improve media defaults */ height: auto; /* 6. Improve media defaults */
margin: 0 auto;
} }
input, button, textarea, select { input, button, textarea, select {
+19 -9
View File
@@ -1,7 +1,11 @@
import { attrs } from "@mdit/plugin-attrs"; import { HtmlBasePlugin } from "@11ty/eleventy";
import { eleventyImageTransformPlugin } from "@11ty/eleventy-img"; import { eleventyImageTransformPlugin } from "@11ty/eleventy-img";
import eleventyNavigationPlugin from "@11ty/eleventy-navigation"; import eleventyNavigationPlugin from "@11ty/eleventy-navigation";
import { attrs } from "@mdit/plugin-attrs";
import { markdownitLinkAttributes } from 'markdown-it-link-attributes'; import { markdownitLinkAttributes } from 'markdown-it-link-attributes';
import markdownitIdAttributes from "markdown-it-anchor";
import path from "node:path"; import path from "node:path";
import pluginFilters from "./_config/filters.js"; import pluginFilters from "./_config/filters.js";
@@ -11,7 +15,7 @@ export default async function (eleventyConfig) {
eleventyConfig.amendLibrary("md", (mdLib) => mdLib.use(attrs)); eleventyConfig.amendLibrary("md", (mdLib) => mdLib.use(attrs));
/* Markdown apply target="_blank" to all external links */ /* Markdown apply target="_blank" to all external links */
const milaOptions = { eleventyConfig.amendLibrary("md", (mdLib) => mdLib.use(markdownitLinkAttributes, {
matcher(href) { matcher(href) {
return href.match(/^https?:\/\//); return href.match(/^https?:\/\//);
}, },
@@ -19,8 +23,13 @@ export default async function (eleventyConfig) {
target: "_blank", target: "_blank",
rel: "external", rel: "external",
}, },
}; }));
eleventyConfig.amendLibrary("md", (mdLib) => mdLib.use(markdownitLinkAttributes, milaOptions));
/* Markdown apply ID attributes to headers */
eleventyConfig.amendLibrary("md", (mdLib) => mdLib.use(markdownitIdAttributes, {
level: [2, 3, 4],
tabIndex: false,
}));
/* Bundles */ /* Bundles */
/* CSS */ /* CSS */
@@ -38,6 +47,9 @@ export default async function (eleventyConfig) {
/* Passthroughs */ /* Passthroughs */
eleventyConfig.addPassthroughCopy("./favicon.ico"); eleventyConfig.addPassthroughCopy("./favicon.ico");
/* HTML base */
eleventyConfig.addPlugin(HtmlBasePlugin);
/* Images */ /* Images */
eleventyConfig.addPlugin(eleventyImageTransformPlugin, { eleventyConfig.addPlugin(eleventyImageTransformPlugin, {
// output image formats // output image formats
@@ -54,11 +66,9 @@ export default async function (eleventyConfig) {
}, },
}, },
filenameFormat: function (hash, src, width, format, options) { filenameFormat: function (hash, src, width, format, options) {
// If you're building multiple widths var dirname = path.dirname(src);
// const extension = path.extname(src); dirname = dirname.split("/img/");
// const name = path.basename(src, extension); if (dirname.length > 1) return `${dirname[1]}-${path.basename(src)}`;
// return `${name}-${width}.${extension}`;
return path.basename(src); return path.basename(src);
}, },
}); });
+14 -2
View File
@@ -1,11 +1,11 @@
{ {
"name": "siblinghood-11ty", "name": "siblinghood",
"version": "1.0.0", "version": "1.0.0",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "siblinghood-11ty", "name": "siblinghood",
"version": "1.0.0", "version": "1.0.0",
"license": "AGPL-3.0-only", "license": "AGPL-3.0-only",
"devDependencies": { "devDependencies": {
@@ -14,6 +14,7 @@
"@11ty/eleventy-navigation": "^1.0.5", "@11ty/eleventy-navigation": "^1.0.5",
"@mdit/plugin-attrs": "^0.25.1", "@mdit/plugin-attrs": "^0.25.1",
"luxon": "^3.7.2", "luxon": "^3.7.2",
"markdown-it-anchor": "^10.0.0",
"markdown-it-link-attributes": "https://github.com/lee0c/markdown-it-link-attributes/tarball/main" "markdown-it-link-attributes": "https://github.com/lee0c/markdown-it-link-attributes/tarball/main"
} }
}, },
@@ -1814,6 +1815,17 @@
"markdown-it": "bin/markdown-it.mjs" "markdown-it": "bin/markdown-it.mjs"
} }
}, },
"node_modules/markdown-it-anchor": {
"version": "10.0.0",
"resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-10.0.0.tgz",
"integrity": "sha512-Q8g7Z6OBdH3eXF0lujFqukIxUvgCDZcjzCrJxmD6QiEzU1HWR9fVN+Bf6gxmM+0yrPFs+jUw8gNjLmUQqt6Eew==",
"dev": true,
"license": "Unlicense",
"peerDependencies": {
"@types/markdown-it": "*",
"markdown-it": "*"
}
},
"node_modules/markdown-it-link-attributes": { "node_modules/markdown-it-link-attributes": {
"version": "4.0.1", "version": "4.0.1",
"resolved": "https://github.com/lee0c/markdown-it-link-attributes/tarball/main", "resolved": "https://github.com/lee0c/markdown-it-link-attributes/tarball/main",
+1
View File
@@ -15,6 +15,7 @@
"@11ty/eleventy-navigation": "^1.0.5", "@11ty/eleventy-navigation": "^1.0.5",
"@mdit/plugin-attrs": "^0.25.1", "@mdit/plugin-attrs": "^0.25.1",
"luxon": "^3.7.2", "luxon": "^3.7.2",
"markdown-it-anchor": "^10.0.0",
"markdown-it-link-attributes": "https://github.com/lee0c/markdown-it-link-attributes/tarball/main" "markdown-it-link-attributes": "https://github.com/lee0c/markdown-it-link-attributes/tarball/main"
} }
} }
+8
View File
@@ -0,0 +1,8 @@
---
permalink: 404.html
eleventyExcludeFromCollections: true
---
# Content not found
Sorry, can't find this page. Return [home](/).
+1 -1
View File
@@ -2,7 +2,7 @@
title: card three's travels title: card three's travels
eleventyNavigation: eleventyNavigation:
key: card three key: card three
order: 1 order: 3
--- ---
<h1>The Travels of <span class="card">Card Three</span></h1> <h1>The Travels of <span class="card">Card Three</span></h1>
+3 -2
View File
@@ -2,13 +2,14 @@
title: card two's travels title: card two's travels
eleventyNavigation: eleventyNavigation:
key: card two key: card two
order: 1 order: 2
--- ---
<h1>The Travels of <span class="card">Card Two</span></h1> <h1>The Travels of <span class="card">Card Two</span></h1>
<p><span class="card">Card two</span> has 16 total recipients. Its journey began in <p><span class="card">Card two</span> has 16 total recipients. Its journey began in
<time datetime="2026-01-06">early January, 2026</time>.</p> <time datetime="2026-01-06">early January, 2026</time> and ended in
<time datetime="2026-09-22">late September, 2026</time>. Yay!</p>
{% set stops = collections["2"] %} {% set stops = collections["2"] %}
{% include "card.njk" %} {% include "card.njk" %}
Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 150 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

+11 -5
View File
@@ -6,7 +6,7 @@ title: siblinghood of the traveling greeting card
a community-building project by [lee](https://leecat.art).{id="author"} a community-building project by [lee](https://leecat.art).{id="author"}
welcome to the siblinghood of the traveling greeting card. welcome to the siblinghood of the traveling greeting card. We have completed [one card](#completed-cards).
[originated on the fediverse](https://flipping.rocks/@inherentlee/115645750535211187) with an idea from [noctiluca@scholar.social](https://scholar.social/@noctiluca). [originated on the fediverse](https://flipping.rocks/@inherentlee/115645750535211187) with an idea from [noctiluca@scholar.social](https://scholar.social/@noctiluca).
@@ -16,7 +16,7 @@ send a greeting card around the world. Maybe more than one. We'll see.
## outline ## outline
from a group of participants, a random list will be formed. every person is given the address of the next person in the list (the last person receives the first person's address). First person picks a greeting card, signs it, and sends it to their designated recipient; that person receives, signs, sends on, etc. from a group of participants, a random list will be formed. every person is given the address of the next person in the list (the last person receives the first person's address). The first person picks a greeting card, signs it, and sends it to their designated recipient; that person receives, signs, sends on, etc.
this continues on to the last person, who finally signs and sends back to the first, closing the loop and ending the adventure. The first person gets to keep the card they originally sent out. this continues on to the last person, who finally signs and sends back to the first, closing the loop and ending the adventure. The first person gets to keep the card they originally sent out.
@@ -24,7 +24,7 @@ if we want to, this can be easily re-run - add folks who want to be added, drop
### timeline ### timeline
applications for round one (cards one and two) closed on <time datetime="2025-12-15">December 15th, 2025</time>. Round two (card three) closed on <time datetime="2026-05-01">May 1st, 2026</time>. You may still put in for future rounds, but be aware future rounds are not confirmed yet and will not be confirmed for at least 6 months. applications for round one (cards one and two) closed on <time datetime="2025-12-15">December 15th, 2025</time>. Round two (card three) closed on <time datetime="2026-05-01">May 1st, 2026</time>. You may still put in for future rounds, but be aware future rounds are not confirmed yet and will not be confirmed until we have 16 more participants for a new card.
assignments (recipient address, order in loop) for cards one and two have been sent out as of <time datetime="2025-12-26">December 26th, 2025</time>. Assignments for card three have been sent out as of <time datetime="2026-06-04">June 4th, 2026</time>. assignments (recipient address, order in loop) for cards one and two have been sent out as of <time datetime="2025-12-26">December 26th, 2025</time>. Assignments for card three have been sent out as of <time datetime="2026-06-04">June 4th, 2026</time>.
@@ -32,8 +32,6 @@ assignments (recipient address, order in loop) for cards one and two have been s
each cohort will be 16 people. When signups for the next round hit 16, I will confirm with all folks that they are still in; if so, we'll kick it off (if not, we'll wait for another person or two). each cohort will be 16 people. When signups for the next round hit 16, I will confirm with all folks that they are still in; if so, we'll kick it off (if not, we'll wait for another person or two).
for the round that began <time datetime="2026-01-01">January of 2026</time>, we have 32 participants and will have two cards in circulation. All following rounds will kick off when 16 signups have been reached.
### on randomization ### on randomization
I will edit the list as needed to accommodate any mailing restrictions. I will also re-roll if I am placed first on the list. I will edit the list as needed to accommodate any mailing restrictions. I will also re-roll if I am placed first on the list.
@@ -92,3 +90,11 @@ as stated above, signups for the rounds beginning <time datetime="2026-01-01">Ja
[sign up for the siblinghood of the traveling greeting card](https://airtable.com/appdoHZsRDUzgYu9q/pagsr9LVAqKx29gDl/form). [sign up for the siblinghood of the traveling greeting card](https://airtable.com/appdoHZsRDUzgYu9q/pagsr9LVAqKx29gDl/form).
if airtable is in any way inaccessible to you, please [reach out directly to lee](https://leecat.art/contact). if airtable is in any way inaccessible to you, please [reach out directly to lee](https://leecat.art/contact).
## completed cards
### card two
<span class="card">[Card Two](/card-two)</span> kicked off in <time datetime="2026-01-06">early January, 2026</time> and finished its long and perilous journey in <time datetime="2026-09-22">late September, 2026</time>, spanning about 9 and a half months.
![two images stitched together. The first one shows the front of the card, which has a design of a cat peeking out from behind a question mark. The second shows the open card with all signatures and many stickers.](/img/two/16.png)
+17
View File
@@ -0,0 +1,17 @@
---
permalink: sitemap.xml
layout: false
eleventyExcludeFromCollections: true
---
<?xml version="1.0" encoding="utf-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml">
{% for page in collections.all %}
{% if page.data.permalink != false %}
{% set absoluteUrl %}{{ page.url | htmlBaseUrl(metadata.url) }}{% endset %}
<url>
<loc>{{ absoluteUrl }}</loc>
<lastmod>{{ page.date | htmlDateString }}</lastmod>
</url>
{% endif %}
{% endfor %}
</urlset>
+3
View File
@@ -0,0 +1,3 @@
---
location: California, USA
---
+3
View File
@@ -0,0 +1,3 @@
---
location: California, USA (again)
---
+3
View File
@@ -0,0 +1,3 @@
---
location: "???"
---
+3
View File
@@ -1,3 +1,6 @@
--- ---
location: Illinois, USA location: Illinois, USA
img:
src: two/15.jpg
alt: the inside of a card with 16 signatures in many colors. It has a piece of paper on top that says 'sticker trove'
--- ---
+6
View File
@@ -0,0 +1,6 @@
---
location: Oregon, USA
img:
src: two/16.png
alt: two images stitched together. The first one shows the front of the card, which has a design of a cat peeking out from behind a question mark. The second shows the open card with all signatures and many stickers.
---
+6
View File
@@ -0,0 +1,6 @@
---
location: Oregon, USA
img:
src: three/01.jpg
alt: An open greeting card with a pile of stickers and a couple signatures with doodles.
---
+3
View File
@@ -0,0 +1,3 @@
---
location: "???"
---