📢 Account move notification
Almost everything is ready to move my social home to @fabio (@fabio@manganiello.tech).
The new account runs on #Yonder.
Yonder is a social platform I’ve been working on for a while, and I’ll soon write about it more in detail.
It’s an #ActivityPub server written in #Rust and fully compatible with Mastodon and Pleroma/Akkoma, plus with other #Indieweb features I like (#Webmentions, and #OpenID coming).
Plus it implements features (like on-demand remote fetch of statuses/threads context, support for Threadiverse-like actors, OAuth-based account migration that also includes posts and interactions without needing to move CSV files around, better storage management…) that I’ve wanted in those platforms for a while but I’ve struggled to get merged.
If you follow me here, you can hit the follow button on the new account (and if you don’t, don’t worry, my followers will be migrated at some point between today and tomorrow).
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://manganiello.eu/objects/1b74d19e-8442-4213-a2db-27dcb431db2b",
"content": {
"html": "<p>\ud83d\udce2 <strong>Account move notification</strong></p><p>Almost everything is ready to move my social home to <span class=\"h-card\"><a class=\"u-url\" href=\"https://manganiello.tech/@fabio\">@<span>fabio</span></a></span> (<code>@fabio@manganiello.tech</code>).</p><p>The new account runs on <a href=\"https://manganiello.eu/tag/yonder\">#Yonder</a>.</p><p><a href=\"https://yonder.social\">Yonder</a> is a social platform I\u2019ve been working on for a while, and I\u2019ll soon write about it more in detail.</p><p>It\u2019s an <a href=\"https://manganiello.eu/tag/activitypub\">#ActivityPub</a> server written in <a href=\"https://manganiello.eu/tag/rust\">#Rust</a> and fully compatible with Mastodon and Pleroma/Akkoma, plus with other <a href=\"https://manganiello.eu/tag/indieweb\">#Indieweb</a> features I like (#Webmentions, and <a href=\"https://manganiello.eu/tag/openid\">#OpenID</a> coming).</p><p>Plus it implements features (like on-demand remote fetch of statuses/threads context, support for Threadiverse-like actors, OAuth-based account migration that also includes posts and interactions without needing to move CSV files around, better storage management\u2026) that I\u2019ve wanted in those platforms for a while but I\u2019ve struggled to get merged.</p><p>If you follow me here, you can hit the follow button on the new account (and if you don\u2019t, don\u2019t worry, my followers will be migrated at some point between today and tomorrow).</p>",
"text": "\ud83d\udce2 Account move notification\n\nAlmost everything is ready to move my social home to @fabio (@fabio@manganiello.tech).\n\nThe new account runs on #Yonder.\n\nYonder is a social platform I\u2019ve been working on for a while, and I\u2019ll soon write about it more in detail.\n\nIt\u2019s an #ActivityPub server written in #Rust and fully compatible with Mastodon and Pleroma/Akkoma, plus with other #Indieweb features I like (#Webmentions, and #OpenID coming).\n\nPlus it implements features (like on-demand remote fetch of statuses/threads context, support for Threadiverse-like actors, OAuth-based account migration that also includes posts and interactions without needing to move CSV files around, better storage management\u2026) that I\u2019ve wanted in those platforms for a while but I\u2019ve struggled to get merged.\n\nIf you follow me here, you can hit the follow button on the new account (and if you don\u2019t, don\u2019t worry, my followers will be migrated at some point between today and tomorrow)."
},
"published": "2026-11-04T11:50:26+00:00",
"post-type": "note",
"_id": "50121583",
"_source": "8007",
"_is_read": false
}
Recently, I went to a book launch of a travel memoir. While talking about the book's evolution, the author said something like, “You can find the first ideas if you scroll 5 years on my Instagram.” And I said to myself: “ I don’t want to scroll on Instagram; I want that to be a blog category and just click it”.
More about how to start blogging, what platform to choose, and the indie web community, in the newsletter:
https://miscellanea.danielprindii.com/archive/start-blogging
#internet #blogs #Newsletter #indieweb
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://mastodon.social/@klausblog/117557785146303049",
"content": {
"html": "<p>Recently, I went to a book launch of a travel memoir. While talking about the book's evolution, the author said something like, \u201cYou can find the first ideas if you scroll 5 years on my Instagram.\u201d And I said to myself: \u201c I don\u2019t want to scroll on Instagram; I want that to be a blog category and just click it\u201d.</p><p>More about how to start blogging, what platform to choose, and the indie web community, in the newsletter:<br /><a href=\"https://miscellanea.danielprindii.com/archive/start-blogging\"><span>https://</span><span>miscellanea.danielprindii.com/</span><span>archive/start-blogging</span></a></p><p><a href=\"https://mastodon.social/tags/internet\">#<span>internet</span></a> <a href=\"https://mastodon.social/tags/blogs\">#<span>blogs</span></a> <a href=\"https://mastodon.social/tags/Newsletter\">#<span>Newsletter</span></a> <a href=\"https://mastodon.social/tags/indieweb\">#<span>indieweb</span></a></p>",
"text": "Recently, I went to a book launch of a travel memoir. While talking about the book's evolution, the author said something like, \u201cYou can find the first ideas if you scroll 5 years on my Instagram.\u201d And I said to myself: \u201c I don\u2019t want to scroll on Instagram; I want that to be a blog category and just click it\u201d.\n\nMore about how to start blogging, what platform to choose, and the indie web community, in the newsletter:\nhttps://miscellanea.danielprindii.com/archive/start-blogging\n\n#internet #blogs #Newsletter #indieweb"
},
"published": "2026-11-04T10:50:46+00:00",
"post-type": "note",
"_id": "50121059",
"_source": "8007",
"_is_read": false
}
🏆 안토넬리가 역대 최연소 F1 월드 챔피언에 올랐습니다! 2026 멕시코시티 그랑프리 리뷰: 르클레르의 페널티 논란, 놀라운 포디움, 피아스트리와 린드블라드의 접촉, 그리고 전체 순위표까지 정리했습니다.
https://goguma.blog/ko/mexico-city-grand-prix-2026-antonelli-champion-ko/
#blog #indieweb #F1 #안토넬리 #포뮬러1
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://mastodon.social/@PictoPulse356/117556987403815150",
"content": {
"html": "<p>\ud83c\udfc6 \uc548\ud1a0\ub12c\ub9ac\uac00 \uc5ed\ub300 \ucd5c\uc5f0\uc18c F1 \uc6d4\ub4dc \ucc54\ud53c\uc5b8\uc5d0 \uc62c\ub790\uc2b5\ub2c8\ub2e4! 2026 \uba55\uc2dc\ucf54\uc2dc\ud2f0 \uadf8\ub791\ud504\ub9ac \ub9ac\ubdf0: \ub974\ud074\ub808\ub974\uc758 \ud398\ub110\ud2f0 \ub17c\ub780, \ub180\ub77c\uc6b4 \ud3ec\ub514\uc6c0, \ud53c\uc544\uc2a4\ud2b8\ub9ac\uc640 \ub9b0\ub4dc\ube14\ub77c\ub4dc\uc758 \uc811\ucd09, \uadf8\ub9ac\uace0 \uc804\uccb4 \uc21c\uc704\ud45c\uae4c\uc9c0 \uc815\ub9ac\ud588\uc2b5\ub2c8\ub2e4.</p><p><a href=\"https://goguma.blog/ko/mexico-city-grand-prix-2026-antonelli-champion-ko/\"><span>https://</span><span>goguma.blog/ko/mexico-city-gra</span><span>nd-prix-2026-antonelli-champion-ko/</span></a></p><p><a href=\"https://mastodon.social/tags/blog\">#<span>blog</span></a> <a href=\"https://mastodon.social/tags/indieweb\">#<span>indieweb</span></a> <a href=\"https://mastodon.social/tags/F1\">#<span>F1</span></a> <a href=\"https://mastodon.social/tags/%EC%95%88%ED%86%A0%EB%84%AC%EB%A6%AC\">#<span>\uc548\ud1a0\ub12c\ub9ac</span></a> <a href=\"https://mastodon.social/tags/%ED%8F%AC%EB%AE%AC%EB%9F%AC1\">#<span>\ud3ec\ubbac\ub7ec1</span></a></p>",
"text": "\ud83c\udfc6 \uc548\ud1a0\ub12c\ub9ac\uac00 \uc5ed\ub300 \ucd5c\uc5f0\uc18c F1 \uc6d4\ub4dc \ucc54\ud53c\uc5b8\uc5d0 \uc62c\ub790\uc2b5\ub2c8\ub2e4! 2026 \uba55\uc2dc\ucf54\uc2dc\ud2f0 \uadf8\ub791\ud504\ub9ac \ub9ac\ubdf0: \ub974\ud074\ub808\ub974\uc758 \ud398\ub110\ud2f0 \ub17c\ub780, \ub180\ub77c\uc6b4 \ud3ec\ub514\uc6c0, \ud53c\uc544\uc2a4\ud2b8\ub9ac\uc640 \ub9b0\ub4dc\ube14\ub77c\ub4dc\uc758 \uc811\ucd09, \uadf8\ub9ac\uace0 \uc804\uccb4 \uc21c\uc704\ud45c\uae4c\uc9c0 \uc815\ub9ac\ud588\uc2b5\ub2c8\ub2e4.\n\nhttps://goguma.blog/ko/mexico-city-grand-prix-2026-antonelli-champion-ko/\n\n#blog #indieweb #F1 #\uc548\ud1a0\ub12c\ub9ac #\ud3ec\ubbac\ub7ec1"
},
"published": "2026-11-04T07:27:53+00:00",
"post-type": "note",
"_id": "50119461",
"_source": "8007",
"_is_read": false
}
🏆 Antonelli is the youngest F1 world champion in history! My report on the 2026 Mexico City GP: Leclerc's controversial penalty, an incredible podium, the Piastri–Lindblad collision and the full standings.
https://goguma.blog/en/mexico-city-grand-prix-2026-antonelli-champion/
#blog #indieweb #F1 #Antonelli #Formula1
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://mastodon.social/@PictoPulse356/117556979918613383",
"content": {
"html": "<p>\ud83c\udfc6 Antonelli is the youngest F1 world champion in history! My report on the 2026 Mexico City GP: Leclerc's controversial penalty, an incredible podium, the Piastri\u2013Lindblad collision and the full standings.</p><p><a href=\"https://goguma.blog/en/mexico-city-grand-prix-2026-antonelli-champion/\"><span>https://</span><span>goguma.blog/en/mexico-city-gra</span><span>nd-prix-2026-antonelli-champion/</span></a></p><p><a href=\"https://mastodon.social/tags/blog\">#<span>blog</span></a> <a href=\"https://mastodon.social/tags/indieweb\">#<span>indieweb</span></a> <a href=\"https://mastodon.social/tags/F1\">#<span>F1</span></a> <a href=\"https://mastodon.social/tags/Antonelli\">#<span>Antonelli</span></a> <a href=\"https://mastodon.social/tags/Formula1\">#<span>Formula1</span></a></p>",
"text": "\ud83c\udfc6 Antonelli is the youngest F1 world champion in history! My report on the 2026 Mexico City GP: Leclerc's controversial penalty, an incredible podium, the Piastri\u2013Lindblad collision and the full standings.\n\nhttps://goguma.blog/en/mexico-city-grand-prix-2026-antonelli-champion/\n\n#blog #indieweb #F1 #Antonelli #Formula1"
},
"published": "2026-11-04T07:25:59+00:00",
"post-type": "note",
"_id": "50119462",
"_source": "8007",
"_is_read": false
}
🏆 ¡Antonelli es campeón del mundo de F1 y el más joven de la historia! Mi crónica del GP de México 2026: la polémica sanción a Leclerc, un podio increíble, el toque entre Piastri y Lindblad y todas las clasificaciones.
https://goguma.blog/gran-premio-mexico-2026-antonelli-campeon/
#blog #indieweb #F1 #Antonelli #Formula1
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://mastodon.social/@PictoPulse356/117556974364585587",
"content": {
"html": "<p>\ud83c\udfc6 \u00a1Antonelli es campe\u00f3n del mundo de F1 y el m\u00e1s joven de la historia! Mi cr\u00f3nica del GP de M\u00e9xico 2026: la pol\u00e9mica sanci\u00f3n a Leclerc, un podio incre\u00edble, el toque entre Piastri y Lindblad y todas las clasificaciones.</p><p><a href=\"https://goguma.blog/gran-premio-mexico-2026-antonelli-campeon/\"><span>https://</span><span>goguma.blog/gran-premio-mexico</span><span>-2026-antonelli-campeon/</span></a></p><p><a href=\"https://mastodon.social/tags/blog\">#<span>blog</span></a> <a href=\"https://mastodon.social/tags/indieweb\">#<span>indieweb</span></a> <a href=\"https://mastodon.social/tags/F1\">#<span>F1</span></a> <a href=\"https://mastodon.social/tags/Antonelli\">#<span>Antonelli</span></a> <a href=\"https://mastodon.social/tags/Formula1\">#<span>Formula1</span></a></p>",
"text": "\ud83c\udfc6 \u00a1Antonelli es campe\u00f3n del mundo de F1 y el m\u00e1s joven de la historia! Mi cr\u00f3nica del GP de M\u00e9xico 2026: la pol\u00e9mica sanci\u00f3n a Leclerc, un podio incre\u00edble, el toque entre Piastri y Lindblad y todas las clasificaciones.\n\nhttps://goguma.blog/gran-premio-mexico-2026-antonelli-campeon/\n\n#blog #indieweb #F1 #Antonelli #Formula1"
},
"published": "2026-11-04T07:24:34+00:00",
"post-type": "note",
"_id": "50119259",
"_source": "8007",
"_is_read": false
}
Adam Brett shares: Where Should I Blog? A Field Guide from Corporate Platforms to the IndieWeb
https://www.adamdjbrett.com/blog/2026-11-02-where-should-i-blog-field-guide-corporate-platforms-indieweb/
#IndieWeb
I wasn't familiar with smol.web and weblog.lol, but they both look interesting.
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://social.manade.org/@gardian/34830267531483136",
"content": {
"html": "<p>Adam Brett shares: Where Should I Blog? A Field Guide from Corporate Platforms to the IndieWeb<br /><a href=\"https://www.adamdjbrett.com/blog/2026-11-02-where-should-i-blog-field-guide-corporate-platforms-indieweb/\">https://www.adamdjbrett.com/blog/2026-11-02-where-should-i-blog-field-guide-corporate-platforms-indieweb/</a><br /><a href=\"https://social.manade.org/tags/IndieWeb\">#<span>IndieWeb</span></a></p><p><strong>I wasn't familiar with smol.web and weblog.lol, but they both look interesting.</strong></p>",
"text": "Adam Brett shares: Where Should I Blog? A Field Guide from Corporate Platforms to the IndieWeb\nhttps://www.adamdjbrett.com/blog/2026-11-02-where-should-i-blog-field-guide-corporate-platforms-indieweb/\n#IndieWeb\n\nI wasn't familiar with smol.web and weblog.lol, but they both look interesting."
},
"published": "2026-11-04T05:55:05+00:00",
"post-type": "note",
"_id": "50119006",
"_source": "8007",
"_is_read": false
}
made the full 1997 dial-up experience in a browser. pick 14.4, 28.8 or 56k and every page loads at that speed. photos sharpen line by line, downloads fail, and someone picking up the phone drops you.
56k.rip
#RetroComputing #VintageComputing #indieweb #90s
Drafted with AI help.
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://mastodon.social/@HobbyBuilder/117555931074307419",
"content": {
"html": "<p>made the full 1997 dial-up experience in a browser. pick 14.4, 28.8 or 56k and every page loads at that speed. photos sharpen line by line, downloads fail, and someone picking up the phone drops you.</p><p>56k.rip</p><p><a href=\"https://mastodon.social/tags/RetroComputing\">#<span>RetroComputing</span></a> <a href=\"https://mastodon.social/tags/VintageComputing\">#<span>VintageComputing</span></a> <a href=\"https://mastodon.social/tags/indieweb\">#<span>indieweb</span></a> <a href=\"https://mastodon.social/tags/90s\">#<span>90s</span></a></p><p>Drafted with AI help.</p>",
"text": "made the full 1997 dial-up experience in a browser. pick 14.4, 28.8 or 56k and every page loads at that speed. photos sharpen line by line, downloads fail, and someone picking up the phone drops you.\n\n56k.rip\n\n#RetroComputing #VintageComputing #indieweb #90s\n\nDrafted with AI help."
},
"published": "2026-11-04T02:59:15+00:00",
"post-type": "note",
"_id": "50116712",
"_source": "8007",
"_is_read": false
}
made a 1997 Macintosh you can boot in your browser. System 7 desktop, then it dials in over a 28.8k modem, screech and all. pages crawl in, and if someone picks up the phone you lose the connection. speakers on.
dialup.rip
#RetroComputing #VintageMac #ClassicMac #indieweb
Drafted with AI help.
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://mastodon.social/@HobbyBuilder/117555910138195349",
"content": {
"html": "<p>made a 1997 Macintosh you can boot in your browser. System 7 desktop, then it dials in over a 28.8k modem, screech and all. pages crawl in, and if someone picks up the phone you lose the connection. speakers on.</p><p>dialup.rip</p><p><a href=\"https://mastodon.social/tags/RetroComputing\">#<span>RetroComputing</span></a> <a href=\"https://mastodon.social/tags/VintageMac\">#<span>VintageMac</span></a> <a href=\"https://mastodon.social/tags/ClassicMac\">#<span>ClassicMac</span></a> <a href=\"https://mastodon.social/tags/indieweb\">#<span>indieweb</span></a></p><p>Drafted with AI help.</p>",
"text": "made a 1997 Macintosh you can boot in your browser. System 7 desktop, then it dials in over a 28.8k modem, screech and all. pages crawl in, and if someone picks up the phone you lose the connection. speakers on.\n\ndialup.rip\n\n#RetroComputing #VintageMac #ClassicMac #indieweb\n\nDrafted with AI help."
},
"published": "2026-11-04T02:53:55+00:00",
"post-type": "note",
"_id": "50116713",
"_source": "8007",
"_is_read": false
}
made a free I Ching site. you hold a question, cast three coins six times, and it builds your hexagram line by line. you get the judgment and image from the Book of Changes, plus a modern English reading if you want one. no account, no ads.
https://iching.site
#IChing #Taoism #IndieWeb
Drafted with AI help.
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://mastodon.social/@HobbyBuilder/117555807362715899",
"content": {
"html": "<p>made a free I Ching site. you hold a question, cast three coins six times, and it builds your hexagram line by line. you get the judgment and image from the Book of Changes, plus a modern English reading if you want one. no account, no ads.</p><p><a href=\"https://iching.site\"><span>https://</span><span>iching.site</span><span></span></a></p><p><a href=\"https://mastodon.social/tags/IChing\">#<span>IChing</span></a> <a href=\"https://mastodon.social/tags/Taoism\">#<span>Taoism</span></a> <a href=\"https://mastodon.social/tags/IndieWeb\">#<span>IndieWeb</span></a></p><p>Drafted with AI help.</p>",
"text": "made a free I Ching site. you hold a question, cast three coins six times, and it builds your hexagram line by line. you get the judgment and image from the Book of Changes, plus a modern English reading if you want one. no account, no ads.\n\nhttps://iching.site\n\n#IChing #Taoism #IndieWeb\n\nDrafted with AI help."
},
"published": "2026-11-04T02:27:47+00:00",
"post-type": "note",
"_id": "50116430",
"_source": "8007",
"_is_read": false
}
hop, j'ai fait un bouton 88x31 pixels tout moche pour mon blog héhéhé, c'est bien amusant.
https://www.jirsad.fr/
#blog #indieweb #smolweb #88x31button
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://rivals.space/@jirsad/117555417692662811",
"content": {
"html": "<p>hop, j'ai fait un bouton 88x31 pixels tout moche pour mon blog h\u00e9h\u00e9h\u00e9, c'est bien amusant.</p><p><a href=\"https://www.jirsad.fr/\"><span>https://www.</span><span>jirsad.fr/</span><span></span></a></p><p><a href=\"https://rivals.space/tags/blog\">#<span>blog</span></a> <a href=\"https://rivals.space/tags/indieweb\">#<span>indieweb</span></a> <a href=\"https://rivals.space/tags/smolweb\">#<span>smolweb</span></a> <a href=\"https://rivals.space/tags/88x31button\">#<span>88x31button</span></a></p>",
"text": "hop, j'ai fait un bouton 88x31 pixels tout moche pour mon blog h\u00e9h\u00e9h\u00e9, c'est bien amusant.\n\nhttps://www.jirsad.fr/\n\n#blog #indieweb #smolweb #88x31button"
},
"published": "2026-11-04T00:48:41+00:00",
"photo": [
"https://files.mastodon.social/cache/media_attachments/files/117/555/417/718/900/414/original/fc47289c2a7a17fe.png"
],
"post-type": "photo",
"_id": "50115792",
"_source": "8007",
"_is_read": false
}
Here is the emoji trophy case for #Patrick:
🪹 💆🏽 👨🏿❤️💋👨🏼 🤽🏿♀️ 🚁 💀 🇧🇬 👨🦱 👩🏽🦼➡️ 🛻
Come check out their stories:
👉 https://moon-zine.net/profile/Patrick
#writingcommunity #indieweb
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://mastodon.social/@TheMoonZine/117555226776642707",
"content": {
"html": "<p>Here is the emoji trophy case for <a href=\"https://mastodon.social/tags/Patrick\">#<span>Patrick</span></a>:</p><p>\ud83e\udeb9 \ud83d\udc86\ud83c\udffd \ud83d\udc68\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffc \ud83e\udd3d\ud83c\udfff\u200d\u2640\ufe0f \ud83d\ude81 \ud83d\udc80 \ud83c\udde7\ud83c\uddec \ud83d\udc68\u200d\ud83e\uddb1 \ud83d\udc69\ud83c\udffd\u200d\ud83e\uddbc\u200d\u27a1\ufe0f \ud83d\udefb</p><p>Come check out their stories:<br />\ud83d\udc49 <a href=\"https://moon-zine.net/profile/Patrick\"><span>https://</span><span>moon-zine.net/profile/Patrick</span><span></span></a></p><p><a href=\"https://mastodon.social/tags/writingcommunity\">#<span>writingcommunity</span></a> <a href=\"https://mastodon.social/tags/indieweb\">#<span>indieweb</span></a></p>",
"text": "Here is the emoji trophy case for #Patrick:\n\n\ud83e\udeb9 \ud83d\udc86\ud83c\udffd \ud83d\udc68\ud83c\udfff\u200d\u2764\ufe0f\u200d\ud83d\udc8b\u200d\ud83d\udc68\ud83c\udffc \ud83e\udd3d\ud83c\udfff\u200d\u2640\ufe0f \ud83d\ude81 \ud83d\udc80 \ud83c\udde7\ud83c\uddec \ud83d\udc68\u200d\ud83e\uddb1 \ud83d\udc69\ud83c\udffd\u200d\ud83e\uddbc\u200d\u27a1\ufe0f \ud83d\udefb\n\nCome check out their stories:\n\ud83d\udc49 https://moon-zine.net/profile/Patrick\n\n#writingcommunity #indieweb"
},
"published": "2026-11-04T00:00:08+00:00",
"post-type": "note",
"_id": "50115422",
"_source": "8007",
"_is_read": false
}
{
"type": "entry",
"author": {
"name": null,
"url": "https://herestomwiththeweather.com/",
"photo": null
},
"url": "https://herestomwiththeweather.com/2026/11/03/outgoing-rfc-9421-signatures/",
"published": "2026-11-03T13:41:15+00:00",
"content": {
"html": "<p>Previously, I mentioned that support for incoming <a href=\"https://www.rfc-editor.org/info/rfc9421/\">RFC 9421</a> signatures was added to <a href=\"https://github.com/herestomwiththeweather/irwin\">Irwin</a> for inbox deliveries. A week ago, I finished implementing outgoing signatures for both inbox deliveries and \u201cauthorized fetch\u201d GET requests. So, how does it know whether to send a legacy signature or a new RFC 9421 signature? In general, the <a href=\"https://swicg.github.io/activitypub-http-signature/#how-to-upgrade-supported-versions\">double-knocking technique</a>:</p>\n\n<blockquote>\n <p>First, try generating or verifying an HTTP Signature with one version, ideally (but not necessarily) the latest. If the remote server rejects that signature, eg with an HTTP 401 response, or the incoming signature doesn\u2019t verify, try with another version. Repeat until a signature passes or you\u2019ve tried all supported versions.</p>\n\n <p>(Many fediverse servers do process incoming activities asynchronously, but they generally still verify signatures synchronously, so double knocking is still viable when delivering activities to remote inboxes.)</p>\n</blockquote>\n\n<p>So, first try RFC 9421 and if that returns a 401, then retry with the legacy signature.</p>\n\n<p>However, Irwin also has a hosts database table and a new <code>legacy_signature</code> boolean was added to it. By default, it is false. There is a long tail of fediverse hosts that do not support RFC 9421: many hosts that my fediverse server rarely interacts with and I do not bother with setting their <code>legacy_signature</code> to true.</p>\n\n<p>However, there are a few that my fediverse server does interact with a lot, so their host records have been updated so that Irwin doesn\u2019t make many unnecessary requests. For example, threads.net returns 404 when it is sent a request signed with RFC 9421 rather than the expected 401 that correctly implemented servers return.</p>\n\n<p>So, at the start of <a href=\"https://github.com/herestomwiththeweather/irwin/blob/main/app/lib/http_client.rb#L42\">HttpClient#request_headers()</a>, the legacy signature is sent for such hosts:</p>\n\n<pre><code> def request_headers(method_string, legacy_signature = false)\n if !legacy_signature && Host.find_by(name: @url.host)&.legacy_signature\n Rails.logger.info \"#{self.class}##{__method__} setting legacy signature for #{@url.host}\"\n legacy_signature = true\n end\n</code></pre>\n\n<p>The API method to construct signature headers for both legacy and RFC 9421 signatures is the same.</p>\n\n<pre><code> klass = legacy_signature ? Serge::FediSignature : Serge::MessageSignature\n Rails.logger.info \"#{self.class}##{__method__} signing request with #{klass}\"\n\n headers.merge!(\n klass.headers(\n method: method_string,\n url: @url,\n body: @body,\n public_key_id: @main_key_url,\n private_key: @private_key\n )\n )\n</code></pre>\n<p>The ruby gem library <a href=\"https://github.com/herestomwiththeweather/serge\">serge</a> that is being used here uses the <a href=\"https://github.com/nomadium/linzer\">linzer</a> gem for RFC 9421 signatures and Irwin\u2019s old code for the legacy signatures.</p>",
"text": "Previously, I mentioned that support for incoming RFC 9421 signatures was added to Irwin for inbox deliveries. A week ago, I finished implementing outgoing signatures for both inbox deliveries and \u201cauthorized fetch\u201d GET requests. So, how does it know whether to send a legacy signature or a new RFC 9421 signature? In general, the double-knocking technique:\n\n\n First, try generating or verifying an HTTP Signature with one version, ideally (but not necessarily) the latest. If the remote server rejects that signature, eg with an HTTP 401 response, or the incoming signature doesn\u2019t verify, try with another version. Repeat until a signature passes or you\u2019ve tried all supported versions.\n\n (Many fediverse servers do process incoming activities asynchronously, but they generally still verify signatures synchronously, so double knocking is still viable when delivering activities to remote inboxes.)\n\n\nSo, first try RFC 9421 and if that returns a 401, then retry with the legacy signature.\n\nHowever, Irwin also has a hosts database table and a new legacy_signature boolean was added to it. By default, it is false. There is a long tail of fediverse hosts that do not support RFC 9421: many hosts that my fediverse server rarely interacts with and I do not bother with setting their legacy_signature to true.\n\nHowever, there are a few that my fediverse server does interact with a lot, so their host records have been updated so that Irwin doesn\u2019t make many unnecessary requests. For example, threads.net returns 404 when it is sent a request signed with RFC 9421 rather than the expected 401 that correctly implemented servers return.\n\nSo, at the start of HttpClient#request_headers(), the legacy signature is sent for such hosts:\n\n def request_headers(method_string, legacy_signature = false)\n if !legacy_signature && Host.find_by(name: @url.host)&.legacy_signature\n Rails.logger.info \"#{self.class}##{__method__} setting legacy signature for #{@url.host}\"\n legacy_signature = true\n end\n\n\nThe API method to construct signature headers for both legacy and RFC 9421 signatures is the same.\n\n klass = legacy_signature ? Serge::FediSignature : Serge::MessageSignature\n Rails.logger.info \"#{self.class}##{__method__} signing request with #{klass}\"\n\n headers.merge!(\n klass.headers(\n method: method_string,\n url: @url,\n body: @body,\n public_key_id: @main_key_url,\n private_key: @private_key\n )\n )\n\nThe ruby gem library serge that is being used here uses the linzer gem for RFC 9421 signatures and Irwin\u2019s old code for the legacy signatures."
},
"name": "Outgoing RFC 9421 Signatures",
"post-type": "article",
"_id": "50114987",
"_source": "246",
"_is_read": false
}
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://triangletoot.party/@autumn/117554441232060259",
"content": {
"html": "<p>added a new page to my web sight:</p><p><a href=\"https://www.autumnwelles.com/edc/\"><span>https://www.</span><span>autumnwelles.com/edc/</span><span></span></a></p><p><a href=\"https://triangletoot.party/tags/indieweb\">#<span>indieweb</span></a></p>",
"text": "added a new page to my web sight:\n\nhttps://www.autumnwelles.com/edc/\n\n#indieweb"
},
"published": "2026-11-03T20:40:22+00:00",
"post-type": "note",
"_id": "50113685",
"_source": "8007",
"_is_read": false
}
#geeknices #indieweb
Tradução em pt_BR: Como construir um site low-tech? - solar.lowtechmagazine.com/pt/2…
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://fed.sfl.pro.br/display/e5ca8dd2-916a-ea42-df64-99b819879343",
"content": {
"html": "<p><a href=\"https://fed.sfl.pro.br/search?tag=geeknices\">#<span>geeknices</span></a> <a href=\"https://fed.sfl.pro.br/search?tag=indieweb\">#<span>indieweb</span></a></p><p><b>Tradu\u00e7\u00e3o em pt_BR</b>: Como construir um <i>site low-tech</i>? - <a href=\"https://solar.lowtechmagazine.com/pt/2018/09/how-to-build-a-low-tech-website/\">solar.lowtechmagazine.com/pt/2\u2026</a></p>",
"text": "#geeknices #indieweb\n\nTradu\u00e7\u00e3o em pt_BR: Como construir um site low-tech? - solar.lowtechmagazine.com/pt/2\u2026"
},
"published": "2026-11-03T20:23:59+00:00",
"post-type": "note",
"_id": "50113554",
"_source": "8007",
"_is_read": false
}
Prosperity doth best discover vice, but adversity doth best discover virtue.
-- Francis Bacon, Of Adversity
For more quotes, see https://lzon.ca/quotes.
#IndieWeb #PersonalWeb #Blog #Quotes
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://mastodon.social/@lzon/117554325920250973",
"content": {
"html": "<p>Prosperity doth best discover vice, but adversity doth best discover virtue.<br />-- Francis Bacon, Of Adversity</p><p>For more quotes, see <a href=\"https://lzon.ca/quotes\"><span>https://</span><span>lzon.ca/quotes</span><span></span></a>.<br /><a href=\"https://mastodon.social/tags/IndieWeb\">#<span>IndieWeb</span></a> <a href=\"https://mastodon.social/tags/PersonalWeb\">#<span>PersonalWeb</span></a> <a href=\"https://mastodon.social/tags/Blog\">#<span>Blog</span></a> <a href=\"https://mastodon.social/tags/Quotes\">#<span>Quotes</span></a></p>",
"text": "Prosperity doth best discover vice, but adversity doth best discover virtue.\n-- Francis Bacon, Of Adversity\n\nFor more quotes, see https://lzon.ca/quotes.\n#IndieWeb #PersonalWeb #Blog #Quotes"
},
"published": "2026-11-03T20:11:02+00:00",
"post-type": "note",
"_id": "50113379",
"_source": "8007",
"_is_read": false
}
Starpunk has been my little labor of love for a while now and I am happy with how its progressed. It's a small, single user, POSSE platform that does its best to be compliant with most Indieweb standards and is designed to be selfhosted. Yes it has been crafted with the assistance of AI, but frankly if I didn't build it that way it would never have gotten built at all.
Hit me up if you have any will to try it out.
https://starpunk.thesatelliteoflove.com/note/20261103191947
#indieweb #posse #micropub #websub
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://social.thesatelliteoflove.com/@phil/statuses/01M6HDMXQJQV8XC0XSTX5GQ9WS",
"content": {
"html": "<p><a href=\"https://starpunk.thesatelliteoflove.com/\">Starpunk</a> has been my little labor of love for a while now and I am happy with how its progressed. It's a small, single user, POSSE platform that does its best to be compliant with most Indieweb standards and is designed to be selfhosted. Yes it has been crafted with the assistance of AI, but frankly if I didn't build it that way it would never have gotten built at all.</p><p>Hit me up if you have any will to try it out.</p><p><a href=\"https://starpunk.thesatelliteoflove.com/note/20261103191947\">https://starpunk.thesatelliteoflove.com/note/20261103191947</a></p><p><a href=\"https://social.thesatelliteoflove.com/tags/indieweb\">#<span>indieweb</span></a> <a href=\"https://social.thesatelliteoflove.com/tags/posse\">#<span>posse</span></a> <a href=\"https://social.thesatelliteoflove.com/tags/micropub\">#<span>micropub</span></a> <a href=\"https://social.thesatelliteoflove.com/tags/websub\">#<span>websub</span></a></p>",
"text": "Starpunk has been my little labor of love for a while now and I am happy with how its progressed. It's a small, single user, POSSE platform that does its best to be compliant with most Indieweb standards and is designed to be selfhosted. Yes it has been crafted with the assistance of AI, but frankly if I didn't build it that way it would never have gotten built at all.\n\nHit me up if you have any will to try it out.\n\nhttps://starpunk.thesatelliteoflove.com/note/20261103191947\n\n#indieweb #posse #micropub #websub"
},
"published": "2026-11-03T19:19:48+00:00",
"post-type": "note",
"_id": "50112918",
"_source": "8007",
"_is_read": false
}
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://mastodon.art/@ashenwave/117553739802978339",
"content": {
"html": "<p>New blog post!\u2728 </p><p>I updated my blog with a summary of the games I played this past month :)</p><p><a href=\"https://komorebisunrise.neocities.org/posts/2026-11-03-Games-I-Played-in-October-2026\"><span>https://</span><span>komorebisunrise.neocities.org/</span><span>posts/2026-11-03-Games-I-Played-in-October-2026</span></a></p><p><a href=\"https://mastodon.art/tags/Blogging\">#<span>Blogging</span></a> <a href=\"https://mastodon.art/tags/IndieWeb\">#<span>IndieWeb</span></a> <a href=\"https://mastodon.art/tags/SmallWeb\">#<span>SmallWeb</span></a></p>",
"text": "New blog post!\u2728 \n\nI updated my blog with a summary of the games I played this past month :)\n\nhttps://komorebisunrise.neocities.org/posts/2026-11-03-Games-I-Played-in-October-2026\n\n#Blogging #IndieWeb #SmallWeb"
},
"published": "2026-11-03T17:41:59+00:00",
"photo": [
"https://files.mastodon.social/cache/media_attachments/files/117/553/739/878/159/238/original/0e80ed4fe16b35a8.png"
],
"post-type": "photo",
"_id": "50111876",
"_source": "8007",
"_is_read": false
}
Unutterable looks at: Platforms nor protocols: recognising the indieweb’s libertarian roots
https://www.kjz.im/posts/indieweb-is-libertarian
#IndieWeb
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://social.manade.org/@gardian/34826573692436480",
"content": {
"html": "<p>Unutterable looks at: Platforms nor protocols: recognising the indieweb\u2019s libertarian roots<br /><a href=\"https://www.kjz.im/posts/indieweb-is-libertarian\">https://www.kjz.im/posts/indieweb-is-libertarian</a><br /><a href=\"https://social.manade.org/tags/IndieWeb\">#<span>IndieWeb</span></a></p>",
"text": "Unutterable looks at: Platforms nor protocols: recognising the indieweb\u2019s libertarian roots\nhttps://www.kjz.im/posts/indieweb-is-libertarian\n#IndieWeb"
},
"published": "2026-11-03T14:15:41+00:00",
"post-type": "note",
"_id": "50111877",
"_source": "8007",
"_is_read": false
}
The website I run just crossed 1,000 members! 🎉
In the last week alone, it served 2.65 million requests. It's the small, independent transformative works archive I run on a four-core home server and built on the open-source codebase powering Archive of Our Own.
I've learned quite a bit about production ops in the process.
If fandom, fanworks, or the indie web are your thing? come check it out: https://fanfiction.lol
#indieweb #selfhosted #fandom #opensource
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://me.dm/@brennanbrown/117553629787287541",
"content": {
"html": "<p>The website I run just crossed 1,000 members! \ud83c\udf89</p><p>In the last week alone, it served 2.65 million requests. It's the small, independent transformative works archive I run on a four-core home server and built on the open-source codebase powering Archive of Our Own. </p><p>I've learned quite a bit about production ops in the process.</p><p>If fandom, fanworks, or the indie web are your thing? come check it out: <a href=\"https://fanfiction.lol\"><span>https://</span><span>fanfiction.lol</span><span></span></a></p><p><a href=\"https://me.dm/tags/indieweb\">#<span>indieweb</span></a> <a href=\"https://me.dm/tags/selfhosted\">#<span>selfhosted</span></a> <a href=\"https://me.dm/tags/fandom\">#<span>fandom</span></a> <a href=\"https://me.dm/tags/opensource\">#<span>opensource</span></a></p>",
"text": "The website I run just crossed 1,000 members! \ud83c\udf89\n\nIn the last week alone, it served 2.65 million requests. It's the small, independent transformative works archive I run on a four-core home server and built on the open-source codebase powering Archive of Our Own. \n\nI've learned quite a bit about production ops in the process.\n\nIf fandom, fanworks, or the indie web are your thing? come check it out: https://fanfiction.lol\n\n#indieweb #selfhosted #fandom #opensource"
},
"published": "2026-11-03T17:14:00+00:00",
"photo": [
"https://files.mastodon.social/cache/media_attachments/files/117/553/629/823/307/298/original/ffb14de8aa91935f.png"
],
"post-type": "photo",
"_id": "50111702",
"_source": "8007",
"_is_read": false
}
Written, proofread, shipped: Come wreck your photos :)
phlog.space is a free little photo site where every picture gets wrecked by one of 35 random effects. Now with a MySpace-style top 8, webmentions and even less tracking. No JavaScript, no ads, just plain PHP and SQLite. Come post with us.
https://pablomurad.com/come-wreck-your-photos-on-phlog-space/
#photography #projects #smallweb #indieweb
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://murad.social/@pablo/statuses/01M6H6AKKW1PB0T8EHVQTV185H",
"content": {
"html": "<p>Written, proofread, shipped: Come wreck your photos :)<br /><br />phlog.space is a free little photo site where every picture gets wrecked by one of 35 random effects. Now with a MySpace-style top 8, webmentions and even less tracking. No JavaScript, no ads, just plain PHP and SQLite. Come post with us.<br /><br /><a href=\"https://pablomurad.com/come-wreck-your-photos-on-phlog-space/\">https://pablomurad.com/come-wreck-your-photos-on-phlog-space/</a><br /><br /><a href=\"https://murad.social/tags/photography\">#<span>photography</span></a> <a href=\"https://murad.social/tags/projects\">#<span>projects</span></a> <a href=\"https://murad.social/tags/smallweb\">#<span>smallweb</span></a> <a href=\"https://murad.social/tags/indieweb\">#<span>indieweb</span></a></p>",
"text": "Written, proofread, shipped: Come wreck your photos :)\n\nphlog.space is a free little photo site where every picture gets wrecked by one of 35 random effects. Now with a MySpace-style top 8, webmentions and even less tracking. No JavaScript, no ads, just plain PHP and SQLite. Come post with us.\n\nhttps://pablomurad.com/come-wreck-your-photos-on-phlog-space/\n\n#photography #projects #smallweb #indieweb"
},
"published": "2026-11-03T17:11:50+00:00",
"photo": [
"https://files.mastodon.social/cache/media_attachments/files/117/553/621/316/357/931/original/819dec78804fd59f.png"
],
"post-type": "photo",
"_id": "50111532",
"_source": "8007",
"_is_read": false
}