JavaScript library

Last updated

A JavaScript library is a library of pre-written JavaScript code that allows for easier development of JavaScript-based applications, [1] especially for AJAX and other web-centric technologies. [2] They can be included in a website by embedding it directly in the HTML via a script tag.

Contents

Libraries

With the expanded demands for JavaScript, an easier means for programmers to develop such dynamic interfaces was needed. [3] [4] Thus, JavaScript libraries and JavaScript widget libraries were developed, allowing for developers to concentrate more upon more distinctive applications of Ajax. [5] This has led to other companies and groups, such as Microsoft and Yahoo! developing their own JavaScript-based user interface libraries, which find their way into the web applications developed by these companies. [6] Some JavaScript libraries allow for easier integration of JavaScript with other web development technologies, such as CSS, PHP, Ruby, and Java, while others provide utilities, often in the form of JavaScript functions, to make repetitive and complex tasks less taxing. [7] [8] Many libraries include code to detect differences between runtime environments and remove the need for applications to allow for such inconsistencies.[ citation needed ]

Almost all JavaScript libraries are released under either a permissive or copyleft license to ensure license-free distribution, usage, and modification. [9]

Frameworks

Some JavaScript libraries, such as Angular, are classified as frameworks since they exhibit full-stack capabilities and properties not found in general JavaScript libraries. [10] [11]

Packages

All npm packages are JavaScript libraries, but not all libraries are packages. Npm serves as a package manager for packages used in Node.js runtimes. [12] [13] However, some npm packages offer CDN support for use of the library in both Node.js runtimes as well as the browser. [14]

See also

Related Research Articles

A user interface markup language is a markup language that renders and describes graphical user interfaces and controls. Many of these markup languages are dialects of XML and are dependent upon a pre-existing scripting language engine, usually a JavaScript engine, for rendering of controls and extra scriptability.

<span class="mw-page-title-main">Dojo Toolkit</span> Open-source modular JavaScript library

Dojo Toolkit is an open-source modular JavaScript library designed to ease the rapid development of cross-platform, JavaScript/Ajax-based applications and web sites. It was started by Alex Russell, Dylan Schiemann, David Schontzler, and others in 2004 and is dual-licensed under the modified BSD license or the Academic Free License.

<span class="mw-page-title-main">Google Web Toolkit</span> Free Java library

Google Web Toolkit, or GWT Web Toolkit, is an open-source set of tools that allows web developers to create and maintain JavaScript front-end applications in Java. It is licensed under Apache License 2.0.

<span class="mw-page-title-main">Aptana</span> Text editor

Aptana, Inc. is a company that makes web application development tools for use with a variety of programming languages. Aptana's main products include Aptana Studio, Aptana Cloud and Aptana Jaxer.

jQuery is a JavaScript library designed to simplify HTML DOM tree traversal and manipulation, as well as event handling, CSS animations, and Ajax. It is free, open-source software using the permissive MIT License. As of August 2022, jQuery is used by 77% of the 10 million most popular websites. Web analysis indicates that it is the most widely deployed JavaScript library by a large margin, having at least three to four times more usage than any other JavaScript library.

Morfik Technology Pty Ltd. is an Australian software company that was acquired by Altium in 2010.

This is a comparison of web frameworks for front-end web development that are heavily reliant on JavaScript code for their behavior.

<span class="mw-page-title-main">WaveMaker</span> Low-code programming platform

WaveMaker is a Java-based low-code development platform designed for building software applications and platforms. The company, WaveMaker Inc., is based in Mountain View, California. The platform is intended to assist enterprises in speeding up their application development and IT modernization initiatives through low-code capabilities. Additionally, for independent software vendors (ISVs), WaveMaker serves as a customizable low-code component that integrates into their products.

<span class="mw-page-title-main">Google Closure Tools</span> JavaScript developer toolkit

Google Closure Tools was a set of tools built with the goal of helping developers optimize rich web applications with JavaScript. It was developed by Google for use in their web applications such as Gmail, Google Docs and Google Maps. As of Aug 1, 2024 the Closure Library has been sunset, for not "meeting the needs of modern JavaScript development".

<span class="mw-page-title-main">Node.js</span> JavaScript runtime environment

Node.js is a cross-platform, open-source JavaScript runtime environment that can run on Windows, Linux, Unix, macOS, and more. Node.js runs on the V8 JavaScript engine, and executes JavaScript code outside a web browser.

