blockyard 0.0.9 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +251 -1
- package/README.md +42 -23
- package/bin/blockyard.js +2 -1
- package/docs/API.md +16 -14
- package/docs/ARCHITECTURE.md +92 -5
- package/docs/CONFIGURATION.md +33 -26
- package/docs/GETTING-STARTED.md +5 -2
- package/docs/INSTALL.md +90 -33
- package/docs/MEASUREMENTS.md +147 -0
- package/docs/SECURITY.md +32 -15
- package/docs/TROUBLESHOOTING.md +35 -1
- package/docs/USER-GUIDE.md +266 -26
- package/package.json +1 -1
- package/public/404.html +1 -1
- package/public/css/app.css +306 -82
- package/public/donate-qr.png +0 -0
- package/public/index.html +295 -103
- package/public/js/agents.js +228 -51
- package/public/js/app.js +82 -8
- package/public/js/blockscene3d.js +179 -27
- package/public/js/charts.js +21 -21
- package/public/js/depthchart.js +31 -27
- package/public/js/details3d.js +1456 -71
- package/public/js/doom.js +31 -0
- package/public/js/dosaudio.js +48 -0
- package/public/js/dosgame.js +389 -0
- package/public/js/dosio.js +186 -0
- package/public/js/dospc.js +1353 -0
- package/public/js/dosworker.js +196 -0
- package/public/js/login.js +5 -0
- package/public/js/markets.js +46 -8
- package/public/js/mining.js +310 -32
- package/public/js/panels.js +14 -10
- package/public/js/pricechart.js +14 -13
- package/public/js/quake.js +20 -0
- package/public/js/settings.js +103 -21
- package/public/js/soundcard.js +459 -0
- package/public/js/theme.js +235 -0
- package/public/js/wolf3d.js +22 -0
- package/public/js/x86.js +1978 -0
- package/scripts/donate-qr.py +12 -9
- package/scripts/dos-bench.js +56 -0
- package/scripts/setup.js +34 -12
- package/scripts/shots.mjs +6 -0
- package/scripts/smoke.sh +1 -1
- package/scripts/tls.js +31 -0
- package/server/chain/index/build.js +21 -4
- package/server/collect/monitor.js +30 -1
- package/server/collect/network.js +295 -0
- package/server/config.js +46 -22
- package/server/http/api.js +49 -5
- package/server/http/games.js +77 -0
- package/server/http/server.js +8 -0
- package/server/main.js +53 -8
- package/server/tls/selfsigned.js +160 -0
- package/systemd/blockyard.service +7 -5
- package/docs/PRIVATE-LEADERBOARD.md +0 -230
- package/docs/STATE-2026-09-09.md +0 -200
package/docs/USER-GUIDE.md
CHANGED
|
@@ -20,6 +20,9 @@ are node actions, which are off unless an operator explicitly enables them (see
|
|
|
20
20
|
- [Tetrust](#tetrust)
|
|
21
21
|
- [Blockout](#blockout)
|
|
22
22
|
- [Blockanoid](#blockanoid)
|
|
23
|
+
- [Wolfenstein 3D](#wolfenstein-3d)
|
|
24
|
+
- [DOOM](#doom)
|
|
25
|
+
- [Quake](#quake)
|
|
23
26
|
- [Peers](#peers)
|
|
24
27
|
- [Network](#network)
|
|
25
28
|
- [Mining](#mining)
|
|
@@ -218,35 +221,40 @@ both modes move to their new places rather than disappearing and reappearing.
|
|
|
218
221
|
|
|
219
222
|
While the board is at rest, one effect plays every seven to thirteen seconds — the first
|
|
220
223
|
about a second after the board lands — and never one that has played within the last twelve
|
|
221
|
-
(**No repeats within**, 0 up to the length of that board's list). There are **
|
|
224
|
+
(**No repeats within**, 0 up to the length of that board's list). There are **34**, and each has its own switch. **Each board
|
|
222
225
|
has its own list**: the Block space board's switches are the **Space effects** tab, the
|
|
223
226
|
Markets board's are the **Market effects** tab, and each tab has its own no-repeat window, so
|
|
224
227
|
trimming one board's effects leaves the other's alone.
|
|
225
228
|
|
|
226
229
|
| | |
|
|
227
230
|
|---|---|
|
|
228
|
-
| **Ripple**, **Outline sweep**, **Scan line**, **Tide** | fronts crossing the board: a spreading ring, traced edges, a
|
|
231
|
+
| **Ripple**, **Outline sweep**, **Scan line**, **Tide** | fronts crossing the board: a spreading ring, traced edges, a curtain of light standing floor to top — a white core with soft cyan faces, raster rippling down it, a bar it hangs from, a glowing foot with a phosphor tail, motes in the beam — and a swell that lifts the cubes it passes under |
|
|
232
|
+
| **X-ray** | a front sweeps the board and everything behind it goes x-ray — bodies to glass, edges and a raster lit — then develops back to solid |
|
|
229
233
|
| **Cascade**, **Twinkle**, **Sparkle** | the blocks light in fee-rate order; scattered flashes; a constellation, each block its own colour |
|
|
230
234
|
| **Light cycles** | a TRON-style race in blue and orange from opposite edges, leaving light walls, until one crashes and de-rezzes |
|
|
231
235
|
| **Lightning ball** | a pale plasma ball entering from off-screen, tracing the grid, throwing bolts and trailing electrical dust |
|
|
232
|
-
| **Shockwave**, **Nova**, **Fireworks**, **
|
|
236
|
+
| **Shockwave**, **Nova**, **Fireworks**, **Supernova** | a hard ring that throws blocks into the air; an implosion then a brighter blast; a fireworks display; a supernova — a star swells white-hot and crackles, blows out in a flash and a lens flare, a shockwave rings out, plasma is flung on every side, and a ring nebula expands and cools gold → red → violet round a white dwarf, lighting everything near it as it goes |
|
|
233
237
|
| **Wave**, **Quake**, **Checkerboard**, **Combo chain** | crests rolling across; the board shaking itself out; squares flipping against each other; a chain reaction down the diagonal |
|
|
234
238
|
| **Code rain**, **Radar**, **Vortex** | a drop falling down every column; a sweep hand with a phosphor tail; spiral arms draining inward |
|
|
235
239
|
| **Power-up**, **Aurora**, **Plasma** | the board charging from the floor up in gold; drifting curtains of colour; the demoscene plasma |
|
|
236
240
|
| **Centipede**, **Interception**, **Collapse** | a body that weaves down the board and splits in two; arcs raining down against interceptors rising to meet them; the board giving way from a point, cubes collapsing outward |
|
|
237
241
|
| **Tractor beam** | a UFO that draws the tallest transaction up into its beam, flies off with it and drops it back under gravity |
|
|
238
|
-
| **Ball lightning** | a plasma sphere in a nebula drifting across the whole view from off-screen to off-screen, its arcs electrifying the blocks they strike — and half the arcs chain on from the struck block to another as a green discharge, half of those on to a third; on Markets it flies through the chart, striking candles and charging the price line where it passes |
|
|
239
|
-
| **Energy pulse** | the surge that runs the neon price line on Markets
|
|
242
|
+
| **Ball lightning** | a plasma sphere in a nebula drifting across the whole view from off-screen to off-screen, a hazy white light on everything it passes, its arcs electrifying the blocks they strike and lighting where they land — and half the arcs chain on from the struck block to another as a green discharge, half of those on to a third; on Markets it flies through the chart, striking candles and charging the price line where it passes |
|
|
243
|
+
| **Energy pulse** | the surge that runs the neon price line on Markets: the pipe swells round its head and goes white-hot behind it, cooling back to the wire through hot gold, with a warm cloud, crackle and motes — nothing blue |
|
|
244
|
+
| **Breathe** | on Markets: the price line breathes, three slow swells from the plain wire to the pulse's white heat and back |
|
|
245
|
+
| **Light saber** | on Markets: the price line ignites from its left end as a light saber — blue, green, red or purple by the run — hums, spits sparks, and retracts |
|
|
246
|
+
| **Black hole** | on Markets: a point of darkness opens on the price line and grows; the line bends round it as through a lens, the candles nearest are swallowed, and an accretion disk in the chart's own colours spirals in round the shadow — brighter on the side coming toward you, its far side arched over the top and under the bottom, a photon ring hugging the horizon, starlight bent into arcs — until it shrinks away and lets everything go |
|
|
240
247
|
| **Pipe bulge** | on Markets: a ball forced through the price line, the tube swelling around it with a stretched skin; it enters at the line's start at the tube's own size, leaves at its end, and runs quicker downhill than up |
|
|
241
248
|
|
|
242
249
|
They are decoration only: they carry no data, they never play during a refresh, and they
|
|
243
250
|
are switched off entirely under `prefers-reduced-motion`. The Block space list is every effect
|
|
244
251
|
but the two drawn on a price line (**Energy pulse**, **Pipe bulge**). The Markets board is eight
|
|
245
252
|
units deep and as wide as the hours, so everything there moves **along the hours, left or right,
|
|
246
|
-
never toward you**, and lights the candles or the line. Its list is the **
|
|
253
|
+
never toward you**, and lights the candles or the line. Its list is the **sixteen** that
|
|
247
254
|
translate to a chart: **Ripple**, **Outline sweep**, **Tide**, **Cascade**, **Twinkle**, **Scan
|
|
248
|
-
line**, **Fireworks**, **
|
|
249
|
-
**Pipe bulge** and **Ball lightning** (
|
|
255
|
+
line**, **X-ray**, **Fireworks**, **Supernova**, **Wave**, and the price line's own **Energy pulse**,
|
|
256
|
+
**Pipe bulge**, **Breathe**, **Light saber**, **Black hole** and **Ball lightning** (a quarter of its
|
|
257
|
+
Block space size there). Fronts run along the
|
|
250
258
|
chart, rings start on the candle row, the candles light where they stand. Nothing on it waits
|
|
251
259
|
its turn: the pulse, the bulge and ball lightning are picks like any other, and how often you
|
|
252
260
|
see one is the length of the list you leave switched on.
|
|
@@ -422,11 +430,14 @@ Core supports.
|
|
|
422
430
|
|
|
423
431
|
## Markets
|
|
424
432
|
|
|
425
|
-
The BTC/USD price from five exchanges' public APIs.
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
433
|
+
The BTC/USD price from five exchanges' public APIs. **Polling is off by default**: out of
|
|
434
|
+
the box the monitor makes no outbound connection but to your node, and Markets and Kiosk say
|
|
435
|
+
so. Tick **Display settings → Markets & Price → Enable market polling** — one switch for
|
|
436
|
+
every screen of this monitor, no restart needed. With it on, the server fetches market data
|
|
437
|
+
**only while someone is reading it** — the Markets or Kiosk tab, or Overview, whose price line
|
|
438
|
+
(**Display settings → Markets & Price → Price line on Overview**) reads the same feed — and
|
|
439
|
+
stops about ten minutes after the last request. Switch that line off and, with no one on
|
|
440
|
+
Markets or Kiosk, the monitor makes no exchange requests at all.
|
|
430
441
|
|
|
431
442
|

|
|
432
443
|
|
|
@@ -706,6 +717,196 @@ rather than the look, flipping them reaches the game you are playing, not just t
|
|
|
706
717
|
|
|
707
718
|
---
|
|
708
719
|
|
|
720
|
+
## Wolfenstein 3D
|
|
721
|
+
|
|
722
|
+
The shareware episode of Wolfenstein 3D, **Escape from Wolfenstein**, under **Diversions**, first of
|
|
723
|
+
the three DOS games. It is id Software's own `WOLF3D.EXE` v1.4 and its `.WL1` data files, unmodified,
|
|
724
|
+
on the same PC BlockYard emulates for DOOM and Quake. Where those two were 32-bit programs, Wolfenstein
|
|
725
|
+
3D is a 16-bit **real-mode** DOS program from 1992, so here the emulated processor runs the way a PC
|
|
726
|
+
started up: segments and offsets, DOS's own memory, the interrupt table at the bottom of memory. AdLib
|
|
727
|
+
music plays on the sound card's OPL and the digitised effects ("Achtung!") on its DSP. It draws at 70
|
|
728
|
+
frames a second, the VGA's refresh rate, with plenty of machine to spare.
|
|
729
|
+
|
|
730
|
+
Press **play**. The sign-on screen shows what the game found (memory, mouse, Sound Blaster); press a
|
|
731
|
+
key, the title and the demos follow, and **Enter** or **Esc** brings up the menu: **New Game**, pick
|
|
732
|
+
the episode and how tough you are.
|
|
733
|
+
|
|
734
|
+
### The files
|
|
735
|
+
|
|
736
|
+
The game's files live on the server in `games/wolf3d_dos/`: `WOLF3D.EXE`, and the eight `.WL1` files
|
|
737
|
+
it cannot start without (`AUDIOHED`, `AUDIOT`, `GAMEMAPS`, `MAPHEAD`, `VGADICT`, `VGAGRAPH`,
|
|
738
|
+
`VGAHEAD`, `VSWAP`). `CONFIG.WL1`, its settings and high scores, is optional. The page names a missing
|
|
739
|
+
file instead of starting.
|
|
740
|
+
|
|
741
|
+
### Playing
|
|
742
|
+
|
|
743
|
+
**Click the screen to capture the mouse**: moving it forward and back walks, left and right turns,
|
|
744
|
+
the left button fires. **Esc** gives the mouse back. The keys are the game's own:
|
|
745
|
+
|
|
746
|
+
| Keys | |
|
|
747
|
+
|---|---|
|
|
748
|
+
| **↑** **↓** | walk |
|
|
749
|
+
| **←** **→** | turn |
|
|
750
|
+
| **Alt** + **←** **→** | strafe |
|
|
751
|
+
| **Ctrl** or left click | fire |
|
|
752
|
+
| **Space** | open doors, push walls |
|
|
753
|
+
| **Shift** (held) | run |
|
|
754
|
+
| **1**–**4** | knife, pistol, machine gun, chain gun |
|
|
755
|
+
| **Esc** | the menu |
|
|
756
|
+
| **F8** / **F9** | quick save / quick load |
|
|
757
|
+
|
|
758
|
+
Rebind them under **Change View** and **Control** in the game's own menu; it keeps what you choose.
|
|
759
|
+
|
|
760
|
+
### Pausing, saving, quitting
|
|
761
|
+
|
|
762
|
+
Exactly as DOOM: it **pauses when you look away** with the machine stopped dead, **savegames, the
|
|
763
|
+
settings and the high scores stay in this browser**, and **Quit** ends the program the way it ended
|
|
764
|
+
in DOS, with a **play again** button.
|
|
765
|
+
|
|
766
|
+
### The switches on the panel
|
|
767
|
+
|
|
768
|
+
**♫ sound**, **◌ smooth** and **⛶ full screen**, as in DOOM. In full screen a tap of **Esc** is the
|
|
769
|
+
game's menu, not the browser's exit; leave with the **exit full screen** button in the top corner,
|
|
770
|
+
or hold **Esc** for a second.
|
|
771
|
+
|
|
772
|
+
---
|
|
773
|
+
|
|
774
|
+
## DOOM
|
|
775
|
+
|
|
776
|
+
If anyone asks *"well, can it run DOOM?"*, the answer is an emphatic **"Naturally. What sort of AI
|
|
777
|
+
slop generator do you take me for?"**
|
|
778
|
+
|
|
779
|
+
The shareware episode of DOOM, **Knee-Deep in the Dead**, under **Diversions**. Not a remake: it is
|
|
780
|
+
id Software's own `DOOM.EXE` v1.9 and `DOOM1.WAD`, unmodified, running on a 486 PC that BlockYard
|
|
781
|
+
emulates in your browser — the processor, DOS and its memory extender, the VGA card and a Sound
|
|
782
|
+
Blaster, all written in JavaScript. It plays exactly as it did in 1993, demos, sound effects, OPL
|
|
783
|
+
music and all.
|
|
784
|
+
|
|
785
|
+
Press **play**. The machine boots (you will see DOOM's own start-up screen for a moment), the
|
|
786
|
+
demos start, and **Esc** opens DOOM's menu: **New Game** from there.
|
|
787
|
+
|
|
788
|
+
### The files
|
|
789
|
+
|
|
790
|
+
The game's files live on the server, in `games/doom_dos/` beside the application — the shareware
|
|
791
|
+
package the operator put there. Without `DOOM.EXE` and `DOOM1.WAD` in that directory the page
|
|
792
|
+
says which file is missing instead of starting. Nothing is downloaded from anywhere else.
|
|
793
|
+
|
|
794
|
+
### Playing
|
|
795
|
+
|
|
796
|
+
**Click the screen to capture the mouse**: moving it turns, the left button fires, the right
|
|
797
|
+
strafes, the middle walks forward. **Esc** gives the mouse back (and opens DOOM's menu). The keys
|
|
798
|
+
are **WASD** by default:
|
|
799
|
+
|
|
800
|
+
| Keys | |
|
|
801
|
+
|---|---|
|
|
802
|
+
| **W** **S** | walk |
|
|
803
|
+
| **A** **D** | strafe |
|
|
804
|
+
| **←** **→** | turn |
|
|
805
|
+
| **E** | open doors, press switches |
|
|
806
|
+
| **Ctrl** or left click | fire |
|
|
807
|
+
| **Shift** (held) | run |
|
|
808
|
+
| **1**–**7** | choose a weapon |
|
|
809
|
+
| **Tab** | the map |
|
|
810
|
+
| **Esc** | DOOM's menu |
|
|
811
|
+
| **F2** / **F3** | save / load |
|
|
812
|
+
| **F5** | detail · **F11** gamma |
|
|
813
|
+
|
|
814
|
+
Turn the **⌨ WASD** switch off for DOOM's own 1993 keys: **↑** **↓** walk, **Alt** + **←** **→**
|
|
815
|
+
strafe (or **,** and **.**), **Space** opens. The switch applies **at once**, in the middle of a
|
|
816
|
+
game — the page rewrites the running game's key settings — and DOOM saves whichever you chose
|
|
817
|
+
when you quit.
|
|
818
|
+
|
|
819
|
+
### Pausing, saving, quitting
|
|
820
|
+
|
|
821
|
+
**It pauses when you look away** — another browser tab, or another page of the monitor — and the
|
|
822
|
+
emulated machine stops dead: its clock stops with it, so nothing moves while you are gone. Press
|
|
823
|
+
**resume** to carry on.
|
|
824
|
+
|
|
825
|
+
**Savegames and settings stay in this browser.** DOOM's six save slots, and the configuration it
|
|
826
|
+
writes when you quit (volumes, screen size, detail), are kept in the browser's storage and come
|
|
827
|
+
back the next time you play — on this browser only; they are never sent to the server.
|
|
828
|
+
|
|
829
|
+
**Quitting** from DOOM's menu ends the program the way it ended in DOS: the text-mode ENDOOM screen,
|
|
830
|
+
and a **play again** button.
|
|
831
|
+
|
|
832
|
+
### The switches on the panel
|
|
833
|
+
|
|
834
|
+
| Switch | |
|
|
835
|
+
|---|---|
|
|
836
|
+
| **♫ sound** | The Sound Blaster, on or muted. |
|
|
837
|
+
| **⌨ WASD** | W A S D and E (the default), or DOOM's own keys; applies immediately. |
|
|
838
|
+
| **◌ smooth** | Smooths the 320×200 picture instead of showing its square pixels. |
|
|
839
|
+
| **⛶ full screen** | The screen alone. In Chrome it also keeps **Esc** for DOOM's menu, so leave with the **exit full screen** button in the top corner, or hold **Esc** for a second. |
|
|
840
|
+
|
|
841
|
+
The **Machine** panel says what the PC is doing: running or paused, how fast the emulated
|
|
842
|
+
processor is going (in millions of instructions a second), how many frames reach the screen, and
|
|
843
|
+
the sound card's rate. DOOM draws at most 35 frames a second, as it always did.
|
|
844
|
+
|
|
845
|
+
If the sound will not start, the page may be served over plain HTTP from a LAN address: the browser
|
|
846
|
+
refuses its low-latency audio there, and DOOM falls back to a simpler path that works everywhere
|
|
847
|
+
but can crackle when the machine is busy.
|
|
848
|
+
|
|
849
|
+
---
|
|
850
|
+
|
|
851
|
+
## Quake
|
|
852
|
+
|
|
853
|
+
The shareware episode of Quake, **Dimension of the Doomed**, under **Diversions**, after DOOM and on
|
|
854
|
+
the same emulated PC. Again the real thing: id Software's `QUAKE.EXE` v1.06 and `PAK0.PAK`,
|
|
855
|
+
unmodified. Quake asked a lot more of a PC than DOOM did — a Pentium and a maths coprocessor — so it
|
|
856
|
+
is the harder test of the machine. It plays at **forty to fifty frames a second** — better than the
|
|
857
|
+
Pentium it was written for managed in 1996.
|
|
858
|
+
|
|
859
|
+
Press **play**. The first start downloads the 18 MB PAK file from the server (after that the
|
|
860
|
+
browser revalidates it rather than fetching it again), the console scrolls past, the demos start,
|
|
861
|
+
and **Esc** opens Quake's menu: **Single Player → New Game**.
|
|
862
|
+
|
|
863
|
+
### The files
|
|
864
|
+
|
|
865
|
+
The game's files live on the server in `games/quake_dos/`: `QUAKE.EXE` and `ID1/PAK0.PAK` are the
|
|
866
|
+
two it cannot start without. The page names a missing one instead of starting. Quake's CD music was
|
|
867
|
+
never part of the shareware download, so there is none; the sound effects play through the Sound
|
|
868
|
+
Blaster.
|
|
869
|
+
|
|
870
|
+
### Playing
|
|
871
|
+
|
|
872
|
+
**Click the screen to capture the mouse.** Quake starts with **mouse look** on and the keys a later
|
|
873
|
+
game taught everyone:
|
|
874
|
+
|
|
875
|
+
| Keys | |
|
|
876
|
+
|---|---|
|
|
877
|
+
| **W** **S** | walk |
|
|
878
|
+
| **A** **D** | strafe |
|
|
879
|
+
| mouse | look and turn |
|
|
880
|
+
| left click or **Ctrl** | fire |
|
|
881
|
+
| **Space** or right click | jump |
|
|
882
|
+
| **Shift** (held) | run |
|
|
883
|
+
| **1**–**8** | choose a weapon |
|
|
884
|
+
| **Esc** | Quake's menu |
|
|
885
|
+
| **−** / **=** | a smaller or bigger view |
|
|
886
|
+
| **~** | the console |
|
|
887
|
+
| **F6** / **F9** | quicksave / quickload |
|
|
888
|
+
|
|
889
|
+
Those are set the first time only. Change anything in Quake's own **Options → Customize controls**,
|
|
890
|
+
and Quake saves your bindings when you quit; the page never overwrites them again.
|
|
891
|
+
|
|
892
|
+
**A smaller view runs faster.** Quake starts with its view a little inside the screen, a border
|
|
893
|
+
round it. Quake only draws the 3D world inside that view, so **−** makes it smaller and faster and
|
|
894
|
+
**=** makes it bigger, up to the whole width; Quake keeps your choice. Measured on this machine's
|
|
895
|
+
emulator, a smaller view is worth about a tenth more speed at the starting size, and a quarter or
|
|
896
|
+
more below that.
|
|
897
|
+
|
|
898
|
+
### Pausing, saving, quitting
|
|
899
|
+
|
|
900
|
+
Exactly as DOOM: it **pauses when you look away** with the machine stopped dead, **savegames and
|
|
901
|
+
Quake's config stay in this browser**, and **Quit** ends the program the way it ended in DOS, with
|
|
902
|
+
id's order screen and a **play again** button.
|
|
903
|
+
|
|
904
|
+
### The switches on the panel
|
|
905
|
+
|
|
906
|
+
**♫ sound**, **◌ smooth** and **⛶ full screen**, as in DOOM (and the same two ways out of full screen).
|
|
907
|
+
|
|
908
|
+
---
|
|
909
|
+
|
|
709
910
|
## Peers
|
|
710
911
|
|
|
711
912
|
| Panel | What it shows |
|
|
@@ -732,15 +933,22 @@ Peer identity is not guessed from another source.
|
|
|
732
933
|
|
|
733
934
|
## Mining
|
|
734
935
|
|
|
735
|
-
The block under construction and who has been mining.
|
|
936
|
+
The block under construction and who has been mining. The layout follows mempool.space's mining dashboard: Block flow across the top, then two columns — reward stats and the difficulty adjustment, the pools and the hashrate, recent blocks and the adjustments — and our own panels beneath. **View more »** on the pools, hashrate, recent blocks and adjustments cards opens that card full screen (Esc, the close button or a click outside shuts it).
|
|
937
|
+
|
|
938
|
+

|
|
736
939
|
|
|
737
940
|
| Panel | What it shows |
|
|
738
941
|
|---|---|
|
|
942
|
+
| **Reward stats** | The last 144 blocks: the miners' reward (subsidy plus fees), the average fees per block and the average fee per transaction, from `getblockstats`, rolled forward a block at a time. Each carries its dollar figure while market polling is on (the cached spot price, never a new poll); off, a note says so. |
|
|
943
|
+
| **Difficulty adjustment** | Blocks remaining in the current period and when it ends at the pace so far, the estimated change (the pace projected over the period against the ten-minute target, within the protocol's factor-of-four bounds), the previous change, and the next halving's height and date. |
|
|
944
|
+
| **Pools** | The last week's blocks by pool, as a donut with its legend: luck (blocks found against the 1,008 the target spacing would give), the block count and how many pools. Every coinbase of the week is read from the node, eight every few seconds behind the live polls, and the note says how far that has got. |
|
|
945
|
+
| **Hashrate & difficulty** | The week's hashrate from `getnetworkhashps` and the current difficulty, and a year's chart: one block header a day gives that day's mean interval, and difficulty × 2³² over it is the day's hashrate estimate (the thin line), with a seven-day mean over it and the difficulty's steps on the right axis. |
|
|
946
|
+
| **Recent blocks** | The attributed window newest first: height (a link to the explorer), pool, when it was mined, the reward (the height's subsidy plus its fees) and the fees. Eight on the card, the whole window under View more. |
|
|
947
|
+
| **Adjustments** | The last periods: the first block's height, when, the difficulty and its change from the period before. Six on the card, a year under View more. |
|
|
739
948
|
| **Block flow** | The same Block flow as on Overview. |
|
|
740
949
|
| **Packages in the block being built** | The ancestor graph from `getrawmempool … depends`: a histogram of package sizes, then a table of the top packages with fees, weight, package fee rate, child and parent fee rates, and a small picture of the package's shape. Rows with a child paying at least twice its parent's rate are highlighted as child-pays-for-parent. If every transaction stands alone, the panel says so. That is a real reading, not a missing chart. |
|
|
741
950
|
| **Feerate landscape** | The template's transactions bucketed by sat/vB, with green buckets well above the block's median and red ones below it. |
|
|
742
951
|
| **Pools in this window** | Blocks per pool, share, median fee rate, average weight, and the coinbase tags seen. A pool the curated label map does not recognise is marked `unlabelled` and shown by its raw tag. |
|
|
743
|
-
| **Mempool space** | The Block space viewer, with a note giving how many transactions are drawn and how long ago the pool was read. |
|
|
744
952
|
| **Attribution** | How many blocks have been attributed, the height window, how many labels matched, where the label map came from, and the cost of the block template. |
|
|
745
953
|
| **Detailed** (click to expand) | What this node can and cannot answer about mining, and why. |
|
|
746
954
|
|
|
@@ -782,8 +990,7 @@ How the monitor treats your node, and where every number comes from.
|
|
|
782
990
|
|
|
783
991
|
## Admin
|
|
784
992
|
|
|
785
|
-
Visible only when accounts are enabled (
|
|
786
|
-
admin.
|
|
993
|
+
Visible only when accounts are enabled (the default) and you are signed in as an admin.
|
|
787
994
|
|
|
788
995
|
- **Users**: every account with its role, creation date and last login, with buttons
|
|
789
996
|
to change the role or disable the account. **generate password** creates a user
|
|
@@ -857,6 +1064,8 @@ can bookmark it or send it to someone who can reach the same monitor:
|
|
|
857
1064
|
| Tetrust | `#tetrust` |
|
|
858
1065
|
| Blockout | `#blockout` |
|
|
859
1066
|
| Blockanoid | `#blockanoid` |
|
|
1067
|
+
| DOOM | `#doom` |
|
|
1068
|
+
| Quake | `#quake` |
|
|
860
1069
|
| Peers | `#peers` |
|
|
861
1070
|
| Network | `#network` |
|
|
862
1071
|
| Mining | `#mining` |
|
|
@@ -896,9 +1105,37 @@ same whatever you choose here.
|
|
|
896
1105
|
|
|
897
1106
|

|
|
898
1107
|
|
|
899
|
-
The panel is **tabbed
|
|
900
|
-
effects, Market effects and
|
|
901
|
-
|
|
1108
|
+
The panel is **tabbed**, in three labelled rows: **Boards** (Appearance, Block space, Sky,
|
|
1109
|
+
Markets & Price), **Effects** (Space effects, Market effects) and **Diversions** (Tetrust,
|
|
1110
|
+
Blockout, Blockanoid). The two **effects** tabs are lists of switches, so they also get **all
|
|
1111
|
+
on** and **all off**; twenty-nine of them is a lot of clicking otherwise.
|
|
1112
|
+
|
|
1113
|
+
### Appearance
|
|
1114
|
+
|
|
1115
|
+
The colours of the layout: the page, its cards, text, lines, the accent, and the axis text, grid
|
|
1116
|
+
lines and tooltips of every chart. The 3D boards are space whatever you choose, and the
|
|
1117
|
+
Explorer's block and transaction pages keep their own dark cards.
|
|
1118
|
+
|
|
1119
|
+
- **Theme mode** — Light, Dark or System. Every theme has a light face and a dark face; the mode
|
|
1120
|
+
picks which. System follows the operating system's setting and changes with it.
|
|
1121
|
+
- **Theme** — a card per theme, each with a strip of its swatches in the face the mode picks:
|
|
1122
|
+
- **BlockYard** — the shipped look, charcoal and bitcoin orange. The default; its dark face is
|
|
1123
|
+
exactly what the monitor drew before this tab existed.
|
|
1124
|
+
- **Mono** — clean grayscale, minimal and focused. The good, warning and bad colours stay, muted.
|
|
1125
|
+
- **Nous** — GitHub's chrome with a Nous blue accent.
|
|
1126
|
+
- **GitHub** — GitHub Light Default and Dark Default.
|
|
1127
|
+
- **Catppuccin** — the soothing pastels, Latte (light) and Mocha (dark).
|
|
1128
|
+
- **Custom** — your own nine colours, from the pickers below the cards.
|
|
1129
|
+
- **customise …** — the button beside the cards copies the theme on screen into the nine pickers
|
|
1130
|
+
and selects Custom, so you start from a look rather than from scratch.
|
|
1131
|
+
- **The nine pickers** — Page, Panels, Text, Muted text, Accent, Lines, Good, Warning and Bad.
|
|
1132
|
+
Everything else (a raised panel, the softer rules, the fainter text, the darker accent of a
|
|
1133
|
+
pressed button) is derived from them, so a custom theme hangs together whatever you pick.
|
|
1134
|
+
Whether Custom counts as light or dark follows from the Page colour, so a pale page gets dark
|
|
1135
|
+
derived shades and vice versa. The pickers are dimmed until Custom is the theme.
|
|
1136
|
+
|
|
1137
|
+
Like every other setting these are saved on the server, so the theme is the same on every screen
|
|
1138
|
+
of this monitor; the sign-in page draws in the theme this browser last saw.
|
|
902
1139
|
|
|
903
1140
|
### Block space
|
|
904
1141
|
|
|
@@ -942,9 +1179,9 @@ space, Markets and Tetrust alike. Whether a given board shows it stays that boar
|
|
|
942
1179
|
|
|
943
1180
|
### Space effects and Market effects
|
|
944
1181
|
|
|
945
|
-
One tab per board. **Space effects** is a switch for each of the **
|
|
1182
|
+
One tab per board. **Space effects** is a switch for each of the **29** idle effects the Block
|
|
946
1183
|
space board can play, listed under [Idle effects](#idle-effects) above; **Market effects** is a
|
|
947
|
-
switch for each of the **
|
|
1184
|
+
switch for each of the **16** the Markets board can play (named under Idle effects). Each tab has **all on** and **all off**, and its own
|
|
948
1185
|
**No repeats within**: how many other effects must play before one can play again (12 by
|
|
949
1186
|
default; 0 allows a repeat straight away).
|
|
950
1187
|
|
|
@@ -962,9 +1199,11 @@ Markets & Price.
|
|
|
962
1199
|
|
|
963
1200
|
### Markets & Price
|
|
964
1201
|
|
|
965
|
-
|
|
966
|
-
|
|
967
|
-
|
|
1202
|
+
First the feed itself: **Enable market polling**, off out of the box, is the one switch that
|
|
1203
|
+
lets this monitor talk to anyone but your node (see [Markets](#markets)). Then the candle board
|
|
1204
|
+
on Markets and Kiosk: the **star field** on or off, and **board effects** — one switch for
|
|
1205
|
+
everything that moves on this board, both the idle effects and the flight when the candles
|
|
1206
|
+
refresh. Which idle effects may play is the **Market effects** tab.
|
|
968
1207
|
|
|
969
1208
|
Your toolbar choices are remembered too: the **exchange** whose candles are drawn and the
|
|
970
1209
|
**range** (24 hours, 48 hours or 7 days). Click them on the Markets page or set them here; either
|
|
@@ -972,7 +1211,8 @@ way the page opens where you left it.
|
|
|
972
1211
|
|
|
973
1212
|
| setting | what it does |
|
|
974
1213
|
|---|---|
|
|
975
|
-
| **
|
|
1214
|
+
| **Enable market polling** | **Off by default.** Lets the server ask five exchanges for prices, candles and order books — the only thing the monitor ever says to anyone but your node. Until it is on, Markets and Kiosk say so and the explorer shows no dollar figures. Shared by every screen; takes effect at once, and unticking parks the feed at once. (`BLOCKYARD_MARKETS=0` on the server removes the feed so that this box cannot turn it on.) |
|
|
1215
|
+
| **Price line on Overview** | The USD median, spread, 24 h volume and how many books reported, at the top of Overview. It needs market polling (above); with that on, this monitor then contacts five exchanges whenever Overview is open, not only on Markets and Kiosk. Switch it off and the landing page talks to nothing but your node. |
|
|
976
1216
|
| **Price view** | Which price panel Markets draws: the *flat chart* (default) or the *3D candle board*. One at a time; the 2D / 3D buttons on the page set the same thing. |
|
|
977
1217
|
|
|
978
1218
|
### Blockout
|
package/package.json
CHANGED
package/public/404.html
CHANGED
|
@@ -5,5 +5,5 @@
|
|
|
5
5
|
<h1>404</h1>
|
|
6
6
|
<p class="sub">No such page on this monitor.</p>
|
|
7
7
|
<p class="note tiny">API endpoints live under <span class="mono">/api/</span>; the dashboard is at <a href="/">/</a>.</p>
|
|
8
|
-
<p class="mt-
|
|
8
|
+
<p class="mt-6"><a href="/">back to the dashboard</a></p>
|
|
9
9
|
</div></body></html>
|