diff --git a/README.md b/README.md
index 981018cf..34df50ce 100644
--- a/README.md
+++ b/README.md
@@ -3,14 +3,14 @@
[](https://git.nockal.com/meleki/feuerwerk/actions?workflow=ci.yml)
A browser-based tool "one step before a game engine": create **assets** (scenes, cameras,
-sprites), place them into scenes, tweak their properties in an inspector and press **Play** –
+sprites), place them into scenes, tweak their properties in an inspector and press **Play**,
all in one program, all drawn inside a single WebGL canvas.

Live: · Widget playground:
-**The documentation is the wiki:** – every concept,
+**The documentation is the wiki:** : every concept,
node, tab and shortcut, plus the architecture and the development workflow. This file is the short
way in.
@@ -25,7 +25,7 @@ way in.
- A **container** is a reusable group edited once and placed many times; its content is resolved
from the template on every read. A **screen** is a container switched on and off.
- A **behavior** is logic as a node graph, placed like anything else and parented to the object it
- acts on. Play has no built-in behaviour – everything that happens is a graph.
+ acts on. Play has no built-in behaviour: everything that happens is a graph.
- An **account** owns projects: the editor asks for a user name and a password first, and each
account sees only its own projects. The Account menu at the far right of the toolbar changes
the password and signs out.
@@ -39,8 +39,8 @@ Node 22 is required.
```bash
npm install
-npm run dev # http://localhost:5175/feuerwerk/dist/ – API calls are proxied to production
-npm run check # typecheck + lint + format:check + unit tests – the gate CI runs too
+npm run dev # http://localhost:5175/feuerwerk/dist/; API calls are proxied to production
+npm run check # typecheck + lint + format:check + unit tests; the gate CI runs too
npm run build # writes dist/ and regenerates index.html; the folder is what nginx serves
```
@@ -48,14 +48,14 @@ The browser suite and the three example games need a machine with a GPU:
```bash
node tools/seed-e2e.mjs && node tools/e2e.mjs # the editor, 2090 checks (GM_STEPS=20 for one step)
- # every tool signs in first – see the Accounts page
+ # every tool signs in first; see the Accounts page
node tools/seed-jumprun.mjs && node tools/smoke-jumprun.mjs
node tools/seed-tetris.mjs && node tools/smoke-tetris.mjs
node tools/seed-actor.mjs && node tools/smoke-actor.mjs
```
-Every push runs all of it on the Gitea runners – the gate as one job, build and suite as another
-beside it – so locally take the gate plus the step your change touches and leave the full run to
+Every push runs all of it on the Gitea runners: the gate as one job, build and suite as another
+beside it. So locally take the gate plus the step your change touches and leave the full run to
CI. Details, the GPU requirement and the detached runner are in
[Development](https://git.nockal.com/meleki/feuerwerk/wiki/Development).