W3C

Site Navigation


Javascript Interfaces Current Status

This page summarizes the relationships among specifications, whether they are finished standards or drafts. Below, each title links to the most recent version of a document. For related introductory information, see: JavaScript Web APIs.

Completed Work

W3C Recommendations have been reviewed by W3C Members, by software developers, and by other W3C groups and interested parties, and are endorsed by the Director as Web Standards. Learn more about the W3C Recommendation Track.

Group Notes are not standards and do not have the same level of W3C endorsement.

Standards

2013-05-14

Page Visibility

translations · errata

This specification defines a means for site developers to programmatically determine the current visibility state of the page in order to develop power and CPU efficient web applications.

2013-02-21

Selectors API Level 1

translations · errata

Selectors, which are widely used in CSS, are patterns that match against elements in a tree structure [SELECT][CSS21]. The Selectors API specification defines methods for retrieving Element nodes from the DOM by matching against a group of selectors. It is often desirable to perform DOM operations on a specific set of elements in a document. These methods simplify the process of acquiring specific elements, especially compared with the more verbose techniques defined and used in the past.

2012-12-17

Navigation Timing

translations · errata

This document provides an interface for web applications to access timing information related to navigation and elements.

2012-12-17

High Resolution Time

translations · errata

This specification defines an interface that provides the current time in sub-millisecond resolution and such that it is not subject to system clock skew or adjustments.

2008-12-22

Element Traversal Specification

translations · errata

This specification defines the ElementTraversal interface, which allows script navigation of the elements of a DOM tree, excluding all other nodes in the DOM, such as text nodes.

Group Notes

2013-01-29

Web Audio Processing: Use Cases and Requirements

This document introduces a series of scenarios and a list of requirements guiding the work of the W3C Audio Working Group in its development of a web API for processing and synthesis of audio on the web.

2012-10-02

Web API Design Cookbook

This document captures common practices in designing APIs that fit well into the Web platform as a whole, using WebIDL.

2012-07-05

RDFa API

RDFa [RDFA-CORE] enables authors to publish structured information that is both human- and machine-readable. Concepts that have traditionally been difficult for machines to detect, like people, places, events, music, movies, and recipes, are now easily marked up in Web documents. While publishing this data is vital to the growth of Linked Data, using the information to improve the collective utility of the Web for humankind is the true goal. To accomplish this goal, it must be simple for Web developers to extract and utilize structured information from a Web document. This document details such a mechanism; an RDFa Application Programming Interface (RDFa API) that allows simple extraction and usage of structured information from a Web document.

2012-07-05

RDF Interfaces

The RDF Interfaces Specification defines a set of standardized interfaces for working with RDF data in a programming environment.

2012-07-05

RDF API

The RDF Application Programming Interface (RDF API) defines a set of standardized interfaces for working with RDF data in a web-based programming environment.

2012-07-03

Web Application Privacy Best Practices

This document describes privacy best practices for web applications, including those that might use device APIs.

2009-10-15

Device APIs Requirements

These are the requirements intended to be met in the development of client-side APIs that enable the creation of Web Applications and Web Widgets that interact with devices services such as Calendar, Contacts, Camera, etc.

2008-05-30

Offline Web Applications

Offline Web Applications highlights the features in HTML 5 that address the challenge of building Web applications that work while offline.

Drafts

Below are draft documents: Proposed Recommendations, Candidate Recommendations, Last Call Drafts, other Working Drafts. Some of these may become Web Standards through the W3C Recommendation Track process. Others may be published as Group Notes or become obsolete specifications.

Proposed Recommendations

2013-05-09

Touch Events version 1

This specification defines low-level events representing points of contact with a touch-sensitive surface.

2013-04-09

Web Storage

This specification defines an API for persistent data storage of key-value pair data in Web clients.

2012-05-22

Widget Interface

This specification defines an application programming interface (API) for widgets that provides, amongst other things, functionality for accessing a widget’s metadata and persistently storing data.

2012-05-10

Geolocation API Specification

This specification defines an API that provides Web pages scripted access to geographical location information associated with the hosting device.

Candidate Recommendations

2013-05-09

HTML Media Capture

This specification defines HTML form enhancements that provide access to the audio, image and video capture capabilities of the device.

2013-05-09

Pointer Events

Defines events and interfaces for handling hardware agnostic pointer input from devices such as mouse, pen or touchscreen.

2012-12-11

Server-Sent Events

This specification defines an API for opening an HTTP connection for receiving push notifications from a server in the form of DOM events.

2012-09-20

The WebSocket API

This specification defines an API that enables Web pages to use the Web Sockets protocol for two-way communication with a remote host.

2012-07-26

Performance Timeline

This specification defines an interface for web applications to access timing information related to navigation and elements. It is used by other specifications, like User Timing.

2012-07-26

User Timing

This specification defines an interface to help web developers measure the performance of their applications by giving them access to high precision timestamps.

2012-05-22

Resource Timing

