Recent Articles

  • The MDN Redesign “Behind the Scenes”

    MDN is getting a new look today. Read about the changes we've made, like bug fixes, toning down the contrast and enabling http2. Want to hear more about our new system for overriding site fonts on a per-locale basis? Drop us a line in the comments section. Did we break something you love? File a bug and we'll take a look.

  • Optimizing Performance of A-Frame Scenes for Mobile Devices

    A-Frame makes building 3D and VR web applications easy, so developers of all skill levels can create rich and interactive virtual worlds. For an Oregon State University student project focused on WebVR, our team investigated performance and optimizations for A-Frame on Android smartphones. We developed a means of benchmarking the level of 3D complexity a mobile phone is capable of, and determining which performance metrics are required for such a benchmark.

  • The Next Generation of Web Gaming

    Now available in Firefox and Chrome, and also soon in Edge and WebKit, WebAssembly enables near-native performance of code in the browser, which is great for game development, and has also shown benefits for WebVR applications. Here's a look at how far we've come and what's ahead for HTML5 game development.

  • WebAssembly for Native Games on the Web

    There's never been a better time to port a native game to the web. Here are some tips from the trenches for getting started with WebAssembly and Emscripten.

  • Creating a WebAssembly module instance with JavaScript

    This is the 1st article in a 3-part series of articles with code cartoons that illustrate how to get started running WebAssembly modules in the browser today, how to work with memory in WebAssembly, and how to use table imports.

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

    This is the 2nd article in a 3-part series of articles with code cartoons about running WebAssembly modules and memory safety.

  • WebAssembly table imports… what are they?

    This is the 3rd article in a 3-part series of articles with code cartoons that illustrate how to get started running WebAssembly modules and how to use table imports.

  • Picasso Tower 360º tour with A-Frame

    360º tours offer first-time WebVR creators a perfect starting project that does not require exotic or expensive gear to begin VR development. Panoramic 360º scenes naturally fall back to regular 2D visualization on a desktop or mobile screen. Today's tour will help you get started building an A-Frame 360º experience of your own.

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

    Go beyond the flat, alphabetical lists of JSDoc, and document your JavaScript libraries in a way that’s easier to learn. As a bonus, keep your old JSDoc syntax.

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

    Announcing the release of HumbleNet, a project initiated at Humble Bundle in 2015 to port peer-to-peer multiplayer games, originally to asm.js and now to WebAssembly. The current open source version of the library exposes a simple peer-to-peer API that allows for basic peer discovery and the ability to easily send data (via WebRTC) to other peers. Today, you can build a game that runs on Linux, macOS, and Windows, while using any web browser — and they can all communicate in real-time via WebRTC.

Browse All Articles →