#Fedify's tutorial, which previously assumed you were using #Deno, can now be followed using #Node.js and #Bun! (What is Fedify? It's an ActivityPub server framework.)
However, they are written for Fedify 0.8.0, which hasn't been released yet. You can test it with the pre-release version, 0.8.0-dev.164, though.
I suggest we have a new survey similar to state of JS called state of JS runtime, to get an idea of which runtimes are most popular in the industry & what are they being used for. (its merely a question in StateOfJS)
To Bun or not to Bun? I had a look at the latest iteration of JavaScript runtimes, written with Zig and powered by Apple's JavaScriptCore engine.
It looks attractive and implements a Go-like toolchain, which is simple to use, fast and cares about everything (runtime, compilation, bundling, package management etc.). And also, Bun is really fast, mostly on par with Go in the area of backend web dev.
However, following the number of bug, memory leak and security-fix releases, basically every few days, it follows the unfortunate rat race philosophy of the JS ecosystem by forcing you to constantly update. How likely is it that Bun code written today will just work in a year or two without modification.
If you use Bun for production purposes, I would be interested in real life experiences.
This is an ultra-fast #NodeJS, #Bun, and #Deno interface to LMDB - leaves all other DBs in the dust. Your screen isn't wide enough to show how fast it is...
@kubikpixel BTW, I can't understand how "manual memory management" and "simplicity" can be two features in the same language. I think that this is shortsighted.
Add as much sugar like defer as you want, but in the long term, your software will end up being unreliable and segfault a lot like #Bun (written in Zig).
Just take a look at how many Bun issues there are related to SEGFAULT:
🖥️ Alex Ellis’ new batch-actions project
📑 DevDocs is a one-stop shop for API docs
🐢 @jarredsumner announces Bun Shell
👟 Shoelace by @claviska
😮💨 Martin Heinz' DIY CO2 monitoring system
🎙 hosted by @jerod
The Bun Shell is a new experimental embedded #language and interpreter in #Bun that allows developers to run cross-platform #shell#scripts in #JavaScript and #TypeScript. It allows developers to use JavaScript variables in shell scripts. All template variables are escaped for security. The Bun Shell works on #Windows, #macOS, and #Linux. It is designed as a drop-in replacement for simple shell scripts.
Is there an html tagged template library to render html on the server? I'm currently exploring @ lit-labs/ssr but I'd like to be aware of alternatives
Note: I don't need hydrate or client stuff, just a plain html string to string/stream/etc templating library
Some previews of recent #ThingUmbrella updates/additions:
The declarative & fully typed CLI arg parser https://thi.ng/args now has a nice cliApp() wrapper (also largely declarative), supporting multiple sub-commands (with shared and command-specific args/options), automated usage generation, https://no-color.org support/detection. Still doing more testing with various CLI tools of mine (from which this all has been extracted), but planning to release in next couple of days...
People who've been following the project will know that for years I've been a big fan of Tachyons CSS[1], which is pretty much used for all ~150 examples in the repo. As nice as it is, it's also unmaintained by now and there're various more modern features missing (e.g. grids) and there're also general issues with the overall approach. Switching to Tailwind would mean having to install a whole boatload of additional tooling so is anathema and also doesn't address some of the features I've been wanting to explore: E.g. Generating entire CSS frameworks from a bunch of wildly combinatorial rules, options & lookup tables, keeping literally everything customizable, combinable and purely data-driven (i.e. generated from a JSON file). Similar to Tachyons CSS, these custom generated frameworks are based on standalone CSS utility classes (hence the original particle-inspired naming). However, I'm aiming for a different usage and instead of assigning them directly to an HTML element's class attrib, here we can assign them to (nested) CSS selectors to define fully inlined declarations. The additional killer feature is that each of these classes can be prefixed with an arbitrary number of freely defined media queries and thus making it trivial to add additional responsive/accesible features and without requiring megabytes of raw CSS to cover the combinatorial explosion!
For the past few days I've been trialling this new approach and I very much like where this is going... Take a look at the basic example in the new https://thi.ng/meta-css package & readme. I will also write more about this in coming days. All in all, it's another example where code generation and a domain specific language approach is super powerful again... limits of my world and such...
Also, speaking of bloatware (earlier above), the entire toolchain (incl. CLI & all dependent packages) is a mere 21KB (minified) and it already can do a ton!
Just updated & simplified the https://thi.ng/meta-css tooling to also use JSON as interim representation for the generated CSS framework definitions. The metacss convert command now also acts as bundler, deduplicating CSS selectors, combining rules and media query criterias from multiple meta-stylesheets and optionally including arbitrary CSS (e.g. normalize.css as a sane starting point). More features since yesterday, but total tool bundle size (incl. all deps) has shrunk to 19KB!
I've updated the readme with an expanded example and updated instructions (should you want to try it out, even though it's still pre-release...):
Writing my first #Zig code, and I can already tell this is going to be a struggle. So much syntactic sugar. Makes #Rust look easy to write in comparison.
All I want is a better C. So far #HareLang seems like the winner there.
#Perl still takes the cake as the worst language I had to write today. Though shoutout to the Perl fediverse community for being helpful people!
Do we really need #Zig and has it only become relevant due to #Bun using it?
I myself am very reluctant to learn and use it and would rather wait for something like #Carbon. I don't think I want all the drama the #Rust community kicks up once a week.