hello.js

var please = require('share');
console.log('thank you');

Friday, 21 July, 2017 UTC

WebAssembly for Native Games on the Web

WebAssembly for Native Games on the Web

The biggest improvement this year to web performance has been the introduction of WebAssembly. Now available in Firefox and Chrome, and coming soon in Edge and WebKit, WebAssembly enables the execution of code at a low assembly-like level in the browser. ... more


Friday, 21 July, 2017 UTC

The Next Generation of Web Gaming

The Next Generation of Web Gaming

Over the last few years, Mozilla has worked closely with other browsers and the industry to advance the state of games on the Web. Together, we have enabled developers to deploy native code on the web, first via asm.js, and then with its successor WebAssembly. ... more


Wednesday, 19 July, 2017 UTC

Creating a WebAssembly module instance with JavaScript

Creating a WebAssembly module instance with JavaScript

This is the 1st article in a 3-part series: Creating a WebAssembly module instance with JavaScript Memory in WebAssembly (and why it’s safer than you think) WebAssembly table imports… what are they? WebAssembly is a new way of running code on the web. ... more


Wednesday, 19 July, 2017 UTC

Memory in WebAssembly (and why it’s safer than you think)

Memory in WebAssembly (and why it’s safer than you think)

This is the 2nd article in a 3-part series: Creating a WebAssembly module instance with JavaScript Memory in WebAssembly (and why it’s safer than you think) WebAssembly table imports… what are they? Memory in WebAssembly works a little differently than ... more


Wednesday, 19 July, 2017 UTC

WebAssembly table imports… what are they?

WebAssembly table imports… what are they?

This is the 3rd article in a 3-part series: Creating a WebAssembly module instance with JavaScript Memory in WebAssembly (and why it’s safer than you think) WebAssembly table imports… what are they? In the first article, I introduced the four different ... more


Tuesday, 18 July, 2017 UTC

Picasso Tower 360º tour with A-Frame

Picasso Tower 360º tour with A-Frame

A 360º tour refers to an experience that simulates an in-person visit through the surrounding space. This “walkthrough” visit is composed of scenes in which you can look around at any point, similar to how you can look around in Google Street View. In ... more


Friday, 14 July, 2017 UTC

Introducing sphinx-js, a better way to document large JavaScript projects

Introducing sphinx-js, a better way to document large JavaScript projects

Until now, there has been no good tool for documenting large JavaScript projects. JSDoc, long the sole contender, has some nice properties: A well-defined set of tags for describing common structures Tooling like the Closure Compiler which hooks into ... more


Thursday, 29 June, 2017 UTC

Introducing HumbleNet: a cross-platform networking library that works in the browser

Introducing HumbleNet: a cross-platform networking library that works in the browser

