aboutsummaryrefslogtreecommitdiffstats
path: root/web/demo (follow)
Commit message (Collapse)AuthorAge
* webdemo: no attach splash -- the welcome float already greetsuser2026-08-30
| | | | | | | Two logos in quick succession -- the splash's, then the welcome float's -- reads as a glitch, not a greeting, technically correct or not. splash_ms 0 in the guest config; the comment leaves the knob visible for anyone editing their way through the playground.
* web: the demo machine, bootable in the front pageuser2026-08-30
| | | | | | | | | | | | | | | | | | | | | | | A try section between the tour and the install box: a modest poster with one button, and the machine only when the button is pushed -- the front page keeps costing two files, which is the decision the README recorded when the demo got its own page, still being honoured. The click grows the stage to most of a viewport *before* the iframe goes in (the guest reads its geometry from the room exactly once, at boot), then glides the scroll to land the machine centred. An iframe, not the demo's scripts inlined: the emulator's emscripten glue owns its globals by name, and isolation is what keeps this page and that blob out of each other's namespaces. ?embed=1 makes the demo page drop its own header and footer inside the frame; standalone it is unchanged, and phones navigate to it rather than embedding -- wasm under a soft keyboard in an iframe helps nobody. The floating logo learns the tour's edges properly while at it: the try section arriving closes the show (measured with a -45% rootMargin, because the tour's exit margin lets the section ride high while the last step is still centred), and a section scrolled past counts as arrived, not gone.
* webdemo: fit with font size, not scale -- a transform misplaces clicksuser2026-08-30
| | | | | | | | | | | | | | | | | xterm turns a mouse event into a cell with getBoundingClientRect() and its own unscaled cell metrics, so the scale() that stretched the fixed grid into the stage put every click on the wrong cell, off by the scale factor. Desktop kept the factor near 1 -- cols and rows are derived from the same room the scale fills -- so it passed for working; a phone is forced onto the 80-column floor, the factor lands near a half, and a tap selects a pane the finger never touched. Refit the font size instead: walk it until the grid fills the room (iterated, cell metrics are not linear in font size), centre the leftover with translate, which moves rect and clicks together. The grid stays what the guest was told at boot; only the glyphs move. A webfont resolving late changes the metrics under the fit, so refit again when document.fonts settles.
* webdemo: land in the playground, not just the demouser2026-08-30
| | | | | | | | | | | | | | | | | | | | The overlay grows into a first session worth having: - The config is a playground now -- every theme the repo ships rides along as an include one word away, and the settings worth flipping (compact, shaders, keys, dim_unfocused) sit commented in the file, each one uncomment-and-save from happening on screen. - C-a e opens vim, not busybox vi: editor "vim" in the config, since the image always carried the real vim and its kdl syntax without ever launching them. shortmess in the vimrc keeps the file-info message from wedging a narrow pane into a hit-enter prompt. - The config starts open, highlighted, in a pane of its own: the discovery C-a e would make, made before anyone has to make it. - A welcome float greets over everything, the slosh logo on top, centred by the layout engine at whatever size the browser gave the terminal (the previous commit is its enabling act). It teaches its own dismissal -- C-a x, or the X it wears -- and it never exits on its own, so keep_dead has no corpse to keep.
* webdemo: the theme symlink is a dependency of the imageuser2026-08-19
| | | | | | | | | | | $(shell find overlay -type f) skips symlinks, and the one symlink in overlay/ is the sl0p theme pointing into contrib/themes -- the file the README promises cannot drift was the one file whose edit did not rebuild the rootfs. find -L includes it, and make stats prereqs through symlinks, so the target's mtime is the one compared. Found while tracing what a src/app.c edit does under make www: that path was already correct (depfile -> object -> guest -> image -> site).
* slosh: the website lives in web/ -- one directory, one build, make wwwuser2026-08-19
Consolidate everything the website is made of: - web_new/ -> web/: the front page, install.sh, and build-site - contrib/webdemo/ -> web/demo/: the in-browser machine, committed for the first time (it had never been checked in) - make www at the top level assembles the whole site into build/www (NO_DEMO=1 skips the guest cross-compile) - web_plan.md deleted: the plan is fulfilled and web/README.md is now the record Path fallout: the overlay theme symlink gains one ../ (web/demo is a level shallower relative to contrib/themes), PYSRC in the Makefile follows the demo scripts, contrib/README.md drops its webdemo section. ROOT := ../.. in the demo Makefile survives unchanged -- web/demo sits at the same depth contrib/webdemo did. Verified: make www builds front page + docs + demo end to end, web/demo make check boots the image to slosh, tests/test_docs.py and make fmt-check green.