DEV Community

Nico Zerpa (he/him)
Nico Zerpa (he/him)

Posted on • Edited on • Originally published at nicozerpa.com

2

How To Choose Which JavaScript Libraries To Use (Part 1)

So you want to create a JavaScript project? Great! Which library or framework are you going to use, React? Maybe Vue.js? Maybe you prefer using just Vanilla JS? Heck, even jQuery might be an option!

OK, let's say you choose React. Now, how will you do the state management? Redux, maybe MobX? Or maybe I rely just on React Hooks and the Context API?

Choosing the right tools is one of the most important decisions that you'll have to make when you start a new JavaScript project. These decisions have long-term consequences, good and bad, for your project. And they play a crucial role in the success (or failure) of it.

In this four-article series, I'll give you my tips and tactics so you can choose the best libraries for your JS project.

Take Into Account Project Size

In smaller projects, you should prefer tiny libraries (or even Vanilla JS) with little boilerplate code. On the other hand, larger, more complex libraries are better suited for larger projects that might be worked on by many people.

One of the advantages of (some) complex libraries is that make the code easier to maintain (if you use them properly, of course.) at the cost of more boilerplate code, increased build times, and larger bundle sizes.

However, small codebases are easier to maintain. That means, if you add complex tools you'll get the disadvantages, but not the benefits (because you already had the benefit of maintainability.)

It doesn't necessarily mean that you should use only larger frameworks and libraries on big projects. Size still matters and if you find a smaller library that does the same thing and does it well, it can be a good option, as long as they meet the other requirements in this series.

In the next article of this series, I'll talk about comparing new and shiny libraries vs. popular and "safer" ones, and when to choose one over the other.

p.s. Did you like what you've read? Every week I send an email with free tips and insights to become a better JavaScript dev. If you're interested, click here to subscribe.

Image of Timescale

🚀 pgai Vectorizer: SQLAlchemy and LiteLLM Make Vector Search Simple

We built pgai Vectorizer to simplify embedding management for AI applications—without needing a separate database or complex infrastructure. Since launch, developers have created over 3,000 vectorizers on Timescale Cloud, with many more self-hosted.

Read full post →

Top comments (0)

Billboard image

The Next Generation Developer Platform

Coherence is the first Platform-as-a-Service you can control. Unlike "black-box" platforms that are opinionated about the infra you can deploy, Coherence is powered by CNC, the open-source IaC framework, which offers limitless customization.

Learn more