<commit_before>---
title: Introducing A-Frame (Version 0.1.0)
date: 2015-12-16 11:00:00
layout: blog
---

### Today the MozVR team releases the first version of A-Frame: an open source framework for creating WebVR experiences with markup.

A-Frame makes it easy for web developers to create virtual reality experiences that work across desktop, mobile, and the Oculus Rift.

We created A-Frame because we wanted to make WebVR development easier. WebVR has shipped in builds of Firefox and Chromium since the summer of 2014, but creating content for it has required knowing WebGL. The WebGL community is unbelievably talented, and has created many mind-blowing VR experiences in the last year, but they are a small subset of the full web development community. There are millions of talented developers who do not know WebGL. What if each of them could create and share WebVR experiences?

A-Frame is designed to be familiar to those web developers. It wraps the power of WebGL in HTML custom elements, so creating a high performance VR experience is as simple as:

```html
<html>
  <head>
    <script src="https://aframevr.io/releases/latest/aframe.min.js"></script>
  </head>
  <body>
    <a-scene>
      <a-sky src="https://aframevr.github.io/aframe/examples/_skies/lake.jpg"></a-sky>
      <a-model src="https://aframevr.github.io/aframe/examples/showcase-composite/sculpture.dae" position="0 0 -2"></a-model>
      <a-image src="https://aframevr.github.io/aframe/examples/showcase-composite/portland.png" width="1" height="0.35" position="-2 1.2 1"></a-image>
    </a-scene>
  </body>
</html>
```

A-Frame ships with powerful and concise "primitives" for common use cases such as 360-degree videos, images, models, skies, and more. Primitives make it easy to block out a scene in minutes. Primitives can also be combined with lighting, animation, sound and interactivity. For the full list of primitives included in A-Frame 0.1, see the [A-Frame documentation](../../../../../docs/primitives).

For users who want deeper control and flexibility, A-Frame is built on an entity-component system which provides accessible components for lighting, materials, re-usable assets, and more. This pattern is common in the game development world, and is the backbone of A-Frame. Visit the [A-Frame documentation](../../../../../docs/core/) to learn more about the entity-component system.<commit_msg>add more link to blog post<commit_after>---
title: Introducing A-Frame (Version 0.1.0)
date: 2015-12-16 11:00:00
layout: blog
---

### Today the MozVR team releases the first version of A-Frame: an open source framework for creating WebVR experiences with markup.

A-Frame makes it easy for web developers to create virtual reality experiences that work across desktop, mobile, and the Oculus Rift.

We created A-Frame because we wanted to make WebVR development easier. WebVR has shipped in builds of Firefox and Chromium since the summer of 2014, but creating content for it has required knowing WebGL. The WebGL community is unbelievably talented, and has created many mind-blowing VR experiences in the last year, but they are a small subset of the full web development community. There are millions of talented developers who do not know WebGL. What if each of them could create and share WebVR experiences?

<!-- more -->

A-Frame is designed to be familiar to those web developers. It wraps the power of WebGL in HTML custom elements, so creating a high performance VR experience is as simple as:

```html
<html>
  <head>
    <script src="https://aframevr.io/releases/latest/aframe.min.js"></script>
  </head>
  <body>
    <a-scene>
      <a-sky src="https://aframevr.github.io/aframe/examples/_skies/lake.jpg"></a-sky>
      <a-model src="https://aframevr.github.io/aframe/examples/showcase-composite/sculpture.dae" position="0 0 -2"></a-model>
      <a-image src="https://aframevr.github.io/aframe/examples/showcase-composite/portland.png" width="1" height="0.35" position="-2 1.2 1"></a-image>
    </a-scene>
  </body>
</html>
```

A-Frame ships with powerful and concise "primitives" for common use cases such as 360-degree videos, images, models, skies, and more. Primitives make it easy to block out a scene in minutes. Primitives can also be combined with lighting, animation, sound and interactivity. For the full list of primitives included in A-Frame 0.1, see the [A-Frame documentation](../../../../../docs/primitives).

For users who want deeper control and flexibility, A-Frame is built on an entity-component system which provides accessible components for lighting, materials, re-usable assets, and more. This pattern is common in the game development world, and is the backbone of A-Frame. Visit the [A-Frame documentation](../../../../../docs/core/) to learn more about the entity-component system.
{'fraction_non_alphanumeric': 0.10153654485049834, 'fraction_numerical': 0.015365448504983389, 'mean_word_length': 3.955761316872428, 'pattern_counts': {'":': 0, '<': 36, '<?xml version=': 0, '>': 36, 'https://': 8, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2202090', 'n_tokens_mistral': 1390, 'n_tokens_neox': 1291, 'n_words': 607}