Some seriously annoying CSS work led me to doing a brain dump on my current thoughts on CSS, for what they're worth…

https://loewald.com/blog/2023/12/css-is-great-but-its-often-not-obvious/

#css #frontend #xinjs

CSS is great… but it’s often not obvious – inconsequence

Welp, having spun two small Typescript libraries off of #xinjs and build a tiny one from scratch, and published them to npm, in the last few days—all using #parceljs—I finally felt I had facepalmed enough times to switch #xinjs over to building dist/ and cdn/ targets with parceljs. I guess I'll find out tomorrow if I've blown anything up.

Who knew #lycos was still a thing?

I still remember it as the first search engine that didn’t completely suck :)

#xinjs #goodtimes

Now you need to maintain all that crap AND document it. And now your component will is yet another platform abstraction layer. And yes it’s a leaky abstraction layer.

In the end I couldn’t find a single benefit of <sl-input> over writing:

label(
span(caption),
input()
)

And addling global CSS powered by css-variables to style it.

#xinjs #elements

One of the things I love about having a bunch of libraries I’m working on in my spare time is that I get to do more exploratory coding which is a nice balance to just solving the problem in front of me.

Having built a form component with #shoelace.style and #xinjs I ended up ripping out the shoelace.style components and reimplementing the form with plain HTML in two successively cleaner and simpler ways…

https://loewald.com/blog/2023/04/the-shadowdom-is-optional/

#frontend #javascript

The ShadowDOM is Optional – inconsequence