awesome-aframe 0,0,3,3

A collection of awesome things regarding the A-Frame ecosystem.

awesome-aframe Awesome

A collection of awesome things regarding A-Frame, a framework for building virtual reality experiences on the Web.

Table of Contents

Official Resources

Straight from the horse’s mouth.


Find human beings using A-Frame.


Learn about A-Frame.


Talks and Videos

Entity-Component-System (ECS)

Learn about the entity-component-system pattern which A-Frame is based on.


Third-party components (of the entity-component-system pattern). To create and share a new A-Frame VR component, see the Component Boilerplate.

  • Along Path - Interpolating an entity’s position along a path
  • Asset Lazy Load - Assign asset loading order and delays
  • Audio Visualizer - Audio visualizations using WebAudio API
  • Bmfont - Renders bitmap/SDF fonts for high-quality 2D text
  • Broadcast - Multiuser with WebSockets
  • Checkpoint Controls - Eased linear locomotion between designated hotspots
  • Collider, Explode, Spawner - Collection of components for collision, geometry explosions, and entity spawning
  • Crease - Creased shading
  • Cubemap - Create a skybox from a cubemap
  • Drag Look - Look controls in the opposite direction with changing cursor style
  • Draw - HTML5 <canvas> as a material texture, with support for extension components
  • Entity Generator - Generate entities
  • Event Set - Set properties in response to events, replacement for declarative events
  • Extras - Don’s collection of A-Frame components
  • Extrude and Lathe - Extrude and lathe geometries
  • Faceset - Geometry from vertices and faces
  • Fence - Set boundaries on entity position
  • Firebase - Multiuser with Firebase
  • Fit Texture - Automatically scale entities relative to their texture, so you don’t need to set width/height manually
  • FPS Look - Facilitates controlling entity rotation directly with captured mouse
  • Gamepad Controls - Gamepad controls using HTML5 Gamepad API
  • GIF - Display GIF as a texture by using a Canvas
  • glTF - glTF models
  • Grid Helper - Create customizable grids
  • Height Grid - Terrain
  • href - Link to other pages using cursor component
  • HTML Texture - Using HTML as a texture, powered by html2canvas
  • Interpolation - Interpolate positional and rotational updates for entities, useful for fetching from server for multiplayer
  • k-frame - Kevin’s collection of A-Frame components
  • Keyboard - Full VR keyboard for use with WebVR controllers
  • Layout - 3D layout of child entities
  • Leap Hands - Leap Motion
  • Mesh Line - Draw thick lines
  • Mouse Cursor - Use mouse as a direct pointer
  • No-click Look Controls - Intuitive desktop view controls without requiring mousedown + drag
  • Ocean - Flat-shaded ocean primitive and component, with animated waves
  • Orbit Controls - Orbit camera around an entity
  • Particle System - Particle systems (e.g., rain, dust, snow, fire)
  • Passthrough - Show video feed from device’s camera
  • Physics + Vive Controls - grab and sphere-collider components for combining Vive controllers with aframe-extras.physics
  • Physics - Rigid-body physics using Cannon.js
  • PLY Loader - Model loader for .PLY models, wrapping THREE.PLYLoader
  • Polygon - n-sided polygons
  • Proxy Controls - Connect input devices from your desktop to your mobile phone with WebRTC
  • Randomizer - Set random values
  • Selectable by @scenevr- Click on an entity to select it, handy for editors
  • Shadows - Realtime shadows
  • Star - 2D stars
  • Stereo - Enable rendering different entities for each eye, using THREE.js layers so you can render 3D stereoscopic videos (full and half-dome)
  • Template - Integration with Handlebars, Jade, mustache, Nunjucks JS template engines
  • Text Wrap - Wrapping text dynamically rendered onto the draw component
  • Text - Polygonal text
  • THREE Loader - Model loader for .json models, wrapping THREE.JSONLoader and THREE.ObjectLoader
  • Tube - Cylindrical primitive that shapes itself to a given path
  • UI Modal - Show dialog box or a menu in front of the camera
  • Universal Controls - Refactored A-Frame controls that supports gamepad, HMD, keyboard, mouse + pointerlock, touch-to-move, with physics compatibility
  • Video Controls - Video controls (play/pause/jump) for A-Frame video assets
  • Vive Cursor - A cursor for HTC Vive controllers
  • WebVR Controller - HTC Vive controllers
  • Look At and Billboard - Component to tell an entity to face another entity, or to face the camera.
  • Animation - New and improved animation system using components. [Code]
  • ChartBuilder - A component for using ChartBuilder charts.
  • Stereo Cube - A component for stereo cubemap textures (i.e., left and right eye textures).
  • Trigger Box - A component that emits an event when it enters or leaves a predefined area.
  • L-System - A component for rendering Lindenmayer systems.
  • Terrain Model - Generating terrains using TerrainLoader
  • Orbit Controls Component - Allow desktop users to rotate the camera around an object.
  • Sprite Component - Creates bitmap images that always face the camera.
  • UI Components - A collection of components related to UI.


  • Draw - Render from canvas
  • HTML - Render from HTML
  • Video - iOS-compatible video material
  • GIF - Render animated GIFs


Integration with existing tools, frameworks, and libraries.


Use React with A-Frame. Share your A-Frame React Components!


Contributions and suggestions are very welcome. Check out the guidelines and make a pull request.



Related Repositories



A collection of awesome things regarding the A-Frame ecosystem. ...



A collection of awesome things regarding A-Frame ecosystem. ...



A collection of awesome things regarding A-Frame ecosystem. ...

Top Contributors

ngokevin cvan dkraeker donmccurdy tushararora chriscar bryik dmarcos rubenmueller gdedi001 nylki joshkpeterson alexrkass bnolan withersc maxkrieger xiaobuu oscarmarinmiro amicoleo RSpace dbradleyfl gmarty konstantint h0r0man flysonic10 alexoviedo999 protyze unexpector