This commit is contained in:
22
play/bookshelf.org
Normal file
22
play/bookshelf.org
Normal file
@@ -0,0 +1,22 @@
|
||||
#+TITLE: Bookshelf Sort
|
||||
#+OPTIONS: num:nil title:nil toc:nil
|
||||
#+NO_SIDENOTES: t
|
||||
#+DATE: <2026-05-09 Sat>
|
||||
|
||||
#+BEGIN_EXPORT html
|
||||
<main class="play-root play-page" data-play-page="bookshelf">
|
||||
<a class="play-back" href="/play.html">Back to Play</a>
|
||||
<header class="play-page-head">
|
||||
<p class="play-kicker">04 / Puzzle</p>
|
||||
<h1>Bookshelf Sort</h1>
|
||||
<p>Drag the books into alphabetical order by title.</p>
|
||||
</header>
|
||||
<section class="play-tool">
|
||||
<div class="play-scorebar">
|
||||
<span data-bookshelf-status>Unsorted</span>
|
||||
<button type="button" data-bookshelf-shuffle>Shuffle</button>
|
||||
</div>
|
||||
<div class="bookshelf" data-bookshelf aria-label="Sortable bookshelf"></div>
|
||||
</section>
|
||||
</main>
|
||||
#+END_EXPORT
|
||||
22
play/constellation.org
Normal file
22
play/constellation.org
Normal file
@@ -0,0 +1,22 @@
|
||||
#+TITLE: Constellation Desk
|
||||
#+OPTIONS: num:nil title:nil toc:nil
|
||||
#+NO_SIDENOTES: t
|
||||
#+DATE: <2026-05-09 Sat>
|
||||
|
||||
#+BEGIN_EXPORT html
|
||||
<main class="play-root play-page" data-play-page="constellation">
|
||||
<a class="play-back" href="/play.html">Back to Play</a>
|
||||
<header class="play-page-head">
|
||||
<p class="play-kicker">02 / Sketch</p>
|
||||
<h1>Constellation Desk</h1>
|
||||
<p>Click stars to connect them. Reset the plate when the sky becomes too busy.</p>
|
||||
</header>
|
||||
<section class="play-tool">
|
||||
<div class="play-scorebar">
|
||||
<span>Lines: <strong data-star-lines>0</strong></span>
|
||||
<button type="button" data-star-reset>Clear</button>
|
||||
</div>
|
||||
<canvas class="play-canvas star-canvas" width="900" height="520" data-star-canvas></canvas>
|
||||
</section>
|
||||
</main>
|
||||
#+END_EXPORT
|
||||
18
play/ink.org
Normal file
18
play/ink.org
Normal file
@@ -0,0 +1,18 @@
|
||||
#+TITLE: Ink Pond
|
||||
#+OPTIONS: num:nil title:nil toc:nil
|
||||
#+NO_SIDENOTES: t
|
||||
#+DATE: <2026-05-09 Sat>
|
||||
|
||||
#+BEGIN_EXPORT html
|
||||
<main class="play-root play-page" data-play-page="ink">
|
||||
<a class="play-back" href="/play.html">Back to Play</a>
|
||||
<header class="play-page-head">
|
||||
<p class="play-kicker">07 / Canvas</p>
|
||||
<h1>Ink Pond</h1>
|
||||
<p>Move across the page to stir the pond. Click to drop a darker blot.</p>
|
||||
</header>
|
||||
<section class="play-tool">
|
||||
<canvas class="play-canvas ink-canvas" width="900" height="520" data-ink-canvas></canvas>
|
||||
</section>
|
||||
</main>
|
||||
#+END_EXPORT
|
||||
25
play/memory.org
Normal file
25
play/memory.org
Normal file
@@ -0,0 +1,25 @@
|
||||
#+TITLE: Memory Cabinet
|
||||
#+OPTIONS: num:nil title:nil toc:nil
|
||||
#+NO_SIDENOTES: t
|
||||
#+DATE: <2026-05-09 Sat>
|
||||
|
||||
#+BEGIN_EXPORT html
|
||||
<main class="play-root play-page" data-play-page="memory">
|
||||
<a class="play-back" href="/play.html">Back to Play</a>
|
||||
<header class="play-page-head">
|
||||
<p class="play-kicker">01 / Game</p>
|
||||
<h1>Memory Cabinet</h1>
|
||||
<p>Match six pairs of archive cards. Fewer turns is better.</p>
|
||||
</header>
|
||||
<section class="play-tool memory-tool">
|
||||
<div class="play-scorebar">
|
||||
<span>Turns: <strong data-memory-turns>0</strong></span>
|
||||
<span>Matches: <strong data-memory-matches>0</strong>/6</span>
|
||||
<span data-memory-message>Cards are shuffled.</span>
|
||||
<button type="button" data-memory-peek>Peek</button>
|
||||
<button type="button" data-memory-reset>Reset</button>
|
||||
</div>
|
||||
<div class="memory-board" data-memory-board aria-label="Memory card board"></div>
|
||||
</section>
|
||||
</main>
|
||||
#+END_EXPORT
|
||||
19
play/poem.org
Normal file
19
play/poem.org
Normal file
@@ -0,0 +1,19 @@
|
||||
#+TITLE: Marginalia Machine
|
||||
#+OPTIONS: num:nil title:nil toc:nil
|
||||
#+NO_SIDENOTES: t
|
||||
#+DATE: <2026-05-09 Sat>
|
||||
|
||||
#+BEGIN_EXPORT html
|
||||
<main class="play-root play-page" data-play-page="poem">
|
||||
<a class="play-back" href="/play.html">Back to Play</a>
|
||||
<header class="play-page-head">
|
||||
<p class="play-kicker">03 / Generator</p>
|
||||
<h1>Marginalia Machine</h1>
|
||||
<p>Press the lever to assemble tiny notes from the edge of an imaginary notebook.</p>
|
||||
</header>
|
||||
<section class="play-tool poem-tool">
|
||||
<button class="play-primary" type="button" data-poem-generate>Turn the lever</button>
|
||||
<div class="poem-slip" data-poem-output aria-live="polite"></div>
|
||||
</section>
|
||||
</main>
|
||||
#+END_EXPORT
|
||||
19
play/recipe.org
Normal file
19
play/recipe.org
Normal file
@@ -0,0 +1,19 @@
|
||||
#+TITLE: Supper Wheel
|
||||
#+OPTIONS: num:nil title:nil toc:nil
|
||||
#+NO_SIDENOTES: t
|
||||
#+DATE: <2026-05-09 Sat>
|
||||
|
||||
#+BEGIN_EXPORT html
|
||||
<main class="play-root play-page" data-play-page="recipe">
|
||||
<a class="play-back" href="/play.html">Back to Play</a>
|
||||
<header class="play-page-head">
|
||||
<p class="play-kicker">05 / Spinner</p>
|
||||
<h1>Supper Wheel</h1>
|
||||
<p>Spin for a cheerful menu: base, main, side, and table note.</p>
|
||||
</header>
|
||||
<section class="play-tool recipe-tool">
|
||||
<button class="recipe-wheel" type="button" data-recipe-spin aria-label="Spin supper wheel">Spin</button>
|
||||
<ul class="recipe-result" data-recipe-result></ul>
|
||||
</section>
|
||||
</main>
|
||||
#+END_EXPORT
|
||||
60
play/rpg.org
Normal file
60
play/rpg.org
Normal file
@@ -0,0 +1,60 @@
|
||||
#+TITLE: Hollow Archive
|
||||
#+OPTIONS: num:nil title:nil toc:nil
|
||||
#+NO_SIDENOTES: t
|
||||
#+DATE: <2026-05-09 Sat>
|
||||
|
||||
#+BEGIN_EXPORT html
|
||||
<main class="play-root play-page rpg-root" data-play-page="rpg">
|
||||
<a class="play-back" href="/play.html">Back to Play</a>
|
||||
<header class="play-page-head">
|
||||
<p class="play-kicker">11 / Role Playing Game</p>
|
||||
<h1>Hollow Archive</h1>
|
||||
<p>A tiny 2D RPG base: move through rooms, speak with characters, collect items, complete quests, save progress, and steer the ending.</p>
|
||||
</header>
|
||||
|
||||
<section class="play-tool rpg-shell" aria-label="Hollow Archive game">
|
||||
<div class="rpg-stage">
|
||||
<canvas class="rpg-canvas" width="768" height="512" data-rpg-canvas></canvas>
|
||||
<div class="rpg-dialogue" data-rpg-dialogue aria-live="polite">
|
||||
<strong data-rpg-speaker>Archivist</strong>
|
||||
<p data-rpg-line>Press Start to enter the archive.</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<aside class="rpg-panel" aria-label="Game controls and progress">
|
||||
<div class="rpg-actions">
|
||||
<button type="button" data-rpg-start>Start</button>
|
||||
<button type="button" data-rpg-save>Save</button>
|
||||
<button type="button" data-rpg-load>Load</button>
|
||||
<button type="button" data-rpg-reset>Reset</button>
|
||||
</div>
|
||||
|
||||
<div class="rpg-mobile-pad" aria-label="Movement controls">
|
||||
<button type="button" data-rpg-move="up">Up</button>
|
||||
<button type="button" data-rpg-move="left">Left</button>
|
||||
<button type="button" data-rpg-act>Act</button>
|
||||
<button type="button" data-rpg-move="right">Right</button>
|
||||
<button type="button" data-rpg-move="down">Down</button>
|
||||
</div>
|
||||
|
||||
<dl class="rpg-stats">
|
||||
<div><dt>Room</dt><dd data-rpg-room>Entrance</dd></div>
|
||||
<div><dt>Route</dt><dd data-rpg-route>Undecided</dd></div>
|
||||
<div><dt>Hearts</dt><dd data-rpg-hearts>3</dd></div>
|
||||
</dl>
|
||||
|
||||
<section class="rpg-list">
|
||||
<h2>Quests</h2>
|
||||
<ul data-rpg-quests></ul>
|
||||
</section>
|
||||
|
||||
<section class="rpg-list">
|
||||
<h2>Inventory</h2>
|
||||
<ul data-rpg-inventory></ul>
|
||||
</section>
|
||||
|
||||
<p class="rpg-status" data-rpg-status>Keyboard: arrows or WASD to move, Space or Enter to act.</p>
|
||||
</aside>
|
||||
</section>
|
||||
</main>
|
||||
#+END_EXPORT
|
||||
23
play/sigil.org
Normal file
23
play/sigil.org
Normal file
@@ -0,0 +1,23 @@
|
||||
#+TITLE: Sigil Press
|
||||
#+OPTIONS: num:nil title:nil toc:nil
|
||||
#+NO_SIDENOTES: t
|
||||
#+DATE: <2026-05-09 Sat>
|
||||
|
||||
#+BEGIN_EXPORT html
|
||||
<main class="play-root play-page" data-play-page="sigil">
|
||||
<a class="play-back" href="/play.html">Back to Play</a>
|
||||
<header class="play-page-head">
|
||||
<p class="play-kicker">10 / Maker</p>
|
||||
<h1>Sigil Press</h1>
|
||||
<p>Enter initials and a motto to stamp a little academic seal.</p>
|
||||
</header>
|
||||
<section class="play-tool sigil-tool">
|
||||
<form class="sigil-form" data-sigil-form>
|
||||
<label>Initials <input maxlength="4" value="ZXH" data-sigil-initials /></label>
|
||||
<label>Motto <input maxlength="34" value="Learn, make, remember" data-sigil-motto /></label>
|
||||
<button type="submit">Press</button>
|
||||
</form>
|
||||
<canvas class="sigil-canvas" width="520" height="520" data-sigil-canvas></canvas>
|
||||
</section>
|
||||
</main>
|
||||
#+END_EXPORT
|
||||
24
play/study.org
Normal file
24
play/study.org
Normal file
@@ -0,0 +1,24 @@
|
||||
#+TITLE: Study Lamp
|
||||
#+OPTIONS: num:nil title:nil toc:nil
|
||||
#+NO_SIDENOTES: t
|
||||
#+DATE: <2026-05-09 Sat>
|
||||
|
||||
#+BEGIN_EXPORT html
|
||||
<main class="play-root play-page" data-play-page="study">
|
||||
<a class="play-back" href="/play.html">Back to Play</a>
|
||||
<header class="play-page-head">
|
||||
<p class="play-kicker">09 / Timer</p>
|
||||
<h1>Study Lamp</h1>
|
||||
<p>Start a short focus session and let the desk scene warm up.</p>
|
||||
</header>
|
||||
<section class="play-tool study-tool">
|
||||
<div class="study-scene" data-study-scene><span></span></div>
|
||||
<div class="study-time" data-study-time>05:00</div>
|
||||
<div class="play-console__controls">
|
||||
<button type="button" data-study-start>Start</button>
|
||||
<button type="button" data-study-pause>Pause</button>
|
||||
<button type="button" data-study-reset>Reset</button>
|
||||
</div>
|
||||
</section>
|
||||
</main>
|
||||
#+END_EXPORT
|
||||
22
play/terminal.org
Normal file
22
play/terminal.org
Normal file
@@ -0,0 +1,22 @@
|
||||
#+TITLE: Archive Terminal
|
||||
#+OPTIONS: num:nil title:nil toc:nil
|
||||
#+NO_SIDENOTES: t
|
||||
#+DATE: <2026-05-09 Sat>
|
||||
|
||||
#+BEGIN_EXPORT html
|
||||
<main class="play-root play-page" data-play-page="terminal">
|
||||
<a class="play-back" href="/play.html">Back to Play</a>
|
||||
<header class="play-page-head">
|
||||
<p class="play-kicker">08 / Story</p>
|
||||
<h1>Archive Terminal</h1>
|
||||
<p>Try commands such as help, look, open drawer, read note, map, hum, save, and clear.</p>
|
||||
</header>
|
||||
<section class="play-tool terminal-tool">
|
||||
<div class="terminal-log" data-terminal-log aria-live="polite"></div>
|
||||
<form class="terminal-form" data-terminal-form>
|
||||
<label><span>></span><input data-terminal-input autocomplete="off" /></label>
|
||||
<button type="submit">Run</button>
|
||||
</form>
|
||||
</section>
|
||||
</main>
|
||||
#+END_EXPORT
|
||||
22
play/timeline.org
Normal file
22
play/timeline.org
Normal file
@@ -0,0 +1,22 @@
|
||||
#+TITLE: Timeline Tangle
|
||||
#+OPTIONS: num:nil title:nil toc:nil
|
||||
#+NO_SIDENOTES: t
|
||||
#+DATE: <2026-05-09 Sat>
|
||||
|
||||
#+BEGIN_EXPORT html
|
||||
<main class="play-root play-page" data-play-page="timeline">
|
||||
<a class="play-back" href="/play.html">Back to Play</a>
|
||||
<header class="play-page-head">
|
||||
<p class="play-kicker">06 / Puzzle</p>
|
||||
<h1>Timeline Tangle</h1>
|
||||
<p>Drag the cards from earliest to latest.</p>
|
||||
</header>
|
||||
<section class="play-tool">
|
||||
<div class="play-scorebar">
|
||||
<span data-timeline-status>Arrange the cards</span>
|
||||
<button type="button" data-timeline-shuffle>Shuffle</button>
|
||||
</div>
|
||||
<div class="timeline-list" data-timeline-list></div>
|
||||
</section>
|
||||
</main>
|
||||
#+END_EXPORT
|
||||
Reference in New Issue
Block a user