Check out Joystick [1]. It's designed to be a logical next step from learning the fundamentals of HTML, CSS, and JavaScript. No surprises in terms of syntax or tooling (if it's in the specs/docs for those languages, it will work in Joystick). It's also full-stack, meaning you can start out building simple web pages with components and upgrade to a full-blown app as you learn more.
If you have any questions, feel free to get in touch: ryan.glover@cheatcode.co.
I agree that you should start with vanilla JS, but Alpine is a good follow up because it just adds conventions around what you'd be doing in vanilla JS anyway.
I"m not a programmer so I was learning js from basically nothing. As others have said, I have found it best to avoid frameworks if possible. One of the biggest reasons for me is a lot of the examples and things on places like stackoverflow is out of date so I would find myself learning a framework to do one little thing and then a few days later find out there was a new pure js way to do thing or that the way I figured it out was depreciated or something. SO try to stay pure at the start.
Every framework will teach you a different way of looking at things… can’t go wrong picking one and going really deep, then exploring some others. I wouldn’t recommend one specifically, but definitely start with one and stick with it for a bit
> but definitely start with one and stick with it for a bit
Devs are paid quite a bit of money to play russian roulette with their tool choices.
Frameworks are an abstraction and not really key to understanding anything. And devs need to understand, at least conceptually what the framework is doing (or attempting to do) without too much magical BS. Ideally that starts with working with the dom and seeing first-hand the pains and joys of adding and removing elements, functions, sync and async behaviours, data handling, objects etc.
Then only will frameworks click and make sense, and so choose the right tool for the right job.
> devs need to understand, at least conceptually what the framework is doing (or attempting to do) without too much magical BS
This strongly aligns with how I like to learn, and is one of the reasons (besides lack of need) why I haven't touched JS thus far; everything seems to focus on the revolving door of frameworks, but it isn't clear as an outsider if any of them are "purer" than the others. The reason for asking about this one in particular is that at a glance, it appears minimal and clean - but I suppose that doesn't necessarily correspond to it being an idiomatic example of simple JS done well.
I think there is definitely value in both approaches and depending on your preference one may be more fun than the other. My point is not to get caught up in the framework of the day.
(I don't mean learning JS/TS syntax, more the general paradigm for user-facing code which does something meaningful besides printing "hello world")