This specification defines an interface for web applications to access timing information related to HTML elements.

2012-05-08

Battery Status API

This specification defines a new DOM event type that provides information about the battery status of the hosting device and associated auxiliary devices.

2012-05-08

Vibration API

An API to control the device's vibrator.

2012-05-01

Web Workers

This specification defines an API that allows Web application authors to spawn background workers running scripts in parallel to their main page. This allows for thread-like operation with message-passing as the coordination mechanism.

2012-05-01

HTML5 Web Messaging

This specification defines two mechanisms for communicating between browsing contexts in HTML document.

2012-04-19

Web IDL

This document defines an interface definition language, Web IDL, that can be used to describe interfaces that are intended to be implemented in web browsers.

2011-09-22

Progress Events

This document describes event types that can be used for monitoring the progress of an operation. It is primarily intended for contexts such as data transfer operations specified by XMLHTTPRequest [XHR], or Media Access Events [MAE].

Last Call Drafts

2013-05-16

Indexed Database API

This document defines APIs for a database of records holding simple values and hierarchical objects.

2013-05-16

JSON-LD 1.0 Processing Algorithms and API

An Application Programming Interface and a set of algorithms for programmatically transforming JSON-LD documents in order to make them easier to work with in programming environments like JavaScript, Python, and Ruby.

2013-04-11

API for Media Resources 1.0

This specification defines a client-side API to access metadata information related to media resources on the Web.

2012-12-13

Ambient Light Events

This specification defines a means to receive events that correspond to a light sensor detecting the presence of a light.

2012-12-06

Proximity Events

This specification defines a means to receive events that correspond to a proximity sensor detecting the presence of a physical object.

2012-02-21

Timing control for script-based animations

This document defines an API web page authors can use to write script-based animations where the user agent is in control of limiting the update rate of the animation.

2011-12-01

DeviceOrientation Event Specification

This specification defines several new DOM event types that provide information about the physical orientation and motion of a hosting device.

2011-12-01

Geolocation API Specification Level 2

This specification adds the ability to retrieve a civic address, rather than coordinates, to the Geolocation API.

Other Working Drafts

2013-05-16

Media Capture and Streams

This document defines a set of APIs that allow local media, including audio and video, to be requested from a platform, media to be sent over the network to another browser or device implementing the appropriate set of real-time protocols, and media received from another browser or device to be processed and displayed locally.

2013-05-16

Messaging API

This specification defines a System Level API which offers a simple interface to get access to mobile messaging services. A typical use case of the Messaging API is the implementation of a messaging client application that allows the user to send SMS and MMS messages as well as to access and manage the received SMS and MMS messages.

2013-05-16

The app: URI scheme

This specification defines the app: URI scheme and rules for dereferencing an app: URI, which can be used to address resources inside a package (e.g., a packaged application). The dereferencing model relies on HTTP semantics to return resources in a manner akin to a HTTP GET request. Doing so allows this URI scheme to be used with other technologies that rely on HTTP responses to function as intended, such as [XHR].

2013-05-14

Raw Socket API

This API provides interfaces to raw UDP sockets, TCP client sockets and TCP server sockets.

2013-05-10

Encrypted Media Extensions

This specification extends the HTMLMediaElement interface to provide APIs for controlling playback of protected content

2013-04-15

Media Source Extensions

This specification extends the HTMLMediaElement interface to allow JavaScript to generate media streams for playback.

2013-04-11

Clipboard API and events

This document describes apis for clipboard operations such as copy/cut and paste, or drag and drop in web applications.

2013-04-04

Input Method Editor API

Defines an API that provides Web applications with scripted access to an Input Method Editor

2013-04-04

Network Service Discovery

This specification defines a mechanism for an HTML document to discover and subsequently communicate with HTTP-based services advertised via common discovery protocols within a user's network.

2013-03-21

Runtime and Security Model for Web Applications

This document specifies a runtime and security model for Web Applications. It describes how an application is defined through an application manifest, and how it can be installed, updated and packaged. It also specifies how such an application can be put into the background, be put back in the foreground or woken up. Finally, the document describes the security model for such applications. This includes the permission model and the different security rules that would apply.

2013-03-12

WebDriver

This specification defines the WebDriver API, a platform-and language-neutral interface that allows programs or scripts to introspect into, and control the behaviour of, a web browser.

2013-03-07

Contacts Manager API

A system level API for managing the user's contacts that are stored in the system's address book.

2013-02-14

Streams API

Defines an API for representing binary data in web applications as a Stream object.

2013-02-05

MediaStream Recording

This document defines an API for recording audio and video streams.

2013-02-05

Web Alarms API Specification

This specification defines a System Level API to provide access to the device alarm settings, which can schedule a notification or for an application to be started at a specific time. For example, some applications like alarm-clock, calendar or auto-update might need to utilize Alarm API to trigger particular device behaviors at specified time points.

2013-01-31

Navigation Timing 2

This document provides an interface for web applications to access timing information related to navigation and elements.

