#dev 2025-05-15
2025-05-15 UTC
grufwub, Pizzacrusher, DenMcH, [tw2113], rossabaker, gRegor, [fluffy], [aciccarello], oodani, barnaby, GuestZero and Dryusdan joined the channel
#
capjamesg I have written up the rel=edit page! If anyone has public edit links on their website, you may be interested in http://indieweb.org/rel-edit 🙂

#
capjamesg [edit] I have written up the rel=edit page! If anyone has public edit links on their website, you may be interested in http://indieweb.org/rel-edit 🙂

sebbu2 and gRegor joined the channel
#
.pi.r2. Is there something akin to rel=source/rel=template/etc. for eg the markdown of a blog post? I could imagine being able to GET, possibly POST it. Come to think of it, my blog already has a source link in the footer.
#
[KevinMarks] That sounds like a rel=alternate if you have a good mime type for markdown

[schmarty] joined the channel
#
.pi.r2. Ah, good point. The source<->output relationship might be worth encoding specifically?
roxwize_, CRISPR, Xe, ttybitnik and DenMcH joined the channel
geoffo joined the channel
balintm, Xe, roxwize_, Zegnat, jeffworthington, moose333 and [jeremycherfas] joined the channel
#
[tantek] FrESH << suggested topic: an "eco mode" theme (in addition to light/dark), see recent [[2025/DUS|IWC DUS]] session: https://indieweb.org/2025/D%C3%BCsseldorf/sustainableweb and watch the recording for background. See also more recently, an independently developed freely usable more-sustainable SVG icons set: https://github.com/codewordcreative/susty-icons/tree/main?tab=readme-ov-file#a-work-in-progress-before-initial-release

#
Loqi ok, I added "suggested topic: an "eco mode" theme (in addition to light/dark), see recent [[2025/DUS|IWC DUS]] session: https://indieweb.org/2025/D%C3%BCsseldorf/sustainableweb and watch the recording for background. See also more recently, an independently developed freely usable more-sustainable SVG icons set: https://github.com/codewordcreative/susty-icons/tree/main?tab=readme-ov-file#a-work-in-progress-before-initial-release" to the "See Also" section of /Front_End_Study_Hall https://indieweb.org/wiki/index.php?diff=101508&oldid=101478

#
[tantek] FrESH << ^ see also the result of the IWC DUS session,

{{jkphl}}
's demo: https://indieweb.org/2025/D%C3%BCsseldorf/Demos#Joschi_Kuphal (worth watching the video, linked at top of that page, for visual and charts!)#
Loqi ok, I added "^ see also the result of the IWC DUS session,

{{jkphl}}
's demo: https://indieweb.org/2025/D%C3%BCsseldorf/Demos#Joschi_Kuphal (worth watching the video, linked at top of that page, for visual and charts!)" to the "See Also" section of /Front_End_Study_Hall https://indieweb.org/wiki/index.php?diff=101509&oldid=101508 barnaby joined the channel
#
[tantek] [Joschi_Kuphal] how did you trigger / choose eco-mode on your website that you demonstrated at IWC DUS? I was looking at https://jkphl.is/ and watched the demo again and didn't/couldn't see the UX for eco-mode (hidden button somewhere?) nor nothing in view source either

[Joschi_Kuphal] joined the channel
#
[Joschi_Kuphal] [tantek] i didn't do this on the regular home page but used dedicated pages for my experiments: https://jkphl.is/ecomode/index-2.php there you will find the links for triggering at the bottom
PsyLok joined the channel
#
capjamesg My PR to the mkdocs-material theme (22k stars on GitHub, popular in Python projects) to add rel=edit was approved! https://github.com/squidfunk/mkdocs-material/pull/8217

#
capjamesg [edit] My PR to the mkdocs-material theme (22k stars on GitHub, popular in Python projects) to add rel=edit was approved! https://github.com/squidfunk/mkdocs-material/pull/8217

#
[tantek] FrESH << ^ example of page with light/dark/eco-mode switcher at bottom: https://jkphl.is/ecomode/index-2.php?mode=eco

#
Loqi ok, I added "^ example of page with light/dark/eco-mode switcher at bottom: https://jkphl.is/ecomode/index-2.php?mode=eco" to the "See Also" section of /Front_End_Study_Hall https://indieweb.org/wiki/index.php?diff=101512&oldid=101509

