Since my last little ramble over how SvelteKit sucks ass, I had a bit of a dive in slapping some code into Astro. Not much but enough to see if it irks me as much as Nuxt or SvelteKit did.
So far so good.
Honestly, I would almost say working with Astro is pretty, it definitely is quite intuitive and seems to just work. Sure other things just work also, VUE components or Alpine or Svelte components just work too.
Once you add a bit of complexity then it can become an intuitive maze of gotchas. Sure working more with Astro I will likely face some similar issues but I have a sense there will be an elegant solution most times.
The other part is that going into Astro I am not trying to use it for every aspect of the build. As mentioned it is just the binder and interface for everything else.
Which is what makes it so damn nice, I was able to slap a Svelte component in and use a sprinkle of Alpinejs all in one page. Really this is all a person wants, to mix and match what works for you.
Obviously, that is not good development per se but it is perfect for flexibility, break fast and deliver.
Sometimes you do need something a bit funky and it is good to know that you can integrate it rather easily instead of having to build a wrapper for a wrapper and maybe then still the underlying framework fucks it all up.
That is just the JS way it seems, they want to build products using every library under the sun but do not want to provide flexibility to the user to use any library under the sun without blood, sweat and tears.
So yeah I like Astro as my possible go-to little Nodejs framework, and the freedom that will come from being able to on top choose whatever headless CMS, datastore, interaction library or UI system I like.
Astro feels like the Laravel of Nodejs land and I was thinking that I have not tried it sooner because of something called Meteor.
Meteor on the other hand can go suck prickly pork banana.
I must have gone through the docs and not liked it and since then Meteor being so close to Astro in name has just made me skim over it whenever it comes up in results.
On the other hand it might just be that since I have now gone down the compiled library road with Svelte, and the @ignore every piece of trash typescript in NUXT path, I just don't find Astro intimidating.
It all good.