Some javascript libraries

published Oct 05, 2012 12:45   by admin ( last modified Feb 29, 2016 01:27 )

Updated 2016-02-29

javascript - At underscore js, Can I get multiple columns with pluck method after input where method as linq select projection - Stack Overflow
ESLint - Pluggable JavaScript linter
JavaScript’s Apply, Call, and Bind Methods are Essential for JavaScript Professionals | JavaScript is Sexy
JavaScript Nested function - Stack Overflow
How can I pretty-print JSON using JavaScript? - Stack Overflow
lodash documentation

 

DOM libraries

Libraries that solve things that "everybody needs", by making constructs that make commonly done things simpler, and things more compatible between browsers over different platforms and versions. Usually you only use one of these, but there are ways of making them not be in conflict with one another. One of these basic libraries is often required by the frameworks.

jquery

An ubiquitous library that makes stuff easier and more cross browser compatible. Concentrates on the DOM (Document Object Model). Has a plugin ecosystem

Other basic libraries are Prototype, MooTools, Dojo and YUI.

 

Utility libraries

Libraries that make specific tasks easier.

atomizejs

A library that implements STM (Software transactional memory), a fairly novel way of doing concurrency

underscore.js

Functional idioms, required by Backbone

Amino

Animation and interactive graphics on the HTML5 Canvas

Google closure library

The foundation for GMail, Google documents, among other projects. Strong on widgets. Could arguably be called a framework, but according to the documentation emphasizes modularity and being usable in small parts in other code

D3.js - Data-Driven Documents

Data visualization and interaction, with some amazing examples

Functional programming libraries

Ramda Documentation

fn.js | A JavaScript library built to encourage a functional programming style & strategy.

The functional JavaScript library | functional.js

Form validation

Livevalidation

Validation library with immediate feedback

jquery.validate

Validation library that might be one step better for me, in initial tests

 

Frameworks

Put some overall structure onto the code and how to get things done. You choose one over the others. Tend to deal with data modelling and how to bind together an application with views, control, routes, and data persistence. Goal is to make larger scale applications doable and manageable.

backbone

powers many of the big sites. Has models, views routes and can serialize data into JSON and talk RESTfully with the server back end.

canjs

A framework in the same vein as backbone and ember

ember

A framework in the same vein as backbone, methinks

spine

backbone written in coffeescript, methinks

Angularjs

Like backbone but operating purely(?) with markup, it looks like.

Obviel

zope.interface and adapter stuff on the client side, in javascript

 

Live bindings

Helps make things update immediately in the UI when data changes, like in a normal GUI on the desktop. Some of the frameworks already contain live bindings, such a Ember, Angularjs.

knockout

makes data and presentation update immediately, like in a normal GUI on the desktop

knockback

compatibility layer between knockout and backbone

Backbone.ModelBinder

I believe it makes data and presentation update immediately, like in a normal GUI on the desktop

 

Slideshows

jquery cycle

 

Build/test/deploy frameworks

Grunt

Can apply different transformations to your code before deployment with the aid of modules, such as unit tests, minification and conformance to coding standards

Twitter Bootstrap

Responsive web design with eminently usable page layouts and css. Also contains javascript targetting the look and feel.

PhantomJS

Let's you control a headless webkit engine. The webkit engine underlies Google Chrome, Apple's Safari, the Android's standard web brwoser and many more. Webkit originally comes from KDE, a popular desktop environment on e.g. Linux. PhantomJS ought to make it possible todo very realistic testing and simulation.

 

Languages

Languages that are translated into javascript before being run in the browser. Debugging is going to get better when these languages start using the new source map functionality of the recent versions of Chrome/Chromium, where a breakpoint in the executed javascript code is associated with a line in the non-javascript source code. The other main browsers will hopefully follow suit implementing source maps.

coffeescript

Makes javascript look more like python. The kickstarter founded fork  CoffeeScriptRedux supports source maps, according to this blog post.

clojurescript

Lisp-like language that also exists on the server side running on the JVM. Fairly big in the JVM world, so does not live or die by the browser. Source map tweet indicates that source maps may be on the way.

typescript

