What HTML framework is 5 for my app

?

Compare frameworks that use only HTML, JavaScript, and CSS to create applications.

They allow you to get rid of paid services such as the AppStore, and produce applications and games for all computers and mobile devices.

These frameworks are compatible with mobile and work with Android, iOS, Firefox OS, Windows Phone and others... They can then be supplemented with a backend Cordova to access sensors such as an accelerometer. Or PhoneGap or XDK from Intel.

A benchmark of 5 frameworks offering data binding gives the following result: Angular is the fastest, followed by Knockout, React, Mithril, Vue.js. Amber is the slowest. But the order of complexity of implementation is different.

Logo reactAngular.js (from Google/Jelly)

While others decided to describe the interface in JavaScript and generate HTML code, this framework, on the contrary, describes the entire application in HTML.
It extends the HTML language for web applications with a more complete tag language, new attributes. This is a template system, in fact, it takes inspiration from Web Components for this.
This is an alternative to Ember, Backbone or Spine, so a way to link data to UI and, like Ember, CanJS, allows you to do it in a two-way way.
The advantages of Angular on Ember are support for modules at the HTML or JavaScript level, debugging assistance. Another benefit is that 70% of Google apps use Angular, so we expect it to be robust.
Disadvantages include insufficient documentation, features added during the day, as in PHP without a common vision, and sometimes incompatible, but probably fixed with version 2.
Angular 2.0 uses either the TypeScript programming language or Dart, which are compiled in JavaScript.
The framework sees its support completed on December 31, 2021. It will continue to work, but without new versions in the future.

Logo reactReact.js (Facebook)

Another alternative to Angular (but they can be used together) React was developed by Facebook to create a graphical interface for large web applications that often reuse the same components. It uses JSX, a derivative of XML, to describe interface elements. The framework builds an internal representation of the DOM, Virtual DOM, which allows faster updating and even avoidance of binding data. It can be used in conjunction with other frameworks such as Backbone.

Unlike other frameworks of this list, it is based on the principle of "reactive programming," in which sequential assignment is replaced by definitions of the mathematical type, where a = b + c, makes the value of "a" depend on "b" and "c" even after the definition and after the subsequent change of the value for b and c. This allows for more intuitive descriptions of interactions. But reactive programming here is rudimentary and boils down to the use of JavaScript events .
So React.js' interest is mainly in virtual DOM, because to do the same as in pure JS, we have longer and more complex code.

Starting with version 16.8, the framework introduces Hook, a state declaration that facilitates interaction with server data.

React users include: Netflix, Uber, AirBnB, etc.

Vue.jsVue.js

Another infrastructure, an alternative to JQuery, React, Angular, which has the advantage of simplicity. It can already be used in production after several hours of training. It has a system template, but can also use JSX as React. Supports Flux and provides virtual DOM as React. Faster React, easier Angular or Ember.
We will choose the framework if we want to start faster and easier, and the application is faster, while Angular and React offer more options. It is described by the authors themselves as a tool for solving common and simple problems, but by itself is not enough for others .

Backbone.jsBackbone.js

The Backbone.UI framework adds graphical components to Backbone to describe the application user interface. The look is as simple as the code, but it can be embellished with CSS. In fact, these components are redundant for many with HTML tags, like buttons, for example, maybe to facilitate association with data.
jQuery, Undercore and Laconic required.

Ember.js

Ember is a JavaScript MVC (Model View Control) framework for HTML applications. The site lacks documentation, but you can find it elsewhere. There are a bunch of similar frameworks, including CanJS and Backbone, that are better documented and have more extensions, but have some interesting features less.
They can all work with Node.js, but Backbone is more relevant in this regard.

Polymer.js (replaced by Lit)

A framework proposed by Google to solve the problem of the complexity of web applications. This vague goal leads to improved modularity and encapsulation of application components. The application-level orientation of the object being checked. We should also be able to write a minimum of code to execute the application.
What are called components here are new tags with interaction, preset data binding. This goes further than Angular, another project from Google that adds new HTML attributes with automatic dating, as Polymer relies on a new backend.
This practical application of the Web Components principle, a classic association of JavaScript with HTML tags to create application elements, is replaced by a set of pre-installed components. For example, instead of adding JavaScript to the text area to create an editor, it includes a predefined editor component based on a backend provided by Polymer.

FOAM (from Google)

"Features Oriented Active Modeller" is Google's response to Facebook's React. This is a reactive JavaScript framework with a model, view, controller. It can generate code in any programming language. The data model is the basis of an application executed using Foam.

WinJS от Microsoft

A framework that can be used with Cordova, Angular, etc. provides data binding and many functions. Works with keyboard, mouse, touch screen. The app can run locally on Windows 10 or online.

Overture.js от Fastmail

The JS framework, which is used by the Fastmail messenger, is a proprietary project that became open in December 2014. It allows you to run any web application. The smoothness of Fastmail demonstrates the speed of the framework. He is a descendant of Sprutcore, like Amber.

Popcorn.js

API for video functions in JavaScript to add a plus to the <video> tag. Developed by Mozilla, this API controls the synchronization between video progress and user action. In particular, it allows you to navigate through the content .

Reaction Canvas

Using Canvas as a screen surface for both text and widgets, this framework removes the use of DOM and speeds up applications. This is better suited for graphics applications.

Pdf.js

A PDF document can be displayed in HTML 5 format and, in particular, using Canvas for graphics. It can be used as a plugin on Firefox, but the ultimate goal would be to make it a PDF player built into the browser.

Processing.js

Works with the visual graphic language of the same name on Canvas to create animation and online graphics .
The code in the processing language is converted to JavaScript and uses the runtime to be included in the page. There is no particular advantage in the processing syntax, only graphic functions .

Two.js

2D element library with animation. This can serve as a substitute for animated gif as long as they are simple images, with the advantage of a vector including a reduced file size. And also an alternative to Flash - it seems that you see a demo!

Paper.js is another vector drawing framework, it allows you to do animation for office work in Canvas. It is based on a scripting tool originally created for Illustrator.

Other bookstores