Compare commits
4
Commits
c4b7faca88
...
814d4efe8b
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
814d4efe8b | ||
|
|
0b0822d21b | ||
|
|
f1c073535d | ||
|
|
4f0a0f3969 |
@@ -36,7 +36,7 @@ layout: base.njk
|
|||||||
<button class="close-dialog" autofocus aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/{{ image.src }}" alt="{{ image.alt }}">
|
<img class="modal-img" src="/img/{{ image.src }}" alt="{{ image.alt }}">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/{{ image.src }}" alt="{{ image.alt }}">
|
<img class="hero" src="/img/{{ image.src }}" alt="{{ image.alt }}">
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{{ content | safe }}
|
{{ content | safe }}
|
||||||
|
|||||||
+1
-1
@@ -1215,6 +1215,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/1/` was built on 2026-05-14T03:50:33.991Z -->
|
<!-- This page `/1/` was built on 2026-05-14T15:50:42.334Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+1
-1
@@ -1245,6 +1245,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/10/` was built on 2026-05-14T03:50:39.413Z -->
|
<!-- This page `/10/` was built on 2026-05-14T15:50:46.750Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+1
-1
@@ -1251,6 +1251,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/11/` was built on 2026-05-14T03:50:39.907Z -->
|
<!-- This page `/11/` was built on 2026-05-14T15:50:47.029Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+1
-1
@@ -1239,6 +1239,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/12/` was built on 2026-05-14T03:50:40.130Z -->
|
<!-- This page `/12/` was built on 2026-05-14T15:50:47.244Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+1
-1
@@ -1227,6 +1227,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/13/` was built on 2026-05-14T03:50:40.529Z -->
|
<!-- This page `/13/` was built on 2026-05-14T15:50:47.635Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+1
-1
@@ -1159,6 +1159,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/14/` was built on 2026-05-14T03:50:40.687Z -->
|
<!-- This page `/14/` was built on 2026-05-14T15:50:47.695Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+1
-1
@@ -1219,6 +1219,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/2/` was built on 2026-05-14T03:50:35.690Z -->
|
<!-- This page `/2/` was built on 2026-05-14T15:50:43.118Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+1
-1
@@ -1227,6 +1227,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/3/` was built on 2026-05-14T03:50:36.268Z -->
|
<!-- This page `/3/` was built on 2026-05-14T15:50:43.557Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+1
-1
@@ -1223,6 +1223,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/4/` was built on 2026-05-14T03:50:36.884Z -->
|
<!-- This page `/4/` was built on 2026-05-14T15:50:44.248Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+1
-1
@@ -1013,6 +1013,6 @@ export { HeadingAnchors }</script>
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/404.html` was built on 2026-05-14T03:50:32.035Z -->
|
<!-- This page `/404.html` was built on 2026-05-14T15:50:39.446Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+1
-1
@@ -1219,6 +1219,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/5/` was built on 2026-05-14T03:50:37.215Z -->
|
<!-- This page `/5/` was built on 2026-05-14T15:50:44.555Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+1
-1
@@ -1217,6 +1217,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/6/` was built on 2026-05-14T03:50:37.600Z -->
|
<!-- This page `/6/` was built on 2026-05-14T15:50:44.902Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+1
-1
@@ -1227,6 +1227,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/7/` was built on 2026-05-14T03:50:38.085Z -->
|
<!-- This page `/7/` was built on 2026-05-14T15:50:45.409Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+1
-1
@@ -1215,6 +1215,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/8/` was built on 2026-05-14T03:50:38.568Z -->
|
<!-- This page `/8/` was built on 2026-05-14T15:50:45.779Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+1
-1
@@ -1253,6 +1253,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/9/` was built on 2026-05-14T03:50:38.980Z -->
|
<!-- This page `/9/` was built on 2026-05-14T15:50:46.257Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/aaron-mask.jpg" alt="A brown/grey leather mask of a long snouted dog with visible teeth and red detailing." loading="lazy" decoding="async" width="900" height="1200">
|
<img class="modal-img" src="/img/aaron-mask.jpg" alt="A brown/grey leather mask of a long snouted dog with visible teeth and red detailing." loading="lazy" decoding="async" width="900" height="1200">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/aaron-mask.jpg" alt="A brown/grey leather mask of a long snouted dog with visible teeth and red detailing." loading="lazy" decoding="async" width="900" height="1200">
|
<img class="hero" src="/img/aaron-mask.jpg" alt="A brown/grey leather mask of a long snouted dog with visible teeth and red detailing." loading="lazy" decoding="async" width="900" height="1200">
|
||||||
|
|
||||||
|
|
||||||
<p>Commission piece; based on an existing pattern. The red detailing and teeth are my own design.</p>
|
<p>Commission piece; based on an existing pattern. The red detailing and teeth are my own design.</p>
|
||||||
@@ -1596,43 +1598,43 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/moss-harness/">
|
<a class="postlink" href="/foldy-wallet-with-thumb-slide/">
|
||||||
<h2 data-ha-exclude="" id="moss-harness">moss harness </h2>
|
<h2 data-ha-exclude="" id="foldy-wallet-with-thumb-slide">foldy wallet with thumb slide </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/moss-harness.jpg" alt="A nylon webbing harness in bright teal laid out on a desk." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/foldy-thumb-slide.jpg" alt="A card wallet with one main pocket and one quick access slot with a thumb slide. The cover of the main pocket curves around the thumb slide." loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/zipper-bifold/">
|
<a class="postlink" href="/eight-pocket-bifold/">
|
||||||
<h2 data-ha-exclude="" id="zipper-bifold">zipper bifold </h2>
|
<h2 data-ha-exclude="" id="eight-pocket-bifold">eight pocket bifold </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/zipper-bifold.jpg" alt="A collage showing a hand-stitched leather bifold with a zippered coin pocket on one exterior side." loading="lazy" decoding="async" width="1000" height="1777">
|
<img src="/img/eight-pocket-bifold.jpg" alt="A 3-picture collage showing a hand stitched full grain leather bifold wallet in dark plum leather. It has a main bill pocket and a asymmetrical interior with a hidden pocket and 3 card pockets on the right, and a hidden pocket and 2 card pockets on the left. The left front pocket has a small naturally occuring hole." loading="lazy" decoding="async" width="1000" height="1777">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/vertical-bifold/">
|
<a class="postlink" href="/leather-keychains/">
|
||||||
<h2 data-ha-exclude="" id="vertical-bifold">vertical bifold </h2>
|
<h2 data-ha-exclude="" id="leather-keychains">leather keychains </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/vertical-bifold.jpg" alt="A collage showing a hand-stitched leather vertical bifold wallet with 6 card pockets, 2 hidden pockets, and 1 bill pocket." loading="lazy" decoding="async" width="1000" height="1777">
|
<img src="/img/leather-keychains.jpg" alt="A picture of multiple leather keychains sitting on a wood table. Many of them are simple rectangle shapes with stitching around the edge; a few are odd wavy or geometric shapes. A few say things like 'MOM' or 'EGG'." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1668,6 +1670,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/aarons-mask/` was built on 2026-05-14T03:50:32.028Z -->
|
<!-- This page `/aarons-mask/` was built on 2026-05-14T15:50:39.409Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1130,6 +1130,6 @@ export { HeadingAnchors }</script>
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/about/` was built on 2026-05-14T03:50:32.035Z -->
|
<!-- This page `/about/` was built on 2026-05-14T15:50:39.446Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/acadia-coloring-journal.jpg" alt="A five panel collage showcasing a book that is part graph papers of various sizes, and part coloring pages based on Acadia National Park." loading="lazy" decoding="async" width="1000" height="562">
|
<img class="modal-img" src="/img/acadia-coloring-journal.jpg" alt="A five panel collage showcasing a book that is part graph papers of various sizes, and part coloring pages based on Acadia National Park." loading="lazy" decoding="async" width="1000" height="562">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/acadia-coloring-journal.jpg" alt="A five panel collage showcasing a book that is part graph papers of various sizes, and part coloring pages based on Acadia National Park." loading="lazy" decoding="async" width="1000" height="562">
|
<img class="hero" src="/img/acadia-coloring-journal.jpg" alt="A five panel collage showcasing a book that is part graph papers of various sizes, and part coloring pages based on Acadia National Park." loading="lazy" decoding="async" width="1000" height="562">
|
||||||
|
|
||||||
|
|
||||||
<p>A green journal with a blue leather spine. The coloring pages are from the book <a href="https://www.ellsworthamerican.com/living/arts-a-living/color-acadia/" target="_blank" rel="external">Color Acadia</a> with art by Katie Dube and Keri Kimura.</p>
|
<p>A green journal with a blue leather spine. The coloring pages are from the book <a href="https://www.ellsworthamerican.com/living/arts-a-living/color-acadia/" target="_blank" rel="external">Color Acadia</a> with art by Katie Dube and Keri Kimura.</p>
|
||||||
@@ -1611,6 +1613,20 @@ if (window.innerWidth > 650) {
|
|||||||
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/orange-journal/">
|
||||||
|
<h2 data-ha-exclude="" id="orange-journal">orange journal </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>book</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/orange-journal.jpg" alt="A three panel collage showcasing a small book with foldout pages and a bright orange cover." loading="lazy" decoding="async" width="1000" height="1776">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/flocked-notebook/">
|
<a class="postlink" href="/flocked-notebook/">
|
||||||
<h2 data-ha-exclude="" id="flocked-notebook">flocked notebook </h2>
|
<h2 data-ha-exclude="" id="flocked-notebook">flocked notebook </h2>
|
||||||
@@ -1626,33 +1642,15 @@ if (window.innerWidth > 650) {
|
|||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/leather-long-stitch-journals/">
|
<a class="postlink" href="/striped-journal/">
|
||||||
<h2 data-ha-exclude="" id="leather-long-stitch-journals">leather long-stitch journals </h2>
|
<h2 data-ha-exclude="" id="striped-journal">striped journal </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>leather</li>
|
|
||||||
|
|
||||||
<li>book</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/long-stitch-journals.jpg" alt="A stack of hand-bound journals showing long stitches aligned with the spines. They are leather bound and have tie closures." loading="lazy" decoding="async" width="1000" height="1333">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/brookes-notebook/">
|
|
||||||
<h2 data-ha-exclude="" id="brookes-notebook">brooke's notebook </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>book</li>
|
<li>book</li>
|
||||||
|
|
||||||
<li>highlight</li>
|
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/brooke-notebook.jpg" alt="A six panel collage showing the covers, endpapers, and some of the pages of a notebook." loading="lazy" decoding="async" width="1000" height="1500">
|
<img src="/img/striped-journal.jpg" alt="A three panel collage showcasing a journal with a striped cover." loading="lazy" decoding="async" width="1000" height="1776">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1688,6 +1686,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/acadia-coloring-journal/` was built on 2026-05-14T03:50:31.996Z -->
|
<!-- This page `/acadia-coloring-journal/` was built on 2026-05-14T15:50:39.404Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/acadia-mitts.jpg" alt="a hand wearing a knitted fingerless mitten. it's knit in a slubby, almost tweedy yarn, with the body being blue grey stockinette and the cuffs and tips a vibrant green rib." loading="lazy" decoding="async" width="1000" height="1000">
|
<img class="modal-img" src="/img/acadia-mitts.jpg" alt="a hand wearing a knitted fingerless mitten. it's knit in a slubby, almost tweedy yarn, with the body being blue grey stockinette and the cuffs and tips a vibrant green rib." loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/acadia-mitts.jpg" alt="a hand wearing a knitted fingerless mitten. it's knit in a slubby, almost tweedy yarn, with the body being blue grey stockinette and the cuffs and tips a vibrant green rib." loading="lazy" decoding="async" width="1000" height="1000">
|
<img class="hero" src="/img/acadia-mitts.jpg" alt="a hand wearing a knitted fingerless mitten. it's knit in a slubby, almost tweedy yarn, with the body being blue grey stockinette and the cuffs and tips a vibrant green rib." loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
|
|
||||||
<p>Yarn: <a href="https://thefibreco.com/products/acadia" target="_blank" rel="external">The Fibre Co. Acadia</a></p>
|
<p>Yarn: <a href="https://thefibreco.com/products/acadia" target="_blank" rel="external">The Fibre Co. Acadia</a></p>
|
||||||
@@ -1595,20 +1597,6 @@ if (window.innerWidth > 650) {
|
|||||||
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/knit-shrimp/">
|
|
||||||
<h2 data-ha-exclude="" id="knit-shrimp">knit shrimp </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>knit</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/knit-shrimp.jpg" alt="Four knitted shrimp in various shades of pink. They are all somewhere around hand-sized, and have little yarn antennae and leggies." loading="lazy" decoding="async" width="1000" height="750">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/brookes-scarf/">
|
<a class="postlink" href="/brookes-scarf/">
|
||||||
<h2 data-ha-exclude="" id="brookes-scarf">brooke's scarf </h2>
|
<h2 data-ha-exclude="" id="brookes-scarf">brooke's scarf </h2>
|
||||||
@@ -1624,17 +1612,31 @@ if (window.innerWidth > 650) {
|
|||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/pride-dice-bags/">
|
<a class="postlink" href="/butch-hands-pattern/">
|
||||||
<h2 data-ha-exclude="" id="pride-dice-bags">pride dice bags </h2>
|
<h2 data-ha-exclude="" id="butch-hands-pattern">butch hands pattern </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>knit</li>
|
<li>knit</li>
|
||||||
|
|
||||||
<li>gender</li>
|
<li>highlight</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/pride-dice-bags.jpg" alt="Several knitted drawstring dice bags sit in front of a bookshelf. They are in different pride flag colors; from right to left (skipping a few duplicates) bisexual, lesbian, nonbinary, trans, and genderqueer. The trans-colored dice bag in the center opens towards the camera, showing a variety of colorful dice inside." loading="lazy" decoding="async" width="1000" height="500">
|
<img src="/img/butch-hands.jpg" alt="Hands wearing a pair of pink and grey gloves with convertable mitten tops." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/keffiyah-fishing-net-pattern/">
|
||||||
|
<h2 data-ha-exclude="" id="keffiyah-fishing-net-pattern">keffiyah fishing net pattern </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>knit</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/keffiyah-nets.jpg" alt="a knitted swatch. it's mostly white yarn, but a grid of dark red- purple- green yarn that looks like a chain link fence is built into it. the diagonal lines are achieved with floats of yarn from one row, then picked up and knit into several rows later." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1670,6 +1672,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/acadia-mitts/` was built on 2026-05-14T03:50:32.025Z -->
|
<!-- This page `/acadia-mitts/` was built on 2026-05-14T15:50:39.431Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/snacking-seagull.jpg" alt="Image unrelated to post. A seagull floating in the water with a starfish hanging out of eir mouth." loading="lazy" decoding="async" width="1000" height="666">
|
<img class="modal-img" src="/img/snacking-seagull.jpg" alt="Image unrelated to post. A seagull floating in the water with a starfish hanging out of eir mouth." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/snacking-seagull.jpg" alt="Image unrelated to post. A seagull floating in the water with a starfish hanging out of eir mouth." loading="lazy" decoding="async" width="1000" height="666">
|
<img class="hero" src="/img/snacking-seagull.jpg" alt="Image unrelated to post. A seagull floating in the water with a starfish hanging out of eir mouth." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
|
|
||||||
<p>Recently I've been working on a single-page digital rendition of a zine complete with many hand-drawn images. The author wanted to be able to bring images up to a full-screen view, to either zoom in or to put the whole enlarged image on one screen with no scrolling. It was a real struggle to find resources on how to do this in an accessible manner, so I'm writing up what I did.</p>
|
<p>Recently I've been working on a single-page digital rendition of a zine complete with many hand-drawn images. The author wanted to be able to bring images up to a full-screen view, to either zoom in or to put the whole enlarged image on one screen with no scrolling. It was a real struggle to find resources on how to do this in an accessible manner, so I'm writing up what I did.</p>
|
||||||
@@ -1655,43 +1657,45 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/intro-to-wireframing/">
|
<a class="postlink" href="/moving-images/">
|
||||||
<h2 data-ha-exclude="" id="intro-to-wireframing">intro to wireframing </h2>
|
<h2 data-ha-exclude="" id="moving-images">moving images </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>software</li>
|
<li>software</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/aggregator-wireframes.jpg" alt="a figma page with 4 major sections titled aggregator, aggregator mobile, aggregator color, and aggregator mobile color. each section has 7 pages in it - all sections pretty clearly have the same 7 pages, with the mobile sections shown on mobile screens and the color sections in a rainbow of pastels rather than grayscale." loading="lazy" decoding="async" width="1000" height="1042">
|
<img src="/img/cormorant.jpg" alt="Image unrelated to post. A cormorant, a type of black waterfowl, poses with wings spread on a buoy in Puget Sound. Off to the left, another bird floats." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/domain-and-site-setup/">
|
<a class="postlink" href="/comparing-text-editors/">
|
||||||
<h2 data-ha-exclude="" id="domain-and-site-setup">domain and site setup </h2>
|
<h2 data-ha-exclude="" id="comparing-text-editors">comparing text editors </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>software</li>
|
<li>software</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/crinkly-mushrooms.jpg" alt="Picture unrelated to post. Some crinkly brown-orange mushrooms in vibrant green grass." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/horsetail.jpg" alt="Image unrelated to post. Close up on a horsetail plant's stem, with many small needle-like leaves emerging from all sides of the circular stem at each segmented joint." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/an-intro-to-git/">
|
<a class="postlink" href="/designing-a-bag/">
|
||||||
<h2 data-ha-exclude="" id="an-intro-to-git">an intro to git </h2>
|
<h2 data-ha-exclude="" id="designing-a-bag">designing a bag </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>leather</li>
|
||||||
|
|
||||||
<li>software</li>
|
<li>software</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/goldeneye-tail.jpg" alt="Image unrelated to post. The tail of a diving duck pokes out from the water with a small splash." loading="lazy" decoding="async" width="1000" height="666">
|
<img src="/img/shoelace-bag.jpg" alt="a 3-image collage showcasing a leather crossbody bag. the leather body is brown and fairly simple. up the narrow sides, rope is laced through grommets in a style resembling a shoe lacing. the rope forms the handle and loops seamlessly through the other side of the bag, joining in one point in a figure-8 follow-through knot. At the bottom corners, there are small diagonal lines of stitching to give the bag a small lip around the base and ensure small objects don't slide out." loading="lazy" decoding="async" width="1000" height="1777">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1727,6 +1731,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/accessible-image-modals/` was built on 2026-05-14T03:50:32.002Z -->
|
<!-- This page `/accessible-image-modals/` was built on 2026-05-14T15:50:39.424Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/goldeneye-tail.jpg" alt="Image unrelated to post. The tail of a diving duck pokes out from the water with a small splash." loading="lazy" decoding="async" width="1000" height="666">
|
<img class="modal-img" src="/img/goldeneye-tail.jpg" alt="Image unrelated to post. The tail of a diving duck pokes out from the water with a small splash." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/goldeneye-tail.jpg" alt="Image unrelated to post. The tail of a diving duck pokes out from the water with a small splash." loading="lazy" decoding="async" width="1000" height="666">
|
<img class="hero" src="/img/goldeneye-tail.jpg" alt="Image unrelated to post. The tail of a diving duck pokes out from the water with a small splash." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
|
|
||||||
<p>alrighty, this one's a real doozy. Strap in.</p>
|
<p>alrighty, this one's a real doozy. Strap in.</p>
|
||||||
@@ -2011,15 +2013,15 @@ codeberg https://codeberg.org/inherentlee/git-intro.git (push)</code></pre>
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/backend-accessibility/">
|
<a class="postlink" href="/handedness-toggle/">
|
||||||
<h2 data-ha-exclude="" id="backend-accessibility">backend accessibility </h2>
|
<h2 data-ha-exclude="" id="handedness-toggle">handedness toggle </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>software</li>
|
<li>software</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/camelCase-print.jpg" alt="A carved stamp next to its print. The print reads '#camelCase' in a slightly formal-looking italic font." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/handedness-toggle-0.png" alt="A screenshot of the rescue trans rescue navbar centered on a button that shows a hand pointing left." loading="lazy" decoding="async" width="1000" height="257">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -2039,15 +2041,15 @@ codeberg https://codeberg.org/inherentlee/git-intro.git (push)</code></pre>
|
|||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/moving-images/">
|
<a class="postlink" href="/screen-reader-optimizations/">
|
||||||
<h2 data-ha-exclude="" id="moving-images">moving images </h2>
|
<h2 data-ha-exclude="" id="screen-reader-optimizations">screen reader optimizations </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>software</li>
|
<li>software</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/cormorant.jpg" alt="Image unrelated to post. A cormorant, a type of black waterfowl, poses with wings spread on a buoy in Puget Sound. Off to the left, another bird floats." loading="lazy" decoding="async" width="1000" height="666">
|
<img src="/img/crow.jpg" alt="Image unrelated to post. A crow poses on driftwood against a whitish sky." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -2083,6 +2085,6 @@ codeberg https://codeberg.org/inherentlee/git-intro.git (push)</code></pre>
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/an-intro-to-git/` was built on 2026-05-14T03:50:31.999Z -->
|
<!-- This page `/an-intro-to-git/` was built on 2026-05-14T15:50:39.420Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1565,7 +1567,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/anarchy-autism-rainbow-print.jpg" alt="A print in rainbow ink that says autism with the anarchy A." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/anarchy-autism-rainbow-print.jpg" alt="A print in rainbow ink that says autism with the anarchy A." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/anarchy-autism-rainbow-print.jpg" alt="A print in rainbow ink that says autism with the anarchy A." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/anarchy-autism-rainbow-print.jpg" alt="A print in rainbow ink that says autism with the anarchy A." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<p>my therapist's idea</p>
|
<p>my therapist's idea</p>
|
||||||
@@ -1618,8 +1620,40 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/big-pidge/">
|
<a class="postlink" href="/spotted-towhee/">
|
||||||
<h2 data-ha-exclude="" id="big-pidge">big pidge </h2>
|
<h2 data-ha-exclude="" id="spotted-towhee">spotted towhee </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>card</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/spotted-towhee-print.jpg" alt="A block print of a spotted towhee mid-leap." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/quorbs/">
|
||||||
|
<h2 data-ha-exclude="" id="quorbs">quorbs </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>highlight</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/quorbs-print.jpg" alt="A print in two layers of color showing two rotund quails on a branch. Most of the details are in black ink, then there is a layer with a brown gradient filling in some color on the head and breast." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/flicker/">
|
||||||
|
<h2 data-ha-exclude="" id="flicker">flicker </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
@@ -1630,39 +1664,7 @@ if (window.innerWidth > 650) {
|
|||||||
<li>shirt</li>
|
<li>shirt</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/big-pidge-print.jpg" alt="A block print of a superb speciman of pigeon, inked mostly in black but with patches of green, blue, and purple to indicate iridescence." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/flicker-print.jpg" alt="A print in black, brown, and red ink of a northern flicker (a type of woodpecker). Viewed from the back, he is looking over his shoulder and upward towards something unseen above him (my bird feeder)." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/luminescent/">
|
|
||||||
<h2 data-ha-exclude="" id="luminescent-mature">luminescent (mature)</h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>gender</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/luminescent-print.jpg" alt="A print of a tattooed woman in bright highlighter yellow underwear." class="blur" loading="lazy" decoding="async" width="900" height="1200">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/five-of-them/">
|
|
||||||
<h2 data-ha-exclude="" id="five-of-them">five of them </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>shirt</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/five-of-them-print.jpg" alt="A block print of five mule deer grazing in a dark green field. The deer are partially negative space and partially brown ink detailing." loading="lazy" decoding="async" width="1000" height="594">
|
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1698,6 +1700,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/anarchy-autism/` was built on 2026-05-14T03:50:32.018Z -->
|
<!-- This page `/anarchy-autism/` was built on 2026-05-14T15:50:39.440Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1541,7 +1543,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/pink-yellow-flowers.jpg" alt="Image unrelated to post. A cluster of small, four-petaled flowers, varying in color between a purpley-pink and yellow." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/pink-yellow-flowers.jpg" alt="Image unrelated to post. A cluster of small, four-petaled flowers, varying in color between a purpley-pink and yellow." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/pink-yellow-flowers.jpg" alt="Image unrelated to post. A cluster of small, four-petaled flowers, varying in color between a purpley-pink and yellow." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/pink-yellow-flowers.jpg" alt="Image unrelated to post. A cluster of small, four-petaled flowers, varying in color between a purpley-pink and yellow." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<p>Listed by recency.</p>
|
<p>Listed by recency.</p>
|
||||||
@@ -1632,6 +1634,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/art-shows-and-events/` was built on 2026-05-14T03:50:32.025Z -->
|
<!-- This page `/art-shows-and-events/` was built on 2026-05-14T15:50:39.430Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1555,7 +1557,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/artisans-coop-cards.jpg" alt="2 white greeting cards with the Artisans Cooperative logo, a chicken. One card has a single print of the chicken in black ink, and the other has two overlapping prints in blue and red ink" loading="lazy" decoding="async" width="1000" height="1000">
|
<img class="modal-img" src="/img/artisans-coop-cards.jpg" alt="2 white greeting cards with the Artisans Cooperative logo, a chicken. One card has a single print of the chicken in black ink, and the other has two overlapping prints in blue and red ink" loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/artisans-coop-cards.jpg" alt="2 white greeting cards with the Artisans Cooperative logo, a chicken. One card has a single print of the chicken in black ink, and the other has two overlapping prints in blue and red ink" loading="lazy" decoding="async" width="1000" height="1000">
|
<img class="hero" src="/img/artisans-coop-cards.jpg" alt="2 white greeting cards with the Artisans Cooperative logo, a chicken. One card has a single print of the chicken in black ink, and the other has two overlapping prints in blue and red ink" loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
|
|
||||||
<p>Learn more about <a href="https://artisans.coop/" target="_blank" rel="external">Artisans Cooperative</a>, a new platform for makers and supporters.</p>
|
<p>Learn more about <a href="https://artisans.coop/" target="_blank" rel="external">Artisans Cooperative</a>, a new platform for makers and supporters.</p>
|
||||||
@@ -1603,49 +1605,59 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/loon/">
|
<a class="postlink" href="/bottom-growth/">
|
||||||
<h2 data-ha-exclude="" id="loon">loon </h2>
|
<h2 data-ha-exclude="" id="bottom-growth-mature">bottom growth (mature)</h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/loon-print.jpg" alt="A print of a loon rearing up with wings spread" loading="lazy" decoding="async" width="1000" height="1333">
|
<img src="/img/bottom-growth-prints.jpg" alt="4 copies of the same print in various color schemes, laid out in a 2x2 grid. The print shows testosterone-driven bottom growth of a clitoris. The color schemes are, clockwise from top right, brown on turquoise, red on cornsilk (muted yellow), violet on magenta, and mint green on lilac." class="blur" loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/iris/">
|
<a class="postlink" href="/boypussy/">
|
||||||
<h2 data-ha-exclude="" id="iris">iris </h2>
|
<h2 data-ha-exclude="" id="boypussy-mature">boypussy (mature)</h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
<li>card</li>
|
<li>sticker</li>
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/iris-prints.jpg" alt="3 copies of the same print of iris flowers and a bud, done in slightly varied color schemes." loading="lazy" decoding="async" width="1000" height="562">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/flicker/">
|
|
||||||
<h2 data-ha-exclude="" id="flicker">flicker </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>card</li>
|
|
||||||
|
|
||||||
<li>shirt</li>
|
<li>shirt</li>
|
||||||
|
|
||||||
|
<li>pin</li>
|
||||||
|
|
||||||
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/flicker-print.jpg" alt="A print in black, brown, and red ink of a northern flicker (a type of woodpecker). Viewed from the back, he is looking over his shoulder and upward towards something unseen above him (my bird feeder)." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/boypussy-shirt.jpg" alt="A butch holding a chainsaw and wearing a tank top that reads boypussy in pink Barbie font." class="blur" loading="lazy" decoding="async" width="1000" height="1250">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/shrimp/">
|
||||||
|
<h2 data-ha-exclude="" id="shrimp">shrimp </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>card</li>
|
||||||
|
|
||||||
|
<li>sticker</li>
|
||||||
|
|
||||||
|
<li>pin</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/shrimp-print.jpg" alt="A print of a small shrimp with slender little leggies in orange ink." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1681,6 +1693,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/artisans-cooperative-cards/` was built on 2026-05-14T03:50:32.012Z -->
|
<!-- This page `/artisans-cooperative-cards/` was built on 2026-05-14T15:50:39.438Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1555,7 +1557,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/artisans-coop-shirt.jpg" alt="A black tank top laid on a desk. In white ink it reads 'Artisans Cooperative' with a print of some chickens and a quail." loading="lazy" decoding="async" width="1000" height="1333">
|
<img class="modal-img" src="/img/artisans-coop-shirt.jpg" alt="A black tank top laid on a desk. In white ink it reads 'Artisans Cooperative' with a print of some chickens and a quail." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/artisans-coop-shirt.jpg" alt="A black tank top laid on a desk. In white ink it reads 'Artisans Cooperative' with a print of some chickens and a quail." loading="lazy" decoding="async" width="1000" height="1333">
|
<img class="hero" src="/img/artisans-coop-shirt.jpg" alt="A black tank top laid on a desk. In white ink it reads 'Artisans Cooperative' with a print of some chickens and a quail." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
|
|
||||||
<p>Learn more about <a href="https://artisans.coop/" target="_blank" rel="external">Artisans Cooperative</a>, a new platform for makers and supporters.</p>
|
<p>Learn more about <a href="https://artisans.coop/" target="_blank" rel="external">Artisans Cooperative</a>, a new platform for makers and supporters.</p>
|
||||||
@@ -1604,19 +1606,19 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/pronoun-patches/">
|
<a class="postlink" href="/congrats-on-the-gay/">
|
||||||
<h2 data-ha-exclude="" id="pronoun-patches">pronoun patches </h2>
|
<h2 data-ha-exclude="" id="congrats-on-the-gay">congrats on the gay </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
<li>patch</li>
|
<li>card</li>
|
||||||
|
|
||||||
<li>gender</li>
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/pronoun-patch.jpg" alt="Rows of the same design, a skull with a speech bubble announcing varied pronoun sets, repeat in multiple colors along a stretch of off-white fabric." loading="lazy" decoding="async" width="1000" height="562">
|
<img src="/img/congrats-on-the-gay.jpg" alt="A greeting card reading, in black. 'Congrats on the,' and then, in rainbow, 'Gay!'" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1638,19 +1640,23 @@ if (window.innerWidth > 650) {
|
|||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/fat-raccoon/">
|
<a class="postlink" href="/girldick/">
|
||||||
<h2 data-ha-exclude="" id="fat-raccoon">fat raccoon </h2>
|
<h2 data-ha-exclude="" id="girldick-mature">girldick (mature)</h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
<li>card</li>
|
<li>sticker</li>
|
||||||
|
|
||||||
<li>shirt</li>
|
<li>shirt</li>
|
||||||
|
|
||||||
|
<li>pin</li>
|
||||||
|
|
||||||
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/fat-raccoon-print.jpg" alt="A block print in black ink of a rotund raccoon raising a welcoming paw towards the viewer." loading="lazy" decoding="async" width="1000" height="1333">
|
<img src="/img/girldick-shirt.jpg" alt="A butch cooking and wearing a cropped tee with blue cap sleeves that reads girldick in blue G.I.Joe font." class="blur" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1686,6 +1692,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/artisans-cooperative-shirts/` was built on 2026-05-14T03:50:32.017Z -->
|
<!-- This page `/artisans-cooperative-shirts/` was built on 2026-05-14T15:50:39.440Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1541,7 +1543,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/artists-conk-leatherworking.jpg" alt="A hand holding a mushroom with a whitish surface. Scratched into the surface and showing up as brown lines is an illustration of many leatherworking tools." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/artists-conk-leatherworking.jpg" alt="A hand holding a mushroom with a whitish surface. Scratched into the surface and showing up as brown lines is an illustration of many leatherworking tools." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/artists-conk-leatherworking.jpg" alt="A hand holding a mushroom with a whitish surface. Scratched into the surface and showing up as brown lines is an illustration of many leatherworking tools." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/artists-conk-leatherworking.jpg" alt="A hand holding a mushroom with a whitish surface. Scratched into the surface and showing up as brown lines is an illustration of many leatherworking tools." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<p>did you know you can draw on (certain) mushrooms</p>
|
<p>did you know you can draw on (certain) mushrooms</p>
|
||||||
@@ -1609,6 +1611,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/artists-conk/` was built on 2026-05-14T03:50:32.020Z -->
|
<!-- This page `/artists-conk/` was built on 2026-05-14T15:50:39.442Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1555,7 +1557,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/azure-locations.jpg" alt="A Linux terminal. There is a fun rainbow flag in ascii art at the top, and then the user has called a command asking Azure for a list of locations applicable to a specific resource type. The output is lengthy." loading="lazy" decoding="async" width="1000" height="827">
|
<img class="modal-img" src="/img/azure-locations.jpg" alt="A Linux terminal. There is a fun rainbow flag in ascii art at the top, and then the user has called a command asking Azure for a list of locations applicable to a specific resource type. The output is lengthy." loading="lazy" decoding="async" width="1000" height="827">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/azure-locations.jpg" alt="A Linux terminal. There is a fun rainbow flag in ascii art at the top, and then the user has called a command asking Azure for a list of locations applicable to a specific resource type. The output is lengthy." loading="lazy" decoding="async" width="1000" height="827">
|
<img class="hero" src="/img/azure-locations.jpg" alt="A Linux terminal. There is a fun rainbow flag in ascii art at the top, and then the user has called a command asking Azure for a list of locations applicable to a specific resource type. The output is lengthy." loading="lazy" decoding="async" width="1000" height="827">
|
||||||
|
|
||||||
|
|
||||||
<h2 id="context">context</h2>
|
<h2 id="context">context</h2>
|
||||||
@@ -1827,31 +1829,15 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/backend-accessibility/">
|
<a class="postlink" href="/eleventy-lessons/">
|
||||||
<h2 data-ha-exclude="" id="backend-accessibility">backend accessibility </h2>
|
<h2 data-ha-exclude="" id="eleventy-lessons">eleventy lessons </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>software</li>
|
<li>software</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/camelCase-print.jpg" alt="A carved stamp next to its print. The print reads '#camelCase' in a slightly formal-looking italic font." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/hellebore.jpg" alt="Image unrelated to post. Close up on a pale green hellebore flower." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/little-critter-pouch/">
|
|
||||||
<h2 data-ha-exclude="" id="little-critter-pouch">little critter pouch </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>leather</li>
|
|
||||||
|
|
||||||
<li>highlight</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/little-critter-pouch.jpg" alt="A leather pouch shaped a bit like a d10 but with eight sides. It has a rainbow zippered opening and a wristlet strap." loading="lazy" decoding="async" width="1000" height="750">
|
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1870,6 +1856,22 @@ if (window.innerWidth > 650) {
|
|||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/brookes-notebook/">
|
||||||
|
<h2 data-ha-exclude="" id="brookes-notebook">brooke's notebook </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>book</li>
|
||||||
|
|
||||||
|
<li>highlight</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/brooke-notebook.jpg" alt="A six panel collage showing the covers, endpapers, and some of the pages of a notebook." loading="lazy" decoding="async" width="1000" height="1500">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
</ol>
|
</ol>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
@@ -1901,6 +1903,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/azure-locations-and-file-crawling/` was built on 2026-05-14T03:50:32.024Z -->
|
<!-- This page `/azure-locations-and-file-crawling/` was built on 2026-05-14T15:50:39.429Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/camelCase-print.jpg" alt="A carved stamp next to its print. The print reads '#camelCase' in a slightly formal-looking italic font." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/camelCase-print.jpg" alt="A carved stamp next to its print. The print reads '#camelCase' in a slightly formal-looking italic font." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/camelCase-print.jpg" alt="A carved stamp next to its print. The print reads '#camelCase' in a slightly formal-looking italic font." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/camelCase-print.jpg" alt="A carved stamp next to its print. The print reads '#camelCase' in a slightly formal-looking italic font." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<blockquote>
|
<blockquote>
|
||||||
@@ -1657,43 +1659,47 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/screen-reader-optimizations/">
|
<a class="postlink" href="/azure-locations-and-file-crawling/">
|
||||||
<h2 data-ha-exclude="" id="screen-reader-optimizations">screen reader optimizations </h2>
|
<h2 data-ha-exclude="" id="azure-locations-and-file-crawling">azure locations and file crawling </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>software</li>
|
<li>software</li>
|
||||||
|
|
||||||
|
<li>highlight</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/crow.jpg" alt="Image unrelated to post. A crow poses on driftwood against a whitish sky." loading="lazy" decoding="async" width="1000" height="666">
|
<img src="/img/azure-locations.jpg" alt="A Linux terminal. There is a fun rainbow flag in ascii art at the top, and then the user has called a command asking Azure for a list of locations applicable to a specific resource type. The output is lengthy." loading="lazy" decoding="async" width="1000" height="827">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/comparing-text-editors/">
|
<a class="postlink" href="/designing-a-bag/">
|
||||||
<h2 data-ha-exclude="" id="comparing-text-editors">comparing text editors </h2>
|
<h2 data-ha-exclude="" id="designing-a-bag">designing a bag </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>leather</li>
|
||||||
|
|
||||||
<li>software</li>
|
<li>software</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/horsetail.jpg" alt="Image unrelated to post. Close up on a horsetail plant's stem, with many small needle-like leaves emerging from all sides of the circular stem at each segmented joint." loading="lazy" decoding="async" width="1000" height="666">
|
<img src="/img/shoelace-bag.jpg" alt="a 3-image collage showcasing a leather crossbody bag. the leather body is brown and fairly simple. up the narrow sides, rope is laced through grommets in a style resembling a shoe lacing. the rope forms the handle and loops seamlessly through the other side of the bag, joining in one point in a figure-8 follow-through knot. At the bottom corners, there are small diagonal lines of stitching to give the bag a small lip around the base and ensure small objects don't slide out." loading="lazy" decoding="async" width="1000" height="1777">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/an-intro-to-git/">
|
<a class="postlink" href="/accessible-image-modals/">
|
||||||
<h2 data-ha-exclude="" id="an-intro-to-git">an intro to git </h2>
|
<h2 data-ha-exclude="" id="accessible-image-modals">accessible image modals </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>software</li>
|
<li>software</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/goldeneye-tail.jpg" alt="Image unrelated to post. The tail of a diving duck pokes out from the water with a small splash." loading="lazy" decoding="async" width="1000" height="666">
|
<img src="/img/snacking-seagull.jpg" alt="Image unrelated to post. A seagull floating in the water with a starfish hanging out of eir mouth." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1729,6 +1735,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/backend-accessibility/` was built on 2026-05-14T03:50:32.006Z -->
|
<!-- This page `/backend-accessibility/` was built on 2026-05-14T15:50:39.435Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+13
-11
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/bag-strap.jpg" alt="A nylon webbing shoulder strap in bright teal with clips on each end." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/bag-strap.jpg" alt="A nylon webbing shoulder strap in bright teal with clips on each end." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/bag-strap.jpg" alt="A nylon webbing shoulder strap in bright teal with clips on each end." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/bag-strap.jpg" alt="A nylon webbing shoulder strap in bright teal with clips on each end." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<p>adjustable! also can be made with rainbow fittings.</p>
|
<p>adjustable! also can be made with rainbow fittings.</p>
|
||||||
@@ -1596,43 +1598,43 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/leatherworking-favorites/">
|
<a class="postlink" href="/nine-pocket-bifold/">
|
||||||
<h2 data-ha-exclude="" id="leatherworking-favorites">leatherworking favorites </h2>
|
<h2 data-ha-exclude="" id="nine-pocket-bifold">nine pocket bifold </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/leather-harness-wip.jpg" alt="two pieces of a chest harness sitting on a messy workbench. both pieces are about 8 inches long total and consist of two large o-rings joined by a dark teal leather strap. the o rings and rivets are matte black." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/nine-pocket-bifold.jpg" alt="A hand stitched full grain leather bifold wallet in dark plum leather. It has a main bill pocket and a symmetrical interior with a hidden pocket and 3 card pockets on each side." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/swoop-wallet/">
|
<a class="postlink" href="/sunflower/">
|
||||||
<h2 data-ha-exclude="" id="swoop-wallet">swoop wallet </h2>
|
<h2 data-ha-exclude="" id="sunflower">sunflower </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/swoop-wallet.jpg" alt="A collage showing 3 pictures of a red and brown leather card wallet. The red pocket separator folds around to the back to become a fetching curlicue." loading="lazy" decoding="async" width="900" height="1200">
|
<img src="/img/sunflower.jpg" alt="A sunflower made of leather. Many individual natural toned leather petals are sewn onto a brown center ." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/x-acto-knife-sheath/">
|
<a class="postlink" href="/brookes-cuff-bracelets/">
|
||||||
<h2 data-ha-exclude="" id="x-acto-knife-sheath">x-acto knife sheath </h2>
|
<h2 data-ha-exclude="" id="brookes-cuff-bracelets">brooke's cuff bracelets </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/knife-sheaths.jpg" alt="Several blades with leather sheaths, and a few extra sheaths. There's a #2 blade with an orange sheath with yellow stitching, a #11 blade with a blue sheath with light grey stitching, and a skiving knife with a plum sheath and pink stitching." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/brooke-cuffs.jpg" alt="Olive green leather cuffs with silver spikes and a shearling lining." loading="lazy" decoding="async" width="900" height="1200">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1668,6 +1670,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/bag-strap/` was built on 2026-05-14T03:50:32.020Z -->
|
<!-- This page `/bag-strap/` was built on 2026-05-14T15:50:39.442Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/baseball-journal.jpg" alt="A 3-part collage of a leather-covered book with baseball-style stitching across the spine." loading="lazy" decoding="async" width="1000" height="1000">
|
<img class="modal-img" src="/img/baseball-journal.jpg" alt="A 3-part collage of a leather-covered book with baseball-style stitching across the spine." loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/baseball-journal.jpg" alt="A 3-part collage of a leather-covered book with baseball-style stitching across the spine." loading="lazy" decoding="async" width="1000" height="1000">
|
<img class="hero" src="/img/baseball-journal.jpg" alt="A 3-part collage of a leather-covered book with baseball-style stitching across the spine." loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
|
|
||||||
<p>Baseball stitched book!</p>
|
<p>Baseball stitched book!</p>
|
||||||
@@ -1605,20 +1607,6 @@ if (window.innerWidth > 650) {
|
|||||||
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/square-watercolor-pad/">
|
|
||||||
<h2 data-ha-exclude="" id="square-watercolor-pad">square watercolor pad </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>book</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/square-watercolor-pad.jpg" alt="A two panel collage showing a square book with a tan cover and blue and gold endpapers." loading="lazy" decoding="async" width="1000" height="1331">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/brookes-notebook/">
|
<a class="postlink" href="/brookes-notebook/">
|
||||||
<h2 data-ha-exclude="" id="brookes-notebook">brooke's notebook </h2>
|
<h2 data-ha-exclude="" id="brookes-notebook">brooke's notebook </h2>
|
||||||
@@ -1635,6 +1623,20 @@ if (window.innerWidth > 650) {
|
|||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/flocked-notebook/">
|
||||||
|
<h2 data-ha-exclude="" id="flocked-notebook">flocked notebook </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>book</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/flocked-notebook.jpg" alt="A two panel collage showing the cover and endpapers of a thick notebook." loading="lazy" decoding="async" width="1000" height="1331">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/blue-and-brown-leather-journal/">
|
<a class="postlink" href="/blue-and-brown-leather-journal/">
|
||||||
<h2 data-ha-exclude="" id="blue-and-brown-leather-journal">blue and brown leather journal </h2>
|
<h2 data-ha-exclude="" id="blue-and-brown-leather-journal">blue and brown leather journal </h2>
|
||||||
@@ -1680,6 +1682,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/baseball-journal/` was built on 2026-05-14T03:50:32.008Z -->
|
<!-- This page `/baseball-journal/` was built on 2026-05-14T15:50:39.436Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/become-unbutterable.jpg" alt="3 copies of the same stamp in orange ink are spread out next to the hand carved rubber stamp they were made from. They show a cat lying on his back with paws curled, holding a butter knife in his mouth. Text around the cat reads, in all caps, 'become unbutterable.'" loading="lazy" decoding="async" width="1000" height="562">
|
<img class="modal-img" src="/img/become-unbutterable.jpg" alt="3 copies of the same stamp in orange ink are spread out next to the hand carved rubber stamp they were made from. They show a cat lying on his back with paws curled, holding a butter knife in his mouth. Text around the cat reads, in all caps, 'become unbutterable.'" loading="lazy" decoding="async" width="1000" height="562">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/become-unbutterable.jpg" alt="3 copies of the same stamp in orange ink are spread out next to the hand carved rubber stamp they were made from. They show a cat lying on his back with paws curled, holding a butter knife in his mouth. Text around the cat reads, in all caps, 'become unbutterable.'" loading="lazy" decoding="async" width="1000" height="562">
|
<img class="hero" src="/img/become-unbutterable.jpg" alt="3 copies of the same stamp in orange ink are spread out next to the hand carved rubber stamp they were made from. They show a cat lying on his back with paws curled, holding a butter knife in his mouth. Text around the cat reads, in all caps, 'become unbutterable.'" loading="lazy" decoding="async" width="1000" height="562">
|
||||||
|
|
||||||
|
|
||||||
<p>Hand carved stamp based on a photo of Jorts the cat.</p>
|
<p>Hand carved stamp based on a photo of Jorts the cat.</p>
|
||||||
@@ -1603,51 +1605,55 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/seedling/">
|
<a class="postlink" href="/geese-trans-wrongs/">
|
||||||
<h2 data-ha-exclude="" id="seedling">seedling </h2>
|
<h2 data-ha-exclude="" id="geese-trans-wrongs">geese/trans wrongs </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
<li>card</li>
|
<li>shirt</li>
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/seedling-print.jpg" alt="A print of a 3-stage design of a green seedling barely open, starting to straighten up, and growing strong, with little piles of dirt beneath each one." loading="lazy" decoding="async" width="1000" height="1333">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/artisans-cooperative-cards/">
|
|
||||||
<h2 data-ha-exclude="" id="artisans-cooperative-cards">artisans cooperative cards </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>card</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/artisans-coop-cards.jpg" alt="2 white greeting cards with the Artisans Cooperative logo, a chicken. One card has a single print of the chicken in black ink, and the other has two overlapping prints in blue and red ink" loading="lazy" decoding="async" width="1000" height="1000">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/nonbinary-flag/">
|
|
||||||
<h2 data-ha-exclude="" id="nonbinary-flag">nonbinary flag </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>card</li>
|
|
||||||
|
|
||||||
<li>gender</li>
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/nonbinary-flag-print.jpg" alt="A print of a nonbinary flag waving, with yellow, white (uninked), purple, and black stripes." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/trans-wrongs-geese-print.jpg" alt="Two Canada geese and their reflections in the water. One is calmly swimming away, while the over leans over towards them and HONKS! Both have speech bubbles; the calm goose says 'trans rights!' while the honking goose says 'trans wrongs!'" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/queer/">
|
||||||
|
<h2 data-ha-exclude="" id="queer">queer </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>card</li>
|
||||||
|
|
||||||
|
<li>sticker</li>
|
||||||
|
|
||||||
|
<li>pin</li>
|
||||||
|
|
||||||
|
<li>gender</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/queer-print.jpg" alt="A print of the word queer in black ink. The letters are rounded with elongated oval negative space." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/kniphofia/">
|
||||||
|
<h2 data-ha-exclude="" id="kniphofia">kniphofia </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/kniphofia-print.jpg" alt="A print of a brightly colored flower in 4 layers of color" loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1683,6 +1689,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/become-unbutterable/` was built on 2026-05-14T03:50:31.996Z -->
|
<!-- This page `/become-unbutterable/` was built on 2026-05-14T15:50:39.403Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/bfl-silk-handspun.jpg" alt="a spinning wheel bobbin full of undyed white handspun yarn in about a sport or DK weight." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/bfl-silk-handspun.jpg" alt="a spinning wheel bobbin full of undyed white handspun yarn in about a sport or DK weight." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/bfl-silk-handspun.jpg" alt="a spinning wheel bobbin full of undyed white handspun yarn in about a sport or DK weight." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/bfl-silk-handspun.jpg" alt="a spinning wheel bobbin full of undyed white handspun yarn in about a sport or DK weight." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<p>Fiber from <a href="https://woolgatherings.com" target="_blank" rel="external">Woolgatherings</a>. 70% Blue-Faced Leicester 30% tussah silk.</p>
|
<p>Fiber from <a href="https://woolgatherings.com" target="_blank" rel="external">Woolgatherings</a>. 70% Blue-Faced Leicester 30% tussah silk.</p>
|
||||||
@@ -1595,6 +1597,20 @@ if (window.innerWidth > 650) {
|
|||||||
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/orion-handspun/">
|
||||||
|
<h2 data-ha-exclude="" id="orion-handspun">orion handspun </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>yarn</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/orion-handspun.jpg" alt="3 skeins of handspun yarn, 1 large and 2 small. One of the small skeins is a little more inconsistent weight than the other two - this one was spun on drop spindle about 2 years ago. The other two are about a sport or maybe a DK weight. All three are a gold colorway with tiny hints of orange and a pale light green." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/handspun-yarn-in-party-mix-and-orange-gold/">
|
<a class="postlink" href="/handspun-yarn-in-party-mix-and-orange-gold/">
|
||||||
<h2 data-ha-exclude="" id="handspun-yarn-in-party-mix-and-orange-gold">handspun yarn in party mix and orange-gold </h2>
|
<h2 data-ha-exclude="" id="handspun-yarn-in-party-mix-and-orange-gold">handspun yarn in party mix and orange-gold </h2>
|
||||||
@@ -1610,29 +1626,15 @@ if (window.innerWidth > 650) {
|
|||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/petrichor-handspun/">
|
<a class="postlink" href="/hand-dyed-gold-handspun/">
|
||||||
<h2 data-ha-exclude="" id="petrichor-handspun">petrichor handspun </h2>
|
<h2 data-ha-exclude="" id="hand-dyed-gold-handspun">hand-dyed gold handspun </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>yarn</li>
|
<li>yarn</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/petrichor-handspun.jpg" alt="3 skeins of handspun yarn, 2 large and 1 small. the large ones are a rich earth-tone blend of reds, pinks, browns, and hints of green and gold. the smaller skein is similar but with a decidedly greener hue" loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/gold-handspun.jpg" alt="3 skeins, one small and two large, of a rich golden-orange handspun with light tonal effects, in about a DK weight" loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/light-grey-jacobs-handspun/">
|
|
||||||
<h2 data-ha-exclude="" id="light-grey-jacobs-handspun">light grey jacobs handspun </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>yarn</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/light-grey-jacobs.jpg" alt="a skein of light grey handspun yarn" loading="lazy" decoding="async" width="1000" height="666">
|
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1668,6 +1670,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/bfl-silk-handspun/` was built on 2026-05-14T03:50:32.000Z -->
|
<!-- This page `/bfl-silk-handspun/` was built on 2026-05-14T15:50:39.421Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+14
-22
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1560,7 +1562,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/big-pidge-print.jpg" alt="A block print of a superb speciman of pigeon, inked mostly in black but with patches of green, blue, and purple to indicate iridescence." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/big-pidge-print.jpg" alt="A block print of a superb speciman of pigeon, inked mostly in black but with patches of green, blue, and purple to indicate iridescence." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/big-pidge-print.jpg" alt="A block print of a superb speciman of pigeon, inked mostly in black but with patches of green, blue, and purple to indicate iridescence." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/big-pidge-print.jpg" alt="A block print of a superb speciman of pigeon, inked mostly in black but with patches of green, blue, and purple to indicate iridescence." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<p>A large, <em>large</em> pigeon. Based on a fantastic photograph by <a href="https://studiochris.us/" target="_blank" rel="external">Chris Price</a>.</p>
|
<p>A large, <em>large</em> pigeon. Based on a fantastic photograph by <a href="https://studiochris.us/" target="_blank" rel="external">Chris Price</a>.</p>
|
||||||
@@ -1613,30 +1615,26 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/queer/">
|
<a class="postlink" href="/trans-the-world/">
|
||||||
<h2 data-ha-exclude="" id="queer">queer </h2>
|
<h2 data-ha-exclude="" id="trans-the-world">trans the world </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
<li>card</li>
|
<li>shirt</li>
|
||||||
|
|
||||||
<li>sticker</li>
|
|
||||||
|
|
||||||
<li>pin</li>
|
|
||||||
|
|
||||||
<li>gender</li>
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/queer-print.jpg" alt="A print of the word queer in black ink. The letters are rounded with elongated oval negative space." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/trans-the-world-print.jpg" alt="A print that reads 'trans the world' surrounding an image of a globe and a trans symbol. It's in a ping-to-blue gradient." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/lupine/">
|
<a class="postlink" href="/heron/">
|
||||||
<h2 data-ha-exclude="" id="lupine">lupine </h2>
|
<h2 data-ha-exclude="" id="heron">heron </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
@@ -1647,29 +1645,23 @@ if (window.innerWidth > 650) {
|
|||||||
<li>shirt</li>
|
<li>shirt</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/lupine-prints.jpg" alt="6 versions of a print of lupine flowers with the leaves inked in light green and the blossoms inked in a variety of blues, purples, and pinks." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/heron-print.jpg" alt="A print in black ink of a great blue heron, leaning downwards so that eir beak is level with eir feet." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/trans-wrongs-skull/">
|
<a class="postlink" href="/hair/">
|
||||||
<h2 data-ha-exclude="" id="trans-wrongs-skull">trans wrongs skull </h2>
|
<h2 data-ha-exclude="" id="hair">hair </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
<li>card</li>
|
|
||||||
|
|
||||||
<li>sticker</li>
|
|
||||||
|
|
||||||
<li>pin</li>
|
|
||||||
|
|
||||||
<li>gender</li>
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/trans-wrongs-print.jpg" alt="A smiling skull with devil horns and a little spiked tail, and a speech bubble reading 'trans wrongs!'" loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/hair-print.jpg" alt="A print in black ink of belly hair." loading="lazy" decoding="async" width="1000" height="710">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1705,6 +1697,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/big-pidge/` was built on 2026-05-14T03:50:32.007Z -->
|
<!-- This page `/big-pidge/` was built on 2026-05-14T15:50:39.435Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/transfer-wip.jpg" alt="A pink block of carving material with a printed design of a bird attached to it. The paper has been partially rubbed away (process described in this post) to reveal the inked design on the carving material." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/transfer-wip.jpg" alt="A pink block of carving material with a printed design of a bird attached to it. The paper has been partially rubbed away (process described in this post) to reveal the inked design on the carving material." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/transfer-wip.jpg" alt="A pink block of carving material with a printed design of a bird attached to it. The paper has been partially rubbed away (process described in this post) to reveal the inked design on the carving material." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/transfer-wip.jpg" alt="A pink block of carving material with a printed design of a bird attached to it. The paper has been partially rubbed away (process described in this post) to reveal the inked design on the carving material." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<h2 id="materials">materials</h2>
|
<h2 id="materials">materials</h2>
|
||||||
@@ -1636,53 +1638,51 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/greeting-loons/">
|
<a class="postlink" href="/anarchy-autism/">
|
||||||
<h2 data-ha-exclude="" id="greeting-loons">greeting loons </h2>
|
<h2 data-ha-exclude="" id="anarchy-autism">anarchy autism </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>sticker</li>
|
||||||
|
|
||||||
|
<li>shirt</li>
|
||||||
|
|
||||||
|
<li>pin</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/anarchy-autism-rainbow-print.jpg" alt="A print in rainbow ink that says autism with the anarchy A." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/tiny-portraits/">
|
||||||
|
<h2 data-ha-exclude="" id="tiny-portraits">tiny portraits </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/tiny-portrait-stamps.jpg" alt="A collage showing various small (around an inch) stamps that depict people or animals." loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/junco/">
|
||||||
|
<h2 data-ha-exclude="" id="junco">junco </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
<li>card</li>
|
<li>card</li>
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>highlight</li>
|
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/greeting-loons.jpg" alt="A pile of hand-printed A2 size greeting cards. A loon rearing up with outstretched wings spans the front and back of the cards." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/junco-print.jpg" alt="A print of a junco mid-takeoff from a branch. Eir head is inked in black, body in gray, and the branch in sepia." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/luminescent/">
|
|
||||||
<h2 data-ha-exclude="" id="luminescent-mature">luminescent (mature)</h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>gender</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/luminescent-print.jpg" alt="A print of a tattooed woman in bright highlighter yellow underwear." class="blur" loading="lazy" decoding="async" width="900" height="1200">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/kestrel-zine/">
|
|
||||||
<h2 data-ha-exclude="" id="kestrel-zine">kestrel zine </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>zine</li>
|
|
||||||
|
|
||||||
<li>highlight</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/kestrel-zine.jpg" alt="A 5 photo collage showing the front and back cover as well as 3 full spreads of a folded zine about Kestrel, my dog, who is a 65lb Malinois with a goofy smile and floppy ears. it is printed in two layers of color, blue and orange, and each image depicts Kestrel in various posts... alert and watchful, resting, looking mopey, wearing a sweatshirt." loading="lazy" decoding="async" width="1000" height="1000">
|
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1718,6 +1718,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/block-printing-transfer-method/` was built on 2026-05-14T03:50:32.006Z -->
|
<!-- This page `/block-printing-transfer-method/` was built on 2026-05-14T15:50:39.434Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/blue-brown-leather-journal.jpg" alt="A three panel collage showcasing a blue and brown leather-covered journal." loading="lazy" decoding="async" width="1000" height="1776">
|
<img class="modal-img" src="/img/blue-brown-leather-journal.jpg" alt="A three panel collage showcasing a blue and brown leather-covered journal." loading="lazy" decoding="async" width="1000" height="1776">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/blue-brown-leather-journal.jpg" alt="A three panel collage showcasing a blue and brown leather-covered journal." loading="lazy" decoding="async" width="1000" height="1776">
|
<img class="hero" src="/img/blue-brown-leather-journal.jpg" alt="A three panel collage showcasing a blue and brown leather-covered journal." loading="lazy" decoding="async" width="1000" height="1776">
|
||||||
|
|
||||||
|
|
||||||
<p>A two-tone blue and brown leather journal closed by a button. The inside front cover has a small pocket.</p>
|
<p>A two-tone blue and brown leather journal closed by a button. The inside front cover has a small pocket.</p>
|
||||||
@@ -1612,43 +1614,45 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/square-watercolor-pad/">
|
<a class="postlink" href="/brookes-notebook/">
|
||||||
<h2 data-ha-exclude="" id="square-watercolor-pad">square watercolor pad </h2>
|
<h2 data-ha-exclude="" id="brookes-notebook">brooke's notebook </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>book</li>
|
<li>book</li>
|
||||||
|
|
||||||
|
<li>highlight</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/square-watercolor-pad.jpg" alt="A two panel collage showing a square book with a tan cover and blue and gold endpapers." loading="lazy" decoding="async" width="1000" height="1331">
|
<img src="/img/brooke-notebook.jpg" alt="A six panel collage showing the covers, endpapers, and some of the pages of a notebook." loading="lazy" decoding="async" width="1000" height="1500">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/leather-strap-journal/">
|
<a class="postlink" href="/orange-green-journal/">
|
||||||
<h2 data-ha-exclude="" id="leather-strap-journal">leather strap journal </h2>
|
<h2 data-ha-exclude="" id="orange-green-journal">orange green journal </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>book</li>
|
<li>book</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/leather-strap-journal.jpg" alt="A 3-part collage showing a blue journal with leather straps woven into the covers." loading="lazy" decoding="async" width="1000" height="1000">
|
<img src="/img/orange-green-journal.jpg" alt="A 4-part collage of a slim handbound book." loading="lazy" decoding="async" width="1000" height="1777">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/baseball-journal/">
|
<a class="postlink" href="/lined-notebook/">
|
||||||
<h2 data-ha-exclude="" id="baseball-journal">baseball journal </h2>
|
<h2 data-ha-exclude="" id="lined-notebook">lined notebook </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>book</li>
|
<li>book</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/baseball-journal.jpg" alt="A 3-part collage of a leather-covered book with baseball-style stitching across the spine." loading="lazy" decoding="async" width="1000" height="1000">
|
<img src="/img/lined-notebook.jpg" alt="A three panel collage showing a the endpapers, cover, and pages of a small hardbound notebook." loading="lazy" decoding="async" width="1000" height="1776">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1684,6 +1688,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/blue-and-brown-leather-journal/` was built on 2026-05-14T03:50:31.997Z -->
|
<!-- This page `/blue-and-brown-leather-journal/` was built on 2026-05-14T15:50:39.405Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1560,7 +1562,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/booby-card.jpg" alt="A landscape-oriented white card with a two-color print of a blue-footed booby." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/booby-card.jpg" alt="A landscape-oriented white card with a two-color print of a blue-footed booby." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/booby-card.jpg" alt="A landscape-oriented white card with a two-color print of a blue-footed booby." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/booby-card.jpg" alt="A landscape-oriented white card with a two-color print of a blue-footed booby." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<p>cheeky lil congrats on the top surgery card :D</p>
|
<p>cheeky lil congrats on the top surgery card :D</p>
|
||||||
@@ -1605,24 +1607,6 @@ if (window.innerWidth > 650) {
|
|||||||
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/fat-raccoon/">
|
|
||||||
<h2 data-ha-exclude="" id="fat-raccoon">fat raccoon </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>card</li>
|
|
||||||
|
|
||||||
<li>shirt</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/fat-raccoon-print.jpg" alt="A block print in black ink of a rotund raccoon raising a welcoming paw towards the viewer." loading="lazy" decoding="async" width="1000" height="1333">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/in-the-news/">
|
<a class="postlink" href="/in-the-news/">
|
||||||
<h2 data-ha-exclude="" id="in-the-news">in the news </h2>
|
<h2 data-ha-exclude="" id="in-the-news">in the news </h2>
|
||||||
@@ -1638,17 +1622,35 @@ if (window.innerWidth > 650) {
|
|||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/five-of-them/">
|
<a class="postlink" href="/heron/">
|
||||||
<h2 data-ha-exclude="" id="five-of-them">five of them </h2>
|
<h2 data-ha-exclude="" id="heron">heron </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>card</li>
|
||||||
|
|
||||||
<li>shirt</li>
|
<li>shirt</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/five-of-them-print.jpg" alt="A block print of five mule deer grazing in a dark green field. The deer are partially negative space and partially brown ink detailing." loading="lazy" decoding="async" width="1000" height="594">
|
<img src="/img/heron-print.jpg" alt="A print in black ink of a great blue heron, leaning downwards so that eir beak is level with eir feet." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/flatfish/">
|
||||||
|
<h2 data-ha-exclude="" id="flatfish">flatfish </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>card</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/flatfish-print.jpg" alt="A print of a simple flatfish design inked in sepia." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1684,6 +1686,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/booby-congrats-on-the-top-surgery/` was built on 2026-05-14T03:50:32.032Z -->
|
<!-- This page `/booby-congrats-on-the-top-surgery/` was built on 2026-05-14T15:50:39.414Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1555,7 +1557,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/bottom-growth-prints.jpg" alt="4 copies of the same print in various color schemes, laid out in a 2x2 grid. The print shows testosterone-driven bottom growth of a clitoris. The color schemes are, clockwise from top right, brown on turquoise, red on cornsilk (muted yellow), violet on magenta, and mint green on lilac." loading="lazy" decoding="async" width="1000" height="1000">
|
<img class="modal-img" src="/img/bottom-growth-prints.jpg" alt="4 copies of the same print in various color schemes, laid out in a 2x2 grid. The print shows testosterone-driven bottom growth of a clitoris. The color schemes are, clockwise from top right, brown on turquoise, red on cornsilk (muted yellow), violet on magenta, and mint green on lilac." loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/bottom-growth-prints.jpg" alt="4 copies of the same print in various color schemes, laid out in a 2x2 grid. The print shows testosterone-driven bottom growth of a clitoris. The color schemes are, clockwise from top right, brown on turquoise, red on cornsilk (muted yellow), violet on magenta, and mint green on lilac." loading="lazy" decoding="async" width="1000" height="1000">
|
<img class="hero" src="/img/bottom-growth-prints.jpg" alt="4 copies of the same print in various color schemes, laid out in a 2x2 grid. The print shows testosterone-driven bottom growth of a clitoris. The color schemes are, clockwise from top right, brown on turquoise, red on cornsilk (muted yellow), violet on magenta, and mint green on lilac." loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
|
|
||||||
<p>Celebration of testosterone-driven bottom growth. Submitted for T! the Zine.</p>
|
<p>Celebration of testosterone-driven bottom growth. Submitted for T! the Zine.</p>
|
||||||
@@ -1601,44 +1603,8 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/girldick/">
|
<a class="postlink" href="/junco/">
|
||||||
<h2 data-ha-exclude="" id="girldick-mature">girldick (mature)</h2>
|
<h2 data-ha-exclude="" id="junco">junco </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>sticker</li>
|
|
||||||
|
|
||||||
<li>shirt</li>
|
|
||||||
|
|
||||||
<li>pin</li>
|
|
||||||
|
|
||||||
<li>gender</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/girldick-shirt.jpg" alt="A butch cooking and wearing a cropped tee with blue cap sleeves that reads girldick in blue G.I.Joe font." class="blur" loading="lazy" decoding="async" width="1000" height="750">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/fix-your-hearts/">
|
|
||||||
<h2 data-ha-exclude="" id="fix-your-hearts">fix your hearts </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/fix-your-hearts-print.jpg" alt="2 copies of the same print, one in black ink and one in dark teal. The print is text that reads 'fix your hearts or die', with the text shaped into a somewhat long and narrow heart." loading="lazy" decoding="async" width="1000" height="750">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/coming-out/">
|
|
||||||
<h2 data-ha-exclude="" id="coming-out">coming out </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
@@ -1646,10 +1612,38 @@ if (window.innerWidth > 650) {
|
|||||||
|
|
||||||
<li>card</li>
|
<li>card</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/junco-print.jpg" alt="A print of a junco mid-takeoff from a branch. Eir head is inked in black, body in gray, and the branch in sepia." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/fishhook-pride-keychains/">
|
||||||
|
<h2 data-ha-exclude="" id="fishhook-pride-keychains">fishhook pride keychains </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>leather</li>
|
||||||
|
|
||||||
<li>gender</li>
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/coming-out-card-print.jpg" alt="A card and print in the same design - a chick and a broken eggshell, and a simple font reading 'congrats on coming out of your shell'" loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/fishhook-keychain-nonbinary.jpg" alt="a keychain with an iridescent fishhook style attachment linked via leather to an iridescent keyring. the leather is stitched with nonbinary flag colors." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/networks-of-trans-care/">
|
||||||
|
<h2 data-ha-exclude="" id="networks-of-trans-care">networks of trans care </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>gender</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/mushrooms-and-moss.jpg" alt="Image unrelated to post. Close up on a cluster of orange-brown mushrooms on a mossy tree trunk." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1685,6 +1679,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/bottom-growth/` was built on 2026-05-14T03:50:32.029Z -->
|
<!-- This page `/bottom-growth/` was built on 2026-05-14T15:50:39.409Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+15
-11
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/bowtie.jpg" alt="A black leather bow tie with black stitching." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/bowtie.jpg" alt="A black leather bow tie with black stitching." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/bowtie.jpg" alt="A black leather bow tie with black stitching." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/bowtie.jpg" alt="A black leather bow tie with black stitching." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<p>Handstitched leather bowtie with standard clasp.</p>
|
<p>Handstitched leather bowtie with standard clasp.</p>
|
||||||
@@ -1596,43 +1598,45 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/makers-mark-keychain/">
|
<a class="postlink" href="/gradient-purse-strap/">
|
||||||
<h2 data-ha-exclude="" id="makers-mark-keychain">maker's mark keychain </h2>
|
<h2 data-ha-exclude="" id="gradient-purse-strap">gradient purse strap </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/makers-mark-keychain.jpg" alt="A keychain on an iridescent rainbow split ring. It is dark brown/grey leather and has LEE CAT ART stamped into it." loading="lazy" decoding="async" width="1000" height="1333">
|
<img src="/img/gradient-purse-strap.jpg" alt="a coiled up purse strap in gradient cool colors - we can see green, teal, indigo, and a slightly pinkish purple. It has brass hardware and is stiched along its length with cream stitches." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/brookes-suspenders/">
|
<a class="postlink" href="/fishhook-pride-keychains/">
|
||||||
<h2 data-ha-exclude="" id="brookes-suspenders">brooke's suspenders </h2>
|
<h2 data-ha-exclude="" id="fishhook-pride-keychains">fishhook pride keychains </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/brooke-suspenders.jpg" alt="a two image collage showing the front and back of a person, neck to waist. she's wearing leather suspenders with a button attachment, buckles for adjustment, and a stitched diamond where the straps cross in the back." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/fishhook-keychain-nonbinary.jpg" alt="a keychain with an iridescent fishhook style attachment linked via leather to an iridescent keyring. the leather is stitched with nonbinary flag colors." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/rachels-bracelets/">
|
<a class="postlink" href="/brookes-cuff-bracelets/">
|
||||||
<h2 data-ha-exclude="" id="rachels-bracelets">rachel's bracelets </h2>
|
<h2 data-ha-exclude="" id="brookes-cuff-bracelets">brooke's cuff bracelets </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/rachel-bracelets.jpg" alt="Two pink leather bracelets with stainless steel hardware and aqua stitching." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/brooke-cuffs.jpg" alt="Olive green leather cuffs with silver spikes and a shearling lining." loading="lazy" decoding="async" width="900" height="1200">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1668,6 +1672,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/bowtie/` was built on 2026-05-14T03:50:32.030Z -->
|
<!-- This page `/bowtie/` was built on 2026-05-14T15:50:39.411Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+28
-28
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1570,7 +1572,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/boypussy-shirt.jpg" alt="A butch holding a chainsaw and wearing a tank top that reads boypussy in pink Barbie font." loading="lazy" decoding="async" width="1000" height="1250">
|
<img class="modal-img" src="/img/boypussy-shirt.jpg" alt="A butch holding a chainsaw and wearing a tank top that reads boypussy in pink Barbie font." loading="lazy" decoding="async" width="1000" height="1250">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/boypussy-shirt.jpg" alt="A butch holding a chainsaw and wearing a tank top that reads boypussy in pink Barbie font." loading="lazy" decoding="async" width="1000" height="1250">
|
<img class="hero" src="/img/boypussy-shirt.jpg" alt="A butch holding a chainsaw and wearing a tank top that reads boypussy in pink Barbie font." loading="lazy" decoding="async" width="1000" height="1250">
|
||||||
|
|
||||||
|
|
||||||
<p>To order this as a shirt, please fill out <s>the order form</s> (Sep 2024: no longer taking orders via this method).</p>
|
<p>To order this as a shirt, please fill out <s>the order form</s> (Sep 2024: no longer taking orders via this method).</p>
|
||||||
@@ -1623,8 +1625,26 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/seedling/">
|
<a class="postlink" href="/heron/">
|
||||||
<h2 data-ha-exclude="" id="seedling">seedling </h2>
|
<h2 data-ha-exclude="" id="heron">heron </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>card</li>
|
||||||
|
|
||||||
|
<li>shirt</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/heron-print.jpg" alt="A print in black ink of a great blue heron, leaning downwards so that eir beak is level with eir feet." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/congrats-on-the-autism-adhd/">
|
||||||
|
<h2 data-ha-exclude="" id="congrats-on-the-autism-adhd">congrats on the autism/adhd </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
@@ -1633,41 +1653,21 @@ if (window.innerWidth > 650) {
|
|||||||
<li>card</li>
|
<li>card</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/seedling-print.jpg" alt="A print of a 3-stage design of a green seedling barely open, starting to straighten up, and growing strong, with little piles of dirt beneath each one." loading="lazy" decoding="async" width="1000" height="1333">
|
<img src="/img/congrats-on-the.jpg" alt="4 greeting cards propped up on a keyboard. On the right hand side, two cards read 'Congrats on the Autism'; one in rainbow ink and one in black ink with a glittery gold shadow. On the left, two cards read 'Congrats on the ADHD'; one in red and one in black, both with glittery pink shadows." loading="lazy" decoding="async" width="1000" height="562">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/hair/">
|
<a class="postlink" href="/tiny-portraits/">
|
||||||
<h2 data-ha-exclude="" id="hair">hair </h2>
|
<h2 data-ha-exclude="" id="tiny-portraits">tiny portraits </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
<li>gender</li>
|
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/hair-print.jpg" alt="A print in black ink of belly hair." loading="lazy" decoding="async" width="1000" height="710">
|
<img src="/img/tiny-portrait-stamps.jpg" alt="A collage showing various small (around an inch) stamps that depict people or animals." loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/slightly-weird-man-club/">
|
|
||||||
<h2 data-ha-exclude="" id="slightly-weird-man-club">slightly weird man club </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>shirt</li>
|
|
||||||
|
|
||||||
<li>gender</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/slightly-weird-man-club-print.jpg" alt="A print that reads 'slightly weird man club' in a nonbinary flag colored gradient" loading="lazy" decoding="async" width="1000" height="750">
|
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1703,6 +1703,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/boypussy/` was built on 2026-05-14T03:50:32.013Z -->
|
<!-- This page `/boypussy/` was built on 2026-05-14T15:50:39.439Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/lined-shearling-collar.jpg" alt="A green leather collar lined with brown/grey shearling and fitted with two sizes of silver-toned spikes." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/lined-shearling-collar.jpg" alt="A green leather collar lined with brown/grey shearling and fitted with two sizes of silver-toned spikes." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/lined-shearling-collar.jpg" alt="A green leather collar lined with brown/grey shearling and fitted with two sizes of silver-toned spikes." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/lined-shearling-collar.jpg" alt="A green leather collar lined with brown/grey shearling and fitted with two sizes of silver-toned spikes." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<p>3/4" wide collar with stainless/nickel fittings.</p>
|
<p>3/4" wide collar with stainless/nickel fittings.</p>
|
||||||
@@ -1596,43 +1598,43 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/rachels-bracelets/">
|
<a class="postlink" href="/zipper-bifold-green/">
|
||||||
<h2 data-ha-exclude="" id="rachels-bracelets">rachel's bracelets </h2>
|
<h2 data-ha-exclude="" id="zipper-bifold-green">zipper bifold (green) </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/rachel-bracelets.jpg" alt="Two pink leather bracelets with stainless steel hardware and aqua stitching." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/zipper-bifold-green.jpg" alt="A collage showing a green leather wallet with a zippered pocket built into one external side." loading="lazy" decoding="async" width="1000" height="1332">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/circle-bag/">
|
<a class="postlink" href="/aarons-mask/">
|
||||||
<h2 data-ha-exclude="" id="circle-bag">circle bag </h2>
|
<h2 data-ha-exclude="" id="aarons-mask">aaron's mask </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/circle-bag.jpg" alt="A round bag in brown, mustard yellow, and rich deep orange, with a teal shoulder strap." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/aaron-mask.jpg" alt="A brown/grey leather mask of a long snouted dog with visible teeth and red detailing." loading="lazy" decoding="async" width="900" height="1200">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/patchwork-wallet/">
|
<a class="postlink" href="/leather-keychains/">
|
||||||
<h2 data-ha-exclude="" id="patchwork-wallet">patchwork wallet </h2>
|
<h2 data-ha-exclude="" id="leather-keychains">leather keychains </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/patchwork-wallet.jpg" alt="A collage showing a wallet in a patchwork style, with different colors of leather all stitched together to make up the exterior and the top interior pockets. Other pockets inside are dyed various colors." loading="lazy" decoding="async" width="1000" height="1000">
|
<img src="/img/leather-keychains.jpg" alt="A picture of multiple leather keychains sitting on a wood table. Many of them are simple rectangle shapes with stitching around the edge; a few are odd wavy or geometric shapes. A few say things like 'MOM' or 'EGG'." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1668,6 +1670,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/brookes-collar/` was built on 2026-05-14T03:50:32.021Z -->
|
<!-- This page `/brookes-collar/` was built on 2026-05-14T15:50:39.442Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/brooke-cuffs.jpg" alt="Olive green leather cuffs with silver spikes and a shearling lining." loading="lazy" decoding="async" width="900" height="1200">
|
<img class="modal-img" src="/img/brooke-cuffs.jpg" alt="Olive green leather cuffs with silver spikes and a shearling lining." loading="lazy" decoding="async" width="900" height="1200">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/brooke-cuffs.jpg" alt="Olive green leather cuffs with silver spikes and a shearling lining." loading="lazy" decoding="async" width="900" height="1200">
|
<img class="hero" src="/img/brooke-cuffs.jpg" alt="Olive green leather cuffs with silver spikes and a shearling lining." loading="lazy" decoding="async" width="900" height="1200">
|
||||||
|
|
||||||
|
|
||||||
<p>To match <a href="brooke-collar">brooke's collar</a>.</p>
|
<p>To match <a href="brooke-collar">brooke's collar</a>.</p>
|
||||||
@@ -1596,43 +1598,43 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/leatherworking-favorites/">
|
<a class="postlink" href="/shrimp-cat-toy/">
|
||||||
<h2 data-ha-exclude="" id="leatherworking-favorites">leatherworking favorites </h2>
|
<h2 data-ha-exclude="" id="shrimp-cat-toy">shrimp cat toy </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/leather-harness-wip.jpg" alt="two pieces of a chest harness sitting on a messy workbench. both pieces are about 8 inches long total and consist of two large o-rings joined by a dark teal leather strap. the o rings and rivets are matte black." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/two-shrimp.jpg" alt="Two leather shrimp-shaped cat toys. They have long dangly antennae and are stitched in red and orange." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/foldy-wallet/">
|
<a class="postlink" href="/vertical-card-wallet/">
|
||||||
<h2 data-ha-exclude="" id="foldy-wallet">foldy wallet </h2>
|
<h2 data-ha-exclude="" id="vertical-card-wallet">vertical card wallet </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/foldy-wallet.jpg" alt="A four part collage showing a single piece of deep red leather folding up to become a card wallet." loading="lazy" decoding="async" width="1000" height="1000">
|
<img src="/img/vertical-card-wallet.jpg" alt="A collage showing a hand-stitched leather card wallet with 3 card pockets and 1 interior pocket." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/soras-collar/">
|
<a class="postlink" href="/pinatex-wallet-with-zipper/">
|
||||||
<h2 data-ha-exclude="" id="soras-collar">sora's collar </h2>
|
<h2 data-ha-exclude="" id="pinatex-wallet-with-zipper">piñatex wallet with zipper </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/sora-collar.jpg" alt="A collage showing a red and black leather dog collar tooled with roses and the name Sora. It's fully stitched with dark red stitching and has brass hardware." loading="lazy" decoding="async" width="1000" height="1000">
|
<img src="/img/pinatex-ten-pocket-bifold.jpg" alt="A two-picture collage showing the inside and outside of a wallet made with piñatex, a leather alternative made from pineapple leaves. It is two tone blue with a pink accent and has a zippered pocket built in." loading="lazy" decoding="async" width="1000" height="1331">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1668,6 +1670,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/brookes-cuff-bracelets/` was built on 2026-05-14T03:50:32.029Z -->
|
<!-- This page `/brookes-cuff-bracelets/` was built on 2026-05-14T15:50:39.409Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1555,7 +1557,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/brooke-notebook.jpg" alt="A six panel collage showing the covers, endpapers, and some of the pages of a notebook." loading="lazy" decoding="async" width="1000" height="1500">
|
<img class="modal-img" src="/img/brooke-notebook.jpg" alt="A six panel collage showing the covers, endpapers, and some of the pages of a notebook." loading="lazy" decoding="async" width="1000" height="1500">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/brooke-notebook.jpg" alt="A six panel collage showing the covers, endpapers, and some of the pages of a notebook." loading="lazy" decoding="async" width="1000" height="1500">
|
<img class="hero" src="/img/brooke-notebook.jpg" alt="A six panel collage showing the covers, endpapers, and some of the pages of a notebook." loading="lazy" decoding="async" width="1000" height="1500">
|
||||||
|
|
||||||
|
|
||||||
<p>A collage book full of different paper, art, and more.</p>
|
<p>A collage book full of different paper, art, and more.</p>
|
||||||
@@ -1610,34 +1612,6 @@ if (window.innerWidth > 650) {
|
|||||||
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/tiny-books/">
|
|
||||||
<h2 data-ha-exclude="" id="tiny-books">tiny books </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>book</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/tiny-book.jpg" alt="A three panel collage showing a book held in the palm of a hand." loading="lazy" decoding="async" width="1000" height="1000">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/lined-notebook/">
|
|
||||||
<h2 data-ha-exclude="" id="lined-notebook">lined notebook </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>book</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/lined-notebook.jpg" alt="A three panel collage showing a the endpapers, cover, and pages of a small hardbound notebook." loading="lazy" decoding="async" width="1000" height="1776">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/orange-journal/">
|
<a class="postlink" href="/orange-journal/">
|
||||||
<h2 data-ha-exclude="" id="orange-journal">orange journal </h2>
|
<h2 data-ha-exclude="" id="orange-journal">orange journal </h2>
|
||||||
@@ -1652,6 +1626,34 @@ if (window.innerWidth > 650) {
|
|||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/orange-green-journal/">
|
||||||
|
<h2 data-ha-exclude="" id="orange-green-journal">orange green journal </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>book</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/orange-green-journal.jpg" alt="A 4-part collage of a slim handbound book." loading="lazy" decoding="async" width="1000" height="1777">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/striped-journal/">
|
||||||
|
<h2 data-ha-exclude="" id="striped-journal">striped journal </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>book</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/striped-journal.jpg" alt="A three panel collage showcasing a journal with a striped cover." loading="lazy" decoding="async" width="1000" height="1776">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
</ol>
|
</ol>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
@@ -1683,6 +1685,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/brookes-notebook/` was built on 2026-05-14T03:50:31.999Z -->
|
<!-- This page `/brookes-notebook/` was built on 2026-05-14T15:50:39.407Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/brooke-scarf.jpg" alt="A diaphanous knit lacework scarf draped over the back of a chair. It is split down the long way into two colors - one tinted orange and one tinted mint blue. Both colors, the orange and the blue, are held double with the same variegated gray, making the piece more cohesive. The yarn overs in the lacework create airy repeating holes." loading="lazy" decoding="async" width="1000" height="1333">
|
<img class="modal-img" src="/img/brooke-scarf.jpg" alt="A diaphanous knit lacework scarf draped over the back of a chair. It is split down the long way into two colors - one tinted orange and one tinted mint blue. Both colors, the orange and the blue, are held double with the same variegated gray, making the piece more cohesive. The yarn overs in the lacework create airy repeating holes." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/brooke-scarf.jpg" alt="A diaphanous knit lacework scarf draped over the back of a chair. It is split down the long way into two colors - one tinted orange and one tinted mint blue. Both colors, the orange and the blue, are held double with the same variegated gray, making the piece more cohesive. The yarn overs in the lacework create airy repeating holes." loading="lazy" decoding="async" width="1000" height="1333">
|
<img class="hero" src="/img/brooke-scarf.jpg" alt="A diaphanous knit lacework scarf draped over the back of a chair. It is split down the long way into two colors - one tinted orange and one tinted mint blue. Both colors, the orange and the blue, are held double with the same variegated gray, making the piece more cohesive. The yarn overs in the lacework create airy repeating holes." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
|
|
||||||
<h2 id="pattern">pattern</h2>
|
<h2 id="pattern">pattern</h2>
|
||||||
@@ -1602,22 +1604,6 @@ if (window.innerWidth > 650) {
|
|||||||
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/butch-hands-pattern/">
|
|
||||||
<h2 data-ha-exclude="" id="butch-hands-pattern">butch hands pattern </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>knit</li>
|
|
||||||
|
|
||||||
<li>highlight</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/butch-hands.jpg" alt="Hands wearing a pair of pink and grey gloves with convertable mitten tops." loading="lazy" decoding="async" width="1000" height="750">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/pride-dice-bags/">
|
<a class="postlink" href="/pride-dice-bags/">
|
||||||
<h2 data-ha-exclude="" id="pride-dice-bags">pride dice bags </h2>
|
<h2 data-ha-exclude="" id="pride-dice-bags">pride dice bags </h2>
|
||||||
@@ -1635,15 +1621,31 @@ if (window.innerWidth > 650) {
|
|||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/sideways-canvas-shirt/">
|
<a class="postlink" href="/butch-hands-pattern/">
|
||||||
<h2 data-ha-exclude="" id="sideways-canvas-shirt">sideways canvas shirt </h2>
|
<h2 data-ha-exclude="" id="butch-hands-pattern">butch hands pattern </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>knit</li>
|
||||||
|
|
||||||
|
<li>highlight</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/butch-hands.jpg" alt="Hands wearing a pair of pink and grey gloves with convertable mitten tops." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/keffiyah-fishing-net-pattern/">
|
||||||
|
<h2 data-ha-exclude="" id="keffiyah-fishing-net-pattern">keffiyah fishing net pattern </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>knit</li>
|
<li>knit</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/sideways-canvas.jpg" alt="someone's torso in a knitted short sleeve shirt. the front is teal, and the bit of back we can see is mustard yellow. looking closely, it's notable that the stitches are turned 90 degrees from a standard knit garment." loading="lazy" decoding="async" width="1000" height="1338">
|
<img src="/img/keffiyah-nets.jpg" alt="a knitted swatch. it's mostly white yarn, but a grid of dark red- purple- green yarn that looks like a chain link fence is built into it. the diagonal lines are achieved with floats of yarn from one row, then picked up and knit into several rows later." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1679,6 +1681,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/brookes-scarf/` was built on 2026-05-14T03:50:32.026Z -->
|
<!-- This page `/brookes-scarf/` was built on 2026-05-14T15:50:39.431Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/brooke-socks.jpg" alt="Feet in a pair of colorful socks. They are identically striped and quickly vary between yellow, green, blue, white, and gray." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/brooke-socks.jpg" alt="Feet in a pair of colorful socks. They are identically striped and quickly vary between yellow, green, blue, white, and gray." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/brooke-socks.jpg" alt="Feet in a pair of colorful socks. They are identically striped and quickly vary between yellow, green, blue, white, and gray." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/brooke-socks.jpg" alt="Feet in a pair of colorful socks. They are identically striped and quickly vary between yellow, green, blue, white, and gray." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<p>My second pair of socks, knit for my partner. They use <a href="https://www.schoppel-wolle.de/" target="_blank" rel="external">Schoppel-Wolle</a> Das Paar yarn in the colorway Fruhjahrsputz / Spring Cleaning. This yarn is designed to produce identical striping for each sock, and it very nearly did, with only a tiny discrepancy notable as I got to the toes.</p>
|
<p>My second pair of socks, knit for my partner. They use <a href="https://www.schoppel-wolle.de/" target="_blank" rel="external">Schoppel-Wolle</a> Das Paar yarn in the colorway Fruhjahrsputz / Spring Cleaning. This yarn is designed to produce identical striping for each sock, and it very nearly did, with only a tiny discrepancy notable as I got to the toes.</p>
|
||||||
@@ -1596,22 +1598,22 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/keffiyah-fishing-net-pattern/">
|
<a class="postlink" href="/acadia-mitts/">
|
||||||
<h2 data-ha-exclude="" id="keffiyah-fishing-net-pattern">keffiyah fishing net pattern </h2>
|
<h2 data-ha-exclude="" id="acadia-mitts">acadia mitts </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>knit</li>
|
<li>knit</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/keffiyah-nets.jpg" alt="a knitted swatch. it's mostly white yarn, but a grid of dark red- purple- green yarn that looks like a chain link fence is built into it. the diagonal lines are achieved with floats of yarn from one row, then picked up and knit into several rows later." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/acadia-mitts.jpg" alt="a hand wearing a knitted fingerless mitten. it's knit in a slubby, almost tweedy yarn, with the body being blue grey stockinette and the cuffs and tips a vibrant green rib." loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/butch-hands-pattern/">
|
<a class="postlink" href="/textures-unite/">
|
||||||
<h2 data-ha-exclude="" id="butch-hands-pattern">butch hands pattern </h2>
|
<h2 data-ha-exclude="" id="textures-unite">textures unite </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
@@ -1620,23 +1622,21 @@ if (window.innerWidth > 650) {
|
|||||||
<li>highlight</li>
|
<li>highlight</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/butch-hands.jpg" alt="Hands wearing a pair of pink and grey gloves with convertable mitten tops." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/textures-unite.jpg" alt="a largely unseen person holds up an expansive knitted shawl, built in 6 sections of different textures and colors. in the background, trees and dappled sunlight." loading="lazy" decoding="async" width="1000" height="1334">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/on-the-shoulders-of-giants/">
|
<a class="postlink" href="/brookes-scarf/">
|
||||||
<h2 data-ha-exclude="" id="on-the-shoulders-of-giants">on the shoulders of giants </h2>
|
<h2 data-ha-exclude="" id="brookes-scarf">brooke's scarf </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>zine</li>
|
|
||||||
|
|
||||||
<li>knit</li>
|
<li>knit</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/on-the-shoulders.jpg" alt="ok so. five image collage showing the front, 3 inner spreads, and back of a riso-printed zine in green and light blue. it's called 'on the shoulders of giants' and it's about a knitting technique I learned from Stephen west and how I built on that technique. it talks about joining two adjacent panels without seaming, instead knitting the second panel onto the selvedge of the first. then it uses that technique to approach two panels knit with significantly different weights of yarn" loading="lazy" decoding="async" width="1000" height="1000">
|
<img src="/img/brooke-scarf.jpg" alt="A diaphanous knit lacework scarf draped over the back of a chair. It is split down the long way into two colors - one tinted orange and one tinted mint blue. Both colors, the orange and the blue, are held double with the same variegated gray, making the piece more cohesive. The yarn overs in the lacework create airy repeating holes." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1672,6 +1672,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/brookes-socks/` was built on 2026-05-14T03:50:31.998Z -->
|
<!-- This page `/brookes-socks/` was built on 2026-05-14T15:50:39.407Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/brooke-suspenders.jpg" alt="a two image collage showing the front and back of a person, neck to waist. she's wearing leather suspenders with a button attachment, buckles for adjustment, and a stitched diamond where the straps cross in the back." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/brooke-suspenders.jpg" alt="a two image collage showing the front and back of a person, neck to waist. she's wearing leather suspenders with a button attachment, buckles for adjustment, and a stitched diamond where the straps cross in the back." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/brooke-suspenders.jpg" alt="a two image collage showing the front and back of a person, neck to waist. she's wearing leather suspenders with a button attachment, buckles for adjustment, and a stitched diamond where the straps cross in the back." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/brooke-suspenders.jpg" alt="a two image collage showing the front and back of a person, neck to waist. she's wearing leather suspenders with a button attachment, buckles for adjustment, and a stitched diamond where the straps cross in the back." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<p>for our 3 year anniversary :)</p>
|
<p>for our 3 year anniversary :)</p>
|
||||||
@@ -1596,45 +1598,45 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/proud-dad-wallet/">
|
<a class="postlink" href="/bag-strap/">
|
||||||
<h2 data-ha-exclude="" id="proud-dad-wallet">proud dad wallet </h2>
|
<h2 data-ha-exclude="" id="bag-strap">bag strap </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
<li>gender</li>
|
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/proud-dad-wallet.jpg" alt="A brown leather wallet with a subtle trans flag stitching across the top." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/bag-strap.jpg" alt="A nylon webbing shoulder strap in bright teal with clips on each end." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/foldy-wallet/">
|
<a class="postlink" href="/leather-long-stitch-journals/">
|
||||||
<h2 data-ha-exclude="" id="foldy-wallet">foldy wallet </h2>
|
<h2 data-ha-exclude="" id="leather-long-stitch-journals">leather long-stitch journals </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
|
<li>book</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/foldy-wallet.jpg" alt="A four part collage showing a single piece of deep red leather folding up to become a card wallet." loading="lazy" decoding="async" width="1000" height="1000">
|
<img src="/img/long-stitch-journals.jpg" alt="A stack of hand-bound journals showing long stitches aligned with the spines. They are leather bound and have tie closures." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/pinatex-wallet-with-zipper/">
|
<a class="postlink" href="/snap-pouch/">
|
||||||
<h2 data-ha-exclude="" id="pinatex-wallet-with-zipper">piñatex wallet with zipper </h2>
|
<h2 data-ha-exclude="" id="snap-pouch">snap pouch </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/pinatex-ten-pocket-bifold.jpg" alt="A two-picture collage showing the inside and outside of a wallet made with piñatex, a leather alternative made from pineapple leaves. It is two tone blue with a pink accent and has a zippered pocket built in." loading="lazy" decoding="async" width="1000" height="1331">
|
<img src="/img/snap-pouches.jpg" alt="4 square pouches that close with snaps. 2 have loops that attach keyrings. They are in various colors of leather." loading="lazy" decoding="async" width="900" height="1200">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1670,6 +1672,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/brookes-suspenders/` was built on 2026-05-14T03:50:32.026Z -->
|
<!-- This page `/brookes-suspenders/` was built on 2026-05-14T15:50:39.431Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/brown-creeper-print.jpg" alt="2 copies of the same print side by side. In yellow, black, and purple ink, a brown creeper, a small bird, is depicted, well camouflaged against a tree trunk." loading="lazy" decoding="async" width="1000" height="1000">
|
<img class="modal-img" src="/img/brown-creeper-print.jpg" alt="2 copies of the same print side by side. In yellow, black, and purple ink, a brown creeper, a small bird, is depicted, well camouflaged against a tree trunk." loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/brown-creeper-print.jpg" alt="2 copies of the same print side by side. In yellow, black, and purple ink, a brown creeper, a small bird, is depicted, well camouflaged against a tree trunk." loading="lazy" decoding="async" width="1000" height="1000">
|
<img class="hero" src="/img/brown-creeper-print.jpg" alt="2 copies of the same print side by side. In yellow, black, and purple ink, a brown creeper, a small bird, is depicted, well camouflaged against a tree trunk." loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
|
|
||||||
<p>Created for <a href="https://www.pushpullseattle.com/news/stanza-2024-non-binary" target="_blank" rel="external">Stanza 2024</a>, a show highlighting nonbinary artists and poets.</p>
|
<p>Created for <a href="https://www.pushpullseattle.com/news/stanza-2024-non-binary" target="_blank" rel="external">Stanza 2024</a>, a show highlighting nonbinary artists and poets.</p>
|
||||||
@@ -1597,40 +1599,8 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/five-of-them/">
|
<a class="postlink" href="/artisans-cooperative-cards/">
|
||||||
<h2 data-ha-exclude="" id="five-of-them">five of them </h2>
|
<h2 data-ha-exclude="" id="artisans-cooperative-cards">artisans cooperative cards </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>shirt</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/five-of-them-print.jpg" alt="A block print of five mule deer grazing in a dark green field. The deer are partially negative space and partially brown ink detailing." loading="lazy" decoding="async" width="1000" height="594">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/hair/">
|
|
||||||
<h2 data-ha-exclude="" id="hair">hair </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>gender</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/hair-print.jpg" alt="A print in black ink of belly hair." loading="lazy" decoding="async" width="1000" height="710">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/trans-wrongs-skull/">
|
|
||||||
<h2 data-ha-exclude="" id="trans-wrongs-skull">trans wrongs skull </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
@@ -1638,14 +1608,44 @@ if (window.innerWidth > 650) {
|
|||||||
|
|
||||||
<li>card</li>
|
<li>card</li>
|
||||||
|
|
||||||
<li>sticker</li>
|
</ul>
|
||||||
|
<img src="/img/artisans-coop-cards.jpg" alt="2 white greeting cards with the Artisans Cooperative logo, a chicken. One card has a single print of the chicken in black ink, and the other has two overlapping prints in blue and red ink" loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/hummingbird-become-ungovernable/">
|
||||||
|
<h2 data-ha-exclude="" id="hummingbird-become-ungovernable">hummingbird become ungovernable </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>pin</li>
|
<li>print</li>
|
||||||
|
|
||||||
<li>gender</li>
|
<li>card</li>
|
||||||
|
|
||||||
|
<li>shirt</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/trans-wrongs-print.jpg" alt="A smiling skull with devil horns and a little spiked tail, and a speech bubble reading 'trans wrongs!'" loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/hummingbird-ungovernable-print.jpg" alt="A block print in black and orange ink of a rufous hummingbird, tail flared, hovering in midair. Clutched in eir tiny claws is a banner that waves in the wind and reads 'become ungovernable'" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/swallowtail-on-snowdrops/">
|
||||||
|
<h2 data-ha-exclude="" id="swallowtail-on-snowdrops">swallowtail on snowdrops </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>card</li>
|
||||||
|
|
||||||
|
<li>shirt</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/swallowtail-on-snowdrops-print.jpg" alt="A block print of a tiger swallowtail butterfly dangling from Japanese snowdrops, a white drooping flower." loading="lazy" decoding="async" width="1000" height="1332">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1681,6 +1681,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/brown-creeper/` was built on 2026-05-14T03:50:32.033Z -->
|
<!-- This page `/brown-creeper/` was built on 2026-05-14T15:50:39.418Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1555,7 +1557,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/butch-hands.jpg" alt="Hands wearing a pair of pink and grey gloves with convertable mitten tops." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/butch-hands.jpg" alt="Hands wearing a pair of pink and grey gloves with convertable mitten tops." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/butch-hands.jpg" alt="Hands wearing a pair of pink and grey gloves with convertable mitten tops." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/butch-hands.jpg" alt="Hands wearing a pair of pink and grey gloves with convertable mitten tops." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<p>This pattern is a <strong>Work in Progress</strong> and will be updated with more information as I make a second pair of these.</p>
|
<p>This pattern is a <strong>Work in Progress</strong> and will be updated with more information as I make a second pair of these.</p>
|
||||||
@@ -1678,43 +1680,49 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/knit-shrimp/">
|
<a class="postlink" href="/gender-in-data-models/">
|
||||||
<h2 data-ha-exclude="" id="knit-shrimp">knit shrimp </h2>
|
<h2 data-ha-exclude="" id="gender-in-data-models">gender in data models </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>knit</li>
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
<li>software</li>
|
||||||
<img src="/img/knit-shrimp.jpg" alt="Four knitted shrimp in various shades of pink. They are all somewhere around hand-sized, and have little yarn antennae and leggies." loading="lazy" decoding="async" width="1000" height="750">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/happy-solstice-2025/">
|
|
||||||
<h2 data-ha-exclude="" id="happy-solstice-2025">happy solstice 2025 </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>highlight</li>
|
<li>highlight</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/solstice-2025.jpg" alt="front and back of our solstice card from this year, designed in postcard format. long alt incoming... front - 4 picture collage. 1 - i'm standing in the woods, looking to one side, wearing an elaborate knit scarf. 2 - silhouetted thistle-like flowers in front of a pink-purple sky. 3 - my wife brooke crouches down to draw a heart in charcoal on a beach log, with 'L + B' written inside. 4 - brooke stands on a driftwood-covered beach looking hella cool in mirrored shades. our dog kes stands in front of her and looks off to one side eagerly. overlaid is the words 'happy solstice' in cursive. back - split down the center like the back of a postcard. on the left side, a 5 picture collage. 1 - i stand on a rock at the edge of a calm alpine lake. overlaid is the words 'lee, brooke, kestrel, & the flock' in print lettering. 2 - an early spring fern curl. 3 - our six ducks, all facing to the left, not in a row but still very organized. 4 - brooke grins at the camera while hugging kestrel's head. kestrel looks maybe a bit distraught. 5 - silhouette of a heron in flight across an early morning blue sky. on the address side, i've added a dahlia to represent the stamp, and written 'you!' in the field that would normally hold the mailing address." loading="lazy" decoding="async" width="1000" height="1346">
|
<img src="/img/peony.jpg" alt="Image unrelated to post. A light pink peony in full bloom, close up." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/pink-socks/">
|
<a class="postlink" href="/textures-unite/">
|
||||||
<h2 data-ha-exclude="" id="pink-socks">pink socks </h2>
|
<h2 data-ha-exclude="" id="textures-unite">textures unite </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>knit</li>
|
||||||
|
|
||||||
|
<li>highlight</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/textures-unite.jpg" alt="a largely unseen person holds up an expansive knitted shawl, built in 6 sections of different textures and colors. in the background, trees and dappled sunlight." loading="lazy" decoding="async" width="1000" height="1334">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/keffiyah-fishing-net-pattern/">
|
||||||
|
<h2 data-ha-exclude="" id="keffiyah-fishing-net-pattern">keffiyah fishing net pattern </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>knit</li>
|
<li>knit</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/pink-socks.jpg" alt="Feet propped up on a car dashboard, with a desert landscape beyond. The feet are in salmon-colored socks with black flecks, and decorative lines running down the socks." loading="lazy" decoding="async" width="1000" height="1333">
|
<img src="/img/keffiyah-nets.jpg" alt="a knitted swatch. it's mostly white yarn, but a grid of dark red- purple- green yarn that looks like a chain link fence is built into it. the diagonal lines are achieved with floats of yarn from one row, then picked up and knit into several rows later." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1750,6 +1758,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/butch-hands-pattern/` was built on 2026-05-14T03:50:32.003Z -->
|
<!-- This page `/butch-hands-pattern/` was built on 2026-05-14T15:50:39.433Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1555,7 +1557,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/chanterelle-print.jpg" alt="A print of two chanterelle mushrooms inked in a dark-to-light yellow gradient." loading="lazy" decoding="async" width="1000" height="1333">
|
<img class="modal-img" src="/img/chanterelle-print.jpg" alt="A print of two chanterelle mushrooms inked in a dark-to-light yellow gradient." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/chanterelle-print.jpg" alt="A print of two chanterelle mushrooms inked in a dark-to-light yellow gradient." loading="lazy" decoding="async" width="1000" height="1333">
|
<img class="hero" src="/img/chanterelle-print.jpg" alt="A print of two chanterelle mushrooms inked in a dark-to-light yellow gradient." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
|
|
||||||
<p>Hand carved stamp based on a photo of chanterelle mushrooms.</p>
|
<p>Hand carved stamp based on a photo of chanterelle mushrooms.</p>
|
||||||
@@ -1608,49 +1610,51 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/block-printing-transfer-method/">
|
<a class="postlink" href="/luminescent/">
|
||||||
<h2 data-ha-exclude="" id="block-printing-transfer-method">block printing transfer method </h2>
|
<h2 data-ha-exclude="" id="luminescent-mature">luminescent (mature)</h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/transfer-wip.jpg" alt="A pink block of carving material with a printed design of a bird attached to it. The paper has been partially rubbed away (process described in this post) to reveal the inked design on the carving material." loading="lazy" decoding="async" width="1000" height="750">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/five-of-them/">
|
|
||||||
<h2 data-ha-exclude="" id="five-of-them">five of them </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>shirt</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/five-of-them-print.jpg" alt="A block print of five mule deer grazing in a dark green field. The deer are partially negative space and partially brown ink detailing." loading="lazy" decoding="async" width="1000" height="594">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/trans-the-world/">
|
|
||||||
<h2 data-ha-exclude="" id="trans-the-world">trans the world </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>shirt</li>
|
|
||||||
|
|
||||||
<li>gender</li>
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/trans-the-world-print.jpg" alt="A print that reads 'trans the world' surrounding an image of a globe and a trans symbol. It's in a ping-to-blue gradient." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/luminescent-print.jpg" alt="A print of a tattooed woman in bright highlighter yellow underwear." class="blur" loading="lazy" decoding="async" width="900" height="1200">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/booby-congrats-on-the-top-surgery/">
|
||||||
|
<h2 data-ha-exclude="" id="booby-congrats-on-the-top-surgery">booby (congrats on the top surgery) </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>card</li>
|
||||||
|
|
||||||
|
<li>gender</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/booby-card.jpg" alt="A landscape-oriented white card with a two-color print of a blue-footed booby." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/seedling/">
|
||||||
|
<h2 data-ha-exclude="" id="seedling">seedling </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>card</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/seedling-print.jpg" alt="A print of a 3-stage design of a green seedling barely open, starting to straighten up, and growing strong, with little piles of dirt beneath each one." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1686,6 +1690,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/chanterelle/` was built on 2026-05-14T03:50:32.003Z -->
|
<!-- This page `/chanterelle/` was built on 2026-05-14T15:50:39.433Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/charlie-alpaca-handspun.jpg" alt="one large skein (and technically a smaller skein hidden behind it) of sheen-y black alpaca handspun, in about a DK weight" loading="lazy" decoding="async" width="1000" height="666">
|
<img class="modal-img" src="/img/charlie-alpaca-handspun.jpg" alt="one large skein (and technically a smaller skein hidden behind it) of sheen-y black alpaca handspun, in about a DK weight" loading="lazy" decoding="async" width="1000" height="666">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/charlie-alpaca-handspun.jpg" alt="one large skein (and technically a smaller skein hidden behind it) of sheen-y black alpaca handspun, in about a DK weight" loading="lazy" decoding="async" width="1000" height="666">
|
<img class="hero" src="/img/charlie-alpaca-handspun.jpg" alt="one large skein (and technically a smaller skein hidden behind it) of sheen-y black alpaca handspun, in about a DK weight" loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
|
|
||||||
<p>Fiber from Circle R Ranch. 100% alpaca, from Charlie the alpaca.</p>
|
<p>Fiber from Circle R Ranch. 100% alpaca, from Charlie the alpaca.</p>
|
||||||
@@ -1595,34 +1597,6 @@ if (window.innerWidth > 650) {
|
|||||||
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/icelandic-lamb-handspun/">
|
|
||||||
<h2 data-ha-exclude="" id="icelandic-lamb-handspun">icelandic lamb handspun </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>yarn</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/icelandic-lamb.jpg" alt="a skein of black handspun yarn" loading="lazy" decoding="async" width="1000" height="666">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/hand-dyed-gold-handspun/">
|
|
||||||
<h2 data-ha-exclude="" id="hand-dyed-gold-handspun">hand-dyed gold handspun </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>yarn</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/gold-handspun.jpg" alt="3 skeins, one small and two large, of a rich golden-orange handspun with light tonal effects, in about a DK weight" loading="lazy" decoding="async" width="1000" height="666">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/spinning-plants/">
|
<a class="postlink" href="/spinning-plants/">
|
||||||
<h2 data-ha-exclude="" id="spinning-plants">spinning plants </h2>
|
<h2 data-ha-exclude="" id="spinning-plants">spinning plants </h2>
|
||||||
@@ -1637,6 +1611,34 @@ if (window.innerWidth > 650) {
|
|||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/light-grey-jacobs-handspun/">
|
||||||
|
<h2 data-ha-exclude="" id="light-grey-jacobs-handspun">light grey jacobs handspun </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>yarn</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/light-grey-jacobs.jpg" alt="a skein of light grey handspun yarn" loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/fire-and-ice-handspun/">
|
||||||
|
<h2 data-ha-exclude="" id="fire-and-ice-handspun">fire & ice handspun </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>yarn</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/fire-ice-handspun.jpg" alt="2 skeins, one large and one small, of a heathered orange yarn with hints of blue in about a DK or worsted weight." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
</ol>
|
</ol>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
@@ -1668,6 +1670,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/charlie-the-alpaca-handspun/` was built on 2026-05-14T03:50:32.001Z -->
|
<!-- This page `/charlie-the-alpaca-handspun/` was built on 2026-05-14T15:50:39.423Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+15
-11
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/circle-bag.jpg" alt="A round bag in brown, mustard yellow, and rich deep orange, with a teal shoulder strap." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/circle-bag.jpg" alt="A round bag in brown, mustard yellow, and rich deep orange, with a teal shoulder strap." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/circle-bag.jpg" alt="A round bag in brown, mustard yellow, and rich deep orange, with a teal shoulder strap." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/circle-bag.jpg" alt="A round bag in brown, mustard yellow, and rich deep orange, with a teal shoulder strap." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<p>it's roumd</p>
|
<p>it's roumd</p>
|
||||||
@@ -1596,43 +1598,45 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/leaf-patches/">
|
<a class="postlink" href="/bowtie/">
|
||||||
<h2 data-ha-exclude="" id="leaf-patches">leaf patches </h2>
|
<h2 data-ha-exclude="" id="bowtie">bowtie </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/leaf-patches-oak.jpg" alt="Several oak-leaf-shaped leather patches with stitching holes punched around the edges." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/bowtie.jpg" alt="A black leather bow tie with black stitching." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/foldy-wallet-with-thumb-slide/">
|
<a class="postlink" href="/designing-a-bag/">
|
||||||
<h2 data-ha-exclude="" id="foldy-wallet-with-thumb-slide">foldy wallet with thumb slide </h2>
|
<h2 data-ha-exclude="" id="designing-a-bag">designing a bag </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
|
<li>software</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/foldy-thumb-slide.jpg" alt="A card wallet with one main pocket and one quick access slot with a thumb slide. The cover of the main pocket curves around the thumb slide." loading="lazy" decoding="async" width="1000" height="1000">
|
<img src="/img/shoelace-bag.jpg" alt="a 3-image collage showcasing a leather crossbody bag. the leather body is brown and fairly simple. up the narrow sides, rope is laced through grommets in a style resembling a shoe lacing. the rope forms the handle and loops seamlessly through the other side of the bag, joining in one point in a figure-8 follow-through knot. At the bottom corners, there are small diagonal lines of stitching to give the bag a small lip around the base and ensure small objects don't slide out." loading="lazy" decoding="async" width="1000" height="1777">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/aarons-mask/">
|
<a class="postlink" href="/o-ring-bracelet/">
|
||||||
<h2 data-ha-exclude="" id="aarons-mask">aaron's mask </h2>
|
<h2 data-ha-exclude="" id="o-ring-bracelet">o-ring bracelet </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/aaron-mask.jpg" alt="A brown/grey leather mask of a long snouted dog with visible teeth and red detailing." loading="lazy" decoding="async" width="900" height="1200">
|
<img src="/img/oring-bracelet.jpg" alt="A green leather bracelet, stitched along the edges with dark blue thread, holds an ouroborous o-ring in place with two black snaps." loading="lazy" decoding="async" width="900" height="1200">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1668,6 +1672,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/circle-bag/` was built on 2026-05-14T03:50:32.022Z -->
|
<!-- This page `/circle-bag/` was built on 2026-05-14T15:50:39.444Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1021,6 +1021,6 @@ export { HeadingAnchors }</script>
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/colophon/` was built on 2026-05-14T03:50:32.035Z -->
|
<!-- This page `/colophon/` was built on 2026-05-14T15:50:39.447Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+24
-28
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1560,7 +1562,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/coming-out-card-print.jpg" alt="A card and print in the same design - a chick and a broken eggshell, and a simple font reading 'congrats on coming out of your shell'" loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/coming-out-card-print.jpg" alt="A card and print in the same design - a chick and a broken eggshell, and a simple font reading 'congrats on coming out of your shell'" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/coming-out-card-print.jpg" alt="A card and print in the same design - a chick and a broken eggshell, and a simple font reading 'congrats on coming out of your shell'" loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/coming-out-card-print.jpg" alt="A card and print in the same design - a chick and a broken eggshell, and a simple font reading 'congrats on coming out of your shell'" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<h2 id="details">details</h2>
|
<h2 id="details">details</h2>
|
||||||
@@ -1612,26 +1614,8 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/geese/">
|
<a class="postlink" href="/trans-the-world/">
|
||||||
<h2 data-ha-exclude="" id="geese">geese </h2>
|
<h2 data-ha-exclude="" id="trans-the-world">trans the world </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>card</li>
|
|
||||||
|
|
||||||
<li>shirt</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/geese-print.jpg" alt="Two Canada geese and their reflections in the water. One is calmly swimming away, while the over leans over and HONKS!" loading="lazy" decoding="async" width="1000" height="750">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/slightly-weird-man-club/">
|
|
||||||
<h2 data-ha-exclude="" id="slightly-weird-man-club">slightly weird man club </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
@@ -1642,14 +1626,14 @@ if (window.innerWidth > 650) {
|
|||||||
<li>gender</li>
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/slightly-weird-man-club-print.jpg" alt="A print that reads 'slightly weird man club' in a nonbinary flag colored gradient" loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/trans-the-world-print.jpg" alt="A print that reads 'trans the world' surrounding an image of a globe and a trans symbol. It's in a ping-to-blue gradient." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/shrimp/">
|
<a class="postlink" href="/iris/">
|
||||||
<h2 data-ha-exclude="" id="shrimp">shrimp </h2>
|
<h2 data-ha-exclude="" id="iris">iris </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
@@ -1657,12 +1641,24 @@ if (window.innerWidth > 650) {
|
|||||||
|
|
||||||
<li>card</li>
|
<li>card</li>
|
||||||
|
|
||||||
<li>sticker</li>
|
</ul>
|
||||||
|
<img src="/img/iris-prints.jpg" alt="3 copies of the same print of iris flowers and a bud, done in slightly varied color schemes." loading="lazy" decoding="async" width="1000" height="562">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/spotted-towhee/">
|
||||||
|
<h2 data-ha-exclude="" id="spotted-towhee">spotted towhee </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>pin</li>
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>card</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/shrimp-print.jpg" alt="A print of a small shrimp with slender little leggies in orange ink." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/spotted-towhee-print.jpg" alt="A block print of a spotted towhee mid-leap." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1698,6 +1694,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/coming-out/` was built on 2026-05-14T03:50:32.013Z -->
|
<!-- This page `/coming-out/` was built on 2026-05-14T15:50:39.439Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/horsetail.jpg" alt="Image unrelated to post. Close up on a horsetail plant's stem, with many small needle-like leaves emerging from all sides of the circular stem at each segmented joint." loading="lazy" decoding="async" width="1000" height="666">
|
<img class="modal-img" src="/img/horsetail.jpg" alt="Image unrelated to post. Close up on a horsetail plant's stem, with many small needle-like leaves emerging from all sides of the circular stem at each segmented joint." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/horsetail.jpg" alt="Image unrelated to post. Close up on a horsetail plant's stem, with many small needle-like leaves emerging from all sides of the circular stem at each segmented joint." loading="lazy" decoding="async" width="1000" height="666">
|
<img class="hero" src="/img/horsetail.jpg" alt="Image unrelated to post. Close up on a horsetail plant's stem, with many small needle-like leaves emerging from all sides of the circular stem at each segmented joint." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
|
|
||||||
<p>I'm fucking depressed. No, not like mental health depressed (okay, look, that too, but that's not relevant here). Looking to switch text editors, I reviewed 6 different options...and what I found didn't thrill me.</p>
|
<p>I'm fucking depressed. No, not like mental health depressed (okay, look, that too, but that's not relevant here). Looking to switch text editors, I reviewed 6 different options...and what I found didn't thrill me.</p>
|
||||||
@@ -1817,6 +1819,38 @@ if (window.innerWidth > 650) {
|
|||||||
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/backend-accessibility/">
|
||||||
|
<h2 data-ha-exclude="" id="backend-accessibility">backend accessibility </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>software</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/camelCase-print.jpg" alt="A carved stamp next to its print. The print reads '#camelCase' in a slightly formal-looking italic font." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/gender-in-data-models/">
|
||||||
|
<h2 data-ha-exclude="" id="gender-in-data-models">gender in data models </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>gender</li>
|
||||||
|
|
||||||
|
<li>software</li>
|
||||||
|
|
||||||
|
<li>highlight</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/peony.jpg" alt="Image unrelated to post. A light pink peony in full bloom, close up." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/designing-a-bag/">
|
<a class="postlink" href="/designing-a-bag/">
|
||||||
<h2 data-ha-exclude="" id="designing-a-bag">designing a bag </h2>
|
<h2 data-ha-exclude="" id="designing-a-bag">designing a bag </h2>
|
||||||
@@ -1833,34 +1867,6 @@ if (window.innerWidth > 650) {
|
|||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/intro-to-wireframing/">
|
|
||||||
<h2 data-ha-exclude="" id="intro-to-wireframing">intro to wireframing </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>software</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/aggregator-wireframes.jpg" alt="a figma page with 4 major sections titled aggregator, aggregator mobile, aggregator color, and aggregator mobile color. each section has 7 pages in it - all sections pretty clearly have the same 7 pages, with the mobile sections shown on mobile screens and the color sections in a rainbow of pastels rather than grayscale." loading="lazy" decoding="async" width="1000" height="1042">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/my-favorite-git-flag/">
|
|
||||||
<h2 data-ha-exclude="" id="my-favorite-git-flag">my favorite git flag </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>software</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/shelf-mushrooms.jpg" alt="Picture unrelated to post. Creamy beige shelf mushrooms on a mossy tree trunk." loading="lazy" decoding="async" width="1000" height="666">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</ol>
|
</ol>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
@@ -1892,6 +1898,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/comparing-text-editors/` was built on 2026-05-14T03:50:32.000Z -->
|
<!-- This page `/comparing-text-editors/` was built on 2026-05-14T15:50:39.420Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1555,7 +1557,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/congrats-on-the.jpg" alt="4 greeting cards propped up on a keyboard. On the right hand side, two cards read 'Congrats on the Autism'; one in rainbow ink and one in black ink with a glittery gold shadow. On the left, two cards read 'Congrats on the ADHD'; one in red and one in black, both with glittery pink shadows." loading="lazy" decoding="async" width="1000" height="562">
|
<img class="modal-img" src="/img/congrats-on-the.jpg" alt="4 greeting cards propped up on a keyboard. On the right hand side, two cards read 'Congrats on the Autism'; one in rainbow ink and one in black ink with a glittery gold shadow. On the left, two cards read 'Congrats on the ADHD'; one in red and one in black, both with glittery pink shadows." loading="lazy" decoding="async" width="1000" height="562">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/congrats-on-the.jpg" alt="4 greeting cards propped up on a keyboard. On the right hand side, two cards read 'Congrats on the Autism'; one in rainbow ink and one in black ink with a glittery gold shadow. On the left, two cards read 'Congrats on the ADHD'; one in red and one in black, both with glittery pink shadows." loading="lazy" decoding="async" width="1000" height="562">
|
<img class="hero" src="/img/congrats-on-the.jpg" alt="4 greeting cards propped up on a keyboard. On the right hand side, two cards read 'Congrats on the Autism'; one in rainbow ink and one in black ink with a glittery gold shadow. On the left, two cards read 'Congrats on the ADHD'; one in red and one in black, both with glittery pink shadows." loading="lazy" decoding="async" width="1000" height="562">
|
||||||
|
|
||||||
|
|
||||||
<p>Hand carved modular stamps to congratulate your friend or yourself on your fantastic neurodivergence.</p>
|
<p>Hand carved modular stamps to congratulate your friend or yourself on your fantastic neurodivergence.</p>
|
||||||
@@ -1609,24 +1611,8 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/artisans-cooperative-shirts/">
|
<a class="postlink" href="/booby-congrats-on-the-top-surgery/">
|
||||||
<h2 data-ha-exclude="" id="artisans-cooperative-shirts">artisans cooperative shirts </h2>
|
<h2 data-ha-exclude="" id="booby-congrats-on-the-top-surgery">booby (congrats on the top surgery) </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>shirt</li>
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/artisans-coop-shirt.jpg" alt="A black tank top laid on a desk. In white ink it reads 'Artisans Cooperative' with a print of some chickens and a quail." loading="lazy" decoding="async" width="1000" height="1333">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/congrats-on-the-gay/">
|
|
||||||
<h2 data-ha-exclude="" id="congrats-on-the-gay">congrats on the gay </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
@@ -1637,25 +1623,45 @@ if (window.innerWidth > 650) {
|
|||||||
<li>gender</li>
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/congrats-on-the-gay.jpg" alt="A greeting card reading, in black. 'Congrats on the,' and then, in rainbow, 'Gay!'" loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/booby-card.jpg" alt="A landscape-oriented white card with a two-color print of a blue-footed booby." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/geese/">
|
<a class="postlink" href="/boypussy/">
|
||||||
<h2 data-ha-exclude="" id="geese">geese </h2>
|
<h2 data-ha-exclude="" id="boypussy-mature">boypussy (mature)</h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
<li>card</li>
|
<li>sticker</li>
|
||||||
|
|
||||||
|
<li>shirt</li>
|
||||||
|
|
||||||
|
<li>pin</li>
|
||||||
|
|
||||||
|
<li>gender</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/boypussy-shirt.jpg" alt="A butch holding a chainsaw and wearing a tank top that reads boypussy in pink Barbie font." class="blur" loading="lazy" decoding="async" width="1000" height="1250">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/not-a-drill/">
|
||||||
|
<h2 data-ha-exclude="" id="not-a-drill">not a drill </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
<li>shirt</li>
|
<li>shirt</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/geese-print.jpg" alt="Two Canada geese and their reflections in the water. One is calmly swimming away, while the over leans over and HONKS!" loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/not-a-drill-print.jpg" alt="A print in dark teal ink depicting a power drill with text in cursive below that reads 'ceci n'est pas un exercice' or 'this is not a drill'" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1691,6 +1697,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/congrats-on-the-autism-adhd/` was built on 2026-05-14T03:50:31.996Z -->
|
<!-- This page `/congrats-on-the-autism-adhd/` was built on 2026-05-14T15:50:39.404Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1560,7 +1562,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/congrats-on-the-gay.jpg" alt="A greeting card reading, in black. 'Congrats on the,' and then, in rainbow, 'Gay!'" loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/congrats-on-the-gay.jpg" alt="A greeting card reading, in black. 'Congrats on the,' and then, in rainbow, 'Gay!'" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/congrats-on-the-gay.jpg" alt="A greeting card reading, in black. 'Congrats on the,' and then, in rainbow, 'Gay!'" loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/congrats-on-the-gay.jpg" alt="A greeting card reading, in black. 'Congrats on the,' and then, in rainbow, 'Gay!'" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<p>A variation on my <a href="congrats-ND">congrats on the autism/adhd cards</a>.</p>
|
<p>A variation on my <a href="congrats-ND">congrats on the autism/adhd cards</a>.</p>
|
||||||
@@ -1615,8 +1617,8 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/shrimp/">
|
<a class="postlink" href="/artisans-cooperative-cards/">
|
||||||
<h2 data-ha-exclude="" id="shrimp">shrimp </h2>
|
<h2 data-ha-exclude="" id="artisans-cooperative-cards">artisans cooperative cards </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
@@ -1624,44 +1626,44 @@ if (window.innerWidth > 650) {
|
|||||||
|
|
||||||
<li>card</li>
|
<li>card</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/artisans-coop-cards.jpg" alt="2 white greeting cards with the Artisans Cooperative logo, a chicken. One card has a single print of the chicken in black ink, and the other has two overlapping prints in blue and red ink" loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/anarchy-autism/">
|
||||||
|
<h2 data-ha-exclude="" id="anarchy-autism">anarchy autism </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
<li>sticker</li>
|
<li>sticker</li>
|
||||||
|
|
||||||
|
<li>shirt</li>
|
||||||
|
|
||||||
<li>pin</li>
|
<li>pin</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/shrimp-print.jpg" alt="A print of a small shrimp with slender little leggies in orange ink." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/anarchy-autism-rainbow-print.jpg" alt="A print in rainbow ink that says autism with the anarchy A." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/congrats-on-the-autism-adhd/">
|
<a class="postlink" href="/bottom-growth/">
|
||||||
<h2 data-ha-exclude="" id="congrats-on-the-autism-adhd">congrats on the autism/adhd </h2>
|
<h2 data-ha-exclude="" id="bottom-growth-mature">bottom growth (mature)</h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
<li>card</li>
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/congrats-on-the.jpg" alt="4 greeting cards propped up on a keyboard. On the right hand side, two cards read 'Congrats on the Autism'; one in rainbow ink and one in black ink with a glittery gold shadow. On the left, two cards read 'Congrats on the ADHD'; one in red and one in black, both with glittery pink shadows." loading="lazy" decoding="async" width="1000" height="562">
|
<img src="/img/bottom-growth-prints.jpg" alt="4 copies of the same print in various color schemes, laid out in a 2x2 grid. The print shows testosterone-driven bottom growth of a clitoris. The color schemes are, clockwise from top right, brown on turquoise, red on cornsilk (muted yellow), violet on magenta, and mint green on lilac." class="blur" loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/not-a-drill/">
|
|
||||||
<h2 data-ha-exclude="" id="not-a-drill">not a drill </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>shirt</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/not-a-drill-print.jpg" alt="A print in dark teal ink depicting a power drill with text in cursive below that reads 'ceci n'est pas un exercice' or 'this is not a drill'" loading="lazy" decoding="async" width="1000" height="750">
|
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1697,6 +1699,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/congrats-on-the-gay/` was built on 2026-05-14T03:50:32.003Z -->
|
<!-- This page `/congrats-on-the-gay/` was built on 2026-05-14T15:50:39.433Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -986,10 +986,10 @@ export { HeadingAnchors }</script>
|
|||||||
|
|
||||||
<h2 id="contact-me">contact me</h2>
|
<h2 id="contact-me">contact me</h2>
|
||||||
<dl>
|
<dl>
|
||||||
<dt><i aria-hidden="true" class="fa-brands fa-signal-messenger"></i> signal</dt>
|
|
||||||
<dd><a href="https://signal.me/#eu/_-MvyOMcylLFTslDIzJnJkc4Yg1G_hpQt5wf-DVxS0ei4WhimMZLJYd_e28kcNCL">seven seven four, two four nine, zero five eight six</a></dd>
|
|
||||||
<dt><i aria-hidden="true" class="fa-solid fa-envelope"></i> email</dt>
|
<dt><i aria-hidden="true" class="fa-solid fa-envelope"></i> email</dt>
|
||||||
<dd><a href="mailto:lee.cattarin@gmail.com" target="_blank">lee dot cattarin at gmail dot com</a></dd>
|
<dd><a href="mailto:lee.cattarin@gmail.com" target="_blank">lee dot cattarin at gmail dot com</a></dd>
|
||||||
|
<dt><i aria-hidden="true" class="fa-brands fa-signal-messenger"></i> signal</dt>
|
||||||
|
<dd><a href="https://signal.me/#eu/_-MvyOMcylLFTslDIzJnJkc4Yg1G_hpQt5wf-DVxS0ei4WhimMZLJYd_e28kcNCL">seven seven four, two four nine, zero five eight six</a></dd>
|
||||||
<dt><i aria-hidden="true" class="fa-solid fa-mobile-retro"></i> text (no phone calls!)</dt>
|
<dt><i aria-hidden="true" class="fa-solid fa-mobile-retro"></i> text (no phone calls!)</dt>
|
||||||
<dd><a href="tel:17742490586">seven seven four, two four nine, zero five eight six</a></dd>
|
<dd><a href="tel:17742490586">seven seven four, two four nine, zero five eight six</a></dd>
|
||||||
<dt><i aria-hidden="true" class="fa-brands fa-discord"></i> discord</dt>
|
<dt><i aria-hidden="true" class="fa-brands fa-discord"></i> discord</dt>
|
||||||
@@ -1101,6 +1101,6 @@ export { HeadingAnchors }</script>
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/contact/` was built on 2026-05-14T03:50:32.035Z -->
|
<!-- This page `/contact/` was built on 2026-05-14T15:50:39.447Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/coral-reef-handspun.jpg" alt="2 skeins, one large and one small, of a heathered grey yarn with hints of blue and orange in about a sport or DK weight." loading="lazy" decoding="async" width="1000" height="666">
|
<img class="modal-img" src="/img/coral-reef-handspun.jpg" alt="2 skeins, one large and one small, of a heathered grey yarn with hints of blue and orange in about a sport or DK weight." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/coral-reef-handspun.jpg" alt="2 skeins, one large and one small, of a heathered grey yarn with hints of blue and orange in about a sport or DK weight." loading="lazy" decoding="async" width="1000" height="666">
|
<img class="hero" src="/img/coral-reef-handspun.jpg" alt="2 skeins, one large and one small, of a heathered grey yarn with hints of blue and orange in about a sport or DK weight." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
|
|
||||||
<p>Fiber from <a href="https://www.etsy.com/shop/JakiraFarms" target="_blank" rel="external">Jakira Farms</a> in Coral Reef colorway. 100% merino.</p>
|
<p>Fiber from <a href="https://www.etsy.com/shop/JakiraFarms" target="_blank" rel="external">Jakira Farms</a> in Coral Reef colorway. 100% merino.</p>
|
||||||
@@ -1596,15 +1598,29 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/spinners-dream-handspun/">
|
<a class="postlink" href="/ruby-the-alpaca-handspun/">
|
||||||
<h2 data-ha-exclude="" id="spinners-dream-handspun">spinner's dream handspun </h2>
|
<h2 data-ha-exclude="" id="ruby-the-alpaca-handspun">ruby the alpaca handspun </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>yarn</li>
|
<li>yarn</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/spinners-dream-handspun.jpg" alt="a skein of a lightly variegated grey yarn in about a sport or DK weight." loading="lazy" decoding="async" width="1000" height="666">
|
<img src="/img/ruby-alpaca-handspun.jpg" alt="one large skein and two smaller skeins of a rich chocolatey brown alpaca handspun, in about a DK weight" loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/handcombed-jacobs-handspun/">
|
||||||
|
<h2 data-ha-exclude="" id="handcombed-jacobs-handspun">handcombed jacobs handspun </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>yarn</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/handcombed-jacobs.jpg" alt="a skein of dark grey handspun yarn" loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1623,20 +1639,6 @@ if (window.innerWidth > 650) {
|
|||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/handspun-yarn-in-party-mix-and-orange-gold/">
|
|
||||||
<h2 data-ha-exclude="" id="handspun-yarn-in-party-mix-and-orange-gold">handspun yarn in party mix and orange-gold </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>yarn</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/handspun0.jpg" alt="4 skeins of handspun yarn, two in a somewhat pastel multicolor and two in a blend of orange, gold, and white." loading="lazy" decoding="async" width="1000" height="750">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
</ol>
|
</ol>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
@@ -1668,6 +1670,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/coral-reef-handspun/` was built on 2026-05-14T03:50:32.000Z -->
|
<!-- This page `/coral-reef-handspun/` was built on 2026-05-14T15:50:39.421Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+38
-34
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/crow-print.jpg" alt="a block print in dark indigo ink on white paper depicting a perched crow looking over one shoulder. one side of the crow is lit with fine feather detail, and the other side is almost entirely in shadow." loading="lazy" decoding="async" width="1000" height="1333">
|
<img class="modal-img" src="/img/crow-print.jpg" alt="a block print in dark indigo ink on white paper depicting a perched crow looking over one shoulder. one side of the crow is lit with fine feather detail, and the other side is almost entirely in shadow." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/crow-print.jpg" alt="a block print in dark indigo ink on white paper depicting a perched crow looking over one shoulder. one side of the crow is lit with fine feather detail, and the other side is almost entirely in shadow." loading="lazy" decoding="async" width="1000" height="1333">
|
<img class="hero" src="/img/crow-print.jpg" alt="a block print in dark indigo ink on white paper depicting a perched crow looking over one shoulder. one side of the crow is lit with fine feather detail, and the other side is almost entirely in shadow." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -1595,8 +1597,38 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/flatfish/">
|
<a class="postlink" href="/fix-your-hearts/">
|
||||||
<h2 data-ha-exclude="" id="flatfish">flatfish </h2>
|
<h2 data-ha-exclude="" id="fix-your-hearts">fix your hearts </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/fix-your-hearts-print.jpg" alt="2 copies of the same print, one in black ink and one in dark teal. The print is text that reads 'fix your hearts or die', with the text shaped into a somewhat long and narrow heart." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/hair/">
|
||||||
|
<h2 data-ha-exclude="" id="hair">hair </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>gender</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/hair-print.jpg" alt="A print in black ink of belly hair." loading="lazy" decoding="async" width="1000" height="710">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/congrats-on-the-gay/">
|
||||||
|
<h2 data-ha-exclude="" id="congrats-on-the-gay">congrats on the gay </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
@@ -1604,38 +1636,10 @@ if (window.innerWidth > 650) {
|
|||||||
|
|
||||||
<li>card</li>
|
<li>card</li>
|
||||||
|
|
||||||
</ul>
|
<li>gender</li>
|
||||||
<img src="/img/flatfish-print.jpg" alt="A print of a simple flatfish design inked in sepia." loading="lazy" decoding="async" width="1000" height="1333">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/printmaking-paper-notes/">
|
|
||||||
<h2 data-ha-exclude="" id="printmaking-paper-notes">printmaking paper notes </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/killdeer.jpg" alt="Image unrelated to post. A very fluffed up killdeer stands on a rocky beach." loading="lazy" decoding="async" width="1000" height="666">
|
<img src="/img/congrats-on-the-gay.jpg" alt="A greeting card reading, in black. 'Congrats on the,' and then, in rainbow, 'Gay!'" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/congrats-on-the-autism-adhd/">
|
|
||||||
<h2 data-ha-exclude="" id="congrats-on-the-autism-adhd">congrats on the autism/adhd </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>card</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/congrats-on-the.jpg" alt="4 greeting cards propped up on a keyboard. On the right hand side, two cards read 'Congrats on the Autism'; one in rainbow ink and one in black ink with a glittery gold shadow. On the left, two cards read 'Congrats on the ADHD'; one in red and one in black, both with glittery pink shadows." loading="lazy" decoding="async" width="1000" height="562">
|
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1671,6 +1675,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/crow/` was built on 2026-05-14T03:50:32.002Z -->
|
<!-- This page `/crow/` was built on 2026-05-14T15:50:39.423Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1555,7 +1557,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/shoelace-bag.jpg" alt="a 3-image collage showcasing a leather crossbody bag. the leather body is brown and fairly simple. up the narrow sides, rope is laced through grommets in a style resembling a shoe lacing. the rope forms the handle and loops seamlessly through the other side of the bag, joining in one point in a figure-8 follow-through knot. At the bottom corners, there are small diagonal lines of stitching to give the bag a small lip around the base and ensure small objects don't slide out." loading="lazy" decoding="async" width="1000" height="1777">
|
<img class="modal-img" src="/img/shoelace-bag.jpg" alt="a 3-image collage showcasing a leather crossbody bag. the leather body is brown and fairly simple. up the narrow sides, rope is laced through grommets in a style resembling a shoe lacing. the rope forms the handle and loops seamlessly through the other side of the bag, joining in one point in a figure-8 follow-through knot. At the bottom corners, there are small diagonal lines of stitching to give the bag a small lip around the base and ensure small objects don't slide out." loading="lazy" decoding="async" width="1000" height="1777">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/shoelace-bag.jpg" alt="a 3-image collage showcasing a leather crossbody bag. the leather body is brown and fairly simple. up the narrow sides, rope is laced through grommets in a style resembling a shoe lacing. the rope forms the handle and loops seamlessly through the other side of the bag, joining in one point in a figure-8 follow-through knot. At the bottom corners, there are small diagonal lines of stitching to give the bag a small lip around the base and ensure small objects don't slide out." loading="lazy" decoding="async" width="1000" height="1777">
|
<img class="hero" src="/img/shoelace-bag.jpg" alt="a 3-image collage showcasing a leather crossbody bag. the leather body is brown and fairly simple. up the narrow sides, rope is laced through grommets in a style resembling a shoe lacing. the rope forms the handle and loops seamlessly through the other side of the bag, joining in one point in a figure-8 follow-through knot. At the bottom corners, there are small diagonal lines of stitching to give the bag a small lip around the base and ensure small objects don't slide out." loading="lazy" decoding="async" width="1000" height="1777">
|
||||||
|
|
||||||
|
|
||||||
<h2 id="begin-by-testing">begin by testing</h2>
|
<h2 id="begin-by-testing">begin by testing</h2>
|
||||||
@@ -1612,45 +1614,45 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/eleventy-lessons/">
|
<a class="postlink" href="/soras-collar/">
|
||||||
<h2 data-ha-exclude="" id="eleventy-lessons">eleventy lessons </h2>
|
<h2 data-ha-exclude="" id="soras-collar">sora's collar </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>software</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/hellebore.jpg" alt="Image unrelated to post. Close up on a pale green hellebore flower." loading="lazy" decoding="async" width="1000" height="666">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/stephanie-collar/">
|
|
||||||
<h2 data-ha-exclude="" id="stephanie-collar">stephanie collar </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/stephanie-collar.jpg" alt="A white woman with a shaved side cut wearing a black leather collar with a large dangling o-ring." loading="lazy" decoding="async" width="1000" height="562">
|
<img src="/img/sora-collar.jpg" alt="A collage showing a red and black leather dog collar tooled with roses and the name Sora. It's fully stitched with dark red stitching and has brass hardware." loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/proud-dad-wallet/">
|
<a class="postlink" href="/eight-pocket-bifold/">
|
||||||
<h2 data-ha-exclude="" id="proud-dad-wallet">proud dad wallet </h2>
|
<h2 data-ha-exclude="" id="eight-pocket-bifold">eight pocket bifold </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
<li>gender</li>
|
</ul>
|
||||||
|
<img src="/img/eight-pocket-bifold.jpg" alt="A 3-picture collage showing a hand stitched full grain leather bifold wallet in dark plum leather. It has a main bill pocket and a asymmetrical interior with a hidden pocket and 3 card pockets on the right, and a hidden pocket and 2 card pockets on the left. The left front pocket has a small naturally occuring hole." loading="lazy" decoding="async" width="1000" height="1777">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/dragon-mask/">
|
||||||
|
<h2 data-ha-exclude="" id="dragon-mask">dragon mask </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>leather</li>
|
||||||
|
|
||||||
|
<li>highlight</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/proud-dad-wallet.jpg" alt="A brown leather wallet with a subtle trans flag stitching across the top." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/dragon-mask.jpg" alt="lee (a white person with glasses and a side shave) holds up a leather dragon mask in black and dark green. ze sticks hir tongue out at it." loading="lazy" decoding="async" width="1000" height="746">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1686,6 +1688,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/designing-a-bag/` was built on 2026-05-14T03:50:32.026Z -->
|
<!-- This page `/designing-a-bag/` was built on 2026-05-14T15:50:39.431Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/crinkly-mushrooms.jpg" alt="Picture unrelated to post. Some crinkly brown-orange mushrooms in vibrant green grass." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/crinkly-mushrooms.jpg" alt="Picture unrelated to post. Some crinkly brown-orange mushrooms in vibrant green grass." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/crinkly-mushrooms.jpg" alt="Picture unrelated to post. Some crinkly brown-orange mushrooms in vibrant green grass." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/crinkly-mushrooms.jpg" alt="Picture unrelated to post. Some crinkly brown-orange mushrooms in vibrant green grass." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<p>This was written as a skill share for the Artisans Cooperative blog.</p>
|
<p>This was written as a skill share for the Artisans Cooperative blog.</p>
|
||||||
@@ -1647,45 +1649,43 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/azure-locations-and-file-crawling/">
|
<a class="postlink" href="/my-favorite-git-flag/">
|
||||||
<h2 data-ha-exclude="" id="azure-locations-and-file-crawling">azure locations and file crawling </h2>
|
<h2 data-ha-exclude="" id="my-favorite-git-flag">my favorite git flag </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>software</li>
|
<li>software</li>
|
||||||
|
|
||||||
<li>highlight</li>
|
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/azure-locations.jpg" alt="A Linux terminal. There is a fun rainbow flag in ascii art at the top, and then the user has called a command asking Azure for a list of locations applicable to a specific resource type. The output is lengthy." loading="lazy" decoding="async" width="1000" height="827">
|
<img src="/img/shelf-mushrooms.jpg" alt="Picture unrelated to post. Creamy beige shelf mushrooms on a mossy tree trunk." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/intro-to-wireframing/">
|
<a class="postlink" href="/an-intro-to-git/">
|
||||||
<h2 data-ha-exclude="" id="intro-to-wireframing">intro to wireframing </h2>
|
<h2 data-ha-exclude="" id="an-intro-to-git">an intro to git </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>software</li>
|
<li>software</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/aggregator-wireframes.jpg" alt="a figma page with 4 major sections titled aggregator, aggregator mobile, aggregator color, and aggregator mobile color. each section has 7 pages in it - all sections pretty clearly have the same 7 pages, with the mobile sections shown on mobile screens and the color sections in a rainbow of pastels rather than grayscale." loading="lazy" decoding="async" width="1000" height="1042">
|
<img src="/img/goldeneye-tail.jpg" alt="Image unrelated to post. The tail of a diving duck pokes out from the water with a small splash." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/eleventy-lessons/">
|
<a class="postlink" href="/redirections/">
|
||||||
<h2 data-ha-exclude="" id="eleventy-lessons">eleventy lessons </h2>
|
<h2 data-ha-exclude="" id="redirections">redirections </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>software</li>
|
<li>software</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/hellebore.jpg" alt="Image unrelated to post. Close up on a pale green hellebore flower." loading="lazy" decoding="async" width="1000" height="666">
|
<img src="/img/angle-brackets-uwu.jpg" alt="Ascii art of an emoticon with pinched eyes and a small mouth made with two angle brackets." loading="lazy" decoding="async" width="1000" height="316">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1721,6 +1721,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/domain-and-site-setup/` was built on 2026-05-14T03:50:32.020Z -->
|
<!-- This page `/domain-and-site-setup/` was built on 2026-05-14T15:50:39.442Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/double-bill-pocket-bifold.jpg" alt="A 3-picture collage showing a hand-stitched leather wallet in plum and light natural leather, with a double bill pocket." loading="lazy" decoding="async" width="1000" height="1777">
|
<img class="modal-img" src="/img/double-bill-pocket-bifold.jpg" alt="A 3-picture collage showing a hand-stitched leather wallet in plum and light natural leather, with a double bill pocket." loading="lazy" decoding="async" width="1000" height="1777">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/double-bill-pocket-bifold.jpg" alt="A 3-picture collage showing a hand-stitched leather wallet in plum and light natural leather, with a double bill pocket." loading="lazy" decoding="async" width="1000" height="1777">
|
<img class="hero" src="/img/double-bill-pocket-bifold.jpg" alt="A 3-picture collage showing a hand-stitched leather wallet in plum and light natural leather, with a double bill pocket." loading="lazy" decoding="async" width="1000" height="1777">
|
||||||
|
|
||||||
|
|
||||||
<p>continuing to iterate on bifolds. made of a variety of discount leather with various imperfections. fully hand-stitched.</p>
|
<p>continuing to iterate on bifolds. made of a variety of discount leather with various imperfections. fully hand-stitched.</p>
|
||||||
@@ -1596,43 +1598,45 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/long-zipper-bifold/">
|
<a class="postlink" href="/designing-a-bag/">
|
||||||
<h2 data-ha-exclude="" id="long-zipper-bifold">long zipper bifold </h2>
|
<h2 data-ha-exclude="" id="designing-a-bag">designing a bag </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
|
<li>software</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/long-zipper-bifold.jpg" alt="A collage showing an orange leather wallet with a long zipper running the length of the outside." loading="lazy" decoding="async" width="1000" height="1000">
|
<img src="/img/shoelace-bag.jpg" alt="a 3-image collage showcasing a leather crossbody bag. the leather body is brown and fairly simple. up the narrow sides, rope is laced through grommets in a style resembling a shoe lacing. the rope forms the handle and loops seamlessly through the other side of the bag, joining in one point in a figure-8 follow-through knot. At the bottom corners, there are small diagonal lines of stitching to give the bag a small lip around the base and ensure small objects don't slide out." loading="lazy" decoding="async" width="1000" height="1777">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/swoop-wallet/">
|
<a class="postlink" href="/vix-collar/">
|
||||||
<h2 data-ha-exclude="" id="swoop-wallet">swoop wallet </h2>
|
<h2 data-ha-exclude="" id="vix-collar">vix collar </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/swoop-wallet.jpg" alt="A collage showing 3 pictures of a red and brown leather card wallet. The red pocket separator folds around to the back to become a fetching curlicue." loading="lazy" decoding="async" width="900" height="1200">
|
<img src="/img/vix-collar.jpg" alt="A collar rests on a leather-wrapped lighter. It is lined with shearling and built of two other layers of leather - a wider mustard yellow layer and a thinner teal layer over that. the teal layer holds a heart shaped o-ring in place." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/lobstah/">
|
<a class="postlink" href="/bowtie/">
|
||||||
<h2 data-ha-exclude="" id="lobstah">lobstah </h2>
|
<h2 data-ha-exclude="" id="bowtie">bowtie </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/lobstah.jpg" alt="Two red leather lobster ornaments, about 4-5 in long each." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/bowtie.jpg" alt="A black leather bow tie with black stitching." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1668,6 +1672,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/double-bill-pocket-bifold/` was built on 2026-05-14T03:50:32.019Z -->
|
<!-- This page `/double-bill-pocket-bifold/` was built on 2026-05-14T15:50:39.441Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1555,7 +1557,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/dragon-mask.jpg" alt="lee (a white person with glasses and a side shave) holds up a leather dragon mask in black and dark green. ze sticks hir tongue out at it." loading="lazy" decoding="async" width="1000" height="746">
|
<img class="modal-img" src="/img/dragon-mask.jpg" alt="lee (a white person with glasses and a side shave) holds up a leather dragon mask in black and dark green. ze sticks hir tongue out at it." loading="lazy" decoding="async" width="1000" height="746">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/dragon-mask.jpg" alt="lee (a white person with glasses and a side shave) holds up a leather dragon mask in black and dark green. ze sticks hir tongue out at it." loading="lazy" decoding="async" width="1000" height="746">
|
<img class="hero" src="/img/dragon-mask.jpg" alt="lee (a white person with glasses and a side shave) holds up a leather dragon mask in black and dark green. ze sticks hir tongue out at it." loading="lazy" decoding="async" width="1000" height="746">
|
||||||
|
|
||||||
|
|
||||||
<p>pattern by <a href="https://www.etsy.com/listing/831499316/pdf-pattern-leather-dragon-mask" target="_blank" rel="external">PaintYee</a></p>
|
<p>pattern by <a href="https://www.etsy.com/listing/831499316/pdf-pattern-leather-dragon-mask" target="_blank" rel="external">PaintYee</a></p>
|
||||||
@@ -1601,43 +1603,45 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/shrimp-cat-toy/">
|
<a class="postlink" href="/snap-pouch/">
|
||||||
<h2 data-ha-exclude="" id="shrimp-cat-toy">shrimp cat toy </h2>
|
<h2 data-ha-exclude="" id="snap-pouch">snap pouch </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/two-shrimp.jpg" alt="Two leather shrimp-shaped cat toys. They have long dangly antennae and are stitched in red and orange." loading="lazy" decoding="async" width="1000" height="666">
|
<img src="/img/snap-pouches.jpg" alt="4 square pouches that close with snaps. 2 have loops that attach keyrings. They are in various colors of leather." loading="lazy" decoding="async" width="900" height="1200">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/eight-pocket-bifold/">
|
<a class="postlink" href="/textures-unite/">
|
||||||
<h2 data-ha-exclude="" id="eight-pocket-bifold">eight pocket bifold </h2>
|
<h2 data-ha-exclude="" id="textures-unite">textures unite </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>knit</li>
|
||||||
|
|
||||||
|
<li>highlight</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/eight-pocket-bifold.jpg" alt="A 3-picture collage showing a hand stitched full grain leather bifold wallet in dark plum leather. It has a main bill pocket and a asymmetrical interior with a hidden pocket and 3 card pockets on the right, and a hidden pocket and 2 card pockets on the left. The left front pocket has a small naturally occuring hole." loading="lazy" decoding="async" width="1000" height="1777">
|
<img src="/img/textures-unite.jpg" alt="a largely unseen person holds up an expansive knitted shawl, built in 6 sections of different textures and colors. in the background, trees and dappled sunlight." loading="lazy" decoding="async" width="1000" height="1334">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/stephanie-collar/">
|
<a class="postlink" href="/lobstah/">
|
||||||
<h2 data-ha-exclude="" id="stephanie-collar">stephanie collar </h2>
|
<h2 data-ha-exclude="" id="lobstah">lobstah </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/stephanie-collar.jpg" alt="A white woman with a shaved side cut wearing a black leather collar with a large dangling o-ring." loading="lazy" decoding="async" width="1000" height="562">
|
<img src="/img/lobstah.jpg" alt="Two red leather lobster ornaments, about 4-5 in long each." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1673,6 +1677,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/dragon-mask/` was built on 2026-05-14T03:50:32.026Z -->
|
<!-- This page `/dragon-mask/` was built on 2026-05-14T15:50:39.431Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/dyed-fiber.jpg" alt="4oz of yarn and a pound of wool, chunked out, drying on a drying rack outdoors. the yarn and half the wool is a mix of teals and greens; the other half of the wool is a beautiful orange-gold." loading="lazy" decoding="async" width="1000" height="1000">
|
<img class="modal-img" src="/img/dyed-fiber.jpg" alt="4oz of yarn and a pound of wool, chunked out, drying on a drying rack outdoors. the yarn and half the wool is a mix of teals and greens; the other half of the wool is a beautiful orange-gold." loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/dyed-fiber.jpg" alt="4oz of yarn and a pound of wool, chunked out, drying on a drying rack outdoors. the yarn and half the wool is a mix of teals and greens; the other half of the wool is a beautiful orange-gold." loading="lazy" decoding="async" width="1000" height="1000">
|
<img class="hero" src="/img/dyed-fiber.jpg" alt="4oz of yarn and a pound of wool, chunked out, drying on a drying rack outdoors. the yarn and half the wool is a mix of teals and greens; the other half of the wool is a beautiful orange-gold." loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
|
|
||||||
<p>hand-dyed with acid dyes</p>
|
<p>hand-dyed with acid dyes</p>
|
||||||
@@ -1595,6 +1597,20 @@ if (window.innerWidth > 650) {
|
|||||||
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/petrichor-handspun/">
|
||||||
|
<h2 data-ha-exclude="" id="petrichor-handspun">petrichor handspun </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>yarn</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/petrichor-handspun.jpg" alt="3 skeins of handspun yarn, 2 large and 1 small. the large ones are a rich earth-tone blend of reds, pinks, browns, and hints of green and gold. the smaller skein is similar but with a decidedly greener hue" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/icelandic-lamb-handspun/">
|
<a class="postlink" href="/icelandic-lamb-handspun/">
|
||||||
<h2 data-ha-exclude="" id="icelandic-lamb-handspun">icelandic lamb handspun </h2>
|
<h2 data-ha-exclude="" id="icelandic-lamb-handspun">icelandic lamb handspun </h2>
|
||||||
@@ -1610,29 +1626,15 @@ if (window.innerWidth > 650) {
|
|||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/charlie-the-alpaca-handspun/">
|
<a class="postlink" href="/rambouillet-handspun/">
|
||||||
<h2 data-ha-exclude="" id="charlie-the-alpaca-handspun">charlie the alpaca handspun </h2>
|
<h2 data-ha-exclude="" id="rambouillet-handspun">rambouillet handspun </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>yarn</li>
|
<li>yarn</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/charlie-alpaca-handspun.jpg" alt="one large skein (and technically a smaller skein hidden behind it) of sheen-y black alpaca handspun, in about a DK weight" loading="lazy" decoding="async" width="1000" height="666">
|
<img src="/img/rambouillet-handspun.jpg" alt="1 large and 2 small skeins of handspun yarn in a sport or DK weight that has been dyed in light and dark teal, green, and rusty green-gold." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/hand-dyed-gold-handspun/">
|
|
||||||
<h2 data-ha-exclude="" id="hand-dyed-gold-handspun">hand-dyed gold handspun </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>yarn</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/gold-handspun.jpg" alt="3 skeins, one small and two large, of a rich golden-orange handspun with light tonal effects, in about a DK weight" loading="lazy" decoding="async" width="1000" height="666">
|
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1668,6 +1670,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/dyeing-fiber/` was built on 2026-05-14T03:50:32.000Z -->
|
<!-- This page `/dyeing-fiber/` was built on 2026-05-14T15:50:39.422Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1541,7 +1543,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/loon.jpg" alt="Image unrelated to post. A loon rearing up with eir wings spread on a calm lake." loading="lazy" decoding="async" width="1000" height="666">
|
<img class="modal-img" src="/img/loon.jpg" alt="Image unrelated to post. A loon rearing up with eir wings spread on a calm lake." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/loon.jpg" alt="Image unrelated to post. A loon rearing up with eir wings spread on a calm lake." loading="lazy" decoding="async" width="1000" height="666">
|
<img class="hero" src="/img/loon.jpg" alt="Image unrelated to post. A loon rearing up with eir wings spread on a calm lake." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
|
|
||||||
<h2 id="artisans-cooperative"><a href="https://artisans.coop/pages/seller-profile/riverside-refuge-studio" target="_blank" rel="external">Artisans Cooperative</a></h2>
|
<h2 id="artisans-cooperative"><a href="https://artisans.coop/pages/seller-profile/riverside-refuge-studio" target="_blank" rel="external">Artisans Cooperative</a></h2>
|
||||||
@@ -1650,6 +1652,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/ecommerce-options/` was built on 2026-05-14T03:50:32.018Z -->
|
<!-- This page `/ecommerce-options/` was built on 2026-05-14T15:50:39.440Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/eight-pocket-bifold.jpg" alt="A 3-picture collage showing a hand stitched full grain leather bifold wallet in dark plum leather. It has a main bill pocket and a asymmetrical interior with a hidden pocket and 3 card pockets on the right, and a hidden pocket and 2 card pockets on the left. The left front pocket has a small naturally occuring hole." loading="lazy" decoding="async" width="1000" height="1777">
|
<img class="modal-img" src="/img/eight-pocket-bifold.jpg" alt="A 3-picture collage showing a hand stitched full grain leather bifold wallet in dark plum leather. It has a main bill pocket and a asymmetrical interior with a hidden pocket and 3 card pockets on the right, and a hidden pocket and 2 card pockets on the left. The left front pocket has a small naturally occuring hole." loading="lazy" decoding="async" width="1000" height="1777">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/eight-pocket-bifold.jpg" alt="A 3-picture collage showing a hand stitched full grain leather bifold wallet in dark plum leather. It has a main bill pocket and a asymmetrical interior with a hidden pocket and 3 card pockets on the right, and a hidden pocket and 2 card pockets on the left. The left front pocket has a small naturally occuring hole." loading="lazy" decoding="async" width="1000" height="1777">
|
<img class="hero" src="/img/eight-pocket-bifold.jpg" alt="A 3-picture collage showing a hand stitched full grain leather bifold wallet in dark plum leather. It has a main bill pocket and a asymmetrical interior with a hidden pocket and 3 card pockets on the right, and a hidden pocket and 2 card pockets on the left. The left front pocket has a small naturally occuring hole." loading="lazy" decoding="async" width="1000" height="1777">
|
||||||
|
|
||||||
|
|
||||||
<p>a slight change to the first wallet design. made of a variety of discount leather with various imperfections. fully hand-stitched.</p>
|
<p>a slight change to the first wallet design. made of a variety of discount leather with various imperfections. fully hand-stitched.</p>
|
||||||
@@ -1596,43 +1598,43 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/x-acto-knife-sheath/">
|
<a class="postlink" href="/gradient-purse-strap/">
|
||||||
<h2 data-ha-exclude="" id="x-acto-knife-sheath">x-acto knife sheath </h2>
|
<h2 data-ha-exclude="" id="gradient-purse-strap">gradient purse strap </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/knife-sheaths.jpg" alt="Several blades with leather sheaths, and a few extra sheaths. There's a #2 blade with an orange sheath with yellow stitching, a #11 blade with a blue sheath with light grey stitching, and a skiving knife with a plum sheath and pink stitching." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/gradient-purse-strap.jpg" alt="a coiled up purse strap in gradient cool colors - we can see green, teal, indigo, and a slightly pinkish purple. It has brass hardware and is stiched along its length with cream stitches." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/mom-bag/">
|
<a class="postlink" href="/aarons-mask/">
|
||||||
<h2 data-ha-exclude="" id="mom-bag">mom bag </h2>
|
<h2 data-ha-exclude="" id="aarons-mask">aaron's mask </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/mom-bag.jpg" alt="A leather bag sized for a large smartphone with a main pocket and a wraparound smaller pocket. It has a magnetic clasp." loading="lazy" decoding="async" width="900" height="1200">
|
<img src="/img/aaron-mask.jpg" alt="A brown/grey leather mask of a long snouted dog with visible teeth and red detailing." loading="lazy" decoding="async" width="900" height="1200">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/foldy-wallet/">
|
<a class="postlink" href="/moss-harness/">
|
||||||
<h2 data-ha-exclude="" id="foldy-wallet">foldy wallet </h2>
|
<h2 data-ha-exclude="" id="moss-harness">moss harness </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/foldy-wallet.jpg" alt="A four part collage showing a single piece of deep red leather folding up to become a card wallet." loading="lazy" decoding="async" width="1000" height="1000">
|
<img src="/img/moss-harness.jpg" alt="A nylon webbing harness in bright teal laid out on a desk." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1668,6 +1670,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/eight-pocket-bifold/` was built on 2026-05-14T03:50:32.019Z -->
|
<!-- This page `/eight-pocket-bifold/` was built on 2026-05-14T15:50:39.441Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/hellebore.jpg" alt="Image unrelated to post. Close up on a pale green hellebore flower." loading="lazy" decoding="async" width="1000" height="666">
|
<img class="modal-img" src="/img/hellebore.jpg" alt="Image unrelated to post. Close up on a pale green hellebore flower." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/hellebore.jpg" alt="Image unrelated to post. Close up on a pale green hellebore flower." loading="lazy" decoding="async" width="1000" height="666">
|
<img class="hero" src="/img/hellebore.jpg" alt="Image unrelated to post. Close up on a pale green hellebore flower." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
|
|
||||||
<p>recently I wrote <em>several</em> sites using <a href="https://www.11ty.dev/" target="_blank" rel="external">Eleventy</a> (4? 5?). Including, over the past few days, rewriting this one! That's right, if you're reading this, we're now running on 11ty and hosted by <a href="https://heckin.technology/" target="_blank" rel="external">heckin.technology</a>. See ya, GitHub. Won't miss ya.</p>
|
<p>recently I wrote <em>several</em> sites using <a href="https://www.11ty.dev/" target="_blank" rel="external">Eleventy</a> (4? 5?). Including, over the past few days, rewriting this one! That's right, if you're reading this, we're now running on 11ty and hosted by <a href="https://heckin.technology/" target="_blank" rel="external">heckin.technology</a>. See ya, GitHub. Won't miss ya.</p>
|
||||||
@@ -1901,29 +1903,29 @@ eleventyExcludeFromCollections: true
|
|||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/comparing-text-editors/">
|
<a class="postlink" href="/screen-reader-optimizations/">
|
||||||
<h2 data-ha-exclude="" id="comparing-text-editors">comparing text editors </h2>
|
<h2 data-ha-exclude="" id="screen-reader-optimizations">screen reader optimizations </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>software</li>
|
<li>software</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/horsetail.jpg" alt="Image unrelated to post. Close up on a horsetail plant's stem, with many small needle-like leaves emerging from all sides of the circular stem at each segmented joint." loading="lazy" decoding="async" width="1000" height="666">
|
<img src="/img/crow.jpg" alt="Image unrelated to post. A crow poses on driftwood against a whitish sky." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/intro-to-wireframing/">
|
<a class="postlink" href="/backend-accessibility/">
|
||||||
<h2 data-ha-exclude="" id="intro-to-wireframing">intro to wireframing </h2>
|
<h2 data-ha-exclude="" id="backend-accessibility">backend accessibility </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>software</li>
|
<li>software</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/aggregator-wireframes.jpg" alt="a figma page with 4 major sections titled aggregator, aggregator mobile, aggregator color, and aggregator mobile color. each section has 7 pages in it - all sections pretty clearly have the same 7 pages, with the mobile sections shown on mobile screens and the color sections in a rainbow of pastels rather than grayscale." loading="lazy" decoding="async" width="1000" height="1042">
|
<img src="/img/camelCase-print.jpg" alt="A carved stamp next to its print. The print reads '#camelCase' in a slightly formal-looking italic font." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1959,6 +1961,6 @@ eleventyExcludeFromCollections: true
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/eleventy-lessons/` was built on 2026-05-14T03:50:32.002Z -->
|
<!-- This page `/eleventy-lessons/` was built on 2026-05-14T15:50:39.424Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+32
-26
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/euphorbia-print.jpg" alt="A print in black ink on brown paper. It depicts a stem of euphorbia, a plant with long, thin leaves and many clustered flowers." loading="lazy" decoding="async" width="1000" height="1333">
|
<img class="modal-img" src="/img/euphorbia-print.jpg" alt="A print in black ink on brown paper. It depicts a stem of euphorbia, a plant with long, thin leaves and many clustered flowers." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/euphorbia-print.jpg" alt="A print in black ink on brown paper. It depicts a stem of euphorbia, a plant with long, thin leaves and many clustered flowers." loading="lazy" decoding="async" width="1000" height="1333">
|
<img class="hero" src="/img/euphorbia-print.jpg" alt="A print in black ink on brown paper. It depicts a stem of euphorbia, a plant with long, thin leaves and many clustered flowers." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
|
|
||||||
<p>I am euphorbic.</p>
|
<p>I am euphorbic.</p>
|
||||||
@@ -1596,24 +1598,8 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/five-of-them/">
|
<a class="postlink" href="/queer/">
|
||||||
<h2 data-ha-exclude="" id="five-of-them">five of them </h2>
|
<h2 data-ha-exclude="" id="queer">queer </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>shirt</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/five-of-them-print.jpg" alt="A block print of five mule deer grazing in a dark green field. The deer are partially negative space and partially brown ink detailing." loading="lazy" decoding="async" width="1000" height="594">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/swallowtail-on-snowdrops/">
|
|
||||||
<h2 data-ha-exclude="" id="swallowtail-on-snowdrops">swallowtail on snowdrops </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
@@ -1621,26 +1607,46 @@ if (window.innerWidth > 650) {
|
|||||||
|
|
||||||
<li>card</li>
|
<li>card</li>
|
||||||
|
|
||||||
<li>shirt</li>
|
<li>sticker</li>
|
||||||
|
|
||||||
|
<li>pin</li>
|
||||||
|
|
||||||
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/swallowtail-on-snowdrops-print.jpg" alt="A block print of a tiger swallowtail butterfly dangling from Japanese snowdrops, a white drooping flower." loading="lazy" decoding="async" width="1000" height="1332">
|
<img src="/img/queer-print.jpg" alt="A print of the word queer in black ink. The letters are rounded with elongated oval negative space." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/hair/">
|
<a class="postlink" href="/iris/">
|
||||||
<h2 data-ha-exclude="" id="hair">hair </h2>
|
<h2 data-ha-exclude="" id="iris">iris </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
<li>gender</li>
|
<li>card</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/hair-print.jpg" alt="A print in black ink of belly hair." loading="lazy" decoding="async" width="1000" height="710">
|
<img src="/img/iris-prints.jpg" alt="3 copies of the same print of iris flowers and a bud, done in slightly varied color schemes." loading="lazy" decoding="async" width="1000" height="562">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/chanterelle/">
|
||||||
|
<h2 data-ha-exclude="" id="chanterelle">chanterelle </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>card</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/chanterelle-print.jpg" alt="A print of two chanterelle mushrooms inked in a dark-to-light yellow gradient." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1676,6 +1682,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/euphorbia/` was built on 2026-05-14T03:50:32.032Z -->
|
<!-- This page `/euphorbia/` was built on 2026-05-14T15:50:39.415Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1560,7 +1562,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/fat-raccoon-print.jpg" alt="A block print in black ink of a rotund raccoon raising a welcoming paw towards the viewer." loading="lazy" decoding="async" width="1000" height="1333">
|
<img class="modal-img" src="/img/fat-raccoon-print.jpg" alt="A block print in black ink of a rotund raccoon raising a welcoming paw towards the viewer." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/fat-raccoon-print.jpg" alt="A block print in black ink of a rotund raccoon raising a welcoming paw towards the viewer." loading="lazy" decoding="async" width="1000" height="1333">
|
<img class="hero" src="/img/fat-raccoon-print.jpg" alt="A block print in black ink of a rotund raccoon raising a welcoming paw towards the viewer." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
|
|
||||||
<p>A friendly neighborhood visitor.</p>
|
<p>A friendly neighborhood visitor.</p>
|
||||||
@@ -1613,43 +1615,49 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/squarsh/">
|
<a class="postlink" href="/heron/">
|
||||||
<h2 data-ha-exclude="" id="squarsh">squarsh </h2>
|
<h2 data-ha-exclude="" id="heron">heron </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>card</li>
|
||||||
|
|
||||||
|
<li>shirt</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/squarsh-prints.jpg" alt="Two identical prints of a delicata squash. The body of the squash is cornsilk (muted yellow), the stem and stripes in mint green, and the shadows in lilac." loading="lazy" decoding="async" width="1000" height="1000">
|
<img src="/img/heron-print.jpg" alt="A print in black ink of a great blue heron, leaning downwards so that eir beak is level with eir feet." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/loon/">
|
<a class="postlink" href="/chanterelle/">
|
||||||
<h2 data-ha-exclude="" id="loon">loon </h2>
|
<h2 data-ha-exclude="" id="chanterelle">chanterelle </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>card</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/loon-print.jpg" alt="A print of a loon rearing up with wings spread" loading="lazy" decoding="async" width="1000" height="1333">
|
<img src="/img/chanterelle-print.jpg" alt="A print of two chanterelle mushrooms inked in a dark-to-light yellow gradient." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/kniphofia/">
|
<a class="postlink" href="/shirts/">
|
||||||
<h2 data-ha-exclude="" id="kniphofia">kniphofia </h2>
|
<h2 data-ha-exclude="" id="shirts">shirts! </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>shirt</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/kniphofia-print.jpg" alt="A print of a brightly colored flower in 4 layers of color" loading="lazy" decoding="async" width="1000" height="1333">
|
<img src="/img/shirts.jpg" alt="A row of shirts hanging in front of a window, with a variety of hand-printed designs." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1685,6 +1693,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/fat-raccoon/` was built on 2026-05-14T03:50:32.007Z -->
|
<!-- This page `/fat-raccoon/` was built on 2026-05-14T15:50:39.435Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/sheep.jpg" alt="Image unrelated to post. A mama sheep with two babies curled up next to her in a grassy field." loading="lazy" decoding="async" width="1000" height="450">
|
<img class="modal-img" src="/img/sheep.jpg" alt="Image unrelated to post. A mama sheep with two babies curled up next to her in a grassy field." loading="lazy" decoding="async" width="1000" height="450">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/sheep.jpg" alt="Image unrelated to post. A mama sheep with two babies curled up next to her in a grassy field." loading="lazy" decoding="async" width="1000" height="450">
|
<img class="hero" src="/img/sheep.jpg" alt="Image unrelated to post. A mama sheep with two babies curled up next to her in a grassy field." loading="lazy" decoding="async" width="1000" height="450">
|
||||||
|
|
||||||
|
|
||||||
<p>This is in response to an F.D Signifier video, <a href="https://www.youtube.com/watch?v=1QNjwM2a87g" target="_blank" rel="external">How to get RICH off weak men!</a> (go follow him!). It is written as a response video and the script has not been changed to fit this format.</p>
|
<p>This is in response to an F.D Signifier video, <a href="https://www.youtube.com/watch?v=1QNjwM2a87g" target="_blank" rel="external">How to get RICH off weak men!</a> (go follow him!). It is written as a response video and the script has not been changed to fit this format.</p>
|
||||||
@@ -1630,19 +1632,19 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/booby-congrats-on-the-top-surgery/">
|
<a class="postlink" href="/geese-trans-wrongs/">
|
||||||
<h2 data-ha-exclude="" id="booby-congrats-on-the-top-surgery">booby (congrats on the top surgery) </h2>
|
<h2 data-ha-exclude="" id="geese-trans-wrongs">geese/trans wrongs </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
<li>card</li>
|
<li>shirt</li>
|
||||||
|
|
||||||
<li>gender</li>
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/booby-card.jpg" alt="A landscape-oriented white card with a two-color print of a blue-footed booby." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/trans-wrongs-geese-print.jpg" alt="Two Canada geese and their reflections in the water. One is calmly swimming away, while the over leans over towards them and HONKS! Both have speech bubbles; the calm goose says 'trans rights!' while the honking goose says 'trans wrongs!'" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1666,15 +1668,17 @@ if (window.innerWidth > 650) {
|
|||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/queer-book-list/">
|
<a class="postlink" href="/bottom-growth/">
|
||||||
<h2 data-ha-exclude="" id="queer-book-list">queer book list </h2>
|
<h2 data-ha-exclude="" id="bottom-growth-mature">bottom growth (mature)</h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
<li>gender</li>
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/rainbow-books.jpg" alt="A bookshelf with a variety of books on LGBTQ+ themes, arranged roughly in rainbow order" loading="lazy" decoding="async" width="1000" height="562">
|
<img src="/img/bottom-growth-prints.jpg" alt="4 copies of the same print in various color schemes, laid out in a 2x2 grid. The print shows testosterone-driven bottom growth of a clitoris. The color schemes are, clockwise from top right, brown on turquoise, red on cornsilk (muted yellow), violet on magenta, and mint green on lilac." class="blur" loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1710,6 +1714,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/fd-signifier-and-oppositional-sexism/` was built on 2026-05-14T03:50:32.031Z -->
|
<!-- This page `/fd-signifier-and-oppositional-sexism/` was built on 2026-05-14T15:50:39.413Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1541,7 +1543,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/fedilearns.jpg" alt="the logo for fedilearns, which is a grey newspaper icon with the fediverse icon (a rainbow pentagon) superimposed." loading="lazy" decoding="async" width="512" height="472">
|
<img class="modal-img" src="/img/fedilearns.jpg" alt="the logo for fedilearns, which is a grey newspaper icon with the fediverse icon (a rainbow pentagon) superimposed." loading="lazy" decoding="async" width="512" height="472">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/fedilearns.jpg" alt="the logo for fedilearns, which is a grey newspaper icon with the fediverse icon (a rainbow pentagon) superimposed." loading="lazy" decoding="async" width="512" height="472">
|
<img class="hero" src="/img/fedilearns.jpg" alt="the logo for fedilearns, which is a grey newspaper icon with the fediverse icon (a rainbow pentagon) superimposed." loading="lazy" decoding="async" width="512" height="472">
|
||||||
|
|
||||||
|
|
||||||
<p>My new project <a href="https://fedilearns.fyi" target="_blank" rel="external">FediLearns</a> is a learning-focused classifieds page for the fediverse. Check it out!</p>
|
<p>My new project <a href="https://fedilearns.fyi" target="_blank" rel="external">FediLearns</a> is a learning-focused classifieds page for the fediverse. Check it out!</p>
|
||||||
@@ -1603,6 +1605,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/fedilearns/` was built on 2026-05-14T03:50:32.002Z -->
|
<!-- This page `/fedilearns/` was built on 2026-05-14T15:50:39.429Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/fedizinefest-2025.png" alt="A logo in purple, yellow, blue, and green. A piece of paper folded into 8 sections reads FEDI ZINE; it resembles the classic folding pattern of a simple 8-page zine made from printer paper. Next to it, a fully folded zine reads fest 2025." loading="lazy" decoding="async" width="729" height="799">
|
<img class="modal-img" src="/img/fedizinefest-2025.png" alt="A logo in purple, yellow, blue, and green. A piece of paper folded into 8 sections reads FEDI ZINE; it resembles the classic folding pattern of a simple 8-page zine made from printer paper. Next to it, a fully folded zine reads fest 2025." loading="lazy" decoding="async" width="729" height="799">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/fedizinefest-2025.png" alt="A logo in purple, yellow, blue, and green. A piece of paper folded into 8 sections reads FEDI ZINE; it resembles the classic folding pattern of a simple 8-page zine made from printer paper. Next to it, a fully folded zine reads fest 2025." loading="lazy" decoding="async" width="729" height="799">
|
<img class="hero" src="/img/fedizinefest-2025.png" alt="A logo in purple, yellow, blue, and green. A piece of paper folded into 8 sections reads FEDI ZINE; it resembles the classic folding pattern of a simple 8-page zine made from printer paper. Next to it, a fully folded zine reads fest 2025." loading="lazy" decoding="async" width="729" height="799">
|
||||||
|
|
||||||
|
|
||||||
<p>FediZineFest returns for its second year. Read more about it and sign up on the <a href="https://fedizinefest.fyi" target="_blank" rel="external">fediZineFest 2025 website</a>.</p>
|
<p>FediZineFest returns for its second year. Read more about it and sign up on the <a href="https://fedizinefest.fyi" target="_blank" rel="external">fediZineFest 2025 website</a>.</p>
|
||||||
@@ -1613,22 +1615,6 @@ if (window.innerWidth > 650) {
|
|||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/on-the-shoulders-of-giants/">
|
|
||||||
<h2 data-ha-exclude="" id="on-the-shoulders-of-giants">on the shoulders of giants </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>zine</li>
|
|
||||||
|
|
||||||
<li>knit</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/on-the-shoulders.jpg" alt="ok so. five image collage showing the front, 3 inner spreads, and back of a riso-printed zine in green and light blue. it's called 'on the shoulders of giants' and it's about a knitting technique I learned from Stephen west and how I built on that technique. it talks about joining two adjacent panels without seaming, instead knitting the second panel onto the selvedge of the first. then it uses that technique to approach two panels knit with significantly different weights of yarn" loading="lazy" decoding="async" width="1000" height="1000">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/gender-as-a-proxy-variable/">
|
<a class="postlink" href="/gender-as-a-proxy-variable/">
|
||||||
<h2 data-ha-exclude="" id="gender-as-a-proxy-variable">gender as a proxy variable </h2>
|
<h2 data-ha-exclude="" id="gender-as-a-proxy-variable">gender as a proxy variable </h2>
|
||||||
@@ -1645,6 +1631,22 @@ if (window.innerWidth > 650) {
|
|||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/on-the-shoulders-of-giants/">
|
||||||
|
<h2 data-ha-exclude="" id="on-the-shoulders-of-giants">on the shoulders of giants </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>zine</li>
|
||||||
|
|
||||||
|
<li>knit</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/on-the-shoulders.jpg" alt="ok so. five image collage showing the front, 3 inner spreads, and back of a riso-printed zine in green and light blue. it's called 'on the shoulders of giants' and it's about a knitting technique I learned from Stephen west and how I built on that technique. it talks about joining two adjacent panels without seaming, instead knitting the second panel onto the selvedge of the first. then it uses that technique to approach two panels knit with significantly different weights of yarn" loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
</ol>
|
</ol>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
@@ -1676,6 +1678,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/fedizinefest-2025/` was built on 2026-05-14T03:50:32.033Z -->
|
<!-- This page `/fedizinefest-2025/` was built on 2026-05-14T15:50:39.416Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/fire-ice-handspun.jpg" alt="2 skeins, one large and one small, of a heathered orange yarn with hints of blue in about a DK or worsted weight." loading="lazy" decoding="async" width="1000" height="666">
|
<img class="modal-img" src="/img/fire-ice-handspun.jpg" alt="2 skeins, one large and one small, of a heathered orange yarn with hints of blue in about a DK or worsted weight." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/fire-ice-handspun.jpg" alt="2 skeins, one large and one small, of a heathered orange yarn with hints of blue in about a DK or worsted weight." loading="lazy" decoding="async" width="1000" height="666">
|
<img class="hero" src="/img/fire-ice-handspun.jpg" alt="2 skeins, one large and one small, of a heathered orange yarn with hints of blue in about a DK or worsted weight." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
|
|
||||||
<p>Fiber from <a href="https://www.etsy.com/shop/JakiraFarms" target="_blank" rel="external">Jakira Farms</a> in Fire & Ice colorway. 100% merino.</p>
|
<p>Fiber from <a href="https://www.etsy.com/shop/JakiraFarms" target="_blank" rel="external">Jakira Farms</a> in Fire & Ice colorway. 100% merino.</p>
|
||||||
@@ -1596,43 +1598,43 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/light-grey-jacobs-handspun/">
|
<a class="postlink" href="/charlie-the-alpaca-handspun/">
|
||||||
<h2 data-ha-exclude="" id="light-grey-jacobs-handspun">light grey jacobs handspun </h2>
|
<h2 data-ha-exclude="" id="charlie-the-alpaca-handspun">charlie the alpaca handspun </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>yarn</li>
|
<li>yarn</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/light-grey-jacobs.jpg" alt="a skein of light grey handspun yarn" loading="lazy" decoding="async" width="1000" height="666">
|
<img src="/img/charlie-alpaca-handspun.jpg" alt="one large skein (and technically a smaller skein hidden behind it) of sheen-y black alpaca handspun, in about a DK weight" loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/spinning-plants/">
|
<a class="postlink" href="/handspun-yarn-in-party-mix-and-orange-gold/">
|
||||||
<h2 data-ha-exclude="" id="spinning-plants">spinning plants </h2>
|
<h2 data-ha-exclude="" id="handspun-yarn-in-party-mix-and-orange-gold">handspun yarn in party mix and orange-gold </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>yarn</li>
|
<li>yarn</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/plant-handspun.jpg" alt="6 small skeins of handspun yarn, each made from a different plant fiber. from top, we have flax (medium brown, rough); what is probably lotus (golden, shiny and soft); banana (white and semi shiny); hemp (light brown, rough); tencel (white and very shiny); ramie (a particularly small skein, white and semi shiny)" loading="lazy" decoding="async" width="1000" height="874">
|
<img src="/img/handspun0.jpg" alt="4 skeins of handspun yarn, two in a somewhat pastel multicolor and two in a blend of orange, gold, and white." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/ruby-the-alpaca-handspun/">
|
<a class="postlink" href="/orion-handspun/">
|
||||||
<h2 data-ha-exclude="" id="ruby-the-alpaca-handspun">ruby the alpaca handspun </h2>
|
<h2 data-ha-exclude="" id="orion-handspun">orion handspun </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>yarn</li>
|
<li>yarn</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/ruby-alpaca-handspun.jpg" alt="one large skein and two smaller skeins of a rich chocolatey brown alpaca handspun, in about a DK weight" loading="lazy" decoding="async" width="1000" height="666">
|
<img src="/img/orion-handspun.jpg" alt="3 skeins of handspun yarn, 1 large and 2 small. One of the small skeins is a little more inconsistent weight than the other two - this one was spun on drop spindle about 2 years ago. The other two are about a sport or maybe a DK weight. All three are a gold colorway with tiny hints of orange and a pale light green." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1668,6 +1670,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/fire-and-ice-handspun/` was built on 2026-05-14T03:50:32.001Z -->
|
<!-- This page `/fire-and-ice-handspun/` was built on 2026-05-14T15:50:39.422Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1555,7 +1557,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/fishhook-keychain-nonbinary.jpg" alt="a keychain with an iridescent fishhook style attachment linked via leather to an iridescent keyring. the leather is stitched with nonbinary flag colors." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/fishhook-keychain-nonbinary.jpg" alt="a keychain with an iridescent fishhook style attachment linked via leather to an iridescent keyring. the leather is stitched with nonbinary flag colors." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/fishhook-keychain-nonbinary.jpg" alt="a keychain with an iridescent fishhook style attachment linked via leather to an iridescent keyring. the leather is stitched with nonbinary flag colors." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/fishhook-keychain-nonbinary.jpg" alt="a keychain with an iridescent fishhook style attachment linked via leather to an iridescent keyring. the leather is stitched with nonbinary flag colors." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<p>Available for lots of flags! Except the lesbian sunset flag because it's really hard to color match :(</p>
|
<p>Available for lots of flags! Except the lesbian sunset flag because it's really hard to color match :(</p>
|
||||||
@@ -1601,45 +1603,51 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/long-zipper-bifold/">
|
<a class="postlink" href="/geese-trans-wrongs/">
|
||||||
<h2 data-ha-exclude="" id="long-zipper-bifold">long zipper bifold </h2>
|
<h2 data-ha-exclude="" id="geese-trans-wrongs">geese/trans wrongs </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>shirt</li>
|
||||||
|
|
||||||
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/long-zipper-bifold.jpg" alt="A collage showing an orange leather wallet with a long zipper running the length of the outside." loading="lazy" decoding="async" width="1000" height="1000">
|
<img src="/img/trans-wrongs-geese-print.jpg" alt="Two Canada geese and their reflections in the water. One is calmly swimming away, while the over leans over towards them and HONKS! Both have speech bubbles; the calm goose says 'trans rights!' while the honking goose says 'trans wrongs!'" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/pinatex-wallet-with-zipper/">
|
<a class="postlink" href="/congrats-on-the-gay/">
|
||||||
<h2 data-ha-exclude="" id="pinatex-wallet-with-zipper">piñatex wallet with zipper </h2>
|
<h2 data-ha-exclude="" id="congrats-on-the-gay">congrats on the gay </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>card</li>
|
||||||
|
|
||||||
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/pinatex-ten-pocket-bifold.jpg" alt="A two-picture collage showing the inside and outside of a wallet made with piñatex, a leather alternative made from pineapple leaves. It is two tone blue with a pink accent and has a zippered pocket built in." loading="lazy" decoding="async" width="1000" height="1331">
|
<img src="/img/congrats-on-the-gay.jpg" alt="A greeting card reading, in black. 'Congrats on the,' and then, in rainbow, 'Gay!'" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/little-critter-pouch/">
|
<a class="postlink" href="/wrap-bracelets/">
|
||||||
<h2 data-ha-exclude="" id="little-critter-pouch">little critter pouch </h2>
|
<h2 data-ha-exclude="" id="wrap-bracelets">wrap bracelets </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
<li>highlight</li>
|
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/little-critter-pouch.jpg" alt="A leather pouch shaped a bit like a d10 but with eight sides. It has a rainbow zippered opening and a wristlet strap." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/leather-wrap-bracelets.jpg" alt="two wrists, each wearing a black leather wrap bracelet. the upper bracelet is a thin strap wrapped 3 times around the wrist. the lower bracelet wraps twice, with a thicker strap, and has carefully placed spikes that avoid the wrap spots." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1675,6 +1683,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/fishhook-pride-keychains/` was built on 2026-05-14T03:50:32.022Z -->
|
<!-- This page `/fishhook-pride-keychains/` was built on 2026-05-14T15:50:39.444Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1555,7 +1557,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/five-of-them-print.jpg" alt="A block print of five mule deer grazing in a dark green field. The deer are partially negative space and partially brown ink detailing." loading="lazy" decoding="async" width="1000" height="594">
|
<img class="modal-img" src="/img/five-of-them-print.jpg" alt="A block print of five mule deer grazing in a dark green field. The deer are partially negative space and partially brown ink detailing." loading="lazy" decoding="async" width="1000" height="594">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/five-of-them-print.jpg" alt="A block print of five mule deer grazing in a dark green field. The deer are partially negative space and partially brown ink detailing." loading="lazy" decoding="async" width="1000" height="594">
|
<img class="hero" src="/img/five-of-them-print.jpg" alt="A block print of five mule deer grazing in a dark green field. The deer are partially negative space and partially brown ink detailing." loading="lazy" decoding="async" width="1000" height="594">
|
||||||
|
|
||||||
|
|
||||||
<p>Photographed in the backyard.</p>
|
<p>Photographed in the backyard.</p>
|
||||||
@@ -1608,26 +1610,30 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/kestrel-zine/">
|
<a class="postlink" href="/girldick/">
|
||||||
<h2 data-ha-exclude="" id="kestrel-zine">kestrel zine </h2>
|
<h2 data-ha-exclude="" id="girldick-mature">girldick (mature)</h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
<li>zine</li>
|
<li>sticker</li>
|
||||||
|
|
||||||
<li>highlight</li>
|
<li>shirt</li>
|
||||||
|
|
||||||
|
<li>pin</li>
|
||||||
|
|
||||||
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/kestrel-zine.jpg" alt="A 5 photo collage showing the front and back cover as well as 3 full spreads of a folded zine about Kestrel, my dog, who is a 65lb Malinois with a goofy smile and floppy ears. it is printed in two layers of color, blue and orange, and each image depicts Kestrel in various posts... alert and watchful, resting, looking mopey, wearing a sweatshirt." loading="lazy" decoding="async" width="1000" height="1000">
|
<img src="/img/girldick-shirt.jpg" alt="A butch cooking and wearing a cropped tee with blue cap sleeves that reads girldick in blue G.I.Joe font." class="blur" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/congrats-on-the-gay/">
|
<a class="postlink" href="/happy-bihrtday/">
|
||||||
<h2 data-ha-exclude="" id="congrats-on-the-gay">congrats on the gay </h2>
|
<h2 data-ha-exclude="" id="happy-bihrtday">happy biHRTday </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
@@ -1638,21 +1644,21 @@ if (window.innerWidth > 650) {
|
|||||||
<li>gender</li>
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/congrats-on-the-gay.jpg" alt="A greeting card reading, in black. 'Congrats on the,' and then, in rainbow, 'Gay!'" loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/happy-bihrtday-card-print.jpg" alt="A card and print in the same design - a bouncy, cheery font reading 'happy biHRTday'" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/squarsh/">
|
<a class="postlink" href="/become-unbutterable/">
|
||||||
<h2 data-ha-exclude="" id="squarsh">squarsh </h2>
|
<h2 data-ha-exclude="" id="become-unbutterable">become unbutterable </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/squarsh-prints.jpg" alt="Two identical prints of a delicata squash. The body of the squash is cornsilk (muted yellow), the stem and stripes in mint green, and the shadows in lilac." loading="lazy" decoding="async" width="1000" height="1000">
|
<img src="/img/become-unbutterable.jpg" alt="3 copies of the same stamp in orange ink are spread out next to the hand carved rubber stamp they were made from. They show a cat lying on his back with paws curled, holding a butter knife in his mouth. Text around the cat reads, in all caps, 'become unbutterable.'" loading="lazy" decoding="async" width="1000" height="562">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1688,6 +1694,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/five-of-them/` was built on 2026-05-14T03:50:32.010Z -->
|
<!-- This page `/five-of-them/` was built on 2026-05-14T15:50:39.437Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/fix-your-hearts-print.jpg" alt="2 copies of the same print, one in black ink and one in dark teal. The print is text that reads 'fix your hearts or die', with the text shaped into a somewhat long and narrow heart." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/fix-your-hearts-print.jpg" alt="2 copies of the same print, one in black ink and one in dark teal. The print is text that reads 'fix your hearts or die', with the text shaped into a somewhat long and narrow heart." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/fix-your-hearts-print.jpg" alt="2 copies of the same print, one in black ink and one in dark teal. The print is text that reads 'fix your hearts or die', with the text shaped into a somewhat long and narrow heart." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/fix-your-hearts-print.jpg" alt="2 copies of the same print, one in black ink and one in dark teal. The print is text that reads 'fix your hearts or die', with the text shaped into a somewhat long and narrow heart." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@@ -1595,24 +1597,24 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/artisans-cooperative-cards/">
|
<a class="postlink" href="/luminescent/">
|
||||||
<h2 data-ha-exclude="" id="artisans-cooperative-cards">artisans cooperative cards </h2>
|
<h2 data-ha-exclude="" id="luminescent-mature">luminescent (mature)</h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
<li>card</li>
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/artisans-coop-cards.jpg" alt="2 white greeting cards with the Artisans Cooperative logo, a chicken. One card has a single print of the chicken in black ink, and the other has two overlapping prints in blue and red ink" loading="lazy" decoding="async" width="1000" height="1000">
|
<img src="/img/luminescent-print.jpg" alt="A print of a tattooed woman in bright highlighter yellow underwear." class="blur" loading="lazy" decoding="async" width="900" height="1200">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/fat-raccoon/">
|
<a class="postlink" href="/trans-rights-skull/">
|
||||||
<h2 data-ha-exclude="" id="fat-raccoon">fat raccoon </h2>
|
<h2 data-ha-exclude="" id="trans-rights-skull">trans rights skull </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
@@ -1620,28 +1622,28 @@ if (window.innerWidth > 650) {
|
|||||||
|
|
||||||
<li>card</li>
|
<li>card</li>
|
||||||
|
|
||||||
<li>shirt</li>
|
<li>sticker</li>
|
||||||
|
|
||||||
|
<li>pin</li>
|
||||||
|
|
||||||
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/fat-raccoon-print.jpg" alt="A block print in black ink of a rotund raccoon raising a welcoming paw towards the viewer." loading="lazy" decoding="async" width="1000" height="1333">
|
<img src="/img/trans-rights-print.jpg" alt="A print in mostly black ink of a smiling skull with a speech bubble. In pink and blue, the speech bubble reads 'trans rights!'" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/hummingbird-become-ungovernable/">
|
<a class="postlink" href="/block-printing-transfer-method/">
|
||||||
<h2 data-ha-exclude="" id="hummingbird-become-ungovernable">hummingbird become ungovernable </h2>
|
<h2 data-ha-exclude="" id="block-printing-transfer-method">block printing transfer method </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
<li>card</li>
|
|
||||||
|
|
||||||
<li>shirt</li>
|
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/hummingbird-ungovernable-print.jpg" alt="A block print in black and orange ink of a rufous hummingbird, tail flared, hovering in midair. Clutched in eir tiny claws is a banner that waves in the wind and reads 'become ungovernable'" loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/transfer-wip.jpg" alt="A pink block of carving material with a printed design of a bird attached to it. The paper has been partially rubbed away (process described in this post) to reveal the inked design on the carving material." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1677,6 +1679,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/fix-your-hearts/` was built on 2026-05-14T03:50:32.024Z -->
|
<!-- This page `/fix-your-hearts/` was built on 2026-05-14T15:50:39.429Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+32
-22
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1555,7 +1557,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/flatfish-print.jpg" alt="A print of a simple flatfish design inked in sepia." loading="lazy" decoding="async" width="1000" height="1333">
|
<img class="modal-img" src="/img/flatfish-print.jpg" alt="A print of a simple flatfish design inked in sepia." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/flatfish-print.jpg" alt="A print of a simple flatfish design inked in sepia." loading="lazy" decoding="async" width="1000" height="1333">
|
<img class="hero" src="/img/flatfish-print.jpg" alt="A print of a simple flatfish design inked in sepia." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
|
|
||||||
<p>Hand carved stamp of a slightly goofy looking flatfish.</p>
|
<p>Hand carved stamp of a slightly goofy looking flatfish.</p>
|
||||||
@@ -1608,8 +1610,8 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/junco/">
|
<a class="postlink" href="/geese/">
|
||||||
<h2 data-ha-exclude="" id="junco">junco </h2>
|
<h2 data-ha-exclude="" id="geese">geese </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
@@ -1617,29 +1619,17 @@ if (window.innerWidth > 650) {
|
|||||||
|
|
||||||
<li>card</li>
|
<li>card</li>
|
||||||
|
|
||||||
|
<li>shirt</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/junco-print.jpg" alt="A print of a junco mid-takeoff from a branch. Eir head is inked in black, body in gray, and the branch in sepia." loading="lazy" decoding="async" width="1000" height="1333">
|
<img src="/img/geese-print.jpg" alt="Two Canada geese and their reflections in the water. One is calmly swimming away, while the over leans over and HONKS!" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/brown-creeper/">
|
<a class="postlink" href="/flicker/">
|
||||||
<h2 data-ha-exclude="" id="brown-creeper">brown creeper </h2>
|
<h2 data-ha-exclude="" id="flicker">flicker </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/brown-creeper-print.jpg" alt="2 copies of the same print side by side. In yellow, black, and purple ink, a brown creeper, a small bird, is depicted, well camouflaged against a tree trunk." loading="lazy" decoding="async" width="1000" height="1000">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/spotted-towhee/">
|
|
||||||
<h2 data-ha-exclude="" id="spotted-towhee">spotted towhee </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
@@ -1647,8 +1637,28 @@ if (window.innerWidth > 650) {
|
|||||||
|
|
||||||
<li>card</li>
|
<li>card</li>
|
||||||
|
|
||||||
|
<li>shirt</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/spotted-towhee-print.jpg" alt="A block print of a spotted towhee mid-leap." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/flicker-print.jpg" alt="A print in black, brown, and red ink of a northern flicker (a type of woodpecker). Viewed from the back, he is looking over his shoulder and upward towards something unseen above him (my bird feeder)." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/heron/">
|
||||||
|
<h2 data-ha-exclude="" id="heron">heron </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>card</li>
|
||||||
|
|
||||||
|
<li>shirt</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/heron-print.jpg" alt="A print in black ink of a great blue heron, leaning downwards so that eir beak is level with eir feet." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1684,6 +1694,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/flatfish/` was built on 2026-05-14T03:50:32.003Z -->
|
<!-- This page `/flatfish/` was built on 2026-05-14T15:50:39.433Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+26
-26
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1560,7 +1562,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/flicker-print.jpg" alt="A print in black, brown, and red ink of a northern flicker (a type of woodpecker). Viewed from the back, he is looking over his shoulder and upward towards something unseen above him (my bird feeder)." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/flicker-print.jpg" alt="A print in black, brown, and red ink of a northern flicker (a type of woodpecker). Viewed from the back, he is looking over his shoulder and upward towards something unseen above him (my bird feeder)." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/flicker-print.jpg" alt="A print in black, brown, and red ink of a northern flicker (a type of woodpecker). Viewed from the back, he is looking over his shoulder and upward towards something unseen above him (my bird feeder)." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/flicker-print.jpg" alt="A print in black, brown, and red ink of a northern flicker (a type of woodpecker). Viewed from the back, he is looking over his shoulder and upward towards something unseen above him (my bird feeder)." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<p>Hand carved set of stamps of a northern flicker, hungrily eyeing our bird feeder.</p>
|
<p>Hand carved set of stamps of a northern flicker, hungrily eyeing our bird feeder.</p>
|
||||||
@@ -1613,22 +1615,38 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/block-printing-transfer-method/">
|
<a class="postlink" href="/luminescent/">
|
||||||
<h2 data-ha-exclude="" id="block-printing-transfer-method">block printing transfer method </h2>
|
<h2 data-ha-exclude="" id="luminescent-mature">luminescent (mature)</h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>gender</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/luminescent-print.jpg" alt="A print of a tattooed woman in bright highlighter yellow underwear." class="blur" loading="lazy" decoding="async" width="900" height="1200">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/kniphofia/">
|
||||||
|
<h2 data-ha-exclude="" id="kniphofia">kniphofia </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/transfer-wip.jpg" alt="A pink block of carving material with a printed design of a bird attached to it. The paper has been partially rubbed away (process described in this post) to reveal the inked design on the carving material." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/kniphofia-print.jpg" alt="A print of a brightly colored flower in 4 layers of color" loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/lupine/">
|
<a class="postlink" href="/swallowtail-on-snowdrops/">
|
||||||
<h2 data-ha-exclude="" id="lupine">lupine </h2>
|
<h2 data-ha-exclude="" id="swallowtail-on-snowdrops">swallowtail on snowdrops </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
@@ -1639,25 +1657,7 @@ if (window.innerWidth > 650) {
|
|||||||
<li>shirt</li>
|
<li>shirt</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/lupine-prints.jpg" alt="6 versions of a print of lupine flowers with the leaves inked in light green and the blossoms inked in a variety of blues, purples, and pinks." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/swallowtail-on-snowdrops-print.jpg" alt="A block print of a tiger swallowtail butterfly dangling from Japanese snowdrops, a white drooping flower." loading="lazy" decoding="async" width="1000" height="1332">
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/nonbinary-flag/">
|
|
||||||
<h2 data-ha-exclude="" id="nonbinary-flag">nonbinary flag </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>card</li>
|
|
||||||
|
|
||||||
<li>gender</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/nonbinary-flag-print.jpg" alt="A print of a nonbinary flag waving, with yellow, white (uninked), purple, and black stripes." loading="lazy" decoding="async" width="1000" height="750">
|
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1693,6 +1693,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/flicker/` was built on 2026-05-14T03:50:32.005Z -->
|
<!-- This page `/flicker/` was built on 2026-05-14T15:50:39.434Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/flocked-notebook.jpg" alt="A two panel collage showing the cover and endpapers of a thick notebook." loading="lazy" decoding="async" width="1000" height="1331">
|
<img class="modal-img" src="/img/flocked-notebook.jpg" alt="A two panel collage showing the cover and endpapers of a thick notebook." loading="lazy" decoding="async" width="1000" height="1331">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/flocked-notebook.jpg" alt="A two panel collage showing the cover and endpapers of a thick notebook." loading="lazy" decoding="async" width="1000" height="1331">
|
<img class="hero" src="/img/flocked-notebook.jpg" alt="A two panel collage showing the cover and endpapers of a thick notebook." loading="lazy" decoding="async" width="1000" height="1331">
|
||||||
|
|
||||||
|
|
||||||
<p>A landscape-oriented notebook with black paper and a fuzzy cover. yes. it's fuzzy.</p>
|
<p>A landscape-oriented notebook with black paper and a fuzzy cover. yes. it's fuzzy.</p>
|
||||||
@@ -1608,6 +1610,20 @@ if (window.innerWidth > 650) {
|
|||||||
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/orange-green-journal/">
|
||||||
|
<h2 data-ha-exclude="" id="orange-green-journal">orange green journal </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>book</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/orange-green-journal.jpg" alt="A 4-part collage of a slim handbound book." loading="lazy" decoding="async" width="1000" height="1777">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/green-memo-pad/">
|
<a class="postlink" href="/green-memo-pad/">
|
||||||
<h2 data-ha-exclude="" id="green-memo-pad">green memo pad </h2>
|
<h2 data-ha-exclude="" id="green-memo-pad">green memo pad </h2>
|
||||||
@@ -1623,29 +1639,17 @@ if (window.innerWidth > 650) {
|
|||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/baseball-journal/">
|
<a class="postlink" href="/leather-long-stitch-journals/">
|
||||||
<h2 data-ha-exclude="" id="baseball-journal">baseball journal </h2>
|
<h2 data-ha-exclude="" id="leather-long-stitch-journals">leather long-stitch journals </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>leather</li>
|
||||||
|
|
||||||
<li>book</li>
|
<li>book</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/baseball-journal.jpg" alt="A 3-part collage of a leather-covered book with baseball-style stitching across the spine." loading="lazy" decoding="async" width="1000" height="1000">
|
<img src="/img/long-stitch-journals.jpg" alt="A stack of hand-bound journals showing long stitches aligned with the spines. They are leather bound and have tie closures." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/orange-green-journal/">
|
|
||||||
<h2 data-ha-exclude="" id="orange-green-journal">orange green journal </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>book</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/orange-green-journal.jpg" alt="A 4-part collage of a slim handbound book." loading="lazy" decoding="async" width="1000" height="1777">
|
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1681,6 +1685,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/flocked-notebook/` was built on 2026-05-14T03:50:31.999Z -->
|
<!-- This page `/flocked-notebook/` was built on 2026-05-14T15:50:39.407Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/foldy-thumb-slide.jpg" alt="A card wallet with one main pocket and one quick access slot with a thumb slide. The cover of the main pocket curves around the thumb slide." loading="lazy" decoding="async" width="1000" height="1000">
|
<img class="modal-img" src="/img/foldy-thumb-slide.jpg" alt="A card wallet with one main pocket and one quick access slot with a thumb slide. The cover of the main pocket curves around the thumb slide." loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/foldy-thumb-slide.jpg" alt="A card wallet with one main pocket and one quick access slot with a thumb slide. The cover of the main pocket curves around the thumb slide." loading="lazy" decoding="async" width="1000" height="1000">
|
<img class="hero" src="/img/foldy-thumb-slide.jpg" alt="A card wallet with one main pocket and one quick access slot with a thumb slide. The cover of the main pocket curves around the thumb slide." loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
|
|
||||||
<p>Designed for standard credit cards, not business cards.</p>
|
<p>Designed for standard credit cards, not business cards.</p>
|
||||||
@@ -1596,43 +1598,43 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/long-zipper-bifold/">
|
<a class="postlink" href="/vertical-bifold/">
|
||||||
<h2 data-ha-exclude="" id="long-zipper-bifold">long zipper bifold </h2>
|
<h2 data-ha-exclude="" id="vertical-bifold">vertical bifold </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/long-zipper-bifold.jpg" alt="A collage showing an orange leather wallet with a long zipper running the length of the outside." loading="lazy" decoding="async" width="1000" height="1000">
|
<img src="/img/vertical-bifold.jpg" alt="A collage showing a hand-stitched leather vertical bifold wallet with 6 card pockets, 2 hidden pockets, and 1 bill pocket." loading="lazy" decoding="async" width="1000" height="1777">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/brookes-collar/">
|
<a class="postlink" href="/stephanie-collar/">
|
||||||
<h2 data-ha-exclude="" id="brookes-collar">brooke's collar </h2>
|
<h2 data-ha-exclude="" id="stephanie-collar">stephanie collar </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/lined-shearling-collar.jpg" alt="A green leather collar lined with brown/grey shearling and fitted with two sizes of silver-toned spikes." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/stephanie-collar.jpg" alt="A white woman with a shaved side cut wearing a black leather collar with a large dangling o-ring." loading="lazy" decoding="async" width="1000" height="562">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/soras-collar/">
|
<a class="postlink" href="/triangle-pouch/">
|
||||||
<h2 data-ha-exclude="" id="soras-collar">sora's collar </h2>
|
<h2 data-ha-exclude="" id="triangle-pouch">triangle pouch </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/sora-collar.jpg" alt="A collage showing a red and black leather dog collar tooled with roses and the name Sora. It's fully stitched with dark red stitching and has brass hardware." loading="lazy" decoding="async" width="1000" height="1000">
|
<img src="/img/triangle-pouch.jpg" alt="5 small triangular pouches made of leather in two sizes and various colors." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1668,6 +1670,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/foldy-wallet-with-thumb-slide/` was built on 2026-05-14T03:50:32.029Z -->
|
<!-- This page `/foldy-wallet-with-thumb-slide/` was built on 2026-05-14T15:50:39.409Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/foldy-wallet.jpg" alt="A four part collage showing a single piece of deep red leather folding up to become a card wallet." loading="lazy" decoding="async" width="1000" height="1000">
|
<img class="modal-img" src="/img/foldy-wallet.jpg" alt="A four part collage showing a single piece of deep red leather folding up to become a card wallet." loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/foldy-wallet.jpg" alt="A four part collage showing a single piece of deep red leather folding up to become a card wallet." loading="lazy" decoding="async" width="1000" height="1000">
|
<img class="hero" src="/img/foldy-wallet.jpg" alt="A four part collage showing a single piece of deep red leather folding up to become a card wallet." loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
|
|
||||||
<p>Single piece construction for easy care - just unfold/pull out the tabs!</p>
|
<p>Single piece construction for easy care - just unfold/pull out the tabs!</p>
|
||||||
@@ -1596,43 +1598,43 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/shrimp-cat-toy/">
|
<a class="postlink" href="/makers-mark-keychain/">
|
||||||
<h2 data-ha-exclude="" id="shrimp-cat-toy">shrimp cat toy </h2>
|
<h2 data-ha-exclude="" id="makers-mark-keychain">maker's mark keychain </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/two-shrimp.jpg" alt="Two leather shrimp-shaped cat toys. They have long dangly antennae and are stitched in red and orange." loading="lazy" decoding="async" width="1000" height="666">
|
<img src="/img/makers-mark-keychain.jpg" alt="A keychain on an iridescent rainbow split ring. It is dark brown/grey leather and has LEE CAT ART stamped into it." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/snap-pouch/">
|
<a class="postlink" href="/vertical-bifold/">
|
||||||
<h2 data-ha-exclude="" id="snap-pouch">snap pouch </h2>
|
<h2 data-ha-exclude="" id="vertical-bifold">vertical bifold </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/snap-pouches.jpg" alt="4 square pouches that close with snaps. 2 have loops that attach keyrings. They are in various colors of leather." loading="lazy" decoding="async" width="900" height="1200">
|
<img src="/img/vertical-bifold.jpg" alt="A collage showing a hand-stitched leather vertical bifold wallet with 6 card pockets, 2 hidden pockets, and 1 bill pocket." loading="lazy" decoding="async" width="1000" height="1777">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/zipper-bifold/">
|
<a class="postlink" href="/moss-harness/">
|
||||||
<h2 data-ha-exclude="" id="zipper-bifold">zipper bifold </h2>
|
<h2 data-ha-exclude="" id="moss-harness">moss harness </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>leather</li>
|
<li>leather</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/zipper-bifold.jpg" alt="A collage showing a hand-stitched leather bifold with a zippered coin pocket on one exterior side." loading="lazy" decoding="async" width="1000" height="1777">
|
<img src="/img/moss-harness.jpg" alt="A nylon webbing harness in bright teal laid out on a desk." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1668,6 +1670,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/foldy-wallet/` was built on 2026-05-14T03:50:32.028Z -->
|
<!-- This page `/foldy-wallet/` was built on 2026-05-14T15:50:39.408Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/wax-seals.jpg" alt="Two envelopes with wax seals. The top envelope is cream with a copper-and-white swirled seal depicting a yelling possum holding mail. The bottom envelope is marbled blue, black, and gold, with a white-and-blue swirled seal depicting an octopus holding a fountain pen." loading="lazy" decoding="async" width="1000" height="1333">
|
<img class="modal-img" src="/img/wax-seals.jpg" alt="Two envelopes with wax seals. The top envelope is cream with a copper-and-white swirled seal depicting a yelling possum holding mail. The bottom envelope is marbled blue, black, and gold, with a white-and-blue swirled seal depicting an octopus holding a fountain pen." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/wax-seals.jpg" alt="Two envelopes with wax seals. The top envelope is cream with a copper-and-white swirled seal depicting a yelling possum holding mail. The bottom envelope is marbled blue, black, and gold, with a white-and-blue swirled seal depicting an octopus holding a fountain pen." loading="lazy" decoding="async" width="1000" height="1333">
|
<img class="hero" src="/img/wax-seals.jpg" alt="Two envelopes with wax seals. The top envelope is cream with a copper-and-white swirled seal depicting a yelling possum holding mail. The bottom envelope is marbled blue, black, and gold, with a white-and-blue swirled seal depicting an octopus holding a fountain pen." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
|
|
||||||
<p>Wax seals pictured from <a href="https://hello.boygirlparty.com" target="_blank" rel="external">boygirlparty</a>.</p>
|
<p>Wax seals pictured from <a href="https://hello.boygirlparty.com" target="_blank" rel="external">boygirlparty</a>.</p>
|
||||||
@@ -1610,20 +1612,6 @@ if (window.innerWidth > 650) {
|
|||||||
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/siblinghood-of-the-traveling-greeting-card/">
|
|
||||||
<h2 data-ha-exclude="" id="siblinghood-of-the-traveling-greeting-card">siblinghood of the traveling greeting card </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>stationery</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/rockery.jpg" alt="Image unrelated to post. A surprisingly neat pile of rounded beach rocks, mainly speckly grey-white-bluish ones, with trees in the background." loading="lazy" decoding="async" width="1000" height="1000">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/stationery-exchange/">
|
<a class="postlink" href="/stationery-exchange/">
|
||||||
<h2 data-ha-exclude="" id="stationery-exchange">stationery exchange </h2>
|
<h2 data-ha-exclude="" id="stationery-exchange">stationery exchange </h2>
|
||||||
@@ -1638,6 +1626,20 @@ if (window.innerWidth > 650) {
|
|||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/siblinghood-of-the-traveling-greeting-card/">
|
||||||
|
<h2 data-ha-exclude="" id="siblinghood-of-the-traveling-greeting-card">siblinghood of the traveling greeting card </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>stationery</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/rockery.jpg" alt="Image unrelated to post. A surprisingly neat pile of rounded beach rocks, mainly speckly grey-white-bluish ones, with trees in the background." loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
</ol>
|
</ol>
|
||||||
|
|
||||||
</section>
|
</section>
|
||||||
@@ -1669,6 +1671,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/fountain-pen-friendly-stationery/` was built on 2026-05-14T03:50:32.034Z -->
|
<!-- This page `/fountain-pen-friendly-stationery/` was built on 2026-05-14T15:50:39.418Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+22
-24
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1560,7 +1562,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/foxgloves-print.jpg" alt="A print of a cluster of foxgloves. The background is inked in green, with negative space and pink details making up the foxgloves." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/foxgloves-print.jpg" alt="A print of a cluster of foxgloves. The background is inked in green, with negative space and pink details making up the foxgloves." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/foxgloves-print.jpg" alt="A print of a cluster of foxgloves. The background is inked in green, with negative space and pink details making up the foxgloves." loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/foxgloves-print.jpg" alt="A print of a cluster of foxgloves. The background is inked in green, with negative space and pink details making up the foxgloves." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<h2 id="details">details</h2>
|
<h2 id="details">details</h2>
|
||||||
@@ -1611,24 +1613,6 @@ if (window.innerWidth > 650) {
|
|||||||
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
<h2 data-ha-exclude="" id="related-posts">related posts</h2>
|
||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/swallowtail-on-snowdrops/">
|
|
||||||
<h2 data-ha-exclude="" id="swallowtail-on-snowdrops">swallowtail on snowdrops </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>card</li>
|
|
||||||
|
|
||||||
<li>shirt</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/swallowtail-on-snowdrops-print.jpg" alt="A block print of a tiger swallowtail butterfly dangling from Japanese snowdrops, a white drooping flower." loading="lazy" decoding="async" width="1000" height="1332">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/greeting-loons/">
|
<a class="postlink" href="/greeting-loons/">
|
||||||
<h2 data-ha-exclude="" id="greeting-loons">greeting loons </h2>
|
<h2 data-ha-exclude="" id="greeting-loons">greeting loons </h2>
|
||||||
@@ -1648,8 +1632,8 @@ if (window.innerWidth > 650) {
|
|||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/hummingbird-become-ungovernable/">
|
<a class="postlink" href="/chanterelle/">
|
||||||
<h2 data-ha-exclude="" id="hummingbird-become-ungovernable">hummingbird become ungovernable </h2>
|
<h2 data-ha-exclude="" id="chanterelle">chanterelle </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
@@ -1657,10 +1641,24 @@ if (window.innerWidth > 650) {
|
|||||||
|
|
||||||
<li>card</li>
|
<li>card</li>
|
||||||
|
|
||||||
<li>shirt</li>
|
</ul>
|
||||||
|
<img src="/img/chanterelle-print.jpg" alt="A print of two chanterelle mushrooms inked in a dark-to-light yellow gradient." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/greeting-quorbs/">
|
||||||
|
<h2 data-ha-exclude="" id="greeting-quorbs">greeting quorbs </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>card</li>
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/hummingbird-ungovernable-print.jpg" alt="A block print in black and orange ink of a rufous hummingbird, tail flared, hovering in midair. Clutched in eir tiny claws is a banner that waves in the wind and reads 'become ungovernable'" loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/greeting-quorbs.jpg" alt="A pile of hand-printed A2 size greeting cards. Only the front is visible, showing a particularly round quail." loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1696,6 +1694,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/foxgloves/` was built on 2026-05-14T03:50:32.012Z -->
|
<!-- This page `/foxgloves/` was built on 2026-05-14T15:50:39.438Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1223,6 +1223,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/gallery/1/` was built on 2026-05-14T03:50:33.948Z -->
|
<!-- This page `/gallery/1/` was built on 2026-05-14T15:50:42.286Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1227,6 +1227,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/gallery/10/` was built on 2026-05-14T03:50:39.290Z -->
|
<!-- This page `/gallery/10/` was built on 2026-05-14T15:50:46.460Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1105,6 +1105,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/gallery/11/` was built on 2026-05-14T03:50:39.797Z -->
|
<!-- This page `/gallery/11/` was built on 2026-05-14T15:50:46.927Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1239,6 +1239,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/gallery/2/` was built on 2026-05-14T03:50:35.580Z -->
|
<!-- This page `/gallery/2/` was built on 2026-05-14T15:50:42.884Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1219,6 +1219,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/gallery/3/` was built on 2026-05-14T03:50:36.098Z -->
|
<!-- This page `/gallery/3/` was built on 2026-05-14T15:50:43.371Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1227,6 +1227,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/gallery/4/` was built on 2026-05-14T03:50:36.554Z -->
|
<!-- This page `/gallery/4/` was built on 2026-05-14T15:50:43.782Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1221,6 +1221,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/gallery/5/` was built on 2026-05-14T03:50:37.048Z -->
|
<!-- This page `/gallery/5/` was built on 2026-05-14T15:50:44.266Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1227,6 +1227,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/gallery/6/` was built on 2026-05-14T03:50:37.501Z -->
|
<!-- This page `/gallery/6/` was built on 2026-05-14T15:50:44.692Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1269,6 +1269,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/gallery/7/` was built on 2026-05-14T03:50:37.933Z -->
|
<!-- This page `/gallery/7/` was built on 2026-05-14T15:50:45.069Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1251,6 +1251,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/gallery/8/` was built on 2026-05-14T03:50:38.423Z -->
|
<!-- This page `/gallery/8/` was built on 2026-05-14T15:50:45.542Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1253,6 +1253,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/gallery/9/` was built on 2026-05-14T03:50:38.799Z -->
|
<!-- This page `/gallery/9/` was built on 2026-05-14T15:50:45.951Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1211,6 +1211,6 @@ footer a:focus-visible {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/gallery/` was built on 2026-05-14T03:50:32.034Z -->
|
<!-- This page `/gallery/` was built on 2026-05-14T15:50:39.445Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1560,7 +1562,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/trans-wrongs-geese-print.jpg" alt="Two Canada geese and their reflections in the water. One is calmly swimming away, while the over leans over towards them and HONKS! Both have speech bubbles; the calm goose says 'trans rights!' while the honking goose says 'trans wrongs!'" loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/trans-wrongs-geese-print.jpg" alt="Two Canada geese and their reflections in the water. One is calmly swimming away, while the over leans over towards them and HONKS! Both have speech bubbles; the calm goose says 'trans rights!' while the honking goose says 'trans wrongs!'" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/trans-wrongs-geese-print.jpg" alt="Two Canada geese and their reflections in the water. One is calmly swimming away, while the over leans over towards them and HONKS! Both have speech bubbles; the calm goose says 'trans rights!' while the honking goose says 'trans wrongs!'" loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/trans-wrongs-geese-print.jpg" alt="Two Canada geese and their reflections in the water. One is calmly swimming away, while the over leans over towards them and HONKS! Both have speech bubbles; the calm goose says 'trans rights!' while the honking goose says 'trans wrongs!'" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<p>Combination of <a href="trans-wrongs-skull">trans wrongs skull</a> and the <a href="geese">geese</a>.</p>
|
<p>Combination of <a href="trans-wrongs-skull">trans wrongs skull</a> and the <a href="geese">geese</a>.</p>
|
||||||
@@ -1613,42 +1615,8 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/trans-the-world/">
|
<a class="postlink" href="/chanterelle/">
|
||||||
<h2 data-ha-exclude="" id="trans-the-world">trans the world </h2>
|
<h2 data-ha-exclude="" id="chanterelle">chanterelle </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>shirt</li>
|
|
||||||
|
|
||||||
<li>gender</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/trans-the-world-print.jpg" alt="A print that reads 'trans the world' surrounding an image of a globe and a trans symbol. It's in a ping-to-blue gradient." loading="lazy" decoding="async" width="1000" height="750">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/proud-dad-wallet/">
|
|
||||||
<h2 data-ha-exclude="" id="proud-dad-wallet">proud dad wallet </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>leather</li>
|
|
||||||
|
|
||||||
<li>gender</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/proud-dad-wallet.jpg" alt="A brown leather wallet with a subtle trans flag stitching across the top." loading="lazy" decoding="async" width="1000" height="750">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/iris/">
|
|
||||||
<h2 data-ha-exclude="" id="iris">iris </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
@@ -1657,7 +1625,43 @@ if (window.innerWidth > 650) {
|
|||||||
<li>card</li>
|
<li>card</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/iris-prints.jpg" alt="3 copies of the same print of iris flowers and a bud, done in slightly varied color schemes." loading="lazy" decoding="async" width="1000" height="562">
|
<img src="/img/chanterelle-print.jpg" alt="A print of two chanterelle mushrooms inked in a dark-to-light yellow gradient." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/hummingbird-become-ungovernable/">
|
||||||
|
<h2 data-ha-exclude="" id="hummingbird-become-ungovernable">hummingbird become ungovernable </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>card</li>
|
||||||
|
|
||||||
|
<li>shirt</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/hummingbird-ungovernable-print.jpg" alt="A block print in black and orange ink of a rufous hummingbird, tail flared, hovering in midair. Clutched in eir tiny claws is a banner that waves in the wind and reads 'become ungovernable'" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/heron/">
|
||||||
|
<h2 data-ha-exclude="" id="heron">heron </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>card</li>
|
||||||
|
|
||||||
|
<li>shirt</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/heron-print.jpg" alt="A print in black ink of a great blue heron, leaning downwards so that eir beak is level with eir feet." loading="lazy" decoding="async" width="1000" height="1333">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1693,6 +1697,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/geese-trans-wrongs/` was built on 2026-05-14T03:50:32.008Z -->
|
<!-- This page `/geese-trans-wrongs/` was built on 2026-05-14T15:50:39.436Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+38
-40
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1560,7 +1562,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/geese-print.jpg" alt="Two Canada geese and their reflections in the water. One is calmly swimming away, while the over leans over and HONKS!" loading="lazy" decoding="async" width="1000" height="750">
|
<img class="modal-img" src="/img/geese-print.jpg" alt="Two Canada geese and their reflections in the water. One is calmly swimming away, while the over leans over and HONKS!" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/geese-print.jpg" alt="Two Canada geese and their reflections in the water. One is calmly swimming away, while the over leans over and HONKS!" loading="lazy" decoding="async" width="1000" height="750">
|
<img class="hero" src="/img/geese-print.jpg" alt="Two Canada geese and their reflections in the water. One is calmly swimming away, while the over leans over and HONKS!" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
|
||||||
<p>Based on a fantastic picture by <a href="https://mstdn.games/@handmade_ghost" target="_blank" rel="external">handmade ghost</a></p>
|
<p>Based on a fantastic picture by <a href="https://mstdn.games/@handmade_ghost" target="_blank" rel="external">handmade ghost</a></p>
|
||||||
@@ -1613,8 +1615,38 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/booby-congrats-on-the-top-surgery/">
|
<a class="postlink" href="/not-a-drill/">
|
||||||
<h2 data-ha-exclude="" id="booby-congrats-on-the-top-surgery">booby (congrats on the top surgery) </h2>
|
<h2 data-ha-exclude="" id="not-a-drill">not a drill </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>shirt</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/not-a-drill-print.jpg" alt="A print in dark teal ink depicting a power drill with text in cursive below that reads 'ceci n'est pas un exercice' or 'this is not a drill'" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/tiny-portraits/">
|
||||||
|
<h2 data-ha-exclude="" id="tiny-portraits">tiny portraits </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>print</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/tiny-portrait-stamps.jpg" alt="A collage showing various small (around an inch) stamps that depict people or animals." loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/foxgloves/">
|
||||||
|
<h2 data-ha-exclude="" id="foxgloves">foxgloves </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
@@ -1622,44 +1654,10 @@ if (window.innerWidth > 650) {
|
|||||||
|
|
||||||
<li>card</li>
|
<li>card</li>
|
||||||
|
|
||||||
<li>gender</li>
|
<li>shirt</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/booby-card.jpg" alt="A landscape-oriented white card with a two-color print of a blue-footed booby." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/foxgloves-print.jpg" alt="A print of a cluster of foxgloves. The background is inked in green, with negative space and pink details making up the foxgloves." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/greeting-quorbs/">
|
|
||||||
<h2 data-ha-exclude="" id="greeting-quorbs">greeting quorbs </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>card</li>
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/greeting-quorbs.jpg" alt="A pile of hand-printed A2 size greeting cards. Only the front is visible, showing a particularly round quail." loading="lazy" decoding="async" width="1000" height="1000">
|
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/pronoun-patches/">
|
|
||||||
<h2 data-ha-exclude="" id="pronoun-patches">pronoun patches </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>patch</li>
|
|
||||||
|
|
||||||
<li>gender</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/pronoun-patch.jpg" alt="Rows of the same design, a skull with a speech bubble announcing varied pronoun sets, repeat in multiple colors along a stretch of off-white fabric." loading="lazy" decoding="async" width="1000" height="562">
|
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1695,6 +1693,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/geese/` was built on 2026-05-14T03:50:32.007Z -->
|
<!-- This page `/geese/` was built on 2026-05-14T15:50:39.436Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1555,7 +1557,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/gender-zine-cover.png" alt="Part of a scan of the cover of my zine, Gender as a Proxy Variable. It shows the title and a bit of handsewn binding." loading="lazy" decoding="async" width="1000" height="444">
|
<img class="modal-img" src="/img/gender-zine-cover.png" alt="Part of a scan of the cover of my zine, Gender as a Proxy Variable. It shows the title and a bit of handsewn binding." loading="lazy" decoding="async" width="1000" height="444">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/gender-zine-cover.png" alt="Part of a scan of the cover of my zine, Gender as a Proxy Variable. It shows the title and a bit of handsewn binding." loading="lazy" decoding="async" width="1000" height="444">
|
<img class="hero" src="/img/gender-zine-cover.png" alt="Part of a scan of the cover of my zine, Gender as a Proxy Variable. It shows the title and a bit of handsewn binding." loading="lazy" decoding="async" width="1000" height="444">
|
||||||
|
|
||||||
|
|
||||||
<p><a href="https://riverside-refuge.square.site/product/gender-as-a-proxy-variable-print-zine/113" target="_blank" rel="external">Get print copies.</a></p>
|
<p><a href="https://riverside-refuge.square.site/product/gender-as-a-proxy-variable-print-zine/113" target="_blank" rel="external">Get print copies.</a></p>
|
||||||
@@ -1784,24 +1786,26 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/hair/">
|
<a class="postlink" href="/slightly-weird-man-club/">
|
||||||
<h2 data-ha-exclude="" id="hair">hair </h2>
|
<h2 data-ha-exclude="" id="slightly-weird-man-club">slightly weird man club </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
|
<li>shirt</li>
|
||||||
|
|
||||||
<li>gender</li>
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/hair-print.jpg" alt="A print in black ink of belly hair." loading="lazy" decoding="async" width="1000" height="710">
|
<img src="/img/slightly-weird-man-club-print.jpg" alt="A print that reads 'slightly weird man club' in a nonbinary flag colored gradient" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/congrats-on-the-gay/">
|
<a class="postlink" href="/happy-bihrtday/">
|
||||||
<h2 data-ha-exclude="" id="congrats-on-the-gay">congrats on the gay </h2>
|
<h2 data-ha-exclude="" id="happy-bihrtday">happy biHRTday </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
@@ -1812,21 +1816,23 @@ if (window.innerWidth > 650) {
|
|||||||
<li>gender</li>
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/congrats-on-the-gay.jpg" alt="A greeting card reading, in black. 'Congrats on the,' and then, in rainbow, 'Gay!'" loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/happy-bihrtday-card-print.jpg" alt="A card and print in the same design - a bouncy, cheery font reading 'happy biHRTday'" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/on-the-ubiquity-of-enby/">
|
<a class="postlink" href="/on-the-shoulders-of-giants/">
|
||||||
<h2 data-ha-exclude="" id="on-the-ubiquity-of-enby">on the ubiquity of 'enby' </h2>
|
<h2 data-ha-exclude="" id="on-the-shoulders-of-giants">on the shoulders of giants </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>gender</li>
|
<li>zine</li>
|
||||||
|
|
||||||
|
<li>knit</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/gender-census.jpg" alt="A screenshot of part of the Gender Census reports page, showing the header bar and a title that reads 'Gender Census 2023 Worldwide Report'" loading="lazy" decoding="async" width="1000" height="364">
|
<img src="/img/on-the-shoulders.jpg" alt="ok so. five image collage showing the front, 3 inner spreads, and back of a riso-printed zine in green and light blue. it's called 'on the shoulders of giants' and it's about a knitting technique I learned from Stephen west and how I built on that technique. it talks about joining two adjacent panels without seaming, instead knitting the second panel onto the selvedge of the first. then it uses that technique to approach two panels knit with significantly different weights of yarn" loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1862,6 +1868,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/gender-as-a-proxy-variable/` was built on 2026-05-14T03:50:32.031Z -->
|
<!-- This page `/gender-as-a-proxy-variable/` was built on 2026-05-14T15:50:39.412Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1560,7 +1562,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/peony.jpg" alt="Image unrelated to post. A light pink peony in full bloom, close up." loading="lazy" decoding="async" width="1000" height="666">
|
<img class="modal-img" src="/img/peony.jpg" alt="Image unrelated to post. A light pink peony in full bloom, close up." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/peony.jpg" alt="Image unrelated to post. A light pink peony in full bloom, close up." loading="lazy" decoding="async" width="1000" height="666">
|
<img class="hero" src="/img/peony.jpg" alt="Image unrelated to post. A light pink peony in full bloom, close up." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
|
|
||||||
<!-- TOC -->
|
<!-- TOC -->
|
||||||
@@ -1835,53 +1837,51 @@ This may also be expanded to a multi-step approach, with questions covering some
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/congrats-on-the-gay/">
|
<a class="postlink" href="/gender/">
|
||||||
<h2 data-ha-exclude="" id="congrats-on-the-gay">congrats on the gay </h2>
|
<h2 data-ha-exclude="" id="gender">gender? </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
|
||||||
|
|
||||||
<li>card</li>
|
|
||||||
|
|
||||||
<li>gender</li>
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/congrats-on-the-gay.jpg" alt="A greeting card reading, in black. 'Congrats on the,' and then, in rainbow, 'Gay!'" loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/gender-notes.png" alt="A page of handwritten notes with some loosely drawn charts, described further in the post." loading="lazy" decoding="async" width="865" height="1080">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/butch-hands-pattern/">
|
<a class="postlink" href="/moving-images/">
|
||||||
<h2 data-ha-exclude="" id="butch-hands-pattern">butch hands pattern </h2>
|
<h2 data-ha-exclude="" id="moving-images">moving images </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>knit</li>
|
<li>software</li>
|
||||||
|
|
||||||
<li>highlight</li>
|
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/butch-hands.jpg" alt="Hands wearing a pair of pink and grey gloves with convertable mitten tops." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/cormorant.jpg" alt="Image unrelated to post. A cormorant, a type of black waterfowl, poses with wings spread on a buoy in Puget Sound. Off to the left, another bird floats." loading="lazy" decoding="async" width="1000" height="666">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/happy-bihrtday/">
|
<a class="postlink" href="/girldick/">
|
||||||
<h2 data-ha-exclude="" id="happy-bihrtday">happy biHRTday </h2>
|
<h2 data-ha-exclude="" id="girldick-mature">girldick (mature)</h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
<li>card</li>
|
<li>sticker</li>
|
||||||
|
|
||||||
|
<li>shirt</li>
|
||||||
|
|
||||||
|
<li>pin</li>
|
||||||
|
|
||||||
<li>gender</li>
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/happy-bihrtday-card-print.jpg" alt="A card and print in the same design - a bouncy, cheery font reading 'happy biHRTday'" loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/girldick-shirt.jpg" alt="A butch cooking and wearing a cropped tee with blue cap sleeves that reads girldick in blue G.I.Joe font." class="blur" loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1917,6 +1917,6 @@ This may also be expanded to a multi-step approach, with questions covering some
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/gender-in-data-models/` was built on 2026-05-14T03:50:32.010Z -->
|
<!-- This page `/gender-in-data-models/` was built on 2026-05-14T15:50:39.438Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
+25
-23
@@ -1445,6 +1445,8 @@ if (window.innerWidth > 650) {
|
|||||||
const closeButton = document.querySelector(".close-dialog");
|
const closeButton = document.querySelector(".close-dialog");
|
||||||
const hero = document.querySelector(".hero");
|
const hero = document.querySelector(".hero");
|
||||||
|
|
||||||
|
hero.tabIndex = 0;
|
||||||
|
|
||||||
hero.addEventListener("click", (e) => dialog.showModal());
|
hero.addEventListener("click", (e) => dialog.showModal());
|
||||||
hero.addEventListener("keydown", (e) => {
|
hero.addEventListener("keydown", (e) => {
|
||||||
if (e.key === "Enter" || e.key === " ") {
|
if (e.key === "Enter" || e.key === " ") {
|
||||||
@@ -1550,7 +1552,7 @@ if (window.innerWidth > 650) {
|
|||||||
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
<button class="close-dialog" autofocus="" aria-label="close the image modal">×</button>
|
||||||
<img class="modal-img" src="/img/gender-notes.png" alt="A page of handwritten notes with some loosely drawn charts, described further in the post." loading="lazy" decoding="async" width="865" height="1080">
|
<img class="modal-img" src="/img/gender-notes.png" alt="A page of handwritten notes with some loosely drawn charts, described further in the post." loading="lazy" decoding="async" width="865" height="1080">
|
||||||
</dialog>
|
</dialog>
|
||||||
<img tabindex="0" class="hero" src="/img/gender-notes.png" alt="A page of handwritten notes with some loosely drawn charts, described further in the post." loading="lazy" decoding="async" width="865" height="1080">
|
<img class="hero" src="/img/gender-notes.png" alt="A page of handwritten notes with some loosely drawn charts, described further in the post." loading="lazy" decoding="async" width="865" height="1080">
|
||||||
|
|
||||||
|
|
||||||
<h1 id="transcription">transcription</h1>
|
<h1 id="transcription">transcription</h1>
|
||||||
@@ -1619,8 +1621,8 @@ if (window.innerWidth > 650) {
|
|||||||
<ol id="postlist">
|
<ol id="postlist">
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/hair/">
|
<a class="postlink" href="/bottom-growth/">
|
||||||
<h2 data-ha-exclude="" id="hair">hair </h2>
|
<h2 data-ha-exclude="" id="bottom-growth-mature">bottom growth (mature)</h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
@@ -1629,39 +1631,39 @@ if (window.innerWidth > 650) {
|
|||||||
<li>gender</li>
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/hair-print.jpg" alt="A print in black ink of belly hair." loading="lazy" decoding="async" width="1000" height="710">
|
<img src="/img/bottom-growth-prints.jpg" alt="4 copies of the same print in various color schemes, laid out in a 2x2 grid. The print shows testosterone-driven bottom growth of a clitoris. The color schemes are, clockwise from top right, brown on turquoise, red on cornsilk (muted yellow), violet on magenta, and mint green on lilac." class="blur" loading="lazy" decoding="async" width="1000" height="1000">
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="post">
|
<li class="post">
|
||||||
<a class="postlink" href="/trans-the-world/">
|
<a class="postlink" href="/queer-book-list/">
|
||||||
<h2 data-ha-exclude="" id="trans-the-world">trans the world </h2>
|
<h2 data-ha-exclude="" id="queer-book-list">queer book list </h2>
|
||||||
|
|
||||||
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
|
<li>gender</li>
|
||||||
|
|
||||||
|
</ul>
|
||||||
|
<img src="/img/rainbow-books.jpg" alt="A bookshelf with a variety of books on LGBTQ+ themes, arranged roughly in rainbow order" loading="lazy" decoding="async" width="1000" height="562">
|
||||||
|
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
|
||||||
|
<li class="post">
|
||||||
|
<a class="postlink" href="/booby-congrats-on-the-top-surgery/">
|
||||||
|
<h2 data-ha-exclude="" id="booby-congrats-on-the-top-surgery">booby (congrats on the top surgery) </h2>
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
<ul class="postlist-tags">
|
||||||
|
|
||||||
<li>print</li>
|
<li>print</li>
|
||||||
|
|
||||||
<li>shirt</li>
|
<li>card</li>
|
||||||
|
|
||||||
<li>gender</li>
|
<li>gender</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
<img src="/img/trans-the-world-print.jpg" alt="A print that reads 'trans the world' surrounding an image of a globe and a trans symbol. It's in a ping-to-blue gradient." loading="lazy" decoding="async" width="1000" height="750">
|
<img src="/img/booby-card.jpg" alt="A landscape-oriented white card with a two-color print of a blue-footed booby." loading="lazy" decoding="async" width="1000" height="750">
|
||||||
|
|
||||||
</a>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li class="post">
|
|
||||||
<a class="postlink" href="/on-pronouns/">
|
|
||||||
<h2 data-ha-exclude="" id="on-pronouns">on pronouns </h2>
|
|
||||||
|
|
||||||
<ul class="postlist-tags">
|
|
||||||
|
|
||||||
<li>gender</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
<img src="/img/starling.jpg" alt="Image unrelated to post. A starling, a beautifully iridescent black bird, stands on a hanging suet feeder." loading="lazy" decoding="async" width="1000" height="666">
|
|
||||||
|
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
@@ -1697,6 +1699,6 @@ if (window.innerWidth > 650) {
|
|||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
|
|
||||||
<!-- This page `/gender/` was built on 2026-05-14T03:50:31.998Z -->
|
<!-- This page `/gender/` was built on 2026-05-14T15:50:39.406Z -->
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user