Featured Articles
-
To Eleventy and Beyond
Porting an established static website from one generator to another can be daunting. In this post, Add-ons Engineering Manager Stuart Colville recounts the experience of migrating Firefox Extension Workshop, Mozilla’s site for Firefox-specific extension development resources, from the Ruby-based site generator Jekyll to JavaScript-based Eleventy.
-
js13kGames 2020: A lean coding challenge with WebXR and Web Monetization
Announcing the return of the annual month-long competition for HTML5 game developers. For js13kGames contestants, the file size limit for all entries is set to 13 kilobytes of code. That's what makes this a code golf challenge. In addition to great prizes across a host of categories, including WebXR and Web Monetization, expert game reviewers provide valuable feedback on all submissions.
-
Changes to SameSite Cookie Behavior – A Call to Action for Web Developers
Browsers are changing the default value of the
SameSite
attribute for cookies fromNone
toLax
. This will greatly improve security for users. However, some web sites may depend (even unknowingly) on the old default, potentially resulting in site breakage. At Mozilla, we are slowly introducing this change. And we urge web developers to test their sites with the new default. -
Firefox 79: The safe return of shared memory, new tooling, and platform updates
Firefox 79 offers a new Promise method, more secure
target=_blank
links, logical assignment operators, tooling improvements for better JavaScript debugging, and many other updates of interest to web developers. In addition, shared memory is back at last, with a safer implementation. -
MDN Web Docs: 15 years young
MDN Web Docs turns 15 years old! This celebratory article highlights fifteen big wins of the last five years. With initiatives like the browser compatibility data project, learning areas and new pathways for beginning devs, interactive examples, as well as the Product Advisory Board, the Web DNA Report, and the MDN Swag Store, the MDN community has been busy sharing knowledge with the people who build the web.
-
Safely reviving shared memory
At Mozilla, we want the web to be capable of running high-performance applications so that users and content authors can choose the safety, agency, and openness of the web platform. Shared-memory multi-threading is an essential low-level building block for high-performance applications. However, keeping users safe is paramount, which is why shared memory and high-resolution timers were effectively disabled at the start of 2018, in light of Spectre. Until now...
-
Testing Firefox more efficiently with machine learning
A browser is an enormously complex piece of software, and it's always in development. About a year ago, we asked ourselves: how could we do better? Our CI relied heavily on human intervention. What if we could instead correlate patches to tests using historical regression data? Could we use a machine learning algorithm to figure out the optimal set of tests to run? We hypothesized that we could run fewer tests to save money, get results faster, and reduce the cognitive burden on developers.
-
Adding prefers-contrast to Firefox
When we talk about the contrast of a page, or contrast between web elements, we’re assessing how color choices impact readability. For visitors with low vision, web pages with low or insufficient contrast can be hard to use. In this article, we’ll walk through the design and implementation of the
prefers-contrast
media query in Firefox, and look at why it's so exciting and important. -
Securing Gamepad API
As part of Mozilla’s ongoing commitment to improve the privacy and security of the web platform, over the next few months, we will be making some changes to the Gamepad API. Starting with Firefox 81, the Gamepad API will be restricted to what are known as “secure contexts.”
-
New in Firefox 78: DevTools improvements, new regex engine, and abundant web platform updates
Firefox 78 heads heads out the door with a new regex engine, updates to the ECMAScript Intl API, new CSS selectors, enhanced support for WebAssembly, some important WebExtensions API updates, and many improvements to the Firefox Developer Tools.