---
title: "Key Vuer Concepts"
section: "Tutorials"
order: 110
description: "Key Vuer Concepts — Vuer documentation"
---

# Key Vuer Concepts

`vuer.ai` has two main components: a server written in Python and a client app that runs in the web browser.

The server-side component is responsible for populating and manipulating 3D scenes.

The client-side component is a web application written in [TypeScript](https://www.typescriptlang.org/) and [react-three-fiber](https://github.com/pmndrs/react-three-fiber). The `vuer` web client receives data from the server through a websocket connection, hydrates the components within those messages, and then renders those components in the 3D scene using WebGL. This web-based client-server setup allows users to interact with objects in the 3D scene in real-time while taking full advantage of the power of AI and robotics libraries in Python.

In other words, [`vuer.ai`](https://vuer.ai) offers a powerful, component-based API in python for interacting and manipulating 3D scenes. Its web-client also offer native [webXR](https://developer.mozilla.org/en-US/docs/Web/API/WebXR_Device_API) support, allowing users to interact with the scene with devices such as the [Oculus Quest 3](https://www.oculus.com/quest-3/), and the [Apple Vision Pro ](https://www.apple.com/vision/).

- [Intro to Async Python](/tutorials/basics/async_programming)
- [Your First `vuer` Scene](/tutorials/basics/setting_a_scene)
- [Simpe Life-Cycle](/tutorials/basics/simple_life_cycle)
- [Setting Up SSL Proxy for WebSocket](/tutorials/basics/ssl_proxy_webxr)
- [Serving Dynamic Content](/tutorials/basics/adding_html_handler)
