This document list all the javascript libs used at Soixante circuits. They are compatible with Webpack and run in the browser and / or node only.
So far 71 libs.
There are tons of libs out there. You certainly not need them all. For sure it's a pain to test, check, and push the limit of each of them when you start a new project. To ease the process of development, we decided to stick to some of the libs we really enjoyed to use. They are selected because they did not fail our test and have been use in website or in application for clients and for internal projects. All of them are under the MIT licence.
Every month we test the ease of use, the learning curve, the maintenance of these libs. We won't reinvent the wheel so lets keep improving and focus our energy on the libs that already exist.
This list respects the Single Responsibility Principle. This means each of them do something chirurgically and do it well. When you build your project you will not need them all :)
This list is maintened continuously and serves as a startup prompt for Neodymium Generator.
Neodymium allows to built interactive applications fast and without any pain. It brings Webpack and tested set of libs out of the box, tested in production ready projects.
Let's build something great ! ⚒
Name |
Description |
install |
Trend |
Compat |
Authored |
Crossroads |
It parses a string input and decides which action should |
npm i -S crossroads |
|
|
|
Hasher |
Set of functions to control browser history |
npm i -S hasher |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
Signals.js |
similar to an Event Emitter/Dispatcher or a Pub/Sub system |
npm i -S signals |
|
|
|
Socket.io/server |
Socket.IO enables real-time bidirectional event-based communication |
npm i -S socket.io |
|
|
|
Socket.io/client |
Socket.IO enables real-time bidirectional event-based communication |
npm i -S socket.io-client |
|
|
|
Spacebro |
Server for broadcasting socket.io service |
npm i -S spacebro |
|
|
|
Spacebro client |
Connect thru socket.io with ZeroConf |
npm i -S spacebro-client |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
Superagent |
small progressive client-side HTTP request library, and Node.js module with the same API, sporting many high-level HTTP client features |
npm i -S superagent |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
Bitfrost |
Bifrost cache and queue your POST request when internet is down. It will try to forward your query to the desired endpoint, if it fail it will save the POST data and try to update them periodically. It will forward the response as it is. |
|
|
|
|
Superagent-cache |
Superagent with built-in, customizable caching |
npm i -S superagent-cache` |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
Native LocalStorage |
|
RTFM |
|
|
|
Lawnchair |
simple json storage |
npm i -S lawnchair |
|
|
|
Linvodb3 |
Model-oriented embedded database, inspired by Mongoose & MongoDB, over LevelUP |
npm i -S linvodb3 |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
Machina |
A library for creating powerful and flexible finite state machines |
npm i -S machina |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
GSAP |
Think of GSAP as the Swiss Army Knife of web animation...but better |
npm i -S gsap |
|
|
|
Tween |
Super simple, fast and easy to use tweening engine |
npm i -S tween.js |
|
|
|
elementTransitions |
Simple transitions for web pages |
|
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
Fabric.js |
Play with the canvas |
npm i -S fabric-browserify |
|
|
|
Resizer(burno.js) |
Resize elements inside containers according to many possible options |
|
|
|
|
Zooming |
Zooms |
|
|
|
|
RgbQuant |
color quantization lib |
npm i -S rgbquant |
|
|
|
Javascript-Load-Image |
JavaScript Load Image is a library to load images provided as File or Blob objects or via URL |
npm i -S blueimp-load-image |
|
|
|
Image-scale needs to be made JQueryless |
Scale images to fit or fill any target container via two simple properties: scale and align. |
npm i -S image-scale |
|
|
|
RetinaJS |
open source script that serves high-resolution images to devices with retina displays |
npm i -S retina.js |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
VideoJS |
An HTML5 and Flash video player with a common API and skin for both |
npm i -S videojs |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
audio5 |
Audio5js a library-agnostic, cross-browser Javascript API for HTML5 Audio, with a Flash fallback for either older browsers or modern browsers without MP3 playback support. |
npm i -S audio5 |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
Lory |
Touch enabled minimalistic slider written in vanilla JavaScript |
npm i -S lory.js |
|
|
|
PhotoSwipe |
JavaScript image gallery for mobile and desktop, modular, framework independent |
npm i -S photoswipe |
|
|
|
Swiper |
Most modern mobile touch slider with hardware accelerated transitions |
npm i -S swiper |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
Motio |
Small JavaScript library for sprite based animations and panning |
|
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
Vue.js |
Simple, Fast & Composable MVVM for building interactive interfaces |
npm i -S vue |
|
|
|
React |
A declarative, efficient, and flexible JavaScript library for building user interfaces. |
npm i -S react |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
drag-drop |
HTML5 drag & drop for humans |
npm i -S drag-drop |
|
|
|
Dragula |
👌 Drag and drop so simple it hurts |
npm i -S dragula |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
Three |
JavaScript 3D library |
npm i -S three |
|
|
|
Pixi |
Pixi.js is a fast lightweight 2D library that works across all devices |
npm i -S pixi.js |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
Seriously |
A real-time, node-based video effects compositor for the web built with HTML5, Javascript and WebGL |
|
|
|
|
StackBlur |
Fast and almost Gaussian blur |
npm i -S stackblur-canvas |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
Html2canvas |
The script allows you to take "screenshots" of webpages or parts of it, directly on the users browser |
npm i -S html2canvas |
|
|
|
Animated_gif |
Javascript library for creating animated GIFs |
npm i -S animated_gif |
|
|
|
CCapture |
A library to capture canvas-based animations at a fixed framerate |
|
|
|
|
Videojs-record |
video.js plugin for recording audio/video/image files |
npm i -S videojs-record |
|
|
|
Gif.js |
JavaScript GIF encoder that runs in your browser |
npm i -S gif.js |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
Hammer |
A javascript library for multi-touch gestures :// You can touch this |
npm i -S hammerjs |
|
|
|
Piano |
Virtual keyboard for touch devices |
|
|
|
|
SerialPort2 |
node.js serial port driver |
npm i -S serialport2 |
|
|
|
USB |
Improved USB library for NodeJS |
npm i -S usb |
|
|
|
Keyboard |
Keyboard as an object in the DOM |
npm i -S keyboard |
|
|
|
Cheet |
easy easter eggs (konami code, etc) for your site |
npm i -S cheet.js |
|
|
|
Mousetrap |
Simdle library for handling keyboard shortcuts |
npm i -S mousetrap |
|
|
|
Hamsterjs |
standalone javascript library for cross-browser mouse wheel support |
npm i -S hamsterjs |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
WebcamJS |
HTML5 Webcam Image Capture Library with Flash Fallback |
npm i -S webcamjs |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
Clmtrackr |
Javascript library for precise tracking of facial features via Constrained Local Models |
|
|
|
|
Jsfeat |
JavaScript Computer Vision library |
|
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
fs-extra |
extra methods for the fs object like copy(), remove(), mkdirs() |
npm i -S fs-extra |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
lodash |
Rotates the elements of an array in place. |
npm i -S lodash |
|
|
|
lodash |
utility library delivering modularity, performance, & extras to play with Arrays, Collection and more |
npm i -S rotate-array |
|
|
|
Idle.js |
Script to create handlers for onIdle onActive onHidden onShow statuses, compatible with <script> tag and webpack |
npm i -S idle-js |
|
|
|
StringJS |
JavaScript library for the browser or for Node.js that provides extra String methods |
npm i -S string |
|
|
|
Offline |
Automatically display online/offline indication to your users |
|
|
|
|
PerfectScroll |
minimalistic scrollbar plugin working with jQuery or vanilla JavaScript as well. |
npm i -S perfect-scrollbar |
|
|
|
Moment |
Parse, validate, manipulate, and display dates in javascript |
npm i -S moment |
|
|
|
Signature_pad |
HTML5 canvas based smooth signature drawing |
npm i -S signature_pad |
|
|
|
Dat-Gui |
A lightweight graphical user interface for changing variables in JavaScript |
npm i -S dat-gui |
|
|
|
Enquire |
a lightweight, pure JavaScript library for responding to CSS media queries |
npm i -S enquire.js |
|
|
|
Modernizr |
Automatically detects the availability of next-generation web technologies in your user's browsers |
npm i -S -g modernizr |
|
|
|
Verge |
compact set of cross-browser viewport utilities written in native JavaScript |
npm i -S verge |
|
|
|
Sizzle |
A pure-JavaScript, bottom-up CSS selector engine designed to be easily dropped in to a host library |
npm i -S sizzle (might not be same team) (to test if automatic css prefixing) |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
Pdfmake |
A lightweight graphical user interface for changing variables in JavaScript |
npm i -S pdfmake |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
Rstats.js |
rStats aims to provide a way of measuring and visualizing performance of your code, mainly in apps based on an update loop, like games or interactive experiences. |
npm i -S rstats.js |
|
|
|
Stats.js |
JavaScript Performance Monitor |
npm i -S stats.js |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
OffOff |
Allow to track clicks and touchend on a webapp |
|
|
|
|
Amplitude |
A node wrapper for Amplitude analytics |
npm i -S amplitude |
|
|
|
GATracks |
Easily track user events with Google Analytics |
npm i -S gatrack |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
Twit |
Twitter API client for node (REST & Streaming) |
npm i -S twit |
|
|
|
Instagram-node |
NodeJS driver for the instagram API |
npm i -S instagram-node |
|
|
|
Fb |
With facebook-node-sdk you can now easily write the same code and share between your server (nodejs) and the client (Facebook Javascript SDK) |
npm i -S fb |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
Mandrill |
JS wrapper for mandrill API |
npm i -S mandrill-api |
|
|
|
Name |
Description |
install |
Trend |
Compat |
Authored |
i18next |
internationalization framework |
npm i -S i18next |
|
|
|