Skip to main content

Brief Overview

Stardust XR is an XR display server designed for Linux-based systems.
Unlike traditional display servers that focus on 2D screens, Stardust XR introduces new conventions to utilize unbounded 3D space in virtual or real environments.

Priorities

  • 3D Environment Focus: While supporting 2D clients through the Wayland protocol, Stardust XR primarily aims to create and manage 3D environments.

  • Standard Interfaces: Utilizes Wayland and OpenXR for 2D and XR app integration.

  • Stardust Protocol: Implements a special protocol for:

    • Creating virtual objects
    • Developing 3D UIs around 2D apps (Panel Shells)
    • Handling data as Items that can represent files, Wayland surfaces, etc.
  • Personal Device Interaction: Focuses on individual user interactions rather than collaborative 3D spaces.

  • Flexible Object Interaction: Users can choose objects that best suit their current scenario, with easy setup for default configurations.

Architecture

Projects & Components

  • telescope: Stable stardust setup for quick and easy usage
  • server: Reference implementation of the StardustXR server (similar to Xorg)
  • core lib: Rust crates and schemas for connecting stardust server and client
  • website: The location where documentation is done and the website is generated from
  • protostar: App launcher library and examples including futuristic hexagon launcher
  • black hole: Universal minimization of Stardust objects
  • gravity: Launch programs with a certain offset in 3D space
  • magnetar: Example workspaces client
  • atmosphere: 3D environment with natural momentum-based movement
  • comet: Annotate in 3D wherever you want amongst your other apps!