jQuery Mobile is a touch-optimized web framework, specifically a JavaScript library, developed by the jQuery project team. The development focuses on creating a framework compatible with many smartphones and tablet computers, made necessary by the growing but heterogeneous tablet and smartphone market. The jQuery Mobile framework is consistent with other mobile app frameworks and platforms such as PhoneGap, Worklight, etc.

npm JavaScript package manager

npm is a package manager for the JavaScript programming language maintained by npm, Inc., a subsidiary of GitHub. npm is the default package manager for the JavaScript runtime environment Node.js and is included as a recommended feature in the Node.js installer.

<span class="mw-page-title-main">Amber Smalltalk</span>

Amber Smalltalk, formerly named Jtalk, is an implementation of the programming language Smalltalk-80, that runs on the JavaScript runtime of a web browser. It is designed to enable client-side development using Smalltalk. The programming environment in Amber is named Helios.

NativeScript provides platform APIs directly to the JavaScript runtime for a rich TypeScript development experience. As an open-source framework to develop apps for iOS, visionOS and Android platforms combining a best of all worlds approach marrying familiar Web approaches like CSS and view templating with common platform languages it delivers a liberating toolset for developers. It was originally conceived and developed by Bulgarian company Telerik, later acquired by Progress Software. At the end of 2019 responsibility for the NativeScript project was taken over by long-time Progress partner, nStudio. In December 2020, nStudio also oversaw the induction of NativeScript into OpenJS Foundation as an Incubating Project. NativeScript apps are built using JavaScript, or by using any programming language that transpiles to JavaScript, such as TypeScript. NativeScript supports the Angular and Vue JavaScript frameworks. Mobile applications built with NativeScript result in fully native apps, which use the same APIs as if they were developed in Xcode or Android Studio. Additionally, software developers can re-purpose third-party libraries from CocoaPods, Maven, and npm.js in their mobile applications without the need for wrappers.

This is a list of articles related to the JavaScript programming language.

Next.js is an open-source web development framework created by the private company Vercel providing React-based web applications with server-side rendering and static rendering.

<span class="mw-page-title-main">Deno (software)</span> Secure JavaScript and TypeScript runtime

Deno is a runtime for JavaScript, TypeScript, and WebAssembly that is based on the V8 JavaScript engine and the Rust programming language. Deno was co-created by Ryan Dahl, the creator of Node.js and Bert Belder.

htmx is an open-source front-end JavaScript library that extends HTML with custom attributes that enable the use of AJAX directly in HTML and with a hypermedia-driven approach. These attributes allow for the dynamic definition of a web page directly in HTML and CSS, without the need for writing additional JavaScript. These attributes allows tasks that traditionally required writing JavaScript to be done completely with HTML. The library was created by Carson Gross as a new version of intercooler.js.

References

  1. David Sawyer McFarland (2014). JavaScript & JQuery: The Missing Manual. O'Reilly Media. p. 106. ISBN   9781491948620.
  2. "What is a JS library?". Khan Academy. Retrieved 2018-01-15.
  3. Peters, Siem (2019-04-08). "A Brief History of JavaScript: from Netscape to Frameworks". Medium. Retrieved 2022-03-15.
  4. AsyncBanana (2021-04-21). "A Short History of JavaScript and Its Evolution". Medium. Retrieved 2022-03-15.
  5. Andy Harris (2009). JavaScript and AJAX For Dummies. Wiley. p. 240. ISBN   9780470417997.
  6. Jake Rutter (2011). Smashing JQuery. Wiley. p. 21. ISBN   9780470977361.
  7. Walsh, David (2007-09-05). "6 Reasons To Use JavaScript Libraries & Frameworks". David Walsh Blog. Retrieved 2022-03-15.
  8. "40 Useful NPM Packages for Node.js Apps in 2021". leanylabs.com. Retrieved 2022-03-15.
  9. Shelley Powers (2010). JavaScript Cookbook. O'Reilly Media. pp. 389–412. ISBN   9781449395926.
  10. "The Difference Between a Framework and a Library". freeCodeCamp.org. 2019-02-01. Retrieved 2022-03-15.
  11. "What is the difference between Library vs Framework?". DEV Community. Retrieved 2022-03-15.
  12. "A Clear Definition of npm and What it Does". CSS-Tricks. 2022-01-20. Retrieved 2022-03-15.
  13. "Node.js NPM". www.w3schools.com. Retrieved 2022-03-15.
  14. Grosselle, Alessandro (2019-11-12). "The JS library distribution dilemma, NPM or URL?". THRON tech blog. Retrieved 2022-03-15.