Skip to main content

A-FRAME

An easy-to-use python wrapper for the A-Frame web framework.

pip install aframe

What is A-Frame?

A-Frame is a web framework for building virtual reality (VR) experiences. A-Frame is based on top of HTML, making it simple to get started. But A-Frame is not just a 3D scene graph or a markup language; the core is a powerful entity-component framework that provides a declarative, extensible, and composable structure to three.js.

Originally conceived within Mozilla and now maintained by the co-creators of A-Frame within Supermedium, A-Frame was developed to be an easy yet powerful way to develop VR content. As an independent open source project, A-Frame has grown to be one of the largest VR communities.

A-Frame supports most VR headsets such as Vive, Rift, Windows Mixed Reality, Daydream, GearVR, Cardboard, Oculus Go, and can even be used for augmented reality. Although A-Frame supports the whole spectrum, A-Frame aims to define fully immersive interactive VR experiences that go beyond basic 360° content, making full use of positional tracking and controllers.

Example

Here is an example using the Aframe library with FastAPI to create a VR Hello World:

from aframe import Aframe, xyz
from fastapi import FastAPI
from fastapi.responses import HTMLResponse
import uvicorn

app = FastAPI()

@app.get('/')
def hello_world():
    a = Aframe()
    a.set_scene(background="color: #ECECEC")
    a.box(position=xyz(-1, 0.5, -3), rotation=xyz(0, 45, 0), 
          color="#4CC3D9", shadow=True)
    a.sphere(position=xyz(0, 1.25, -5), radius=1.25, 
             color="#EF2D5E", shadow=True)
    a.cylinder(position=xyz(1, 0.75, -3), radius=0.5, 
               height=1.5, color="#FFC65D", shadow=True)
    a.plane(position=xyz(0, 0.1, -4), rotation=xyz(-90, 0, 0), 
            width=4, height=4, color="#7BC8A4")
    return HTMLResponse(a.generate())

if __name__ == '__main__':
    uvicorn.run("main:app", port=8000, log_level="info", reload=True)

For a more involved example, run the following in a script file:

from aframe.templates import fastapi
fastapi()

Metadata

Release files for aframe 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aframe 0.1.0
File Size Uploaded
aframe-0.1.0.tar.gz 7.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for aframe 0.1.0
File Interpreter ABI Platform
aframe-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 15.6 kB

Release files / aframe-0.1.0.tar.gz

Download URL aframe-0.1.0.tar.gz
Size 7.3 kB
Tags Source
SHA-256 checksum
How to use checksums
843cbfd17b2773bdaba6b3ffdb56818b36e825e9f10e5594f4bca53b5719161b
BLAKE2b-256 checksum
How to use checksums
f8698aa959b2c31b850405face02a9bacf074396db0456525feca740938e1330
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.13 CPython/3.10.5 Windows/10

Release files / aframe-0.1.0-py3-none-any.whl

Download URL aframe-0.1.0-py3-none-any.whl
Size 8.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
dc1f08bbb647d195c021bbd50cbdfdbc7f40bc0d6accd2331b5a03999dc2bdfa
BLAKE2b-256 checksum
How to use checksums
554222de7832e4f2c9dcf97299af6d34de7d9fab687d008e3063acbcca2e14b9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.1.13 CPython/3.10.5 Windows/10

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page