Hello there,

I want to start front-end development. So, my question is what is the list of languages, frameworks and libraries I should be familiar with?

Write your answer…

11 answers

I started teaching myself this about 18 months ago, here is what I found:

HTML, CSS and Vanilla JS is first. Only do this for 6 months.

After that I started drawing circles, the inner circle is point one: HTML, CSS and JS.

When I was researching and learning this, I frequently came in touch with words I didn't know. When I was researching css, I saw the words "Sass" and "Less" so added those to my next outer circle. When researching JS I saw words like Babel, TypeScript, so I added those to the circle too.

Then when I reseached "Sass" and "Less" and saw words like "Gulp" and "Grunt", I didn't know what those were, so added them to my next outer circle. When diving deeper into HMTL I saw the word "Jade" (now called Pug) and added it to the next circle.

Then I saw "React", "Angular" etc. etc.

This meant that I kept circling between the three components that make up the web, HTML, CSS and JS, not loosing touch with any of them just spreading my wings further into the technologies that are built upon those three.

Of course I also hit (and am still hitting) absolutely devastating "brick-wall-moments" where I just thought "I won't go any further I can not learn this", but keep at it, water cuts stone because of it's perseverance, not because of it's power.

Hashnode is building a friendly and inclusive dev community. Come jump on the bandwagon!

  • 💬 A beginner friendly place

  • 🧠 Stay in the loop and grow your knowledge

  • 🍕 >500K developers share programming wisdom here

  • ❤️ Support the growing dev community!

Register ( 500k+ developers strong 👊)

I think the more popular frameworks nowadays for frontend is React, and Angular 2, you can try too if you want with Vue.

Another interesting thing is GraphQL and Apollo stack.

It's interesting to, to take a look at Redux.

It depends on what kind of work you're looking to do. React/Vue/Anguler may be an overkill if you're just trying to learn HTML/CSS stuff.

There are many different frameworks and libraries and learning everything is practically impossible. If you want to become productive quickly, I would recommend narrowing down the list and picking the best candidate. Other answers provide some very good pointers. I would like to add my own framework to that list - Cx.

Start with HTML, add CSS, then move on to vanilla JavaScript (including ES6). Don't start with frameworks and libraries before you know the trinity. I'd actually say that HTML and CSS are more important as fundamental skills - if you don't know what HTML tags are for, you'll waste a lot of time recreating functionality in JS. If you don't know how CSS works, you'll spend a lot of time debugging simple problems... and so on.

If you skimp on the basics you'll never really master the advanced stuff. I'd even go as far as saying you shouldn't go beyond HTML/CSS/JS until you are actually frustrated enough to know why people made frameworks and libraries in the first place.

After the trinity I still wouldn't jump into frameworks - first learn a task runner. Learn git and bash if you haven't already.

I'd suggest going with the NodeJS stack; so you're looking at NodeJS, NPM and Grunt or Gulp. Learn how to use those to do common website tasks like minifying and concatenating CSS and JS.

Learn a good templating language for HTML. Learn a preprocessor for CSS. Still stick to vanilla JS. By this stage you will have the skills to efficiently create and maintain a simple, static website. Learn how to deploy it with SFTP, then automated deployment processes. Learn to hack on your .htaccess file.

Sooner or later you'll get tired of static content and want to pull data from some endpoint... and after that, frameworks and libraries will come pretty easily.

Above all: make stuff. Have fun.

Load more responses