duanin2 and gRegor joined the channel
#
[aciccarello] Wow, those icons are quite the micro optimization. Feels unnecessary but I'm all for it!
#
[Joschi_Kuphal] [tantek] this is only the first step of an experiment and is still far from being ready for production. initially, i focused on methods of conserving resources, and have not yet addressed actual design issues or later integration into websites.
#
[Joschi_Kuphal] i love the susty icon set!
#
[Joschi_Kuphal] when i look at my demo page for eco mode, i wonder why i don't make it the actual home page. it shouldn't do any harm. 😉 as soon as i find a few minutes, i'll probably do that (i'll adjust the links in the wiki myself).
[snarfed], barnaby, doesnm, btrem and Virtual joined the channel
#
btrem Following up from last night's iwc/Americas, specifically how to import an es6 module in a common js project. I *still* can't get it to work, no matter which incantation I try. For example, `const fnp = await import("eleventy-plugin-footnotes")` gives me "you can only use await inside async functions and at the top level of modules." But it *IS* at the top level of the module. !@#!@
#
btrem According to SO, all I need to do is `const thing=await import('thing'); //remember to add "async" to the containing function definition`. To which I respond, /what/ containing function? I'm going to rip my hair out trying to do something that is apparently easy yet beyond my abilities. Any suggestions?
#
gRegor Is this in v8? Maybe https://v8.dev/features/top-level-await if you haven't seen it. I don't have experience writing modules and only minimally with await/async. It is definitely always confusing when I have to look into it, so definitely have my sympathy on that.

grufwub joined the channel
#
gRegor I'm tinkering with this example: https://v8.dev/features/modules#intro

#
btrem gRegor: further down that page is this info: "Top-level await is available in modules, but not in classic scripts...." If that's the case, then I can't use await. Pity about the confusing error message. ("...can only be used at top level of modules." And apparently my elevently.config file is not a module, hence the error.)
#
gRegor General concept seems to work (when in a module): https://gregorlove.com/site/assets/misc/v8/ it does some console.log of the output.

#
gRegor A nice thing with Composer is you can point it to a github repo, don't have to put it on packagist. I've done that with https://github.com/gregorlove/mf2-to-icalendar

#
btrem Minimal plugin has been pushed: https://github.com/btrem/eleventy-plugin-footnotes/tree/itest
barnaby joined the channel
#
[fluffy] I am getting to be at my wits' end regarding the whole "LLM bots DDoSing my websites" thing. iocaine and nepenthes don't actually fix the problem, anubis screws up feed readers and indieweb tools (and would be a nightmare to setup with my current infrastruture), and just playing endless whack-a-mole with every new LLM-bot CIDR block is getting tiresome. Does anyone else have any ideas about how to deal with this?

ttybitnik joined the channel
#
perryflynn rate limiting in the worst case. by source IP.
#
perryflynn if the traffic from a single IP is low and there is really no pattern which could be used for blocking the only option would be anubis, sadly.
#
perryflynn I thought about all these issues in the past few week and chose to ignore it and rely on my statically generated website, which can handle a few thousand visitors per day without any issues.
balintm joined the channel
#
perryflynn whitelist by user agent will also not work. can be faked. and the scraper will just use the agent string of a real browser, I think.
#
perryflynn you could use caching. at least in nginx it is quite easy to enable that for specific URLs/folders. and what btrem says.
#
perryflynn cache/static generate non-private pages to reduce the pressure on your backend is the only solution IMHO.
#
perryflynn these can be statically generated too. since they only change if you change something on your pages/posts.
#
perryflynn how many tags do you have? :-O
#
[fluffy] https://beesbuzz.biz/blog/ look at the sidebar

#
[fluffy] or also https://sockpuppet.band/releases/ is the other one that's getting hit a lot

#
perryflynn I see. my last idea would be still static generate the tag page but do atomic updates. so if a post gets an update only update the tag pages for these tags referenced in the this post.
#
perryflynn yea, would require coding work. :-\
#
perryflynn right. I missed that this is possible. just clicked on one single tag.
#
[KevinMarks] Could you switch just the join to client side js so they're burning their own resources? (fetch the 2 tags and intersect them client-side, then the cache works)

#
btrem re: mixing es6 and common js from earlier, I have a minimal 11ty project: https://github.com/btrem/11ty_basic