Drupal 8 and JS Frameworks - AngularJS & BackboneJS

mayurjadhav

Adding a new javascript framework like AngularJS & BackboneJS to your web app requires some careful evaluation.
Most projects already are using jQuery, maybe jQuery UI, and potentially other javascript libraries to handle
other functionality not covered by jQuery or even jQuery plugins for UI elements like charts, multi-selects,
infinite scrollers, sliders, etc. Any javascript framework has a tough task to find a space to fill with developers.

If you are looking to create a rich and dynamic web app that has little to no latency, Drupal and AngularJS/BackboneJS is the answer as they go hand in hand.

AngularJS, is a front-end JavaScript framework for making web apps and is created by our good pal Google.
Couple of cool facts about AngularJS:
- Open Source
- MVC pattern
- Handles task like DOM manipulation, updating UI based on data or input, registering callbacks
- Has CRUD application library for : Data-binding, basic templating directives, form validation, routing, deep-linking, reusable components and dependency injection.
- Declarative programming

BackboneJS is one of the dominant MVC JavaScript frameworks, in addition to Angular, Ember and SproutCore, among others.
It has a vibrant maintainer community and a plugin development community as well.
It's meant to be a small, unopinionated core of code. I think the purpose of Backbone is explained best on backbonejs.org.

BackboneJS gives structure to web applications by providing models with key-value binding and custom events,
collections with a rich API of enumerable functions, views with declarative event handling, and connects it
all to your existing API over a RESTful JSON interface.

Backbone has a hard dependency the Underscore library. Underscore is an extremely lightweight set of JavaScript
utitlies for manipulating Arrays and Objects and dealing with functions.

What you will learn:

Why AngularJS & BackboneJS are so important to the future of Drupal8.

Session Track

Frontend

Experience Level

Beginner

Drupal Version