I wrote a thing.
It is very personal. Too personal, perhaps. It's also quite long.
I will likely delete it at some point.
It's about depression. And glaciology. And academia. Mountains and failure.

I wrote a thing.
It is very personal. Too personal, perhaps. It's also quite long.
I will likely delete it at some point.
It's about depression. And glaciology. And academia. Mountains and failure.
Not coming this afternoon :)
Just realised that I’m not handling nested interpolated values properly as I’m using a regular expression to simulate what JavaScript’s native tagged template feature does.
Instead, I have to write a simple parser.
If I had a penny for every time I started with regular expressions on this and then had to implement a proper parser afterwards… I’d have two pennies (the other time was for extracted nested <markdown> tags. See a pattern? (I’m here all week.)
So, barring the discovery of other edge (or not-so edge) cases following further testing, I’m going to aim for middle of the week for the release of the new Markdown Pages feature.
dear kiki webmasters
happy to release v1.1.4 which fixes a handful of annoying bugs that @kickingk took the time to find and report. thank you
patch notes here:
https://tomo-dashi.itch.io/kiki/devlog/1012144/v114-patch-notes
if you're a new kiki webmaster, please report thy feats (or questions or bugs) to #kiki
so happy seeing new instances popping up every week. i wonder if it's time to build some kind of automated web ring system into it.
It's fun to make a little web page, as a treat, as some say.
https://mattl.github.io/simple-html-file-generator/
( tool by @mattl )
OK, so here’s likely the simplest possible example demonstrating:
• The same route, implemented as both a Kitten JavaScript Page (.page.js) and as a Kitten Markdown Page (.page.md)
• How to persist to the default Kitten JSDB¹ database.
(That first line with the nullish coalescing operator creates a “table” on the database with a default value for the count if it doesn’t already exist.)
Coming soon (likely this afternoon, I’m writing tests and docs and updating examples as we speak)…
This is the sort of thing you’ll be able to do with Markdown pages. Just pop any arbitrary JavaScript you want in the new script block in the front matter and then import and use components as well as plain old JavaScript tagged template variable interpolation (not shown in this example) inside your Markdown.
The screen has all the code (sans the end of the last line of CSS and the closing tags for the <style> and <div> in the Reactions component, which I couldn’t make fit without reducing the font size) for the example you see in the browser with functional buttons that persist their state to Kitten’s built-in default database.
When I say all the code, I mean all the code. There is no scaffolding. Those two files are the only two files in the project.
Rewriting the Windows section of Kitten’s installation instructions.
Update: it’s live now.
@jwildeboer @jzb I'm mostly repurposing raspberry pi 1 and 2 for all sorts of network services at home (pi-hole, syncthing, scanner and printer share, etc.)
Bloody hell, finally, I think I’m done with the Markdown support rewrite in Kitten.
The Markdown rule for interpreting four spaces as code fences has been the biggest pain in my neck during this whole ordeal but, bitching aside, it means the parser is now more accurate and thus stronger for it.
If all goes well, expect a Monday release :)
Looking for server recommendations for a friend:
- POC, AuDHD friendly
- Asian LGBT+ fan media (esp Thai BL)
- Creative arts, Indie Web (as a newbie), UI/UX, creative coding
- Language learning (Thai, Cambodian, Mandarin) and linguistics (like languages at risk of being lost or color processing)
My first thought was yesterweb, any other thoughts?
Edit: Suggestions so far: artcrimes.gay, mastodon.art, blorbo.social
Bist du auf der Suche nach einer einfachen Möglichkeit zu bloggen?
Dabei geht es dir einfach "nur" ums Schreiben, ohne dir groß Gedanken machen über zB Layout und die ganze Technik dahinter (hallo WordPress)?
Dann schau dir mal diesen sehr hilfreichen Vergleich an, zwischen BearBlog und Mataora.
Beide bieten einen sehr niederschwelligen Einstieg, um mit dem Bloggen beginnen zu können, ggf. sogar unter deiner eigenen Domain.
Dej Autoru schreibt u.a. unter der Perspektive ADHD/ADHS, was der Person für die verschiedenen Inhalte (Blog, Journaling, Stories) wichtig ist.
"My experiences using Minimalistic Blogs Mataroa Blog vs Bear Blog"
streetsofchance.bearblog.dev/sharing-my-experiences-of-using-mataroa-blog-vs-bear-blog/
#StreetsOfChance #BearBlog #Mataora #Blog #Blogging #SmallWeb
There's a push out there, from a few different angles, to leave the big social platforms and go back to the DIY web.
I got tired of it, so I'm rolling my own.
I'm enjoying following those that are building the #smallweb and #indieweb, or even those without a name for it. I'm sure there is a list of people and places, but if you're out there creating, community building, or documenting a list, I'd love to see it.
Drop a link, and I'll follow along.
The new integrated Markdown parser I’ve been implementing in Kitten has been kicking my ass for the past few weeks but I think I finally have it fully working and seamlessly so. Expect a new release this/next week that brings the parsing of Markdown pages (.page.md files) in your apps up to the standard of the recently-improved runtime Markdown parsing in Kitten HTML tagged-template strings (within `<markdown>…</markdown>` blocks).
The coolest thing is I was able to implement this without introducing any new syntax. In fact, I was able to simplify things so that you can now add arbitrary JavaScript to your Markdown pages within a multi-line script block in the YAML front matter (`script: |`) and use JavaScript string interpolation syntax in your Markdown (and, of course, Kitten components and conditionals, which, themselves, rely on string interpolation).
The only place where you have to deviate from standard Markdown in your Markdown pages is if you have JavaScript string interpolations or Kitten components/conditionals in code fences within your Markdown. In that case, you’ll have to escape them (e.g., `<\${Component} />`, `\<if \${something}>something\</if>`, etc.). And, to be fair, the person most impacted by this is likely me as the Kitten documentation at https://kitten.small-web.org is written in Kitten so I had a lot of escaping to do. But for any other use case, it means that things should just work and work exactly as they do in JavaScript pages (page.js files).
Anyway, so this is going to be a breaking change so I thought I’d give you (the three of you playing with Kitten right now?) a heads up. Of course, I’ll be updating the documentation to reflect all this.
(Remember, Kitten is in pre-release and it’s the framework I’m building/using to create Catalyst – the Small Web hosting solution – and Yarn – a small web – peer to peer – personal site app. So Kitten isn’t the means, not the end. And, at least until the Version 1 API freeze, things can and will break. That said, there’s nothing stopping you from playing with it now and, to be fair, at this point, such breaking changes should become rarer and rarer).
One of the many things I am thankful for on @kagihq is their page of random small web sites. I have found more great sites to add to my bookmarks and RSS feeds there than anywhere else in recent memory.
Going through there is better than any random social media scrolling any day of the week.
hiii i'm finally releasing my pokémon starters clique!! you can go and adopt a little guy to put on your site :) no member list bc i don't rly feel like dealing with it lol, this is just for fun! https://fan.lysandre.me/starters
One week early, but I'm not going to touch the computer much next week, so here we go.
A short post to celebrate 7 consecutive years of my #personalwebsite.
Ah, and also, forgot to mention this change:
Improved:
• Debugging your Kitten app is now easier when you run it using `INSPECT=true kitten …` as the Node runtime is launched using the `--inspect-brk` tag instead of the `--inspect` tag. This means that execution will wait for your debugger (e.g., Chromium’s DevTools at `chrome://inspect`, etc.) to connect before starting the server. This makes it possible to hit breakpoints that might previously have been impossible to reach as they occured before you had a chance to run the debugger.
Full change log:
https://codeberg.org/kitten/app/src/branch/main/CHANGELOG.md#2025-08-12
New Kitten Release
Housekeeping:
• Updated runtime version to Node version 22.18.0 (latest LTS).
• Removed `--experimental-global-customevent` in node launch command (as `CustomEvent` is no longer behing the CLI flag since Node v19.0.0)
• Renamed `--experimental-loader` flag to `--loader` as the experimental prefix is no longer required.
Enjoy!
@epilanthanomai I started building websites in 1998 and never had the desire to work with big corporate clients. I just didn't want the web to become the realm of capitalism and I had no interest in aiding in that process. All my sites have been for small non-profits and small businesses. HTML, CSS and little else other than photos when needed. No trackers, no JS.
One mistake I DID make was using google fonts but going forward no more of that.
My book/comic review blog has been overhauled, with a full index and vastly improved navigation. 260+ fantasy/horror/SF reviews, some of them even kinda thoughtful!