- TypeScript 90.2%
- Shell 6.9%
- JavaScript 2.9%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
|
All checks were successful
pack / pack (push) Successful in 8s
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> |
||
| .forgejo/workflows | ||
| .githooks | ||
| dieselben-bits | ||
| druck | ||
| games | ||
| locales | ||
| scripts | ||
| .gitignore | ||
| .npmrc | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| tsconfig.json | ||
Dieselben Bits (same-bits)
Challenge-Paket für Aivopod, 8. Schulstufe: Dieselben Bits bedeuten je nach Deutung etwas anderes – eine Zahl, ein Buchstabe, ein Bild, ein Grau, eine Farbe; die Deutung steht nicht in den Bits. Gedacht nach „Wie zählt ein Computer?“ (Stellenwert-Raster zum Aufwärmen, Bit-Poker als Belohnung); die Geheimbotschaft ECHO von dort ist die Brücke.
| Teil | Was | Stufen |
|---|---|---|
dieselben-bits – Eine Bitfolge, viele Bedeutungen |
0101 ist 5, E oder ein Muster; woran man es erkennt | Normal |
game:lens-escape-room – Linsen-Escape-Room (Spiel, Gruppen zu 3–4 an einem Gerät) |
Karten mit Bits scannen oder eintippen, durch die Linsen Zahl, Buchstabe, Farbe, Pixel ansehen; drei Räume, jeder mit einer anderen Kombination | Normal, Erweitert (eine Linse ohne Namen) |
game:bits-is-number – BITS IST ZAHL (Spiel) |
Wortblöcke schieben, bis der Satz BITS IST … die Lampen so liest, wie das Schloss es will |
Normal (4 Lampen: ZAHL, PIXEL), Erweitert (8 Lampen: BUCHSTABE, GRAU), Experte (3 Lampen als FARBE, Schalter, zwei Sätze) |
Je Stufe vier Level; jedes ist lösbar (die Tests spielen die kürzeste Lösung). Steuerung mit den Pfeiltasten oder den Knöpfen, Rückgängig ohne Grenze, Neustart je Level; nach jedem Zug sagt die Plattform, wo man steht und was die Lampen gerade bedeuten. Braucht Plattform 0.13.1.
Entwickeln
npm install # das SDK aus der Registry der Organisation (.npmrc)
aivopod pack test # Tests, ohne vitest
aivopod pack preview # alle Schritte im Browser durchspielen
aivopod pack build # bündeln, prüfen, Release-Archiv in dist/
Veröffentlichen: Die Version in package.json erhöhen (Patch: nur Texte; Nebenversion:
Änderungen in bestehenden Challenges oder im Ablauf; Hauptversion: andere Challenges) und nach
main bringen. Die CI prüft die Version gegen das letzte Release und legt ein neues Release
v<version> mit dem Archiv an. Plattformen, die dieses Repo (oder seine Organisation) als
Quelle eingetragen haben, finden es, wenn das Repo das Thema aivopod-pack hat.
Entwicklungsversionen (1.2.0-dev.1) lassen sich mit aivopod pack publish direkt für die
eigene Schule veröffentlichen, wenn die Plattform das erlaubt.
aivopod.title und aivopod.sequence in package.json legen fest, wie das Paket als Ganzes
einem Kurs zugewiesen wird: sein Titel und die Challenges in dieser Reihenfolge.
Eine Challenge ist ein Ordner mit index.ts (die Challenge) und index.test.ts (Tests mit
expectPass und expectFail). Bilder liegen im Ordner assets/ der Challenge. Die Texte
stehen in locales/de.json; die Challenge nennt sie mit ihrem Schlüssel. Eine weitere Sprache
ist eine weitere Datei in locales/ und ein Eintrag in aivopod.languages.