We continue our series of reviews of new products in the world of Windows development and Build conference materials. Earlier in the series:

Today we will talk about what's new in Windows 8.1 for developers of applications on HTML / JS. And I note right away that the updated code samples can be downloaded in the corresponding
MSDN section .
')
Windows 8.1
First of all, let me remind you that the ability to create native Windows applications using HTML and JavaScript means that you have access to the same WinRT API as developers in C #, only from your favorite development language. In particular, along with the upgrade to Windows 8.1, you
have the following
features :
Productivity increase

As you most likely already know or guess, the “Windows Store” applications for HTML / JS use the same engine for their work as in the current version of IE. For Windows 8.1, this will be IE11, so all the optimizations of the IE engine and new features, including WebGL, are transferred here.
In addition to this, in Windows 8.1 there will be an
updated version of WinJS , the JS-library, which facilitates the creation of applications and, in some cases, serves as a convenient wrapper over WinRT. WinJS 2.0 was significantly rewritten and optimized, in particular, the internal organization of ListView was redesigned, which made it possible to improve the performance of working with lists.
There is also a new single queue scheduler -
Scheduler , which allows for more subtly setting priorities for tasks and managing tasks.
New controls
In Windows 8.1 for HTML / JS,
new controls become available:
- AppBarCommand - now you can create your own commands in the application pane using the new type AppBarCommand - content, this greatly simplifies creating custom application panels with atypical content ( use case );
- BackButton - a new element that simplifies the work with navigation in the application, it automatically checks whether transitions back through the navigation stack are possible;
- Hub - a new control (container) that allows you to easily create “hubs” from heterogeneous information, which is often required when applying a hierarchical navigation pattern ( use case );
- ItemContainer - a container for other controls that implements a part of the capabilities of ListView elements outside the list, for example, selection and dragging ( example of use );
- NavBar - a new control for creating the top application bar (navigation bar), which makes it easy to organize links to go to other sections of the application ( use case );
- Repeater is a new element that makes it easy to create your own lists and tables, it is more flexible than ListView, but does not provide some advanced features of the latter (for example, control over how data is loaded) ( use case );
- WebView - the updated WebView now becomes available for HTML / JS applications, unlike iframe, a new element allows you to isolate content and supports additional methods for internal navigation, and also supports SmartScreen technology ( use case ).
Other updates to controls include:
- Drag and Drop Items for ListView,
- Reorder items in a listview,
- A new layout for ListView elements - CellSpanningLayout, which allows to easily contain elements of different sizes inside the list,
- A redesigned template engine (WinJS.Binding.Template) with a more efficient and productive system for binding data to objects.
Reports from Build 2013

Basics of developing applications for Windows 8 for those who have experience in client web development and are familiar with using HTML / CSS and JavaScript.
Continuing the use of existing skills for creating applications for Windows 8, this report focuses on the use of third-party libraries: jQuery, KnockoutJS and RequireJS.

Report on improving the performance of Windows Store applications written in HTML / JS: optimization of start time, individual elements of the application and interface responsiveness, tips on working with WinJS, including the use of ListView, templates and the new scheduler.

The report describes the low-level optimizations of code execution used in modern JavaScript engines (Chakra for IE), and the best practices for incorporating these optimizations into their applications and websites.

Report on updating Windows 8 applications (XAML and HTML) to Windows 8.1: why and how to do it, as well as important things not to forget.

WinJS is a special library for creating HTML and JavaScript applications. In Windows 8.1, the library was updated to the second version, in which significant optimization was made, new features and controls were added.

WebView in Windows 8.1 has been significantly reworked and in particular has become available not only in XAML applications, but also in HTML / JS applications. In this report, you will learn how to work with the new (updated) control and how to add web content to your application.

The report is devoted to the use of adaptive video streaming in applications for Windows Store and Internet Explorer 11, you will learn what MPEG-DASH, Common Encryption and related Web standards Media Source Extensions and Encrypted Media Extensions are. The report also describes the use of PlayReady DRM and Windows Azure media services.

Continuing the theme of improving the performance of sites and applications. The report describes how to use the JS-tools built into Visual Studio 2013 and Internet Explorer to improve the performance of your solutions.

The report provides an overview of VS2012 features for debugging and profiling Windows Store applications written in HTML / JS. Separately describes the new features of VS2013, including debugging asynchronous code using Promise, JS / C ++ interaction, profiling the application to study problems in working with memory, interface responsiveness, power consumption and code performance.
An overview of the new features of Blend for HTML, used when developing an interface for HTML / JS applications for Windows 8.
Anders Hejlsberg talks about using TypeScript and new features in version 0.9. What is called a first-hand report.