diff --git a/README.md b/README.md
index b73c685..cf407bb 100644
--- a/README.md
+++ b/README.md
@@ -10,6 +10,9 @@ An open, seamless XR web built from simple URLs and directories, without gatekee
+
+## Features
+
* turn everyday directories into 3D portals.
* seamlessly "surf" interconnected spatial webs on XR headsets
* transforms local/remote filesystems into interconnected 3D spaces.
@@ -44,6 +47,10 @@ An open, seamless XR web built from simple URLs and directories, without gatekee
└───────────────────────────────────┘
```
+
+
+
+
## Usage / Radical Opensource
@@ -65,6 +72,10 @@ Usage: ./xrforge.com [opts]
Profit! now run `xrforge.com admin` and XRForge will be launched in a webbrowser
+
+
+
+
## Example content
You can override the default content (embedded in the executable).
@@ -78,6 +89,9 @@ opening your browser at https://localhost:8080
> just look around in `myverse` and get a hunch of how directories + sidecarfiles are used to manage content.
+
+
+
## Radical opensource
```
@@ -94,6 +108,10 @@ Archive: result/bin/xrforge.com
> Profit! you have aqcuired the sourcecode from the binary: run and distribute modified versions if needed ♥
+
+
+
+
## Adding content
First you need a directory with glTF or JanusXR experiences.
@@ -119,6 +137,9 @@ myverse
```
> optionally you can run `./xrforge.com admin` and change the `myverse` directory if needed.
+
+
+
Now xrforge.com will scan that local folder:
@@ -143,6 +164,10 @@ $ ./xrforge.gom
✅ └─ plugin/diskscan: detected symlink..creating portal
```
+
+
+
+
## Customizing
After first (in the terminal) run a lua config file is created, which you can edit:
@@ -166,6 +191,10 @@ page css
Optionally you can re-distribute `xrforge.com` with your modifications by running `zip xrforge.com page`
+
+
+
+
## Distribute: your own executable
You can preload the `xrforge.com` binary with your own experiences as a single-executable-file:
@@ -177,6 +206,10 @@ $ cp xrforge.com myproject.com
> Profit!
+
+
+
+
## Distribute: static website
Generate a static website:
@@ -191,6 +224,10 @@ to automatically obtain a xrforge-generated github page.
> NOTE: passing extra flags (run `xrforge.com help` for all flags) is important when running the website in a subfolder (`baseurl=...` e.g.)
+
+
+
+
## Distribute: selfhosting on a server
BAREMETAL:
@@ -208,6 +245,8 @@ $ docker run -d -p 8080:8080 -w /app -v $(pwd):/app busybox /app/xrforge.com ser
```
+
+
## Plugins
xrforge is basically plugins working together.
@@ -239,6 +278,8 @@ Use `ARCH=x86_64 build` to enforce x86_64 output (instead of a cosmopolitan bina
> **NOTE**: this is a **static webgenerator-first**-and-server-**last** project, hence it is restricted to [GET requests](src/middleware/onlyGET.lua) (unless authenticated as admin). Going beyond this paradigm is considered unsafe and out of scope.
+
+
## Permacomputing Spirit
* developed on [Dillo](https://dillo-browser.github.io/) as lowest common denominator / compatibility
@@ -248,7 +289,11 @@ Use `ARCH=x86_64 build` to enforce x86_64 output (instead of a cosmopolitan bina
> So yes, the codebase/html/css is intentionally 90-ish: that's **exactly why it gracefully degrades** on potato-devices.
-## Credits / Made with
+
+
+
+
+## FOSS Credits / Made with
* [redbean](https://redbean.dev)
* [soakbean](https://github.com/coderofsalvation/soakbean)
@@ -256,6 +301,8 @@ Use `ARCH=x86_64 build` to enforce x86_64 output (instead of a cosmopolitan bina
* [janusxr](https://github.com/jbaicoianu/janusweb)
* [janusweb](https://janusxr.org)
+
+
## Ideas
* tabs horizontal stacked for xrforge.max.css