Restructur and start dedicated pages for user tutorials (#7)

* rename filenames to reflect order

* introduce editorconfig

* Restructur and start dedicated pages for terminology and user tutorials

* update docusaurus and add mermaidjs support

* Add simplified architecture as diagram for now

* finish
This commit was merged in pull request #7.
This commit is contained in:
6543
2024-08-22 01:13:55 +02:00
committed by GitHub
parent 9672f2b7c0
commit 3b4cfc15ba
20 changed files with 4418 additions and 4212 deletions

View File

@@ -0,0 +1,29 @@
---
sidebar_position: 4
---
# Making Clients
A Stardust client is at its core an executable that connects to a stardust server instance at `$XDG_RUNTIME_DIR/stardust-[0-32]`, sends and receives messages according to the Stardust protocol.
## Rust
Stardust uses Rust due to its speed and reliability in build and runtime, so you will need to install cargo (preferably through [rustup](https://rustup.rs/)). If you're unsure how to use Rust then a great guide is at https://doc.rust-lang.org/book/.
## stardust-xr
`stardust-xr` is a connecting library for servers and clients that deals with the lowest level of connecting to ensure basic compatibility is ensured. As a client developer you most likely won't need it, but it's good to know about it.
## Fusion
`stardust-xr-fusion` is the high level library you'll probably be using to create your clients. It features structs for all Stardust objects and trait-based + async systems for handling events from the server.
To get started, create a new Rust project using
```bash
cargo new
```
and include the `stardust-xr-fusion` dependency in your `cargo.toml`. Documentation will be available at https://docs.rs/crate/stardust-xr-fusion/latest.
## Molecules
`stardust-xr-molecules` is an even higher level widget library built on Fusion similar to [MRTK](https://github.com/microsoft/MixedRealityToolkit-Unity) to get your clients up and running faster. Documentation will be available at https://docs.rs/crate/stardust-xr-molecules/latest.