DEV Community

Cover image for 21 Popular JavaScript Libraries Every Web Developer Should Know
Kingsley Ubah
Kingsley Ubah

Posted on • Edited on

21 Popular JavaScript Libraries Every Web Developer Should Know

The JavaScript ecosystem is huge and keeps fostering. Tons of libraries, frameworks and tools are being coded up and deployed in projects to make dynamic websites. While some are fizzling in demand and use, others are growing more popular.

Below are 21 libraries/frameworks all JavaScript developers consider for their project.

N/B: You don't need to know all of these. In fact, knowing just React or Vue is enough to build full websites.

  • ANGULAR JS

Alt Text

Angular is one of the oldest JavaScript libraries till date. Wait, Angular is actually a Framework, not a Library. It allows you create single-paged, client-side web applications. Angular is written in TypeScript and backed by Google.
Some of the popular companies who use Angular are Google (obviously), PayPal and iTunes.

  • VUE JS

Alt Text

Very similar to React, Vue is a front-end framework used to create single-paged applications with the popular component-based architecture. The upside with using Vue is that you write smaller amount to code compared to other UI libraries. Vue JS is growing stronger by the day, and is getting adopted at a quick rate.

  • UNDERSCORE JS

Alt Text

Underscore is a lower level JavaScript library. Lower level in that it’s very close to vanilla JavaScript. All it does is provide you with some helpers and tools to create web applications faster.

  • BABYLON JS

Alt Text

I have a confession to make; I really love the name of this particular library.
For the game developers, this name might not be a new one. Babylon is a full fledged 3D video game engine for creating complex and web-based 3D Video games.

  • REACT

Alt Text

This is probably the one you were all waiting for. React is one of the most popular JavaScript library in existence. You see those similar and cool looking buttons, or perhaps those nice looking navigation bars, or some cool modals you just can’t stop marvelling at?
Chances are they were all made with React. React is a component-based UI library which allows you create reusable UI elements (components) for your website. It is used by many companies, including Facebook, of course.

For those of you looking to learn React, HTML to React is a brilliant course to go from knowing just HTML to knowing React.

  • EMBER

Alt Text

Ember is a powerful JavaScript framework which helps developer to create websites without having to worry about the nitty-gritty of the process.
It includes everything you need to create rich UIs and combine them to form a powerful and highly scalable website.

  • BACKBONE JS

Alt Text

Another cool name!
Backbone.js is a very simple and straightforward JavaScript library and framework. Its biggest distinguishing feature is the fact that it can fit within a single JavaScript file. Backbone is a great option for those looking to build simple websites.

  • CLIPBOARD JS

Alt Text

As its name already implies, Clipboard allows you copy data from your site right off the bat! No need to install any additional dependency.

  • BABEL

Alt Text

Some of us may be already be aware of the story of the tower of Babel in the bible. Creating a language division amongst the builders to cut of communication and create discordance.
Well this tool is the solution to that problem, in the context of JavaScript. When creating code, browser compatibility is open an issue to consider. Older web browsers tend to be dropped in favour of newer ones, but not all users update. There are still machines and devices out there that are running old versions of web browsers.
Babel is a JavaScript compiler which compiles your JS code to ES5 compliant nature. This means your code can run on new browsers such as Edge as well as older ones, such as IE 9.

  • SVELTE

Alt Text

Svelte is a complete new approach to building user interfaces. While traditional frameworks like React and Vue are browser based, Svelte shifts that work into a compile step that happens when you build your app.

  • LETTERING JS

Alt Text

Lettering is an interesting JavaScript library for texts. You can style and layout individual texts on your page, including implementing some cool transitions and animations. Lettering JS is a jQuery plug-in. Hence, it requires jQuery to work.

  • CHARTIST JS

Alt Text

Ah, here is something for the data analysts!
Chartist is a nice JavaScript library for creating simple, responsive and customizable charts for your website. Chartist uses SVG to render them; hence, your charts can also obey custom CSS rules.

  • DROPZONE JS

Alt Text

Dropzone allows you implement “drag and drop” features on your website. It is also highly customizable with custom code. It’s lightweight, doesn’t depend on any other library (like jQuery).

  • THREE JS

Alt Text

Aha! Something to make some cool, eye-catching stuff.
Three js is an immensely popular JavaScript 3D library for creating visual effects on your website. It is a great option for those looking to create 3D visualizations without the need for heavy-duty game engines.

  • jQUERY

Alt Text

jQuery is one of the oldest yet most popular JavaScript libraries still in existence. You’ve probably already heard of the DOM, which stands for Document Object Model. jQuery is perfect and quite reputed for manipulating the DOM. You can also dothings like HTML events, animations and effects, CSS manipulation, and AJAX calls.

  • LODASH

