Replaces the README screenshots, which showed real games whose authors never agreed to be featured, with screenshots of made-up demo data. Every game, studio, description and image in them is invented, and the one game shown playing was written for this.
scripts/demo/build-demo-data.mjs builds a small Flashpoint install:
52 invented games, with fake studios and descriptions;
four curated playlists;
seven games released in the week of June 16, 2008, for the Time Machine.
It uses a built-in PNG encoder, so it needs no new dependencies, and its output is deterministic. It's also useful for development without the 2.3 TB download.
Each game's tile and screenshot is a small pixel-art scene drawn for its genre:
a road or a kart track for driving games;
a block grid, pipes or a maze for puzzles;
a bowling lane, skate park, court, golf course or pitch for sports.
Each genre has several layouts, steered by the game's tags and title: the pirate game gets a beach, Laundromat gets washing machines, Robot Runway gets a robot. No two games look alike.
scripts/demo/pixel-penguin-panic.html is a tiny canvas game (catch fish, dodge rocks) that plays itself until a key is pressed. It's the only playable demo game, and the one in playing.png.
scripts/demo/flashpoint-schema.sql is Flashpoint 14's schema, produced by running the migrations in FPA-Rust (MIT, credited in the file).
scripts/demo/take-screenshots.mjs creates an account and plays seven games to fill "Jump back in". It pins the browser's date so the Game of the Day stays the same between runs, moves the Time Machine to the demo week, and writes home.png, game.png and playing.png.
docs/08-development/demo-data.md covers both scripts.
Testing: I ran the app with the demo data, a fresh user database and the built frontend, then took the screenshots with the script. Rebuilding gives byte-identical images. I checked a contact sheet of every tile and every screenshot.
Note that the old screenshots stay in git history, on the forge and on the GitHub mirror. Removing them from history would mean rewriting both, so this only replaces them going forward.
**Summary generated by LLM agent**
Replaces the README screenshots, which showed real games whose authors never agreed to be featured, with screenshots of made-up demo data. Every game, studio, description and image in them is invented, and the one game shown playing was written for this.
- `scripts/demo/build-demo-data.mjs` builds a small Flashpoint install:
- 52 invented games, with fake studios and descriptions;
- four curated playlists;
- seven games released in the week of June 16, 2008, for the Time Machine.
It uses a built-in PNG encoder, so it needs no new dependencies, and its output is deterministic. It's also useful for development without the 2.3 TB download.
- Each game's tile and screenshot is a small pixel-art scene drawn for its genre:
- a road or a kart track for driving games;
- a block grid, pipes or a maze for puzzles;
- a bowling lane, skate park, court, golf course or pitch for sports.
Each genre has several layouts, steered by the game's tags and title: the pirate game gets a beach, Laundromat gets washing machines, Robot Runway gets a robot. No two games look alike.
- `scripts/demo/pixel-penguin-panic.html` is a tiny canvas game (catch fish, dodge rocks) that plays itself until a key is pressed. It's the only playable demo game, and the one in `playing.png`.
- `scripts/demo/flashpoint-schema.sql` is Flashpoint 14's schema, produced by running the migrations in FPA-Rust (MIT, credited in the file).
- `scripts/demo/take-screenshots.mjs` creates an account and plays seven games to fill "Jump back in". It pins the browser's date so the Game of the Day stays the same between runs, moves the Time Machine to the demo week, and writes `home.png`, `game.png` and `playing.png`.
- `docs/08-development/demo-data.md` covers both scripts.
Testing: I ran the app with the demo data, a fresh user database and the built frontend, then took the screenshots with the script. Rebuilding gives byte-identical images. I checked a contact sheet of every tile and every screenshot.
Note that the old screenshots stay in git history, on the forge and on the GitHub mirror. Removing them from history would mean rewriting both, so this only replaces them going forward.
The README's screenshots showed real games whose authors never agreed to
be featured. scripts/demo/build-demo-data.mjs builds a Flashpoint install
of invented games with generated art, plus Pixel Penguin Panic, a small
HTML5 game written for it. scripts/demo/take-screenshots.mjs retakes the
screenshots from an app running on it.
Tiles and screenshots were abstract shapes. Each is now a small scene for
its genre, with several layouts per genre steered by the game's tags, so
no two games look alike. The screenshot script pins the browser's date so
the Game of the Day doesn't change between runs.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Summary generated by LLM agent
Replaces the README screenshots, which showed real games whose authors never agreed to be featured, with screenshots of made-up demo data. Every game, studio, description and image in them is invented, and the one game shown playing was written for this.
scripts/demo/build-demo-data.mjsbuilds a small Flashpoint install:It uses a built-in PNG encoder, so it needs no new dependencies, and its output is deterministic. It's also useful for development without the 2.3 TB download.
Each game's tile and screenshot is a small pixel-art scene drawn for its genre:
Each genre has several layouts, steered by the game's tags and title: the pirate game gets a beach, Laundromat gets washing machines, Robot Runway gets a robot. No two games look alike.
scripts/demo/pixel-penguin-panic.htmlis a tiny canvas game (catch fish, dodge rocks) that plays itself until a key is pressed. It's the only playable demo game, and the one inplaying.png.scripts/demo/flashpoint-schema.sqlis Flashpoint 14's schema, produced by running the migrations in FPA-Rust (MIT, credited in the file).scripts/demo/take-screenshots.mjscreates an account and plays seven games to fill "Jump back in". It pins the browser's date so the Game of the Day stays the same between runs, moves the Time Machine to the demo week, and writeshome.png,game.pngandplaying.png.docs/08-development/demo-data.mdcovers both scripts.Testing: I ran the app with the demo data, a fresh user database and the built frontend, then took the screenshots with the script. Rebuilding gives byte-identical images. I checked a contact sheet of every tile and every screenshot.
Note that the old screenshots stay in git history, on the forge and on the GitHub mirror. Removing them from history would mean rewriting both, so this only replaces them going forward.