> For the complete documentation index, see [llms.txt](https://maissen.gitbook.io/maissen-grimoire/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://maissen.gitbook.io/maissen-grimoire/javascript-grimoire/most-used-dependency/helpers.md).

# Helpers

## Date

### Moment

{% embed url="<https://momentjs.com/>" %}

A lightweight JavaScript date library for parsing, validating, manipulating, and formatting dates.

{% embed url="<https://momentjs.com/timezone/>" %}

Parse and display dates in any timezone.

## Numbers

### math.js

{% embed url="<https://mathjs.org/>" %}

Math.js is an extensive math library for JavaScript and Node.js. It features a flexible expression parser with support for symbolic computation, comes with a large set of built-in functions and constants, and offers an integrated solution to work with different data types like numbers, big numbers, complex numbers, fractions, units, and matrices. Powerful and easy to use.

### Numeral

{% embed url="<http://numeraljs.com/>" %}

A javascript library for formatting and manipulating numbers.

## Upload

### Dropzone

{% embed url="<https://www.dropzonejs.com/>" %}

DropzoneJS is an open source library that provides drag’n’drop file uploads with image previews.

### Uppy

{% embed url="<https://uppy.io/>" %}

Uppy fetches files locally and from remote places like Dropbox or Instagram. With its seamless integration, reliability and ease of use, Uppy is truly your best friend in file uploading.

## Websocket

### Socket.io

{% embed url="<https://socket.io/>" %}

Realtime application framework for Node.JS, with HTML5 WebSockets and cross-browser fallbacks support.

## ORM

### Sequelize

{% embed url="<https://sequelize.org/>" %}

Sequelize is a promise-based Node.js ORM for Postgres, MySQL, MariaDB, SQLite and Microsoft SQL Server. It features solid transaction support, relations, eager and lazy loading, read replication and more.

## &#x20;Code Text Editor

### CodeMirror

{% embed url="<https://codemirror.net/>" %}

CodeMirror is a versatile text editor implemented in JavaScript for the browser. It is specialized for editing code, and comes with over 100 language modes and various addons that implement more advanced editing functionality. Every language comes with fully-featured code and syntax highlighting to help with reading and editing complex code.

## Functional programming&#x20;

### Loadash

{% embed url="<https://lodash.com/>" %}

&#x20;**Lodash** is a [JavaScript](https://en.wikipedia.org/wiki/JavaScript) library which provides utility functions for common programming tasks using the [functional programming](https://en.wikipedia.org/wiki/Functional_programming) paradigm.

## HttpCLient

### Axios

{% embed url="<https://github.com/axios/axios>" %}

Axios is a promise based HTTP client for the browser and Node.js. Axios makes it easy to send asynchronous HTTP requests to REST endpoints and perform CRUD operations. It can be used in plain JavaScript or with a library such as Vue or React.

## Pdf

### JsPdf

{% embed url="<https://parall.ax/products/jspdf>" %}

The leading HTML5 client solution for generating PDFs. Perfect for event tickets, reports, certificates, you name it!

## PDF-LIB

{% embed url="<https://pdf-lib.js.org/>" %}

## Strings

### Voca

{% embed url="<https://vocajs.com/>" %}

Working with strings in JavaScript can really be a pain sometimes, but the Voca JavaScript library can help you easily manipulate them to simplify things. It offers helpful functions like change case, trim, truncate, and so much more. Plus it was built with a modular design, giving you the freedom to load the entire library or just individual functions.

## Data science

### TensorFlow

{% embed url="<https://www.tensorflow.org/js/>" %}

TensorFlow\.js is a library for machine learning in JavaScript. Develop ML models in JavaScript, and use ML directly in the browser or in Node.js.

### Tracking.js

{% embed url="<https://trackingjs.com/>" %}

The tracking.js library brings different computer vision algorithms and techniques into the browser environment. By using modern HTML5 specifications, we enable you to do real-time color tracking, face detection and much more — all that with a lightweight core (\~7 KB) and intuitive interface

### *Annyang*

{% embed url="<https://www.talater.com/annyang/>" %}

annyang is a tiny javascript library that lets your visitors control your site with voice commands. supports multiple languages, has no dependencies, weighs just 2kb and is free to use.

### &#x20;TOGETHERJS

{% embed url="<https://togetherjs.com/examples/youtube/>" %}

&#x20;TogetherJS is a **free**, **open source** JavaScript library by **Mozilla** that adds collaboration features and tools to your website. By adding TogetherJS to your site, your users can help each other out on a website in real time!

## Scrapping

{% embed url="<https://www.selenium.dev/>" %}

Primarily it is for automating web applications for testing purposes, but is certainly not limited to just that.

Boring web-based administration tasks can (and should) also be automated as well.
