Which JavaScript framework is best for a single page application in 2019?

I feel like every third question is this… What’s the best framework to use? Which framework should I learn? What should I learn in 2019? What must I know to be a web developer?

First of all, you need to know how to search the Internet, which most of askers obviously have no idea how to do. Knowing where to look for answers is the first skill you need as any kind of developer, front-end, back-end, mobile, sysadmin, whatever.

Learn any, and learn it properly. Then expand and peek at others. See how they differ, and understand why they differ. There’s no best framework, there’s a good choice for a particular application.

Vue might be a good entry point if you’ve never dealt with MVC pattern before, or you’re coming from using ad hoc solutions such as manual manipulation of DOM using the DOM API through JS (jQuery used to be helpful here few years ago, not so much now).

React is a nice choice because of its simplicity and it being a view library, not a framework. React itself won’t help you all that much. It means you have a lot of freedom, but that’s also its weakness. When you try learning React, you’re faced with a huge problem: what the heck do you learn first?

Angular’s main strength is that it simply enforce good practice. If you try to do something the wrong way, it will punish you. Angular is your greatest friend helping you and the most strict teacher you’ll ever have. It’s trivial to build applications that scale, and maybe choices have already been done for you. It’s still configurable, but it’s a bit more difficult to do so than using React.









Comments (13)

Marco Alka's photo

My advice: Don't learn a framework. Learn the language and it's standard APIs. Learn general programming concepts, algorithms and patterns. Because once you are done, you can just jump in and use any framework without learning it. Give the docs a quick read and be productive. The thing is, frameworks come and go and there are a million more than just the three mentioned here, so who cares about frameworks? JavaScript, though, is here to stay.

Show all replies
Bangash!'s photo

I'm a Geologist who is obsessed with coding.

Yes, that's perfectly right!

Roark's photo

I like VueJS, it's lightweight and detailed documentation

Show all replies
Eze Bernardine May's photo

I prefer React, its wow

Jason Knight's photo

None of the above, including "other"... unless of course "none" qualifies as "other".

See my answer here:


Brandon's photo

I'm using Next.JS for my latest SPA. It's been an enjoyable painless experience so far and it's server-side rendered by default.