2013-01-08

Web Cryptography API

This specification describes a JavaScript API for performing basic cryptographic operations in web applications, such as hashing, signature generation and verification, and encryption and decryption. Additionally, it describes an API for applications to generate and/or manage the keying material necessary to perform these operations. Key storage is provided for both temporary and permanent keys. Access to keying material is contingent on the same origin policy. Uses for this API range from user or service authentication, document or code signing, and the confidentiality and integrity of communications.

2012-12-13

Web Audio API

This specification describes a high-level JavaScript API for processing and synthesizing audio in web applications. The primary paradigm is of an audio routing graph, where a number of AudioNode objects are connected together to define the overall audio rendering. The actual processing will primarily take place in the underlying implementation (typically optimized Assembly / C / C++ code), but direct JavaScript processing and synthesis is also supported.

2012-12-06

XMLHttpRequest

The XMLHttpRequest specification defines an API that provides scripted client functionality for transferring data between a client and a server, one of the core components of “AJAX”.

2012-12-06

The Screen Orientation API

Defines APIs to read screen orientation state and to lock the screen orientation to a specific state.

2012-11-29

The Network Information API

The Network Information API provides an interface for Web Applications to access the underlying network information (connection info) of the device.

2012-10-25

File API

This specification provides an API for representing file objects in web applications, as well as programmatically selecting them and accessing their data.

2012-10-18

Push API

An API that provides Web applications with scripted access to server-sent application data.

2012-10-04

Web Intents Addendum - Local Services

This specification extends the Web Intents service discovery and light-weight RPC mechanism for web applications by defining optional extensions to Web Intents enabled User Agents to discover and dynamically register local Web Intents Services.

2012-08-21

WebRTC 1.0: Real-time Communication Between Browsers

This document defines a set of APIs that allow local media, including audio and video, to be requested from a platform, media to be sent over the network to another browser or device implementing the appropriate set of real-time protocols, and media received from another browser or device to be processed and displayed locally.

2012-07-12

Pick Contacts Intent

This specification defines an API that provides access to a user’s unified address book.

2012-07-12

Pick Media Intent

The Pick Media Intent defines a Web Intent that enables access to a user's media gallery from inside a Web application. It defines both an Intent action/type pair that selects this operation, and the format of the media data that is returned by services implementing this specification.

2012-07-03

Fullscreen

This specification defines an API to allow elements to be rendered fullscreen.

2012-07-03

Quota Management API

API to manage usage and availability of local storage resources

2012-06-28

Selectors API Level 2

The Selectors API specification defines methods for retrieving Element nodes from the DOM by matching against a group of selectors (as used in CSS).

2012-06-26

Web Intents

This specification defines a service discovery and light-weight RPC mechanism for web apps called Web Intents.

This document defines DOM interfaces and markup used by client and service pages to create, receive, and reply to Web Intents messages, and the procedures the User Agent carries out to facilitate that process.

2012-06-14

Web Notifications

This document defines an API for displaying simple notifications to the user.

2012-05-29

Gamepad

Defines a low-level interface that represents gamepad devices.

2012-05-29

Pointer Lock

API that provides scripted access to raw mouse movement data while locking the target of mouse events to a single element and removing the cursor from view.

2012-05-24

URL

Defines URL parsing, resolving, and canonicalizing as well as the URL API.

2012-04-17

File API: Writer

This specification defines an API for writing to files from web applications.

2012-04-17

File API: Directories and System

Defines an API to navigate file system hierarchies and sandboxed sections of a user's local filesystem.

2012-03-06

MediaStream Capture Scenarios

This document collates the scenarios that are target use cases for the Media Capture API that enables access to media input capabilities for Web applications using Javascript.

2011-12-15

Audio Processing API

This specification introduces and compares two client-side APIs for processing and synthesizing real-time audio streams in the browser.

2011-04-14

The Messaging API

This specification defines an API that provides access to messaging functionality in the device, including SMS, MMS and email.

2010-10-05

Permissions for Device API Access

This document identifies the permissions that are needed to use specific client-side APIs which grant access to sensitive data and operations.

2010-02-02

The System Information API

This specification defines an API to provide Web applications with access to various hardware properties of the system which they are running on, including battery status, current network bandwidth.

Obsolete Specifications

These specifications have either been superseded by others, or have been abandoned. They remain available for archival purposes, but are not intended to be used.

Retired

2012-05-31

MediaStream Processing API

This proposal makes HTML Streams the foundation for integrated Web media processing by creating a mixing and effects processing API for HTML Streams.

2012-03-22

The Media Capture API

The Media Capture API enables access to the audio, image and video capture capabilities of the device through Javascript.

2011-03-29

Programmable HTTP Caching and Serving

This document defines APIs for off-line serving of requests to HTTP resources using static and dynamic responses. It extends the function of application caches defined in HTML5.

2010-11-18

Web SQL Database

This specification defines an API for storing data in databases that can be queried using a variant of SQL.