Alt Text

When you think of this library, you think of utilities. Lodash is an immensely useful library which contains and provides utility functions which you call into your code to perform a specific task. Saving your time you would have wasted in writing it yourself.

  • PIXI JS

Alt Text

Named after the popular movie animation studio Pixar, Pixi is an open source 2D engine used to create beautify, eye-catching animations on your website. Pixi uses WebGL, and uses HTML canvas if the former is not supported.
PixiJS is made of multiple consumable components that can be installed in your project with NPM/Yarn

  • D3 JS

Alt Text

D3.js is a JavaScript library for manipulating documents based on the nature of data received.
It stands for “Data Driven Documents”, which kind of explains its task. The library uses pre-built functions to select DOM elements, create SVG objects, style them and add transitions and other effects. These objects can also be styled using pure CSS.

  • SOCKET.IO

Alt Text

You should know that by default, the connection between the browser and web server is closed once the server responds with data. So how do you keep the connection open so data can seamlessly flow bi-directionally without having to make new requests in the process?
Socket.io, based on web sockets, is a JavaScript libabry which enables event-based two-way communication between the browser and the web server. It utilizes a node.js server.
https://socket.io/

  • MATH JAX

Alt Text

Ah, good old maths.
As its name suggests, MathJAX simply allows you to include mathematics in your pages. This includes special math notations and symbols. MathJax automatically formats the mathematical symbols and equations that you enter in HTML and problem components using LaTeX notation into beautiful math. A MathJax equation can appear with other text in the paragraph (inline) or on its own dedicated line (block).

  • MODERNIZR

Alt Text

Modernizr is a libary of tests. Features like CSS transform, web sockets, CSS transitions and animations can be tested on the browser using special properties from Modernizr.
There are over 260 features which can be tested using this utility.

Which of these are your favourite? Let me know in the comments.

P/S: I recently launched my Web Development Beginners Guide eBook for Absolute Beginners. Check it out here - Web Development - The Beginners Guide

Top comments (7)

Collapse
 
ravavyr profile image
Ravavyr

Every developer should "know OF" them...but you don't actually need to know how to use all of them.

Long lists like these terrify a lot of newbie devs who think they can't build a site if they haven't learned them all. The reality is you don't need any of these to build websites, but they can come in handy. In the case of the frameworks they can even be the core of the project.

Some of the ones on your list are outdated and shouldn't be specifically learned nowadays. Once you have Javascript figured out you can easily pick them up if you MUST deal with them for some sort of project.

Specifically:

  • jQuery - It's not dead, but vanilla JS can do anything jQuery can now, though jQuery has a large library of existing plugins that can be very useful, but newbies shouldn't be learning it as a main thing they do.
  • Modernizr - This library was very useful perhaps 5-10 years ago when internet explorer and safari were freaking terrible to code for. IE is dead, Safari's gotten better. Modernizr is just a large chunk of JS you don't need to add to sites anymore, assuming your CSS is up to par.

Angular/Vue/React are three ways to build full scale sites. Along with their own extensions they are 3 somewhat different framework structures and a dev should perhaps focus on one, rather than try to learn them all. Get decent at one and the other two should be easy to pick up.

The rest of them are things people play with for fun or use when a project specifically requires it, so they're not necessities, but can come in handy.

Web dev is a large ecosystem nowadays and it's often hard to decide what tools to use, but let's help out the newbies by guiding them down a few paths rather than tossing the universe map at them and going "have fun finding your way".

Collapse
 
saoud profile image
Saoud

I would agree, there is no way any dev could really know ALL of the JS libraries.

I would also agree with the 3 major ones you picked. In other special cases I could see some of the more obscure ones being used but if you are familiar with Vanilla JS and a few other libraries you shouldn't have much trouble picking the others up as needed.

Collapse
 
cuznerdexter profile image
cuznerdexter

Angular and AngularJs are NOT the same!
When are people going to stop calling Angular as AngularJs!

AngularJs is practically dead, my company is currently rebuilding all our AngularJs Apps in Angular.
Angular is totally different and much more powerful.
This article, like many others is misleading and should be corrected.

Collapse
 
techguy profile image
Arun

Syncfusion library missing here syncfusion.com/javascript-ui-controls

Collapse
 
labkamal profile image
Kamal Saxena

Full stack Web developer learning and Newsletter resources plz.

Collapse
 
arvindpdmn profile image
Arvind Padmanabhan

I use only jQuery, MathJAX and D3 from this list. Frameworks are not essential for simple sites.

Collapse
 
synergycodes profile image
Synergy Codes

What about GoJS? Perhaps it would be also interesting example? We did a in-depth research here: synergycodes.com/gojs-ebook/