Is jquery a javascript library or framework?

A library. According to the homepage, and which I agree with.

A framework is something that usually forces a certain way of implementing a solution, whereas jQuery is just a tool to make implementing what you want to do easier.


According to the angularjs web site

  • a library - a collection of functions which are useful when writing web apps. Your code is in charge and it calls into the library when
    it sees fit. E.g., jQuery.
  • frameworks - a particular implementation of a web application, where your code fills in the details. The framework is in charge and it calls into your code when it needs something app specific. E.g., durandal, ember, etc.

For sure, it's a javascript library. But about being a framework or not,I just think it's not a framework. Have a look on wikipedia definition of software-framework:

It is a collection of software libraries providing a defined application programming interface.

And jQuery is just a single library. After that it says:

Frameworks contain key distinguishing features that separate them from normal libraries:

  1. inversion of control - In a framework, unlike in libraries or normal user applications, the overall program's flow of control is not dictated by the caller, but by the framework.

So, I think it's not a framework.


jQuery: The Write Less, Do More, JavaScript Library.