HumbleNet started out as a project at Humble Bundle in 2015 to support an initiative to port peer-to-peer multiplayer games at first to asm.js and now to WebAssembly. In 2016, Mozilla’s web games program identified the need to enable UDP (User Datagram ... more


Thursday, 29 June, 2017 UTC

Building the Web of Things

Building the Web of Things

Mozilla is working to create a Web of Things framework of software and services that can bridge the communication gap between connected devices. By providing these devices with web URLs and a standardized data model and API, we are moving towards a more ... more


Wednesday, 21 June, 2017 UTC

Designing for performance: A data-informed approach for Quantum development

Designing for performance: A data-informed approach for Quantum development

When we announced Project Quantum last October, we talked about how users would benefit from our focus on “performance gains…that will be so noticeable that your entire web experience will feel different.” We shipped the first significant part of this ... more


Thursday, 15 June, 2017 UTC

Hacking on the Network Monitor Developer Tool (Part 2)

Hacking on the Network Monitor Developer Tool (Part 2)

In the previous post, Network Monitor Reloaded, we walked through the reasoning for refactoring the Network Monitor tool. We also learned that using web standards for building Dev Tools enables us to running them in different environments – loaded either ... more


Thursday, 15 June, 2017 UTC

Avoiding race conditions in SharedArrayBuffers with Atomics

Avoiding race conditions in SharedArrayBuffers with Atomics

This is the 3rd article in a 3-part series: A crash course in memory management A cartoon intro to ArrayBuffers and SharedArrayBuffers Avoiding race conditions in SharedArrayBuffers with Atomics In the last article, I talked about how using SharedArrayBuffers ... more


Thursday, 15 June, 2017 UTC

A cartoon intro to ArrayBuffers and SharedArrayBuffers

A cartoon intro to ArrayBuffers and SharedArrayBuffers

This is the 2nd article in a 3-part series: A crash course in memory management A cartoon intro to ArrayBuffers and SharedArrayBuffers Avoiding race conditions in SharedArrayBuffers with Atomics In the last article, I explained how memory-managed languages ... more


Thursday, 15 June, 2017 UTC

Firefox 54: E10S-Multi, WebExtension APIs, CSS clip-path

Firefox 54: E10S-Multi, WebExtension APIs, CSS clip-path

“E10S-Multi:” A new multi-process model for Firefox Today’s release completes Firefox’s transformation into a fully multi-process browser, running many simultaneous content processes in addition to a UI process and, on Windows, a special GPU process. ... more


Thursday, 15 June, 2017 UTC

A crash course in memory management

A crash course in memory management

This is the 1st article in a 3-part series: A crash course in memory management A cartoon intro to ArrayBuffers and SharedArrayBuffers Avoiding race conditions in SharedArrayBuffers with Atomics To understand why ArrayBuffer and SharedArrayBuffer were ... more


Friday, 9 June, 2017 UTC

CSS Shapes, clipping and masking – and how to use them

CSS Shapes, clipping and masking – and how to use them

The release of Firefox 54 is just around the corner and it will introduce new features into an already cool CSS property: clip-path . clip-path is a property that allows us to clip (i.e., cut away) parts of an element. Up until now, in Firefox you could ... more


Friday, 9 June, 2017 UTC

Cross-browser extensions, available now in Firefox

Cross-browser extensions, available now in Firefox

We’re modernizing the way developers build extensions for Firefox! We call the new APIs WebExtensions , because they’re written using the technologies of the Web: HTML, CSS, and JavaScript. And just like the technologies of the Web, you can write one ... more


Wednesday, 7 June, 2017 UTC

Introducing FilterBubbler: A WebExtension built using React/Redux

Introducing FilterBubbler: A WebExtension built using React/Redux

A few months ago my long time Free Software associate, Don Marti, called me about an idea for a WebExtension. WebExtensions is the really cool new standard for browser extensions that Mozilla and the Chrome team are collaborating on (as well as Opera, ... more


Tuesday, 16 May, 2017 UTC

Having fun with physics and A-Frame

Having fun with physics and A-Frame

A-Frame is a WebVR framework to build virtual reality experiences. It comes with some bundled components that allow you to easily add behavior to your VR scenes, but you can download more –or even create your own. In this post I’m going to share how ... more


Friday, 12 May, 2017 UTC

Debugger.html Call Stack Improvements

Debugger.html Call Stack Improvements

Debugger.html is an open source project, built on top of React and Redux, that functions as a standalone debugger for Firefox, Chrome and Node. The debugger is also being integrated into the Firefox Developer Tools offering. Currently it is available ... more


Tuesday, 9 May, 2017 UTC

Quantum Up Close: What is a browser engine?

Quantum Up Close: What is a browser engine?

In October of last year Mozilla announced Project Quantum – our initiative to create a next-generation browser engine. We’re well underway on the project now. We actually shipped our first significant piece of Quantum just last month with Firefox 53. ... more


Tuesday, 2 May, 2017 UTC

Debugging Web Push in Mozilla Firefox

Debugging Web Push in Mozilla Firefox

Introduction This article is part of an ongoing series about using and working with WebPush and Mozilla’s WebPush service. This article is not meant to be a general guide, but instead offers suggestions and insight into best using the service. Some knowledge ... more


Wednesday, 26 April, 2017 UTC

Fathom: a framework for understanding web pages

Fathom: a framework for understanding web pages

It’s time we went beyond a browser that just renders pages. On the modern web, trying to accomplish a simple task can get you buffeted by pop-overs, squinting at content crammed into a tiny column, and trying to suss out the behavior of yet another site’s ... more


Tuesday, 4 April, 2017 UTC

HTML5 Games Workshop: Make a platformer game with JavaScript!

HTML5 Games Workshop: Make a platformer game with JavaScript!

I have always wanted to run a game development workshop, and some weeks ago, thanks to AdaJS in Barcelona, I finally got my chance. Empezamos con lleno el taller de videojuegos de @ladybenko en @CanodromBCN pic.twitter.com/FWyfcSF16R — adaJS (@adabcnjs) ... more


Thursday, 30 March, 2017 UTC

Developer Edition 54: New inspector and debugger features, MDN help in the netmonitor, and more

Developer Edition 54: New inspector and debugger features, MDN help in the netmonitor, and more

We didn’t have a chance to blog when Firefox Developer Edition 53 came out, so now that 54 is out too, let’s discover what new features and bugs fixes made it into these new releases. There is a lot to cover so we will get right to it. Inspector The ... more


Wednesday, 29 March, 2017 UTC

A Saturday Night: Track and record movement in WebVR

A Saturday Night: Track and record movement in WebVR

Mozilla’s WebVR team has released a fun new virtual reality demo called A Saturday Night . Put your VR headset on, perform a dance, and share it with the world! A Saturday Night has been developed with A-Frame, an open source JavaScript framework created ... more


Tuesday, 28 March, 2017 UTC

A practitioner’s perspective on A-Frame: —Interview with Roland Dubois

A practitioner’s perspective on A-Frame: —Interview with Roland Dubois

There is a growing awareness and interest in WebVR among Web developers, and as a result, high-level tools and libraries are emerging to populate the JavaScript ecosystem. One of the libraries is A-Frame, supported by Mozilla. A-Frame simplifies the ... more


Thursday, 16 March, 2017 UTC

Internationalize your keyboard controls

Internationalize your keyboard controls

Recently I came across two lovely new graphical demos, and in both cases, the controls would not work on my French AZERTY keyboard. There was the wonderful WebGL 2 technological demo After The Flood, and the very cute Alpaca Peck. Shaw was nice enough ... more


Wednesday, 15 March, 2017 UTC

Why WebAssembly is Faster Than asm.js

Why WebAssembly is Faster Than asm.js

WebAssembly, a new binary execution format for the Web, is starting to arrive in stable versions of browsers. A major goal of WebAssembly is to be fast . This post gives some technical details about how it achieves that. Of course, “fast” is relative. ... more


Tuesday, 7 March, 2017 UTC

Firefox 52: Introducing Web Assembly, CSS Grid and the Grid Inspector

Firefox 52: Introducing Web Assembly, CSS Grid and the Grid Inspector

Introduction It is definitely an exciting time in the evolution of the web with the adoption of new standards, performance gains, better features for designers, and new tooling. Firefox 52 represents the fruition of a number of features that have been ... more