This page about Tech Independence by Derek Sivers is great. It’s very “indieweb-ish” and has lots of great tips to limit your big tech dependance. He goes a bit more into detail on this episode of the Tim Ferris Podcast.
{
"type": "entry",
"author": {
"name": "Brandon Trebitowski",
"url": "http://brandontreb.com",
"photo": "https://avatars.micro.blog/avatars/2022/3674.jpg"
},
"url": "https://brandontreb.com/2023/05/03/ecwy8yv4hlpqk4srnvya1l",
"content": {
"html": "<p>This page about <a href=\"https://sive.rs/ti\">Tech Independence</a> by Derek Sivers is great. It\u2019s <em>very</em> \u201cindieweb-ish\u201d and has lots of great tips to limit your big tech dependance. He goes a bit more into detail on <a href=\"https://tim.blog/2023/04/23/derek-sivers-transcript/\">this episode</a> of the Tim Ferris Podcast.</p>",
"text": "This page about Tech Independence by Derek Sivers is great. It\u2019s very \u201cindieweb-ish\u201d and has lots of great tips to limit your big tech dependance. He goes a bit more into detail on this episode of the Tim Ferris Podcast."
},
"published": "2023-05-03T00:23:21+00:00",
"post-type": "note",
"_id": "36955565",
"_source": "7224",
"_is_read": false
}
My blog isn't showing up on the fediverse anymore and I can't understand why 🤦🏽 I disabled Yoast since I think that might have caused issue, as well ad uninstalled/re-installed the activitypub plugin
{
"type": "entry",
"author": {
"name": "@Liz",
"url": "https://binarydigit.social/@Liz",
"photo": null
},
"url": "https://binarydigit.social/@Liz/110293725849903868",
"content": {
"html": "<p>My blog isn't showing up on the fediverse anymore and I can't understand why \ud83e\udd26\ud83c\udffd I disabled Yoast since I think that might have caused issue, as well ad uninstalled/re-installed the activitypub plugin </p><p><a href=\"https://binarydigit.social/tags/activitypub\">#<span>activitypub</span></a> <a href=\"https://binarydigit.social/tags/indieweb\">#<span>indieweb</span></a> <a href=\"https://binarydigit.social/tags/troubleshooting\">#<span>troubleshooting</span></a></p>",
"text": "My blog isn't showing up on the fediverse anymore and I can't understand why \ud83e\udd26\ud83c\udffd I disabled Yoast since I think that might have caused issue, as well ad uninstalled/re-installed the activitypub plugin #activitypub #indieweb #troubleshooting"
},
"published": "2023-05-01T13:44:57+00:00",
"post-type": "note",
"_id": "36916112",
"_source": "7235",
"_is_read": false
}
{
"type": "entry",
"published": "2023-04-30T17:33:51-0400",
"url": "https://martymcgui.re/2023/04/30/my-open-hardware-summit-2023-badge/",
"category": [
"open hardware summit",
"open source",
"ohs2023",
"hardware",
"badge"
],
"name": "My Open Hardware Summit 2023 badge",
"content": {
"text": "I had ten years to figure this out and still managed to do it two days too late, but literally no one was keeping track, so that is fine.\nQuick update, have a soundtrack for this post.\n\n Ten years ago?\n \n\n\n I attended my first Open Hardware Summit (OHS) in September 2013, at a time in my life when I had an... interesting relationship Open Source Hardware. One year previous, at OHS 2012, my then-employer \n MakerBot really stirred up some feels by announcing that they would not be releasing some newer designs as open source\n . I was not allowed to attend OHS 2012 due to MakerBot internal policy around the event.\n\nFast forward a year and I had left MakerBot, visited China where I helped my friend Matt at Blinkinlabs with software, demos, and more on their successful Kickstarter campaign for Blinkytape, a fully open source hardware LED strip for artists. During 2013 I had traveled to various MakerFaires to show them off, worked with some lovely beta testers, and generally re-engaged with the \"maker\" community and open source. By September, I was winding down my work with Blinkinlabs, and starting contract web work for Adafruit, which has since become my full-time employer.\nSo, I was feeling pretty good when Matt shelled out to have Blinkinlabs sponsor OHS2013 and invited me along!\n\n The badges at OHS that year were on-trend with many nerd and hacker conferences at the time. They were full-on hackable open source hardware with \"electronic paper\" displays. The organizers had even kindly loaded them up with contact info and some cute logos. Seen here are three PNG versions of the badge images on my badge. Each has my name as \"Marty M\", along with \"OHS\u2764\ufe0f2013 Sponsor BlinkyTape\". One variant has a pixelated heart, one has the open source hardware logo, and one has a QR code linking to blinkytape.com.\n \n\nTwo Days Ago\nOHS2023 convened in New York City on April 28th and 29th. While many (many (many)) things have changed in the last 10 years, OHS is still giving out sweet badges to early registrants. In fact, as a registrant for OHS2020, which was moved online for obvious reasons, they had made a sweet badge for me way back then and held onto it until this weekend, when I picked it up.\nIt was, while playing with this badge and being a little sad I had given them my government name, that I remembered I still had my badge from 2013 sitting in a drawer at home.\nDuring a break in the action I returned home to scoop it up and maybe get it updated for the conference, but in the hustle and bustle of some extremely good talks and some impossibly great workshops, I didn't find the time. So, I proudly wore my \"OHS\u2764\ufe0f2013 Sponsor BlinkyTape\" badge around.\nNow that the event is over, I have plenty of time to do what I should have done a week ago.\nThe BADGEr\nThe OHS2013 badge was a collaborative effort of WyoLum, seeed studios, repaper.org, and more. It's an impressive little board, but even more impressive is the fact that 10 years later, all their documentation, source, and photos are still online. So, rather than me document it all here, just check out their excellent introduction and jumping-off page: https://wyolum.com/projects/badger/\nThe BADGEr comes with a lovely default firmware that reads images from an onboard microSD card reader. It looks for alphabetically-named folders (literally A, B, C...) and in those folders for specially formatted images (literally A.WIF, B.WIF, C.WIF). When powered on, it loads up and display A/A.WIF, and you can use the left/right buttons to change to the previous/next .WIF files within the current folder, or the up/down buttons to change to the previous/next folder.\nI wasn't sure about this WIF (WyoLum Image Format) 10 years on, but once again their WIF introductory post is still up and all the friggin' code and documentation links still work!\nAs part of the BADGEr source, WyoLum includes a little Python tool with the unassuming name `greyscale.py`. This cute little utility does a lot more than I might expect (or ... want?) by showing a little Tk-based GUI to open image files, adjust their brightness and contrast to see a live preview of their dithered output, and then save them in WIF format.\nBeing from ~2013 it was written for Python 2.x (RIP), and didn't work out of the box. But surprisingly I was able to get it working on my Ubuntu 22.04 machine with very minimal changes.\nSo here's my updated version with instructions on installing dependencies, etc: https://git.schmarty.net/schmarty/BADGEr-WIF-util\n(I seriously can't believe I was able to stumble through this. Look how few changes I had to make! Nice job, everybody!)\nLet's badge already\nOkay, yes, that was too much context. So I opened up my image editor of convenience and made a new 264x176 pixel image, loaded it up in \"grayscale.py\", saved the result as a .WIF, popped the microSD card into my laptop and made it the new A/A.WIF, and here we go!\n\n The new badge image has my smug mug, name, my short domain (http://mmg.re) and a QR code linking to the same. It could be more artful or interesting, include more info like my pronouns, but for now it is Good Enough\u2122. (A note on pronouns: OHS2023 offered excellent pronoun stickers, so I did not need my badge to show them.)\n \n\n\n I can't wait to wear it to, uh, OHS2033?? Maybe to an IndieWeb Camp or Summit?\n \n\nOHS2023 deserves more words\nI found my return to Open Hardware Summit very inspiring and - for lack of a better word - healing?? I am so grateful for all the folks that gave their time to show us the challenges they are taking on and how they are bringing others along by tackling them in the open. I have so many browser tabs and more to process everything I have seen. I plan to post more about all of it, even if it's just a miserably dense linkdump. So, stay tuned (or mute this ohs2023 tag, you do you).\n\n Until then, please enjoy this playlist of all the Open Hardware Summit 2023 scheduled talks! Up already! Kudos to the organizers, wow. I mean. Wow.",
"html": "<p>I had ten years to figure this out and still managed to do it two days too late, but literally no one was keeping track, so that is fine.</p>\n<p><em>Quick update, have a <a href=\"https://www.youtube.com/watch?v=5glPHD3Dsoo\">soundtrack for this post</a>.</em></p>\n<h2>\n Ten years ago?\n <br /></h2>\n<p>\n I attended my first <a href=\"https://2013.oshwa.org/\">Open Hardware Summit (OHS) in September 2013</a>, at a time in my life when I had an... interesting relationship Open Source Hardware. One year previous, at OHS 2012, my then-employer \n <a href=\"https://www.youtube.com/watch?v=FU08-_-A17Y\">MakerBot really <i>stirred up some feels</i> by announcing that they would not be releasing some newer designs as open source</a>\n . I was not allowed to attend OHS 2012 due to MakerBot internal policy around the event.\n</p>\n<p>Fast forward a year and I had left MakerBot, visited China where I helped my friend Matt at <a href=\"https://blinkinlabs.com/\">Blinkinlabs</a> with software, demos, and more on their successful <a href=\"https://www.kickstarter.com/projects/blinkinlabs/blinkytape-the-led-strip-reinvented\">Kickstarter campaign for Blinkytape</a>, a fully open source hardware LED strip for artists. During 2013 I had traveled to various MakerFaires to show them off, worked with some lovely beta testers, and generally re-engaged with the \"maker\" community and open source. By September, I was winding down my work with Blinkinlabs, and starting contract web work for Adafruit, which has since become my full-time employer.</p>\n<p>So, I was feeling <i>pretty good</i> when Matt shelled out to have Blinkinlabs sponsor OHS2013 and invited me along!</p>\n<p>\n The badges at OHS that year were on-trend with many nerd and hacker conferences at the time. They were full-on hackable open source hardware with \"electronic paper\" displays. The organizers had even kindly loaded them up with contact info and some cute logos. Seen here are three PNG versions of the badge images on my badge. Each has my name as \"Marty M\", along with \"OHS\u2764\ufe0f2013 Sponsor BlinkyTape\". One variant has a pixelated heart, one has the open source hardware logo, and one has a QR code linking to blinkytape.com.\n <br /></p>\n<img src=\"https://media.martymcgui.re/58/7c/0b/c4/d368162aa64585e4807c18d82d89c45205a25db762495e28aa7ea257.png\" alt=\"\" /><img src=\"https://media.martymcgui.re/0b/60/de/b7/99a6960d54024edb8430e1022d57fbe909a972f2093fc67eba6155cf.png\" alt=\"\" /><img src=\"https://media.martymcgui.re/5b/68/ce/ad/cce28776a1b88d7d77aa74c278c6a95f90577e1bb99ef5b4662a4bbf.png\" alt=\"\" /><h2>Two Days Ago</h2>\n<p>OHS2023 convened in New York City on April 28th and 29th. While many (many (many)) things have changed in the last 10 years, OHS is still giving out sweet badges to early registrants. In fact, as a registrant for OHS2020, which was moved online for <i>obvious reasons</i>, they had made a sweet badge for me way back then and held onto it until this weekend, when I picked it up.</p>\n<p>It was, while playing with this badge and being a little sad I had given them my <i>government name</i>, that I remembered I still had my badge from 2013 sitting in a drawer at home.</p>\n<p>During a break in the action I returned home to scoop it up and maybe get it updated for the conference, but in the hustle and bustle of some <i>extremely good </i>talks and some <i>impossibly great</i> workshops, I didn't find the time. So, I proudly wore my \"OHS\u2764\ufe0f2013 Sponsor BlinkyTape\" badge around.</p>\n<p>Now that the event is over, I have plenty of time to do what I should have done a week ago.</p>\n<h2>The BADGEr</h2>\n<p>The OHS2013 badge was a collaborative effort of WyoLum, seeed studios, repaper.org, and more. It's an impressive little board, but even more impressive is the fact that 10 years later, <i>all their documentation, source, and photos are still online</i>. So, rather than me document it all here, just check out their excellent introduction and jumping-off page: https://wyolum.com/projects/badger/</p>\n<p>The BADGEr comes with a lovely default firmware that reads images from an onboard microSD card reader. It looks for alphabetically-named folders (literally A, B, C...) and in those folders for specially formatted images (literally A.WIF, B.WIF, C.WIF). When powered on, it loads up and display A/A.WIF, and you can use the left/right buttons to change to the previous/next .WIF files within the current folder, or the up/down buttons to change to the previous/next folder.</p>\n<p>I wasn't sure about this WIF (WyoLum Image Format) 10 years on, but once again their <a href=\"https://wyolum.com/introducing-wif-the-wyolum-image-format/\">WIF introductory post</a> is still up and all the friggin' code and documentation links still work!</p>\n<p>As part of the <a href=\"https://github.com/wyolum/EPD\">BADGEr source</a>, WyoLum includes a little Python tool with the unassuming name `greyscale.py`. This cute little utility does a lot more than I might expect (or ... want?) by showing a little Tk-based GUI to open image files, adjust their brightness and contrast to see a live preview of their dithered output, and then save them in WIF format.</p>\n<p>Being from ~2013 it was written for Python 2.x (RIP), and didn't work out of the box. But surprisingly I was able to get it working on my Ubuntu 22.04 machine with very minimal changes.</p>\n<p>So here's my updated version with instructions on installing dependencies, etc: https://git.schmarty.net/schmarty/BADGEr-WIF-util</p>\n<p>(I seriously can't believe I was able to stumble through this. <a href=\"https://git.schmarty.net/schmarty/BADGEr-WIF-util/commit/08756db2769d184bc5fdf0f4708248797ba1f5da#diff-a1fb33569610cbdffeb21623b56822c8e4925f7f\">Look how few changes I had to make</a>! Nice job, everybody!)</p>\n<h2>Let's badge already</h2>\n<p>Okay, yes, that was too much context. So I opened up my image editor of convenience and made a new 264x176 pixel image, loaded it up in \"grayscale.py\", saved the result as a .WIF, popped the microSD card into my laptop and made it the new A/A.WIF, and here we go!</p>\n<img src=\"https://media.martymcgui.re/84/75/0e/52/830b14f8d9737a27fb08bc2ce1c6b77c68131f81d4a3a4fd51e4b224.png\" alt=\"\" /><img src=\"https://media.martymcgui.re/d0/31/d2/06/8487543cc47b335b7590c187ecae73493d07959048d5c846ebac638f.jpg\" alt=\"\" /><p>\n The new badge image has my smug mug, name, my short domain (http://mmg.re) and a QR code linking to the same. It could be more artful or interesting, include more info like my pronouns, but for now it is Good Enough\u2122. (A note on pronouns: OHS2023 offered excellent pronoun stickers, so I did not need my badge to show them.)\n <br /></p>\n<p>\n I can't wait to wear it to, uh, OHS2033?? Maybe to an IndieWeb Camp or Summit?\n <br /></p>\n<h2>OHS2023 deserves more words</h2>\n<p>I found my return to Open Hardware Summit very inspiring and - for lack of a better word - healing?? I am so grateful for all the folks that gave their time to show us the challenges they are taking on and how they are bringing others along by tackling them in the open. I have <i>so many browser tabs</i> and more to process everything I have seen. I plan to post more about all of it, even if it's just a miserably dense linkdump. So, stay tuned (or mute this ohs2023 tag, you do you).</p>\n<p>\n Until then, please enjoy this <a href=\"https://www.youtube.com/playlist?list=PLN2I5IwhHQ4pa7bp3m6jFO8gbWL4RMv1r\">playlist of all the Open Hardware Summit 2023 scheduled talks</a>! Up already! Kudos to the organizers, wow. I mean. Wow.\n <br /></p>"
},
"author": {
"type": "card",
"name": "Marty McGuire",
"url": "https://martymcgui.re/",
"photo": "https://martymcgui.re/images/logo.jpg"
},
"post-type": "article",
"_id": "36902697",
"_source": "175",
"_is_read": false
}
{
"type": "entry",
"published": "2023-04-30T14:36:14-0400",
"url": "https://martymcgui.re/2023/04/30/143614/",
"syndication": [
"https://fed.brid.gy/"
],
"content": {
"text": "Moving Mastodon posts, valuing venues, and the dangers of dependencies. It\u2019s your < 10min update on the #IndieWeb community!\nThis Week in the IndieWeb audio edition for April 22nd - 28th, 2023.\nhttps://martymcgui.re/2023/04/30/this-week-in-the-indieweb-audio-edition--april-22nd---28th-2023/",
"html": "<p>Moving Mastodon posts, valuing venues, and the dangers of dependencies. It\u2019s your < 10min update on the #IndieWeb community!</p>\n<p>This Week in the IndieWeb audio edition for April 22nd - 28th, 2023.\n<a href=\"https://martymcgui.re/2023/04/30/this-week-in-the-indieweb-audio-edition--april-22nd---28th-2023/\">https://martymcgui.re/2023/04/30/this-week-in-the-indieweb-audio-edition--april-22nd---28th-2023/</a></p>"
},
"author": {
"type": "card",
"name": "Marty McGuire",
"url": "https://martymcgui.re/",
"photo": "https://martymcgui.re/images/logo.jpg"
},
"post-type": "note",
"_id": "36902700",
"_source": "175",
"_is_read": false
}
{
"type": "entry",
"published": "2023-04-30T14:32:59-0400",
"url": "https://martymcgui.re/2023/04/30/this-week-in-the-indieweb-audio-edition--april-22nd---28th-2023/",
"category": [
"podcast",
"IndieWeb",
"this-week-indieweb-podcast"
],
"audio": [
"https://media.martymcgui.re/d7/c7/db/78/63171a452907aca7aa2947be8d2e05e2a6dbb5911b0de3dfbbaa9220.mp3"
],
"name": "This Week in the IndieWeb Audio Edition \u2022 April 22nd - 28th, 2023",
"content": {
"text": "Show/Hide Transcript\n \n Moving Mastodon posts, valuing venues, and the dangers of dependencies. It\u2019s the audio edition for This Week in the IndieWeb for April 22nd - 28th, 2023.\nYou can find all of my audio editions and subscribe with your favorite podcast app here: martymcgui.re/podcasts/indieweb/.\nMusic from Aaron Parecki\u2019s 100DaysOfMusic project: Day 85 - Suit, Day 48 - Glitch, Day 49 - Floating, Day 9, and Day 11\nThanks to everyone in the IndieWeb chat for their feedback and suggestions. Please drop me a note if there are any changes you\u2019d like to see for this audio edition!",
"html": "Show/Hide Transcript\n \n <p>Moving Mastodon posts, valuing venues, and the dangers of dependencies. It\u2019s the audio edition for <a href=\"https://indieweb.org/this-week/2023-04-28.html\">This Week in the IndieWeb for April 22nd - 28th, 2023</a>.</p>\n<p>You can find all of my audio editions and subscribe with your favorite podcast app here: <a href=\"https://martymcgui.re/podcasts/indieweb/\">martymcgui.re/podcasts/indieweb/</a>.</p>\n<p>Music from <a href=\"https://aaronparecki.com/\">Aaron Parecki</a>\u2019s <a href=\"https://100.aaronparecki.com/\">100DaysOfMusic project</a>: <a href=\"https://aaronparecki.com/2017/03/15/14/day85\">Day 85 - Suit</a>, <a href=\"https://aaronparecki.com/2017/02/06/7/day48\">Day 48 - Glitch</a>, <a href=\"https://aaronparecki.com/2017/02/07/4/day49\">Day 49 - Floating</a>, <a href=\"https://aaronparecki.com/2016/12/29/21/day-9\">Day 9</a>, and <a href=\"https://aaronparecki.com/2016/12/31/15/\">Day 11</a></p>\n<p>Thanks to everyone in the <a href=\"https://chat.indieweb.org/\">IndieWeb chat</a> for their feedback and suggestions. Please drop me a note if there are any changes you\u2019d like to see for this audio edition!</p>"
},
"author": {
"type": "card",
"name": "Marty McGuire",
"url": "https://martymcgui.re/",
"photo": "https://martymcgui.re/images/logo.jpg"
},
"post-type": "audio",
"_id": "36902701",
"_source": "175",
"_is_read": false
}
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://indieweb.social/tags/indieweb",
"photo": null
},
"url": "https://martymcgui.re/2023/04/30/143614/",
"content": {
"html": "<p>Moving Mastodon posts, valuing venues, and the dangers of dependencies. It\u2019s your < 10min update on the #IndieWeb community!</p><br /><p>This Week in the IndieWeb audio edition for April 22nd - 28th, 2023.<br /><a href=\"https://martymcgui.re/2023/04/30/this-week-in-the-indieweb-audio-edition--april-22nd---28th-2023/\">https://martymcgui.re/2023/04/30/this-week-in-the-indieweb-audio-edition--april-22nd---28th-2023/</a></p>",
"text": "Moving Mastodon posts, valuing venues, and the dangers of dependencies. It\u2019s your < 10min update on the #IndieWeb community!\nThis Week in the IndieWeb audio edition for April 22nd - 28th, 2023.\nhttps://martymcgui.re/2023/04/30/this-week-in-the-indieweb-audio-edition--april-22nd---28th-2023/"
},
"published": "2023-04-30T18:36:14+00:00",
"post-type": "note",
"_id": "36899931",
"_source": "7235",
"_is_read": false
}
As a member of the indieweb.social instance who hasn’t got a clue how to #code or #hack beyond a few html tweaks, I am constantly in awe of the “builder” vibe here (on #indieweb, on #Mastodon, on the #Fediverse). Everyone be like, “Hey, I built this over here!” And “Hey, I can connect that to this over there!” And “Yo, look what I did on top of all of that!” And none of it is for the purpose of raking in bucks or controlling an empire.
{
"type": "entry",
"author": {
"name": "@Pattyagray",
"url": "https://indieweb.social/@Pattyagray",
"photo": null
},
"url": "https://indieweb.social/@Pattyagray/110288505196048360",
"content": {
"html": "<p><span class=\"h-card\"><a class=\"u-url\" href=\"https://indieweb.social/@tchambers\">@<span>tchambers</span></a></span> </p><p>As a member of the indieweb.social instance who hasn\u2019t got a clue how to <a href=\"https://indieweb.social/tags/code\">#<span>code</span></a> or <a href=\"https://indieweb.social/tags/hack\">#<span>hack</span></a> beyond a few html tweaks, I am constantly in awe of the \u201cbuilder\u201d vibe here (on <a href=\"https://indieweb.social/tags/indieweb\">#<span>indieweb</span></a>, on <a href=\"https://indieweb.social/tags/Mastodon\">#<span>Mastodon</span></a>, on the <a href=\"https://indieweb.social/tags/Fediverse\">#<span>Fediverse</span></a>). Everyone be like, \u201cHey, I built this over here!\u201d And \u201cHey, I can connect that to this over there!\u201d And \u201cYo, look what I did on top of all of that!\u201d And none of it is for the purpose of raking in bucks or controlling an empire.</p>",
"text": "@tchambers As a member of the indieweb.social instance who hasn\u2019t got a clue how to #code or #hack beyond a few html tweaks, I am constantly in awe of the \u201cbuilder\u201d vibe here (on #indieweb, on #Mastodon, on the #Fediverse). Everyone be like, \u201cHey, I built this over here!\u201d And \u201cHey, I can connect that to this over there!\u201d And \u201cYo, look what I did on top of all of that!\u201d And none of it is for the purpose of raking in bucks or controlling an empire."
},
"published": "2023-04-30T15:37:16+00:00",
"post-type": "note",
"_id": "36896449",
"_source": "7235",
"_is_read": false
}
{
"type": "entry",
"author": {
"name": "@ttntm",
"url": "https://fosstodon.org/@ttntm",
"photo": null
},
"url": "https://fosstodon.org/@ttntm/110287280231013401",
"content": {
"html": "<p>Planning to refresh /work on my website, looking for some inspiration: </p><p>Is there any personal site you have in mind where employment/freelance/OSS info and/or projects are nicely combined and presented on a single page?</p><p><a href=\"https://fosstodon.org/tags/askfedi\">#<span>askfedi</span></a> <a href=\"https://fosstodon.org/tags/indieweb\">#<span>indieweb</span></a> <a href=\"https://fosstodon.org/tags/personalwebsites\">#<span>personalwebsites</span></a></p>",
"text": "Planning to refresh /work on my website, looking for some inspiration: Is there any personal site you have in mind where employment/freelance/OSS info and/or projects are nicely combined and presented on a single page?#askfedi #indieweb #personalwebsites"
},
"published": "2023-04-30T10:25:45+00:00",
"post-type": "note",
"_id": "36892165",
"_source": "7235",
"_is_read": false
}
{
"type": "entry",
"author": {
"name": "@forestpines",
"url": "https://hachyderm.io/@forestpines",
"photo": null
},
"url": "https://hachyderm.io/@forestpines/110286666804128199",
"content": {
"html": "<p>Self-promo</p><p>New blog post! On not using analytics cookies any more</p><p><a href=\"https://hachyderm.io/tags/blogging\">#<span>blogging</span></a> <a href=\"https://hachyderm.io/tags/indieweb\">#<span>indieweb</span></a> </p><p><a href=\"http://www.symbolicforest.com/blog/2023/04/30/no-more-cookies/\"><span>http://www.</span><span>symbolicforest.com/blog/2023/0</span><span>4/30/no-more-cookies/</span></a></p>",
"text": "Self-promoNew blog post! On not using analytics cookies any more#blogging #indieweb http://www.symbolicforest.com/blog/2023/04/30/no-more-cookies/"
},
"published": "2023-04-30T07:49:45+00:00",
"post-type": "note",
"_id": "36890903",
"_source": "7235",
"_is_read": false
}
{
"type": "entry",
"author": {
"name": "Manton Reece",
"url": "https://www.manton.org/",
"photo": "https://micro.blog/manton/avatar.jpg"
},
"url": "https://www.manton.org/2023/04/29/getting-started-with.html",
"name": "Getting started with Bluesky XRPC",
"content": {
"html": "<p>I\u2019ve done a little work now with the XRPC layer of the <a href=\"https://atproto.com\">AT Protocol</a>, supporting cross-posting to Bluesky from Micro.blog. This post is about what I\u2019ve learned.</p>\n<p>(As an aside, there have been questions about whether Micro.blog supporting Bluesky means we believe in everything they\u2019re doing. No, right now I\u2019m mostly interested in the technology. It\u2019s still too early for judgements on the Bluesky leadership, user experience, or ultimately how this is all going to fit together with other social web protocols.)</p>\n<p>Bluesky authenticates with a username and password. For third-party apps, the password can be an app-specific password. I hope that eventually Bluesky will support <a href=\"https://indieauth.spec.indieweb.org\">IndieAuth</a>, a flavor of OAuth designed for signing in to web sites that should also work well for a distributed service like Bluesky.</p>\n<p>The HTTP POST with JSON for signing in looks like this:</p>\n<pre><code>POST /xrpc/com.atproto.server.createSession\nContent-Type: application/json\n\n{\n \"identifier\": \"email-address-here\",\n \"password\": \"password-here\"\n}\n</code></pre><p>You\u2019ll get back an access token and refresh token. Sessions do not last very long, only a couple hours last time I checked, so it\u2019s important to keep the refresh token. The response looks like this:</p>\n<pre><code>{\n \"did\": \"did:plc:abcdef12345\",\n \"handle\": \"manton.org\",\n \"email\": \"email-address-here\",\n \"accessJwt\": \"abcdefghijklmnopqrstuvxyz\",\n \"refreshJwt\": \"zyxvutsrqponmlkjihgfedcba\"\n}\n</code></pre><p>The DID is a unique identifier for your account that is stored with posts on an AT Protocol server. Even if you change your handle, the DID persists and helps make data portable across servers.</p>\n<p>When cross-posting from Micro.blog, I first try to use the auth token and if it fails, I use the refresh token to establish a new session. In this case, we pass the refresh token in the <code>Authorization</code> header:</p>\n<pre><code>POST /xrpc/com.atproto.server.refreshSession\nAuthorization: Bearer zyxvutsrqponmlkjihgfedcba\n</code></pre><p>Sending a simple text post to Bluesky looks like this. For the rest of these requests, we pass the usual access token for authorization:</p>\n<pre><code>POST /xrpc/com.atproto.repo.createRecord\nAuthorization: Bearer abcdefghijklmnopqrstuvxyz\nContent-Type: application/json\n\n{\n \"repo\": \"did:plc:abcdef12345\",\n \"collection\": \"app.bsky.feed.post\",\n \"validate\": true,\n \"record\": {\n \"text\": \"Hello world.\",\n \"createdAt\": \"2023-04-20T16:46:32+00:00\"\n }\n}\n</code></pre><p>It can get more complicated. To include a photo with the post, first upload it to storage as a blob. In my early testing, there were low limits for photo file size, so Micro.blog scales photos down quite a bit before sending them over to Bluesky.</p>\n<p>Here\u2019s uploading the photo, passing the raw JPEG bytes in the content body:</p>\n<pre><code>POST /xrpc/com.atproto.repo.uploadBlob\nAuthorization: Bearer abcdefghijklmnopqrstuvxyz\nContent-Type: image/jpeg\n\nimage-data-here\n</code></pre><p>You\u2019ll get back a media CID (Content ID) in the <code>ref</code> field that can be used to attach the photo to a new post. The response after uploading a photo looks like this:</p>\n<pre><code>{\n \"blob\": {\n \"$type\": \"blob\",\n \"ref\": {\n \"$link\": \"abcdefgh\"\n },\n \"mimeType\": \"image/jpeg\",\n \"size\": 200000\n }\n}\n</code></pre><p>Then when posting, use the <code>embed</code> field with an array of the uploaded media CIDs:</p>\n<pre><code>POST /xrpc/com.atproto.repo.createRecord\nAuthorization: Bearer abcdefghijklmnopqrstuvxyz\nContent-Type: application/json\n\n{\n \"repo\": \"did:plc:abcdef12345\",\n \"collection\": \"app.bsky.feed.post\",\n \"record\": {\n \"text\": \"Hello world with photo.\",\n \"createdAt\": \"2023-03-08T16:46:32+00:00\",\n \"embed\": {\n \"$type\": \"app.bsky.embed.images\",\n \"images\": [\n {\n \"image\": {\n \"cid\": \"abcdefgh\",\n \"mimeType\": \"image/jpeg\"\n },\n \"alt\": \"\"\n }\n ]\n }\n }\n}\n\n</code></pre><p>Bluesky also supports inline hyperlinks in the post text through \u201cfacets\u201d that can be added to a post, similar to attaching a photo. I don\u2019t love this because we already have HTML as a perfectly good way to format posts. I strongly believe that the social web should use HTML and HTTP wherever possible.</p>\n<p>In Micro.blog, I automatically convert Markdown or HTML inline links to Bluesky\u2019s facets. An example of linking the first word \u201cHello\u201d in this post would look like this, using the character position and length of the word:</p>\n<pre><code>POST /xrpc/com.atproto.repo.createRecord\nAuthorization: Bearer abcdefghijklmnopqrstuvxyz\nContent-Type: application/json\n\n{\n \"repo\": \"did:plc:abcdef12345\",\n \"collection\": \"app.bsky.feed.post\",\n \"validate\": true,\n \"record\": {\n \"text\": \"Hello world with link.\",\n \"createdAt\": \"2023-04-20T16:46:32+00:00\",\n \"facets\": [\n {\n \"features\": [\n {\n \"uri\": \"https://manton.org/\",\n \"$type\": \"app.bsky.richtext.facet#link\"\n }\n ],\n \"index\": {\n \"byteStart\": 0,\n \"byteEnd\": 5\n }\n }\n ]\n }\n}\n</code></pre><p><a href=\"https://github.com/bluesky-social/atproto-ecosystem\">There is also a growing list</a> of open source libraries for the AT Protocol. Unfortunately I wrote all my code before I realized this, so I stumbled through deciphering the API more than I needed to. Maybe this post will save you some time if you\u2019re rolling your own thing.</p>",
"text": "I\u2019ve done a little work now with the XRPC layer of the AT Protocol, supporting cross-posting to Bluesky from Micro.blog. This post is about what I\u2019ve learned.\n(As an aside, there have been questions about whether Micro.blog supporting Bluesky means we believe in everything they\u2019re doing. No, right now I\u2019m mostly interested in the technology. It\u2019s still too early for judgements on the Bluesky leadership, user experience, or ultimately how this is all going to fit together with other social web protocols.)\nBluesky authenticates with a username and password. For third-party apps, the password can be an app-specific password. I hope that eventually Bluesky will support IndieAuth, a flavor of OAuth designed for signing in to web sites that should also work well for a distributed service like Bluesky.\nThe HTTP POST with JSON for signing in looks like this:\nPOST /xrpc/com.atproto.server.createSession\nContent-Type: application/json\n\n{\n \"identifier\": \"email-address-here\",\n \"password\": \"password-here\"\n}\nYou\u2019ll get back an access token and refresh token. Sessions do not last very long, only a couple hours last time I checked, so it\u2019s important to keep the refresh token. The response looks like this:\n{\n \"did\": \"did:plc:abcdef12345\",\n \"handle\": \"manton.org\",\n \"email\": \"email-address-here\",\n \"accessJwt\": \"abcdefghijklmnopqrstuvxyz\",\n \"refreshJwt\": \"zyxvutsrqponmlkjihgfedcba\"\n}\nThe DID is a unique identifier for your account that is stored with posts on an AT Protocol server. Even if you change your handle, the DID persists and helps make data portable across servers.\nWhen cross-posting from Micro.blog, I first try to use the auth token and if it fails, I use the refresh token to establish a new session. In this case, we pass the refresh token in the Authorization header:\nPOST /xrpc/com.atproto.server.refreshSession\nAuthorization: Bearer zyxvutsrqponmlkjihgfedcba\nSending a simple text post to Bluesky looks like this. For the rest of these requests, we pass the usual access token for authorization:\nPOST /xrpc/com.atproto.repo.createRecord\nAuthorization: Bearer abcdefghijklmnopqrstuvxyz\nContent-Type: application/json\n\n{\n \"repo\": \"did:plc:abcdef12345\",\n \"collection\": \"app.bsky.feed.post\",\n \"validate\": true,\n \"record\": {\n \"text\": \"Hello world.\",\n \"createdAt\": \"2023-04-20T16:46:32+00:00\"\n }\n}\nIt can get more complicated. To include a photo with the post, first upload it to storage as a blob. In my early testing, there were low limits for photo file size, so Micro.blog scales photos down quite a bit before sending them over to Bluesky.\nHere\u2019s uploading the photo, passing the raw JPEG bytes in the content body:\nPOST /xrpc/com.atproto.repo.uploadBlob\nAuthorization: Bearer abcdefghijklmnopqrstuvxyz\nContent-Type: image/jpeg\n\nimage-data-here\nYou\u2019ll get back a media CID (Content ID) in the ref field that can be used to attach the photo to a new post. The response after uploading a photo looks like this:\n{\n \"blob\": {\n \"$type\": \"blob\",\n \"ref\": {\n \"$link\": \"abcdefgh\"\n },\n \"mimeType\": \"image/jpeg\",\n \"size\": 200000\n }\n}\nThen when posting, use the embed field with an array of the uploaded media CIDs:\nPOST /xrpc/com.atproto.repo.createRecord\nAuthorization: Bearer abcdefghijklmnopqrstuvxyz\nContent-Type: application/json\n\n{\n \"repo\": \"did:plc:abcdef12345\",\n \"collection\": \"app.bsky.feed.post\",\n \"record\": {\n \"text\": \"Hello world with photo.\",\n \"createdAt\": \"2023-03-08T16:46:32+00:00\",\n \"embed\": {\n \"$type\": \"app.bsky.embed.images\",\n \"images\": [\n {\n \"image\": {\n \"cid\": \"abcdefgh\",\n \"mimeType\": \"image/jpeg\"\n },\n \"alt\": \"\"\n }\n ]\n }\n }\n}\n\nBluesky also supports inline hyperlinks in the post text through \u201cfacets\u201d that can be added to a post, similar to attaching a photo. I don\u2019t love this because we already have HTML as a perfectly good way to format posts. I strongly believe that the social web should use HTML and HTTP wherever possible.\nIn Micro.blog, I automatically convert Markdown or HTML inline links to Bluesky\u2019s facets. An example of linking the first word \u201cHello\u201d in this post would look like this, using the character position and length of the word:\nPOST /xrpc/com.atproto.repo.createRecord\nAuthorization: Bearer abcdefghijklmnopqrstuvxyz\nContent-Type: application/json\n\n{\n \"repo\": \"did:plc:abcdef12345\",\n \"collection\": \"app.bsky.feed.post\",\n \"validate\": true,\n \"record\": {\n \"text\": \"Hello world with link.\",\n \"createdAt\": \"2023-04-20T16:46:32+00:00\",\n \"facets\": [\n {\n \"features\": [\n {\n \"uri\": \"https://manton.org/\",\n \"$type\": \"app.bsky.richtext.facet#link\"\n }\n ],\n \"index\": {\n \"byteStart\": 0,\n \"byteEnd\": 5\n }\n }\n ]\n }\n}\nThere is also a growing list of open source libraries for the AT Protocol. Unfortunately I wrote all my code before I realized this, so I stumbled through deciphering the API more than I needed to. Maybe this post will save you some time if you\u2019re rolling your own thing."
},
"published": "2023-04-29T13:38:15-05:00",
"category": [
"Essays"
],
"post-type": "article",
"_id": "36882632",
"_source": "12",
"_is_read": false
}
What #Bluesky developers need to focus on: (and may be, I hope) actual Federation and adding clarity on how moderation, blocking, labeling really work. Dramatic upgrades needed and may be in the works.
What #Fediverse developers need to be doing: dramatically upping UX and onboarding. Good things in the works.
What #Indieweb and Fedi developers need to be doing: building software bridges between those two protocols & relays to handle AP-ATprotocol two way traffic at scale.
{
"type": "entry",
"author": {
"name": "@tchambers",
"url": "https://indieweb.social/@tchambers",
"photo": null
},
"url": "https://indieweb.social/@tchambers/110282256846927901",
"content": {
"html": "<p>Emerging thoughts:</p><p>What <a href=\"https://indieweb.social/tags/Bluesky\">#<span>Bluesky</span></a> developers need to focus on: (and may be, I hope) actual Federation and adding clarity on how moderation, blocking, labeling really work. Dramatic upgrades needed and may be in the works.</p><p>What <a href=\"https://indieweb.social/tags/Fediverse\">#<span>Fediverse</span></a> developers need to be doing: dramatically upping UX and onboarding. Good things in the works. </p><p>What <a href=\"https://indieweb.social/tags/Indieweb\">#<span>Indieweb</span></a> and Fedi developers need to be doing: building software bridges between those two protocols & relays to handle AP-ATprotocol two way traffic at scale.</p>",
"text": "Emerging thoughts:What #Bluesky developers need to focus on: (and may be, I hope) actual Federation and adding clarity on how moderation, blocking, labeling really work. Dramatic upgrades needed and may be in the works.What #Fediverse developers need to be doing: dramatically upping UX and onboarding. Good things in the works. What #Indieweb and Fedi developers need to be doing: building software bridges between those two protocols & relays to handle AP-ATprotocol two way traffic at scale."
},
"published": "2023-04-29T13:08:14+00:00",
"post-type": "note",
"_id": "36877000",
"_source": "7235",
"_is_read": false
}
A recently updated application (which used to be called indigenous) is now called indiepass and is developed by Mark Sutherland @marksuth. The application is suitable for #indieweb#mastodon#pleroma and #pixelfed. 😊
{
"type": "entry",
"author": {
"name": "@universe_party",
"url": "https://mastodon.online/@universe_party",
"photo": null
},
"url": "https://mastodon.online/@universe_party/110279903778214250",
"content": {
"html": "<p>\ud83c\udd95 ANDROID APP</p><p>A recently updated application (which used to be called indigenous) is now called indiepass and is developed by Mark Sutherland <span class=\"h-card\"><a class=\"u-url\" href=\"https://mastodon.social/@marksuth\">@<span>marksuth</span></a></span>.<br />The application is suitable for <a href=\"https://mastodon.online/tags/indieweb\">#<span>indieweb</span></a> <a href=\"https://mastodon.online/tags/mastodon\">#<span>mastodon</span></a> <a href=\"https://mastodon.online/tags/pleroma\">#<span>pleroma</span></a> and <a href=\"https://mastodon.online/tags/pixelfed\">#<span>pixelfed</span></a>. \ud83d\ude0a</p><p>\ud83c\udf0d <a href=\"https://marksuth.dev/\"><span>https://</span><span>marksuth.dev/</span><span></span></a><br />\ud83c\udf0d <a href=\"https://indieweb.org/IndiePass#Android\"><span>https://</span><span>indieweb.org/IndiePass#Android</span><span></span></a><br />\ud83c\udf0d PlayStore</p><p><a href=\"https://mastodon.online/tags/app\">#<span>app</span></a> <a href=\"https://mastodon.online/tags/apps\">#<span>apps</span></a> <a href=\"https://mastodon.online/tags/androidapp\">#<span>androidapp</span></a> <a href=\"https://mastodon.online/tags/androidapps\">#<span>androidapps</span></a> <a href=\"https://mastodon.online/tags/client\">#<span>client</span></a> <a href=\"https://mastodon.online/tags/clients\">#<span>clients</span></a> <a href=\"https://mastodon.online/tags/mastodonapp\">#<span>mastodonapp</span></a> <a href=\"https://mastodon.online/tags/mastodonapps\">#<span>mastodonapps</span></a> <a href=\"https://mastodon.online/tags/indiepass\">#<span>indiepass</span></a> <a href=\"https://mastodon.online/tags/pleromapp\">#<span>pleromapp</span></a></p>",
"text": "\ud83c\udd95 ANDROID APPA recently updated application (which used to be called indigenous) is now called indiepass and is developed by Mark Sutherland @marksuth.\nThe application is suitable for #indieweb #mastodon #pleroma and #pixelfed. \ud83d\ude0a\ud83c\udf0d https://marksuth.dev/\n\ud83c\udf0d https://indieweb.org/IndiePass#Android\n\ud83c\udf0d PlayStore#app #apps #androidapp #androidapps #client #clients #mastodonapp #mastodonapps #indiepass #pleromapp"
},
"published": "2023-04-29T03:09:49+00:00",
"post-type": "note",
"_id": "36869761",
"_source": "7235",
"_is_read": false
}
My latest blog post is up on begin.com/blog. I'm happy with the Enhance plugin I wrote to syndicate an RSS feed to multiple targets. Mastodon, Twitter and Dev.to for now with more planned.
It works seamlessly with our Enhance Blog template, but you can also deploy it as a stand-alone app. Feel free to reach out to me with questions and feature requests.
{
"type": "entry",
"author": {
"name": "@macdonst",
"url": "https://mastodon.online/@macdonst",
"photo": null
},
"url": "https://mastodon.online/@macdonst/110276834220156713",
"content": {
"html": "<p>My latest blog post is up on begin.com/blog. I'm happy with the Enhance plugin I wrote to syndicate an RSS feed to multiple targets. Mastodon, Twitter and Dev.to for now with more planned. </p><p>It works seamlessly with our Enhance Blog template, but you can also deploy it as a stand-alone app. Feel free to reach out to me with questions and feature requests.</p><p><a href=\"https://mastodon.online/tags/enhance\">#<span>enhance</span></a> <a href=\"https://mastodon.online/tags/indieweb\">#<span>indieweb</span></a> <a href=\"https://mastodon.online/tags/posse\">#<span>posse</span></a></p><p><a href=\"https://begin.com/blog/posts/2023-04-28-supporting-publish-own-site-syndicate-elsewhere\"><span>https://</span><span>begin.com/blog/posts/2023-04-2</span><span>8-supporting-publish-own-site-syndicate-elsewhere</span></a></p>",
"text": "My latest blog post is up on begin.com/blog. I'm happy with the Enhance plugin I wrote to syndicate an RSS feed to multiple targets. Mastodon, Twitter and Dev.to for now with more planned. It works seamlessly with our Enhance Blog template, but you can also deploy it as a stand-alone app. Feel free to reach out to me with questions and feature requests.#enhance #indieweb #possehttps://begin.com/blog/posts/2023-04-28-supporting-publish-own-site-syndicate-elsewhere"
},
"published": "2023-04-28T14:09:11+00:00",
"post-type": "note",
"_id": "36855245",
"_source": "7235",
"_is_read": false
}
If I have webmention sending and receiving working, does bridgy fed (fed.brid.gy) backfeed to my site if someone replies in the Fediverse? Because it seems like that isn't the case as far as I can tell. #indieweb
{
"type": "entry",
"author": {
"name": "#indieweb",
"url": "https://mastodon.social/tags/indieweb",
"photo": null
},
"url": "https://fed.brid.gy/r/https://techlifeweb.com/blog/2023/2023-04-27-post-2246/",
"content": {
"html": "If I have webmention sending and receiving working, does bridgy fed (fed.brid.gy) backfeed to my site if someone replies in the Fediverse? Because it seems like that isn't the case as far as I can tell. <a class=\"p-category\" href=\"https://techlifeweb.com\">#indieweb</a>",
"text": "If I have webmention sending and receiving working, does bridgy fed (fed.brid.gy) backfeed to my site if someone replies in the Fediverse? Because it seems like that isn't the case as far as I can tell. #indieweb"
},
"published": "2023-04-27T22:46:39+00:00",
"post-type": "note",
"_id": "36844535",
"_source": "7235",
"_is_read": false
}
{
"type": "entry",
"author": {
"name": "Ricardo Mendes ",
"url": "https://www.rmendes.net",
"photo": "https://avatars.micro.blog/avatars/2023/15/3241.jpg"
},
"url": "https://blog.rmendes.net/2023/04/27/how-do-you.html",
"content": {
"html": "<p>How do you syndicate to Twitter or Mastodon from the Android micro.blog mobile app ? #microblog #indieweb</p>",
"text": "How do you syndicate to Twitter or Mastodon from the Android micro.blog mobile app ? #microblog #indieweb"
},
"published": "2023-04-27T18:14:54+00:00",
"post-type": "note",
"_id": "36841879",
"_source": "7224",
"_is_read": false
}
I have a small connection to Jerry Springer (RIP): way back in 1996 I ran a web site for a friend called "slac.com". Another member -- named Jerry -- registered his first name as a domain name and parked it at slac, and then I suddenly started getting angry emails complaining slac was not the Jerry Springer web site.
I posted all of those emails, and slac is still running. So here you go.
{
"type": "entry",
"author": {
"name": "@thudfactor",
"url": "https://social.horrorhub.club/@thudfactor",
"photo": null
},
"url": "https://social.horrorhub.club/@thudfactor/110273176741471760",
"content": {
"html": "<p>I have a small connection to Jerry Springer (RIP): way back in 1996 I ran a web site for a friend called \"slac.com\". Another member -- named Jerry -- registered his first name as a domain name and parked it at slac, and then I suddenly started getting angry emails complaining slac was not the Jerry Springer web site. </p><p>I posted all of those emails, and slac is still running. So here you go. </p><p><a href=\"https://social.horrorhub.club/tags/jerryspringer\">#<span>jerryspringer</span></a> <a href=\"https://social.horrorhub.club/tags/indieweb\">#<span>indieweb</span></a> </p><p><a href=\"http://slac.com/jerryspringer/\"><span>http://</span><span>slac.com/jerryspringer/</span><span></span></a></p>",
"text": "I have a small connection to Jerry Springer (RIP): way back in 1996 I ran a web site for a friend called \"slac.com\". Another member -- named Jerry -- registered his first name as a domain name and parked it at slac, and then I suddenly started getting angry emails complaining slac was not the Jerry Springer web site. I posted all of those emails, and slac is still running. So here you go. #jerryspringer #indieweb http://slac.com/jerryspringer/"
},
"published": "2023-04-27T22:39:14+00:00",
"post-type": "note",
"_id": "36840408",
"_source": "7235",
"_is_read": false
}
{
"type": "entry",
"author": {
"name": "@chrisshaw",
"url": "https://twit.social/@chrisshaw",
"photo": null
},
"url": "https://twit.social/@chrisshaw/110272933470557129",
"content": {
"html": "<p>I'm kinda thinking about webrings and whether they might have a role in a community of artists.</p><p>They very much fell out of fashion after the rise of search engines, but it feels like an indieweb/fediverse kind of capability </p><p>Does anyone have some examples of sites that do webrings well and/or any webring management software that could be used?</p><p><a href=\"https://twit.social/tags/fediverse\">#<span>fediverse</span></a> <a href=\"https://twit.social/tags/indieweb\">#<span>indieweb</span></a> <a href=\"https://twit.social/tags/web\">#<span>web</span></a> <a href=\"https://twit.social/tags/ring\">#<span>ring</span></a></p>",
"text": "I'm kinda thinking about webrings and whether they might have a role in a community of artists.They very much fell out of fashion after the rise of search engines, but it feels like an indieweb/fediverse kind of capability Does anyone have some examples of sites that do webrings well and/or any webring management software that could be used?#fediverse #indieweb #web #ring"
},
"published": "2023-04-27T21:37:11+00:00",
"post-type": "note",
"_id": "36839567",
"_source": "7235",
"_is_read": false
}
{
"type": "entry",
"author": {
"name": "@rmdes",
"url": "https://mstdn.social/@rmdes",
"photo": null
},
"url": "https://mstdn.social/@rmdes/110272154804034095",
"content": {
"html": "<p>How do you syndicate to Twitter or Mastodon from the Android micro.blog mobile app ? <a href=\"https://mstdn.social/tags/microblog\">#<span>microblog</span></a> <a href=\"https://mstdn.social/tags/indieweb\">#<span>indieweb</span></a></p>",
"text": "How do you syndicate to Twitter or Mastodon from the Android micro.blog mobile app ? #microblog #indieweb"
},
"published": "2023-04-27T18:19:09+00:00",
"post-type": "note",
"_id": "36835260",
"_source": "7235",
"_is_read": false
}