DEV Community

Cover image for How to choose your first front-end framework without losing your mind
Supantha Paul
Supantha Paul

Posted on

How to choose your first front-end framework without losing your mind

The javascript ecosystem is huge and when you see the sheer amount of tools, libraries, frameworks there are for front-end development, it can be overwhelming - especially for beginners. In this article, I'll try to help you choose your first front-end javascript framework by following a simple route.

Key factors to consider

I see a lot of articles comparing front-end frameworks by their popularity or GitHub stars, which is fine. You don't wanna be learning a framework that no one uses or where there's little to no learning resources. But for your first framework, you should be picking the one which you think you'll be the most comfortable with. Once you're comfortable with a framework of your choice, you'll find it really easy to transition to another framework that is trendy or better for jobs.
With that being said, some of the things you should consider when choosing your first framework are,

  • Availability of learning resources
  • Ease of use
  • Does it work for you?

I'm not going to be sharing any stats of each framework since there are already really great articles on this topic, what I'm going to do is list the top 5 frameworks that are all safe to learn and help you find for yourself which one you like the most.

The Top 5 frameworks

Here are my top 5 front-end frameworks in no particular order:

How to find the framework that works for me?

This part is actually surprisingly simple that I don't see many people doing. For example, when I got started I was attracted to learn React because of how popular it was and how the big companies are using it. But after trying out Svelte, I immediately fell in love with it. I have nothing against React, I love it and it's still my go-to framework for any web project. But I think if I started out with Svelte, I don't think I would switch to another framework unless I had to.
The point I'm trying to make here is, just because a lot of people like a particular framework doesn't mean you'll like it too.

What I want you to do

Each one of the frameworks that I've listed above has an excellent step-by-step getting started guide where it goes through some of the most important features and syntax of the framework.

Go through the getting started guide of each framework and continue with the one you like the most.

All the guides are very simple and short and can be completed in the span of an evening. Take it slow and steady and at the end, you'll have a basic idea of how each of them works. Then go deeper with the one which you liked the most and build cool projects!
I'm linking the getting started guides for each one for you here,

Final words

Make sure to complete each one and see what you like and don't like about each, and pick your favorite. Everyone is different and it's okay if you like a framework that doesn't have the most GitHub stars, what matters is that you enjoy the process! I'll try to post my view on each of these here in the future. Let me know which one you like the most!

Top comments (9)

Collapse
 
jonrandy profile image
Jon Randy 🎖️

RiotJS needs more love

Collapse
 
noclat profile image
Nicolas Torres

I loved Riot, but its ecosystem never grew enough to make it a production-ready library, and now it's too far behind the big ones. I guess it's only a matter of time before RiotJS retires in favor of Svelte which shares a lot of similarities and yet has so much more traction from the community.

Collapse
 
supanthapaul profile image
Supantha Paul

I really liked RiotJS, very similar to Svelte!

Collapse
 
jonrandy profile image
Jon Randy 🎖️

Yeah, it's been around years longer. Svelte seems to borrow a lot from it

Collapse
 
mauro_codes profile image
Mauro Garcia

It's nice to read this kind of framework-agnostic posts! I don't like when I read that kind of post that says that you should always use "x" framework because of "y" and "z".

You can use multiple frameworks for different projects. The key is to understand each one's strong and weak points so you can choose the right one for each situation.

Great post!

Collapse
 
supanthapaul profile image
Supantha Paul

Thank you Mauro!

Collapse
 
alexandergekov profile image
Alexander Gekov

Great that you compared Svelte and Ember as well!

Collapse
 
supanthapaul profile image
Supantha Paul

Svelte is one of my favourites!

Collapse
 
codebyjustin profile image
Justin

I'm a angular fanboy.