diff --git a/README.md b/README.md index a1e8cbd..720a64e 100644 --- a/README.md +++ b/README.md @@ -224,6 +224,15 @@ jukebox: # ... id|label pairs; "id" must be a valid Bukkit Sound enum name ``` +**The voting page:** [`web/jukebox.html`](web/jukebox.html) in this repo is a ready-to-use, +dependency-free static page implementing all of this — self-host it anywhere (same reverse +proxy as the API, GitHub Pages, S3, or just open the file locally for testing). It asks the +player for your server's HTTPS address once (saved in their browser), then for their vote +code, then shows arenas as tabs and tracks as clickable "discs" with a live vote tally that +polls every few seconds. A live preview of the same page: https://claude.ai/code/artifact/bfed1aa7-8040-47bc-a55b-970c07f83c4f +(hosted for previewing the UI only — point it at your own server's address to actually vote; +it won't work against a plain-HTTP address for the mixed-content reason above). + **How it works:** 1. A player runs `/blockparty musicvote` in-game and gets a short numeric code (valid for diff --git a/web/jukebox.html b/web/jukebox.html new file mode 100644 index 0000000..dae0852 --- /dev/null +++ b/web/jukebox.html @@ -0,0 +1,739 @@ + + + + +BlockParty Jukebox + + + + + +
+
+
not connected
+

BlockPartyJukebox · live track voting

+
+ +
+

Connect to your server

+

Enter the address your server admin gave you for the jukebox API (it must start with https://). This is stored only in your browser.

+
+
+ + +
+ +
+
+
+ + + + + + + +
+ + +
+ + + +