DE

Auf deinem Computer

Alles läuft über einen Befehl, bin/jumphp, der PHP, Composer, den WebAssembly-Compiler, den Webserver und die Tests in Docker ausführt. Docker und git genügen.

Installation in einer Zeile

Linux, macOS, Windows mit WSL (in einem Terminal):

curl -fsSL https://jumphp.net/install.sh | sh

Windows (in PowerShell): JumPHP läuft in WSL (Linux unter Windows); die Zeile prüft, ob es vorhanden ist (sonst sagt sie, wie du es installierst: wsl --install als Administrator, danach ein Neustart) und installiert JumPHP darin. Docker: Docker Desktop, mit der WSL-2-Engine.

irm https://jumphp.net/install.ps1 | iex

Sie installiert den Befehl jumphp (in ~/.local/bin, bei Bedarf zum PATH hinzugefügt; sonst nichts). Danach:

jumphp new mon-jeu       # ein Projekt: der Assistent prüft git und Docker (und bietet an, sie zu installieren), legt das Spiel an

Beides auf einmal: curl -fsSL https://jumphp.net/install.sh | sh -s -- mon-jeu. Die Skripte kannst du vor dem Start lesen: install.sh, install.ps1.

Ohne den Installer

composer create-project jumphp/jumphp mes-jeux   # oder: git clone https://github.com/davidnurdin/jumPhp.git mes-jeux
cd mes-jeux
bin/jumphp new mon-jeu "MON JEU"      # ein Spiel aus dem Grundgerüst (ein kleines Jump 'n' Run)
bin/jumphp install mon-jeu
bin/jumphp run mon-jeu                # das Spiel in einem Fenster, mit Sound

composer create-project startet einen Assistenten, der die Werkzeuge prüft, dein Spiel anlegt und anbietet, den Befehl jumphp für das ganze System zu installieren (bin/jumphp cli:install, in ~/.local/bin):

  • jumphp test mon-jeu aus jedem beliebigen Ordner des Projekts (statt bin/jumphp im Stammverzeichnis);
  • jumphp new autre-projet, um ein weiteres anzufangen (mit Composer oder in Docker ohne Composer);
  • einmal am Tag prüft er auf Packagist, ob eine neue Version von JumPHP erschienen ist, und fragt dich, ob das Projekt aktualisiert werden soll (bin/jumphp update): ja, nein (später) oder „nicht diese Version“. JUMPHP_NO_UPDATE_CHECK=1 bringt ihn zum Schweigen; bin/jumphp cli:uninstall entfernt ihn.
Befehl
bin/jumphp test mon-jeu prüft die Syntax, die statische Analyse und spielt 600 Frames ohne Bildschirm (jede PHP-Warnung ist ein Fehler)
bin/jumphp shot mon-jeu 120 ein Screenshot nach 2 Sekunden Spielzeit, ohne Fenster
bin/jumphp build mon-jeu die Browser-Version (dist/web), danach bin/jumphp serve mon-jeu
bin/jumphp build:remote mon-jeu das Spiel so, wie diese Website es lädt (gemeinsame Engine, Dateien einzeln)
bin/jumphp deploy mon-jeu auf deinen eigenen Server
bin/jumphp twa mon-jeu --url … eine Android-App für Google Play (die Anleitung)
bin/jumphp export:standalone mon-jeu das Spiel als einzelne ausführbare Datei, für Linux und Windows (die Anleitung)

Um es hier zu veröffentlichen: Pushe dein Projekt in ein öffentliches GitHub-Repository und importiere es. Jeder Push wird danach neu veröffentlicht.

Das Projekt enthält eine AGENTS.md: Das ist die vollständige Dokumentation von JumPHP (und das, was dein Claude liest).