
Control camera pan, tilt, and zoom
Pan, tilt, and zoom features on cameras are finally controllable on the web.
4,233 articles on Engineering.

Pan, tilt, and zoom features on cameras are finally controllable on the web.







A roundup of all the key announcements from the 2021 Chrome Dev Summit, with the links you need to find out more.

Selecting the right image format is the first step in delivering optimized images on your website. This post helps you to make the right choice.

Choose the appropriate easing for your project, whether that's easing in, out, or both. Maybe even use bounces for extra fun!

User-Agent string changes, the strategies that Chrome and Firefox are taking to mitigate the impact, and how you can help.

This post explains how to clean up your site after it has been hacked.

On devices with phone capabilities, make it easy for users to directly connect with you by simply tapping a phone number, more commonly known as click to call.

A collection of common patterns for dealing with the clipboard.

This post introduces the Cumulative Layout Shift (CLS) metric and explains how to measure it.

Learn best practices for address forms.

In this codelab, learn how to load completely different images based on device display size.

How to implement a resilient search experience with Workbox, using Background Sync and the Push API.

In this codelab, learn how to use density descriptors and srcset to load images with the right pixel density for the user's device.

In this codelab, learn how to track down a sneaky 404 that may prevent your page from being properly indexed.

In this codelab, learn how to make a site installable using the beforeinstallprompt event.

In this codelab, learn how to request user permission and send notifications.

In this codelab, learn how to build a push notifications server.

In this codelab, learn how to manage notifications with a service worker.

Learn best practices for payment forms.

In this codelab, learn how the same-origin policy works when fetching resources.

In this codelab, learn how the same-origin policy works when accessing data inside an iframe.

In this codelab, learn how to serve optimized images using WebP.

In this codelab, learn how to make an application reliable by registering a service worker.

In this codelab, learn how to use the sizes attribute to size images correctly depending on the user's viewport.

Community Guidelines

HowTo Components




Serving desktop-sized images to mobile devices can use 2–4x more data than needed. Instead of a "one-size-fits-all" approach to images, serve different image sizes to different devices.


Constructable Stylesheets provide a seamless way to create and distribute styles to documents or shadow roots without worrying about FOUC.

When building custom interactive components, use tabindex to ensure that they're keyboard accessible.

Learn how to set up the opt-in-based isolated environment, called cross-origin isolated, with COOP and COEP.

A look at some useful and creative ways to style a list.

Optimizing the critical rendering path refers to prioritizing the display of content that relates to the current user action.

Learn how to use architectural standards and solutions (such as metadata, cross-origin iframes, identity federation, and subdomain consolidation) to resolve cross-domain identity fragmentation and deliver a seamless user journey.

Cross-origin isolation enables a web page to use powerful features such as SharedArrayBuffer. This article explains how to enable cross-origin isolation on your website.

Custom metrics let you measure and optimize aspects of your site's experience that are unique to your site.


Use the beforeinstallprompt event to provide a custom, seamless, in-app install experience for your users.

The DataTransfer object holds data that is being dragged during a drag and drop operation. It may hold one or more data items, each of one or more data types.

Learn how to identify and fix layout shifts.

Learn how to debug media playback errors on the web.

A collection of insights on the top pain points, collected from a number of one to one conversations with web developers.

Best practices for combining different installation offerings to increase installation rates and avoid platform competition and cannibalization.

A skeuomorphic attempt at recreating a solar calculator on the web that makes use of the ambient light sensor and the window controls overlay feature.

Web Developer Satisfaction is a Google project to gather information about the needs of web developers. The goal is a more reliable, predictable and interoperable web platform, enabling developers to invest in and trust it, and adopt and use new features to grow the platform and their business.

Device motion and orientation events provide access to the built-in accelerometer, gyroscope, and compass in mobile devices.

Since Chrome 84, ResizeObserver supports a new box measurement called device-pixel-content-box, that measures the element's dimension in physical pixels. This is crucial for rendering pixel-perfect graphics, especially in the context of high-density screens.

This article helps Web developers pick the right hardware API based on a given device.

Web apps can now disable mouse acceleration when capturing pointer events.


Learn how to render 2D graphics to a canvas on the web from WebAssembly with Emscripten.