What JavaScript libraries do you prefer to use?

I use jQuery every now and then, but I mainly use Vue.js since I prefer a more object-oriented way of doing things. jQuery can get SUPER messy real quick.

At work where I work (JM Smucker's), we use jQuery just because the other developers aren't familiar with object-oriented Javascript. But Vue.js will always be my favorite Javascript framework :)

Another good framework that I love to use that is pure Javascript is Ember.js. I developed an entire application within Ember and it was frustrating at times since I don't like some of the ways they do things, but it's a good framework to use for an application.

 
I second the agreement with Vue.js. I love using it, it's so easy to pick up and makes a project a lot more dynamic. I also use momentjs for date manipulation which is another good one.

 
I have used pretty much all of them here except Ember. JQuery is good when you have nothing or need something quick and dirty, Angular when you need a large well structured application. I found Vue to be the most interesting because it felt very much in between and I liked that!

 
Oh I second Phaser as well. I dont really view it as a library (I mean it is.. technically, but it's more of a game engine to me). I don't use it very often on applications though, but only for games since that is its primary use. It's just not something you can use in every application like Vue.js and such.

 
I'm a heavy fan of Vue.JS as a front-end framework, if things are simple enough or really require a lot of customisation I'll write it in Vue components myself (if the project requires it).

But most of the time, jQuery is enough to sprinkle on top of HTML.

IMO Vue is the jQuery of front-end frameworks, in terms of simplicity. jQuery started out with a lot of competition, but clearly won because of the simplicity of implementing it. I feel the same way about Vue, you don't need to know a lot about it to start using it, while other frameworks have a steep learning curve (I'm looking at you, angular).

 
I just finished *removing* jQuery from Mycena Cave, and I'll probably never use it again because of the following combination of issues:

  • It's a lot of code - it's comparatively slow, and a largeish download
  • There's no good way to structure your code. Enjoy putting everything into a single $(document).ready(function() {});
  • Utter hell to extricate from your codebase
  • Concerns re: security and keeping it up to date
To elaborate on the last -- version bumps periodically security fixes, but also breaking changes. Because I have better things to do than follow the upgrade guide every time they release a new version, it falls out of date, and then becomes harder and harder to update (because you end up with a larger and larger list of breaking changes for which you have to scour your poorly structured codebase). And then you turn around and realize that you're running a version of jQuery from three years ago, there are many well-documented security vulnerabilities, and you can't upgrade it because if you do everything breaks.

My recent preference is Google Closure -- documentation isn't great and it's not really newbie friendly, but I'm loving the tooling and the compiler, and the way it's super easy to define good structure on your code.  I recently re-wrote all of MC's frontend code in it, the compiler caught a number of long-standing minor issues, and the end-result is noticeably smaller and snappier to run than the old jQuery version.

 
Last edited by a moderator:
I'm also a fan of avoiding jQuery haha. Though it can be  somewhat frustrating that a lot of JavaScript libraries out there seem to assume you use jQuery. XD

Lately, I've been mostly writing in ES6 and then if I want some slightly more complicated JavaScript shenanigans, I use Inferno, which is basically mostly a faster React. Though the main guy who maintains it joined the React team at Facebook not so long ago, so who knows what its future will look like haha. 

For certain HTML5 game type features, I like using PixiJS. 

In the past, I used Backbone and Polymer a lot. 

 
Last edited by a moderator:
jQuery would be the main one. 

As others have stated, jQuery isnt a "pretty" language to work with, however when I started my project, I could really find anything else I was comfortable with, so decided to stick with it, and I havent found anything I'm not happy with yet (and my project is so far gone I wouldnt want to consider changing haha).

I've also found momentJS very useful too!

 
Back
Top