Google

Google has taken a new step to significantly expand what Web apps can do -- and thus also lend new muscle to its Chrome browser, Chrome OS browser-based operating system, and Chrome Web Store for finding and buying Web apps.

This week, Google released a new developer version of Chrome 22 that by default enables a technology called Chrome packaged apps.

This foundation is designed to expand what Web apps can do by giving them the standalone look of a native personal-computer app and some native-app privileges that Web apps ordinarily wouldn't have. They load from a computer's storage system, not the network, and work offline by default, but they're built with the same programming techniques as ordinary Web apps: HTML for content, CSS for formatting and effects, and JavaScript for the brains of the operation.

"Packaged apps will no longer be tied to the browser," said Chrome team member Erik Kay in a video about Chrome packaged apps. "Rather than running as a tab inside of Chrome, packaged apps can be launched from outside of Chrome, have their own top-level windows, and generally behave like first-class apps on the operating system... The user shouldn't be aware your app was built with Web technologies."

The move is perhaps most notable for Chrome OS, which recently got the ability to show multiple resizeable browser windows. Chrome packaged apps would free apps from the browser frame altogether on Chrome OS, making it look more like an ordinary operating system that people are accustomed to.

Unclear is whether Chrome packaged apps will fragment Web programming, a concern that other browser makers have expressed when it comes to Google's introduction of Web programming technologies such as Native Client, designed to bring C or C++ programs to the Web world, and the Dart language, which attempts to improve upon JavaScript. And the Chrome Web store is tightly coupled to Chrome itself even when some apps there would work just fine on other browsers.

The overall idea of Web apps, though, is more likely to get a warmer reception. Mozilla and Opera also are working on some technologies that give browsers access to computer resources such as cameras and accelerometers, for example. And Mozilla's Firefox OS attempts to bring Web apps to mobile phones in a way that parallels what Google is attempting with PCs and Chrome OS. (The technically curious now can try running Firefox OS on their PCs, by the way.)

Indeed, Mozilla once worked on Prism, a technology to Chrome packaged apps, but canceled the project. With Web programming having advanced significantly since then, and with better JavaScript performance, the climate today is more receptive to such ideas.

Chrome packaged apps give programmers new tools a native app might need, including direct access to TCP/IP networking, USB devices, and Bluetooth networking. It's also got a programming interface for dealing with photos, videos, music, contacts, and other data that non-Web apps on a computer system might also use.

Some staples of Web programming are disabled, including Adobe Systems' Flash Player and the localStorage interface, one of several ways browsers can store data locally on a machine.

Chrome Web apps get powers regular Web apps don't get, said Chrome team member Adam Barth in an explanatory video about Chrome packaged apps security. As a result, the apps have some restrictions compared to ordinary Web apps, he said.

In addition, taking a page from the Android playbook, Chrome packaged apps explicitly require the user's permission for privileges such as getting access to a computer's videocamera.