Back to Powder Tool V600Billion
SOURCE / PINNED RELEASE

Made of little things.

Powder Tool V600Billion

Release
142767edcab8…
Author-recorded commit
6d92971effd0…
License
LICENSE
Author’s source reference
nostr://npub1fllw8kw0thjj55wds0uugcnp5kej2nfxd36eruq39d56wwz8r44q5q78wj/wss%3A%2F%2Fgit.napplet.soy%2F/powder-toy

Archive hash verified: ed7d6a8ea7083197…. The source-to-build association is the author’s claim; it has not been independently rebuilt.

README.md
# Powder Tool V600Billion

[The Powder Toy](https://github.com/The-Powder-Toy/The-Powder-Toy) 100.1.400, the falling-sand physics
sandbox, as a napplet. `index.html` is the whole game in one file: upstream's C++
built for the web without threads, so it runs in any `sandbox="allow-scripts"`
frame, plus a page around it that keeps saves in napplet storage and carries the
game's online features (shared saves, votes, comments) over Nostr, signed by the
host with the player's key.

It asks the host for identity, link, outbox, storage. The page itself has no network
(its policy says `connect-src 'none'`).

## Source

GPL-3.0 (`LICENSE`), the same as upstream. The corresponding source:

- `source/`: the napplet around the game, exactly as it builds this page:
  `npm install`, `npm run wasm` (below), then `npx vite build` in `source/`
  writes it as `source/dist/index.html`.
- `source/patches/`: the changes to upstream's source and libraries that make
  the single-thread build.
- `source/scripts/build-wasm.sh`: builds `vendor/powder.js` and
  `vendor/powder.wasm` from upstream's source at commit `d768aeb89acad986bd252d7e904bf44bb374545f`
  (tag `v100.1.400`, https://github.com/The-Powder-Toy/The-Powder-Toy) with Emscripten 3.1.72,
  every input fetched by Git and checked against `source/upstream.json`.
- `source/licenses/`: the libraries the wasm links (FFTW, jsoncpp, Lua, SDL, zlib,
  bzip2, libpng, Emscripten's runtime) and their licenses.
- This page's sha256 is `ebee2bba2735604b01900b6b350410deb4cd2507996eca8d29f9681a152dea2c`.