You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+8-8Lines changed: 8 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,8 +1,8 @@
1
-
# HoloUI Editor
1
+
# Gloss Editor
2
2
3
-
Visual web editor for [HoloUI](https://github.com/VolmitSoftware/HoloUi) menu configurations. Build holographic menus on a calibrated canvas, edit every field the plugin actually parses, and export `menus/<id>.json` files (plus an `images.zip`) that drop straight into `plugins/holoui/`.
3
+
Visual web editor for [Gloss](https://github.com/VolmitSoftware/Gloss) menu and display configurations. Build holographic menus on a calibrated canvas, edit every field the plugin actually parses, and export documents and images that drop straight into `plugins/Gloss/`.
4
4
5
-
Version 3.1.0 — a from-scratch rewrite in [arcane_jaspr](https://github.com/ArcaneArts/arcane_jaspr) (Dart, compiled to a fully static site). Replaces the retired Next.js editor.
5
+
Version 4.0.0 — a from-scratch rewrite in [arcane_jaspr](https://github.com/ArcaneArts/arcane_jaspr) (Dart, compiled to a fully static site). Replaces the retired Next.js editor.
6
6
7
7
## Features
8
8
@@ -12,13 +12,13 @@ Version 3.1.0 — a from-scratch rewrite in [arcane_jaspr](https://github.com/Ar
12
12
-**Full format coverage** as the plugin's Gson actually reads it — all three component types (button / decoration / toggle), all seven authorable icon types (text / textImage / animatedTextImage / item / block / customItem / entity), all six actions (command / sound / message / teleport / connect / navigate), toggle conditions, `maxDistance`, `closeOnDeath`, `closeOnTeleport`, `customModelValue` (the real key — the `customModelData` older files carry is migrated on import).
13
13
-**Code view** with two-way sync, plus split view. Validated menu handoffs retain their exact source formatting and extension keys through storage and export until the first visual edit or explicit Format action.
14
14
-**Validation** engine aligned with the plugin's authoring contract (lowercase registry keys, action source spellings, silent-zero pitfalls like `volume: 0`, legacy and MiniMessage formatting, hitbox overlap warnings).
15
-
-**Image library**: upload validated PNG pixel art, preview with the plugin's rasterization rules, export `images.zip` laid out for `plugins/holoui/images/`. Server sync preserves captured PNG, JPEG, GIF, WebP and BMP bytes losslessly.
15
+
-**Image library**: upload validated PNG pixel art, preview with the plugin's rasterization rules, export `images.zip` laid out for `plugins/Gloss/images/`. Server sync preserves captured PNG, JPEG, GIF, WebP and BMP bytes losslessly.
16
16
-**Workspace**: folders, multiple menus and menu flow maps, atomic IndexedDB autosave with previous-transaction recovery and cross-tab conflict protection, undo/redo, templates, and searchable catalogs. Renaming a runtime id updates navigation, linked world-panel roots and sync scope as one checked save; dropped JSON opens as a uniquely named document instead of replacing the active one. Existing `holoui.workspace.v1` / `v2` localStorage data migrates once without deleting the rollback copy.
17
-
-**Optional server sync**: capability links opened from `/holoui edit` import an exact menu or persistent world-board graph through the configured relay. Linked panels expose typed root-menu, transform, follow, audience, permission and range controls, with strict JSON under Advanced. Board publication retains the bound no-delete baseline and adds only menus reachable from the board root, leaving unrelated folder documents local. A labelled **Publish to Server** action appears in the connection bar during a live capability session; it durably saves a board project and hot-reloads the running board, while revision conflicts never overwrite local work. Links use the configured HTTPS relay (the plugin defaults to `https://sync.gloss.volmitsoftware.com/v2`) or a localhost HTTP development relay; an unreachable provider is reported without implying that a deployment is available.
17
+
-**Optional server sync**: capability links opened from `/gloss menu edit` import an exact menu or persistent panel graph through the configured relay. Linked panels expose typed root-menu, transform, follow, audience, permission and range controls, with strict JSON under Advanced. Panel publication retains the bound no-delete baseline and adds only menus reachable from the panel root, leaving unrelated folder documents local. A labelled **Publish to Server** action appears in the connection bar during a live capability session; it durably saves a panel project and hot-reloads the running panel, while revision conflicts never overwrite local work. Links use the configured HTTPS relay (the plugin defaults to `https://sync.gloss.volmitsoftware.com/v2`) or a localhost HTTP development relay; an unreachable provider is reported without implying that a deployment is available.
18
18
19
19
The editor itself remains a static client with no accounts. Normal authoring and autosave are local-only; opening a server-issued capability link enables bounded HTTPS requests to that link's relay until the tab disconnects. Capability tokens stay in the URL fragment and tab `sessionStorage`, never in workspace documents or exported bundles. If tab storage is blocked, the capability stays in the fragment and the sync bar tells you to copy the link before reloading.
20
20
21
-
Sync v1 does not delete captured server resources. A board can add menus only under the displayed `newMenuPrefix`; menus and boards can add images only under `newImagePrefix`. The editor validates exact runtime ids, the whole bound graph, typed world-board JSON, image bytes, immutable constraints and content revisions before publishing. Synced raster assets are limited to 64×64 pixels each and 262,144 stored pixels per project; every repeated text-image component and animated frame is counted again against a 262,144-pixel / 4,096-row runtime-render budget. The protocol safety ceiling is 32 MiB per project; a relay deployment may enforce a lower configured limit and return `413`.
21
+
Sync v2 does not delete captured server resources. A panel can add menus only under the displayed `newMenuPrefix`; menus and panels can add images only under `newImagePrefix`. The editor validates exact runtime ids, the whole bound graph, typed panel JSON, image bytes, immutable constraints and content revisions before publishing. Synced raster assets are limited to 64×64 pixels each and 262,144 stored pixels per project; every repeated text-image component and animated frame is counted again against a 262,144-pixel / 4,096-row runtime-render budget. The protocol safety ceiling is 32 MiB per project; a relay deployment may enforce a lower configured limit and return `413`.
22
22
23
23
Workspace bundles and server projects span IndexedDB documents and localStorage images. Import and refresh use checked compensation when either write fails, but browsers provide no atomic transaction across those two storage systems; force-closing the browser between their writes can leave a partial import.
24
24
@@ -36,13 +36,13 @@ dart run jaspr_cli:jaspr build # static output in build/jaspr/
36
36
37
37
## Releasing
38
38
39
-
The hosted editor is deployed to [holoui.volmitsoftware.com](https://holoui.volmitsoftware.com/)on Firebase Hosting by `.github/workflows/firebase-hosting.yml` after every push to `master`. The workflow analyzes and tests the project before building, deploying, and verifying the custom-domain bundle. It requires the `FIREBASE_SERVICE_ACCOUNT_HOLOUI_EDITOR` repository secret. There are no editor releases: the plugin's `/holoui builder` command links players to the hosted editor.
39
+
The hosted editor is deployed to [gloss.volmitsoftware.com](https://gloss.volmitsoftware.com/)through the existing Firebase `holoui-editor` project and Hosting site by `.github/workflows/firebase-hosting.yml` after every push to `master`. The workflow checks the paired Gloss runtime contract, analyzes and tests the project, then builds, deploys, and verifies the custom-domain bundle. It requires the `FIREBASE_SERVICE_ACCOUNT_HOLOUI_EDITOR` repository secret. There are no editor releases: `/gloss menu builder` links players to the hosted editor.
40
40
41
41
42
42
## Architecture
43
43
44
44
```
45
-
lib/model/ HoloUI JSON data model + codec (runtime semantics, unknown-key preserving)
45
+
lib/model/ Gloss menu JSON data model + codec (runtime semantics, unknown-key preserving)
0 commit comments