Light-handed enhancement of standard javascript to aid with development in larger projects. Tries to anticipate new versions of javascript (a.k.a. ECMAScript).  Prevents a lot of late binding in order to make things more predictable and bugs easier to spot automatically. Gives more ambitious editing help than what is possible with javascript.

pyjs

 

Templating

Handlebars

Templating

Dust

Javascript date handling
Moment.js | Docs
datejs
Moment Timezone | Home
Moment Timezone | Docs
Time · mbostock/d3 Wiki
dosx/timezone-picker
Node.js Express
Using template engines with Express
Git
How do you merge selective files with git-merge? - Stack Overflow
Git Tip: How to "Merge" Specific Files from Another Branch [jasonrudolph.com]
Javascript testing
Intern: Software testing for humans
Buster.JS overview — Buster.JS 0.7 documentation
List of unit testing frameworks - Wikipedia, the free encyclopedia
coderwall.com : establishing geek cred since 1305712800
Jasmine: Behavior-Driven JavaScript
Cookbook | QUnit
QUnit
Sinon.JS - Documentation
Javascript testing frameworks — jorgenmodin.net
node.js
Mocha - the fun, simple, flexible JavaScript test framework
The Node Way - Testing Essentials
jhnns/rewire
mfncooper/mockery
Node.js Handbook - Testing Essentials | FredKSchott
Nightwatch.js | Node.js powered End-to-End testing framework
Vows « Asynchronous BDD for Node
testing framework node.js promise chains - Google Search
dareid/chakram
Eradicating Non-Determinism in Tests
StrongLoop | Testing and Documenting Node.js APIs with Mocha and Acquit
acquit
Home - Chai
Using Tests to Document a Node.js Module
How To Use Mocha With Node.js For Test-Driven Development to Avoid Pain and Ship Products Faster
cloudhead/hijs
Asynchronous programming
Implementing Actors in JavaScript
benlau/nactor · GitHub
mental/webactors · GitHub
AndrewBelt/hack.chat
events - How is Node.js evented system different than the actor pattern of Akka? - Stack Overflow
Embracing Async With Deferreds and Promises - Sebastian's Blog
Reactive programming - Wikipedia, the free encyclopedia
JavaScript Promises: There and back again - HTML5 Rocks
Does async/await solve a real problem?
chopachom/syncio
We have a problem with promises
Promise anti patterns · petkaantonov/bluebird Wiki
Taming the asynchronous beast with ES7
JSX in Depth | React
petkaantonov/bluebird
javascript asynchronous styles - Google Search
Testing Asynchronous JavaScript
Javascript Promises - Being Agile
You're Missing the Point of Promises
domenic/chai-as-promised
javascript - How do you properly promisify request? - Stack Overflow
node request promise - Google Search
Passing multiple arguments in promises | Better world by better software
JavaScript with Promises - Daniel Parker - Google Books
Resolving JavaScript Objects Containing Promises - Will Anderson
javascript - asynchronous or promised condition for array filter - Stack Overflow
Patterns for Asynchronous Programming with Promises | Joe Zim's JavaScript Blog
monet.js - For when you have no choice but to use JavaScript
prequest
promise-useful-utils/API.md at master · fanatid/promise-useful-utils
JavaScript with Promises - Daniel Parker - Google Books
Resolving JavaScript Objects Containing Promises - Will Anderson
javascript - asynchronous or promised condition for array filter - Stack Overflow
Ecmascript 6 & higher and typescript
 
Sign in or Register | edX
TagClass - jsdoc-toolkit - @class - A documentation generator for JavaScript. - Google Project Hosting
Language Safety Score Mark 2 - Deliberate Software
Programming Language Safety Score - Deliberate Software
ECMAScript 6: New Features: Overview and Comparison
ES6 | Node.js
ECMAScript - Wikipedia, the free encyclopedia
ES7 async functions - JakeArchibald.com
Use ECMAScript 6 Today - Tuts+ Code Article
Which TypeScript IDE - Steve Fenton
Using TypeScript in Visual Studio Code - TypeScript - Site Home - MSDN Blogs
ES6 | Node.js
lukehoban/es6features