reorder: everythinggg
This commit is contained in:
37
docs/01-get-started/01-setup-openxr.md
Normal file
37
docs/01-get-started/01-setup-openxr.md
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 1
|
||||||
|
---
|
||||||
|
|
||||||
|
# Setup OpenXR Runtime
|
||||||
|
|
||||||
|
:::info
|
||||||
|
if you want to test stardust in flatscreen mode (in a window) without a headset or other OpenXR device, you can skip this step and start with [trying out telescope](bundled).
|
||||||
|
:::
|
||||||
|
|
||||||
|
Check the [hardware table](https://lvra.gitlab.io/docs/hardware/) to ensure your hardware and headset are compatible:
|
||||||
|
|
||||||
|
## SteamVR
|
||||||
|
|
||||||
|
You will likely want to use [Monado](#monado) instead, but if you need to the instructions are available.
|
||||||
|
|
||||||
|
:::warning
|
||||||
|
If you are on NixOS please consult https://lvra.gitlab.io/docs/distros/nixos/ before installing SteamVR.
|
||||||
|
:::
|
||||||
|
|
||||||
|
https://lvra.gitlab.io/docs/steamvr/ is a good starting point, but be aware that the stardust server cannot run as an overlay on top of other games due to SteamVR not implementing the OpenXR Overlay extension.
|
||||||
|
|
||||||
|
## Monado
|
||||||
|
|
||||||
|
If you've got a wired headset, this is generally the way to go.
|
||||||
|
|
||||||
|
### NixOS
|
||||||
|
|
||||||
|
It's generally easiest to follow the instructions at https://lvra.gitlab.io/docs/distros/nixos/ to install properly to the system.
|
||||||
|
|
||||||
|
### Other distros
|
||||||
|
|
||||||
|
[Envision](https://lvra.gitlab.io/docs/fossvr/envision/) is the XR launcher (like a minecraft launcher) of choice for open source XR and is overall better in practice than SteamVR.
|
||||||
|
|
||||||
|
# Test OpenXR Runtime
|
||||||
|
|
||||||
|
Try running [XRGears](https://gitlab.freedesktop.org/monado/demos/xrgears) and see if it works, you can get it from the system's package manager often.
|
||||||
30
docs/01-get-started/02-bundled.md
Normal file
30
docs/01-get-started/02-bundled.md
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 2
|
||||||
|
---
|
||||||
|
|
||||||
|
# Bundled setup
|
||||||
|
|
||||||
|
Telescope is a bundled Stardust setup that lets you 1-click run all the essentials for testing a setup out on an existing 2D computer.
|
||||||
|
|
||||||
|
## Nix
|
||||||
|
|
||||||
|
### Install Nix
|
||||||
|
|
||||||
|
For easy development and distribution this project uses the [nix package manager](https://nix.dev/).<br/>
|
||||||
|
This allows to ensure all dependency requirements are met.
|
||||||
|
|
||||||
|
If you do not have nix installed follow the instructions at https://nixos.org/download/#nix-install-linux.
|
||||||
|
:::warning
|
||||||
|
Make sure to have [flakes enabled](https://nixos.wiki/wiki/flakes).
|
||||||
|
:::
|
||||||
|
|
||||||
|
### Run Telescope
|
||||||
|
|
||||||
|
Because telescope itself is a nix flake, you simply have to run
|
||||||
|
```sh
|
||||||
|
nix run github:StardustXR/telescope
|
||||||
|
```
|
||||||
|
|
||||||
|
## Non-nix
|
||||||
|
|
||||||
|
An AppImage generated from the nix flake is currently WIP. Please check back later or do a [manual build.](manual)
|
||||||
26
docs/01-get-started/03-manual.md
Normal file
26
docs/01-get-started/03-manual.md
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 3
|
||||||
|
---
|
||||||
|
|
||||||
|
# Manual build/installation
|
||||||
|
|
||||||
|
Make sure all repos are cloned on the same branch (e.g. all main or all dev branch) to ensure stardust protocol compatibility.
|
||||||
|
|
||||||
|
## Server
|
||||||
|
Run and maybe install the server from https://github.com/StardustXR/server.
|
||||||
|
Follow the README.
|
||||||
|
|
||||||
|
## Clients
|
||||||
|
|
||||||
|
After the server is running, you'll need to run some clients. Here's a demo showing some off:
|
||||||
|

|
||||||
|
|
||||||
|
Non-exhaustive list of clients:
|
||||||
|
- [**flatland**](https://github.com/StardustXR/flatland): 3D panel UI (like window manager) for intercting with all your 2D apps
|
||||||
|

|
||||||
|
- [**protostar**](https://github.com/StardustXR/protostar): App launcher library and examples including futuristic hexagon launcher
|
||||||
|
- [**black hole**](https://github.com/StardustXR/black-hole): Universal minimization of Stardust objects
|
||||||
|
- [**gravity**](https://github.com/StardustXR/gravity): Launch programs with a certain offset in 3D space
|
||||||
|
- [**magnetar**](https://github.com/StardustXR/magnetar): Example workspaces client
|
||||||
|
- [**atmosphere**](https://github.com/StardustXR/atmosphere): 3D environment with natural momentum-based movement
|
||||||
|
- [**comet**](https://github.com/StardustXR/comet): Annotate in 3D wherever you want amongst your other apps!
|
||||||
4
docs/01-get-started/_category_.json
Normal file
4
docs/01-get-started/_category_.json
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"label": "Get Started",
|
||||||
|
"position": 1
|
||||||
|
}
|
||||||
@@ -2,9 +2,9 @@
|
|||||||
sidebar_position: 1
|
sidebar_position: 1
|
||||||
---
|
---
|
||||||
|
|
||||||
# Overview
|
# Brief Overview
|
||||||
|
|
||||||
Stardust XR _(formerly known as Stardust)_ is an XR [display server](https://itsfoss.com/display-server) designed for Linux-based systems<!-- (possibly most unix-based too, but untested)-->.<br/>
|
Stardust XR is an XR [display server](https://itsfoss.com/display-server) designed for Linux-based systems<!-- (possibly most unix-based too, but untested)-->.<br/>
|
||||||
Unlike traditional display servers that focus on 2D screens, Stardust XR introduces new conventions to utilize unbounded 3D space in virtual or real environments.
|
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
|
## Priorities
|
||||||
@@ -24,7 +24,64 @@ Unlike traditional display servers that focus on 2D screens, Stardust XR introdu
|
|||||||
|
|
||||||
## Architecture
|
## Architecture
|
||||||
|
|
||||||

|
```mermaid
|
||||||
|
graph LR
|
||||||
|
OpenXR
|
||||||
|
|
||||||
|
OpenXR -->|Frame Data| StereoKit
|
||||||
|
OpenXR -->|Input Data| StereoKit
|
||||||
|
|
||||||
|
subgraph Server[Stardust Server]
|
||||||
|
StereoKit[StereoKit]
|
||||||
|
InternalSceneGraph[Internal Scenegraph]
|
||||||
|
WC1[Wayland Client 1]
|
||||||
|
DBusConnection[D-Bus Connection]
|
||||||
|
|
||||||
|
ClientSceneGraph -->|Drawable Objects| StereoKit
|
||||||
|
StereoKit -->|Controller, Hand & HMD Data| InternalSceneGraph
|
||||||
|
InternalSceneGraph -->|Panel Items| ClientSceneGraph
|
||||||
|
InternalSceneGraph -->|Controller, Hand & HMD Export| DBusConnection
|
||||||
|
WC1 -->|Panel Item| InternalSceneGraph
|
||||||
|
WC1 -->|Textures| StereoKit
|
||||||
|
StereoKit -->|EGL Context| WC1
|
||||||
|
ClientSceneGraph --> C1
|
||||||
|
|
||||||
|
subgraph C1[Stardust Client 1]
|
||||||
|
ClientSceneGraph[Client Scenegraph]
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
StardustSocket[Stardust Socket]
|
||||||
|
SessionBus[D-Bus Session Bus]
|
||||||
|
WaylandSocket[Wayland Socket]
|
||||||
|
|
||||||
|
WC1 --> WaylandSocket
|
||||||
|
WaylandSocket --> WC1
|
||||||
|
DBusConnection --> SessionBus
|
||||||
|
C1 --> StardustSocket
|
||||||
|
|
||||||
|
subgraph StardustClient[Stardust Client 1]
|
||||||
|
Fusion
|
||||||
|
Molecules
|
||||||
|
UserCode[User Code]
|
||||||
|
|
||||||
|
Fusion --> Molecules
|
||||||
|
Fusion --> UserCode
|
||||||
|
Molecules --> UserCode
|
||||||
|
|
||||||
|
subgraph Fusion
|
||||||
|
libstardustxr[stardust-xr library]
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
StardustSocket --> libstardustxr
|
||||||
|
SessionBus -->|HMD Spatial Reference| Fusion
|
||||||
|
|
||||||
|
|
||||||
|
WaylandClient[Wayland Client]
|
||||||
|
WaylandSocket --> WaylandClient
|
||||||
|
WaylandClient --> WaylandSocket
|
||||||
|
```
|
||||||
|
|
||||||
## Projects & Components
|
## Projects & Components
|
||||||
|
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
---
|
---
|
||||||
sidebar_position: 4
|
sidebar_position: 3
|
||||||
---
|
---
|
||||||
|
|
||||||
# Making Clients
|
# Making Clients
|
||||||
4
docs/02-dive-deeper/_category_.json
Normal file
4
docs/02-dive-deeper/_category_.json
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
{
|
||||||
|
"label": "Dive deeper",
|
||||||
|
"position": 2
|
||||||
|
}
|
||||||
@@ -1,86 +0,0 @@
|
|||||||
---
|
|
||||||
sidebar_position: 1
|
|
||||||
---
|
|
||||||
|
|
||||||
# Tutorial
|
|
||||||
|
|
||||||
## Setup OpenXR
|
|
||||||
|
|
||||||
:::note
|
|
||||||
if you have no headset or other OpenXR device, you can skip this step and start with [installing nix](#install-nix).
|
|
||||||
:::
|
|
||||||
|
|
||||||
### SteamVR
|
|
||||||
|
|
||||||
#### Archlinux
|
|
||||||
|
|
||||||
TODO
|
|
||||||
|
|
||||||
#### NixOS
|
|
||||||
|
|
||||||
TODO
|
|
||||||
|
|
||||||
#### Others
|
|
||||||
|
|
||||||
TODO: collect links for setup on different distrons
|
|
||||||
|
|
||||||
### [Monado](https://monado.dev/)
|
|
||||||
|
|
||||||
#### Archlinux
|
|
||||||
|
|
||||||
TODO
|
|
||||||
|
|
||||||
#### NixOS
|
|
||||||
|
|
||||||
TODO
|
|
||||||
|
|
||||||
#### Others
|
|
||||||
|
|
||||||
TODO: collect links for setup on different distrons
|
|
||||||
|
|
||||||
## Install nix
|
|
||||||
|
|
||||||
For easy development and distribution this project uses the [nix package manager](https://nix.dev/).<br/>
|
|
||||||
This allows to ensure all dependency requirements are met.
|
|
||||||
|
|
||||||
:::info
|
|
||||||
Make sure to have [flakes enabled](https://nixos.wiki/wiki/flakes).
|
|
||||||
:::
|
|
||||||
|
|
||||||
You can install nix on all common linux systems:
|
|
||||||
|
|
||||||
#### Archlinux
|
|
||||||
|
|
||||||
```shell
|
|
||||||
# install git and nix
|
|
||||||
sudo pacman -Sy git nix
|
|
||||||
# enable flakes
|
|
||||||
echo 'experimental-features = nix-command flakes' | sudo tee -a /etc/nix/nix.conf
|
|
||||||
# enable nix daemon service
|
|
||||||
sudo systemctl enable nix-daemon.service
|
|
||||||
# add the current user to nix-users group
|
|
||||||
sudo usermod -aG nix-users $(id -un)
|
|
||||||
# reboot to apply user and service changes
|
|
||||||
sudo systemctl reboot
|
|
||||||
```
|
|
||||||
|
|
||||||
#### NixOS
|
|
||||||
|
|
||||||
TODO
|
|
||||||
|
|
||||||
#### Others
|
|
||||||
|
|
||||||
TODO: collect links for setup on different distrons
|
|
||||||
|
|
||||||
## Run Demo
|
|
||||||
|
|
||||||
1. clone https://github.com/StardustXR/telescope
|
|
||||||
2. make sure your OpenXR device works (if 2D mode is not used)
|
|
||||||
3. run `nix run .`
|
|
||||||
|
|
||||||
## Run wayland client
|
|
||||||
|
|
||||||
```shell
|
|
||||||
# run demo.mp4 video in a loop within Stardust
|
|
||||||
WAYLAND_DISPLAY=wayland-0 DISPLAY= mpv Downloads/demo.mp4 --loop
|
|
||||||
```
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
---
|
|
||||||
sidebar_position: 3
|
|
||||||
---
|
|
||||||
|
|
||||||
# Setup
|
|
||||||
|
|
||||||
First you need to install and run the server from https://github.com/StardustXR/server. Follow the README. If you have issues getting OpenXR to work, try running https://gitlab.freedesktop.org/monado/demos/xrgears first.
|
|
||||||
|
|
||||||
After the server is running, you'll need to run some clients. Here's a demo showing some off:
|
|
||||||

|
|
||||||
|
|
||||||
Non-exhaustive list of clients:
|
|
||||||
- [Flatland](https://github.com/StardustXR/flatland): A panel item UI (XR equivalent of a window manager) so you can interact with your apps using virtual touchscreens. To show Wayland apps, run them with the proper `WAYLAND_DISPLAY` environment variable, in the server's startup script, or use a stardust launcher such as gravity or protostar. Flatland works great in 3DoF or 6DoF with direct touch and pointer interaction.
|
|
||||||

|
|
||||||
- [Gravity](https://github.com/StardustXR/gravity): Command line tool to launch programs inside of stardust at a particular offset in space. This is nestable so you can run a script using gravity, and then gravity inside that script to make a whole composed setup out of thin air! It also ensures that everything launched through it will properly connect to the stardust server, such as wayland clients.
|
|
||||||
- [Protostar](https://github.com/StardustXR/protostar): Prototype app launcher library/examples. Grab app icons and drop them in space to launch apps where they're dropped.
|
|
||||||
- [Magnetar](https://github.com/StardustXR/magnetar): Workspaces in 3D. Any object inside the rings will move with them, so you can move a bunch of stuff out of the way temporarily when you don't need it.
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
{
|
|
||||||
"label": "Getting Started",
|
|
||||||
"position": 2
|
|
||||||
}
|
|
||||||
@@ -1,22 +1,22 @@
|
|||||||
const lightCodeTheme = require('prism-react-renderer/themes/vsLight');
|
const lightCodeTheme = require("prism-react-renderer/themes/vsLight");
|
||||||
const darkCodeTheme = require('prism-react-renderer/themes/vsDark');
|
const darkCodeTheme = require("prism-react-renderer/themes/vsDark");
|
||||||
|
|
||||||
/** @type {import('@docusaurus/types').DocusaurusConfig} */
|
/** @type {import('@docusaurus/types').DocusaurusConfig} */
|
||||||
module.exports = {
|
module.exports = {
|
||||||
title: 'Stardust XR',
|
title: "Stardust XR",
|
||||||
tagline: 'We Fight for the Users!',
|
tagline: "We Fight for the Users!",
|
||||||
url: 'https://stardustxr.org',
|
url: "https://stardustxr.org",
|
||||||
baseUrl: '/',
|
baseUrl: "/",
|
||||||
trailingSlash: false,
|
trailingSlash: false,
|
||||||
onBrokenLinks: 'throw',
|
onBrokenLinks: "throw",
|
||||||
onBrokenMarkdownLinks: 'warn',
|
onBrokenMarkdownLinks: "warn",
|
||||||
favicon: 'img/favicon.ico',
|
favicon: "img/favicon.ico",
|
||||||
organizationName: 'StardustXR', // Usually your GitHub org/user name.
|
organizationName: "StardustXR", // Usually your GitHub org/user name.
|
||||||
projectName: 'website', // Usually your repo name.
|
projectName: "website", // Usually your repo name.
|
||||||
markdown: {
|
markdown: {
|
||||||
mermaid: true,
|
mermaid: true,
|
||||||
},
|
},
|
||||||
themes: ['@docusaurus/theme-mermaid'],
|
themes: ["@docusaurus/theme-mermaid"],
|
||||||
themeConfig: {
|
themeConfig: {
|
||||||
colorMode: {
|
colorMode: {
|
||||||
defaultMode: "dark",
|
defaultMode: "dark",
|
||||||
@@ -24,105 +24,99 @@ module.exports = {
|
|||||||
respectPrefersColorScheme: false,
|
respectPrefersColorScheme: false,
|
||||||
},
|
},
|
||||||
navbar: {
|
navbar: {
|
||||||
title: 'Stardust XR',
|
title: "Stardust XR",
|
||||||
logo: {
|
logo: {
|
||||||
alt: 'Stardust XR logo, a yellow astroid with smaller white astroids around it',
|
alt: "Stardust XR logo, a yellow astroid with smaller white astroids around it",
|
||||||
src: 'img/icon.webp',
|
src: "img/icon.webp",
|
||||||
},
|
},
|
||||||
items: [
|
items: [
|
||||||
{
|
{
|
||||||
href: '/roadmap',
|
href: "/roadmap",
|
||||||
position: 'left',
|
position: "left",
|
||||||
label: 'Roadmap',
|
label: "Roadmap",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
type: 'doc',
|
href: "https://twitter.com/stardustxr",
|
||||||
docId: 'overview',
|
label: "Twitter",
|
||||||
position: 'left',
|
position: "right",
|
||||||
label: 'Docs',
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
href: 'https://twitter.com/stardustxr',
|
href: "https://discord.gg/A9w7fKE",
|
||||||
label: 'Twitter',
|
label: "Discord",
|
||||||
position: 'right',
|
position: "right",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
href: 'https://discord.gg/A9w7fKE',
|
href: "https://matrix.to/#/#stardustxr:matrix.org",
|
||||||
label: 'Discord',
|
label: "Matrix",
|
||||||
position: 'right',
|
position: "right",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
href: 'https://matrix.to/#/#stardustxr:matrix.org',
|
href: "https://github.com/StardustXR",
|
||||||
label: 'Matrix',
|
label: "GitHub",
|
||||||
position: 'right',
|
position: "right",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
href: 'https://github.com/StardustXR',
|
href: "https://github.com/sponsors/technobaboo",
|
||||||
label: 'GitHub',
|
label: "Sponsor This",
|
||||||
position: 'right',
|
position: "right",
|
||||||
},
|
|
||||||
{
|
|
||||||
href: 'https://github.com/sponsors/technobaboo',
|
|
||||||
label: 'Sponsor This',
|
|
||||||
position: 'right',
|
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
footer: {
|
footer: {
|
||||||
style: 'dark',
|
style: "dark",
|
||||||
links: [
|
links: [
|
||||||
{
|
{
|
||||||
title: 'Docs',
|
title: "Docs",
|
||||||
items: [
|
items: [
|
||||||
{
|
{
|
||||||
label: 'Roadmap',
|
label: "Roadmap",
|
||||||
href: 'roadmap',
|
href: "roadmap",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Getting Started',
|
label: "Getting Started",
|
||||||
to: '/docs/getting-started/tutorial',
|
to: "/docs/get-started/setup-openxr",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'Community',
|
title: "Community",
|
||||||
items: [
|
items: [
|
||||||
{
|
{
|
||||||
label: 'Discord',
|
label: "Discord",
|
||||||
href: 'https://discord.gg/A9w7fKE',
|
href: "https://discord.gg/A9w7fKE",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Matrix',
|
label: "Matrix",
|
||||||
href: 'https://matrix.to/#/#stardustxr:matrix.org',
|
href: "https://matrix.to/#/#stardustxr:matrix.org",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Twitter',
|
label: "Twitter",
|
||||||
href: 'https://twitter.com/stardustxr',
|
href: "https://twitter.com/stardustxr",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Stardust XR (GitHub)',
|
label: "Stardust XR (GitHub)",
|
||||||
href: 'https://github.com/StardustXR',
|
href: "https://github.com/StardustXR",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Sponsor This',
|
label: "Sponsor This",
|
||||||
href: 'https://github.com/sponsors/technobaboo',
|
href: "https://github.com/sponsors/technobaboo",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: 'Code',
|
title: "Code",
|
||||||
items: [
|
items: [
|
||||||
{
|
{
|
||||||
label: 'Stardust XR (Server)',
|
label: "Stardust XR (Server)",
|
||||||
href: 'https://github.com/StardustXR/stardust-xr-server',
|
href: "https://github.com/StardustXR/stardust-xr-server",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'stardust-xr (includes Fusion)',
|
label: "stardust-xr (includes Fusion)",
|
||||||
href: 'https://github.com/StardustXR/stardust-xr',
|
href: "https://github.com/StardustXR/stardust-xr",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: 'Flatland',
|
label: "Flatland",
|
||||||
href: 'https://github.com/StardustXR/flatland',
|
href: "https://github.com/StardustXR/flatland",
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
@@ -136,16 +130,15 @@ module.exports = {
|
|||||||
},
|
},
|
||||||
presets: [
|
presets: [
|
||||||
[
|
[
|
||||||
'@docusaurus/preset-classic',
|
"@docusaurus/preset-classic",
|
||||||
{
|
{
|
||||||
docs: {
|
docs: {
|
||||||
sidebarPath: require.resolve('./sidebars.js'),
|
sidebarPath: require.resolve("./sidebars.js"),
|
||||||
// Please change this to your repo.
|
// Please change this to your repo.
|
||||||
editUrl:
|
editUrl: "https://github.com/StardustXR/website/edit/main/",
|
||||||
'https://github.com/StardustXR/website/edit/main/',
|
|
||||||
},
|
},
|
||||||
theme: {
|
theme: {
|
||||||
customCss: require.resolve('./src/css/custom.css'),
|
customCss: require.resolve("./src/css/custom.css"),
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
|||||||
@@ -1,17 +1,17 @@
|
|||||||
import React from 'react';
|
import React from "react";
|
||||||
import clsx from 'clsx';
|
import clsx from "clsx";
|
||||||
import Layout from '@theme/Layout';
|
import Layout from "@theme/Layout";
|
||||||
import Link from '@docusaurus/Link';
|
import Link from "@docusaurus/Link";
|
||||||
import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
|
import useDocusaurusContext from "@docusaurus/useDocusaurusContext";
|
||||||
import styles from './index.module.css';
|
import styles from "./index.module.css";
|
||||||
import HomepageFeatures from '../components/HomepageFeatures';
|
import HomepageFeatures from "../components/HomepageFeatures";
|
||||||
import Carousel from '../components/Carousel';
|
import Carousel from "../components/Carousel";
|
||||||
import 'react-responsive-carousel/lib/styles/carousel.min.css';
|
import "react-responsive-carousel/lib/styles/carousel.min.css";
|
||||||
|
|
||||||
function HomepageHeader() {
|
function HomepageHeader() {
|
||||||
const {siteConfig} = useDocusaurusContext();
|
const { siteConfig } = useDocusaurusContext();
|
||||||
return (
|
return (
|
||||||
<header className={clsx('hero hero--primary', styles.heroBanner)}>
|
<header className={clsx("hero hero--primary", styles.heroBanner)}>
|
||||||
<div className="container">
|
<div className="container">
|
||||||
<link rel="me" href="https://fosstodon.org/@stardustxr"></link>
|
<link rel="me" href="https://fosstodon.org/@stardustxr"></link>
|
||||||
<h1 className="hero__title">{siteConfig.title}</h1>
|
<h1 className="hero__title">{siteConfig.title}</h1>
|
||||||
@@ -19,7 +19,8 @@ function HomepageHeader() {
|
|||||||
<div className={styles.buttons}>
|
<div className={styles.buttons}>
|
||||||
<Link
|
<Link
|
||||||
className="button button--secondary button--lg"
|
className="button button--secondary button--lg"
|
||||||
to="/docs/getting-started/tutorial">
|
to="/docs/get-started/setup-openxr"
|
||||||
|
>
|
||||||
Get Started
|
Get Started
|
||||||
</Link>
|
</Link>
|
||||||
</div>
|
</div>
|
||||||
@@ -29,11 +30,9 @@ function HomepageHeader() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export default function Home() {
|
export default function Home() {
|
||||||
const {siteConfig} = useDocusaurusContext();
|
const { siteConfig } = useDocusaurusContext();
|
||||||
return (
|
return (
|
||||||
<Layout
|
<Layout image="img/icon.gif" description="XR Display Server">
|
||||||
image="img/icon.gif"
|
|
||||||
description="XR Display Server">
|
|
||||||
<HomepageHeader />
|
<HomepageHeader />
|
||||||
<main>
|
<main>
|
||||||
<HomepageFeatures />
|
<HomepageFeatures />
|
||||||
|
|||||||
Reference in New Issue
Block a user