IT

Sul tuo computer

Tutto passa da un solo comando, bin/jumphp, che fa girare PHP, Composer, il compilatore WebAssembly, il server web e i test in Docker. Bastano Docker e git.

Installare in una riga

Linux, macOS, Windows con WSL (in un terminale):

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

Windows (in PowerShell): JumPHP gira in WSL (Linux dentro Windows); la riga verifica che ci sia (altrimenti spiega come installarlo: wsl --install come amministratore, poi un riavvio) e installa JumPHP al suo interno. Docker: Docker Desktop, con il motore WSL 2.

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

Installa il comando jumphp (in ~/.local/bin, aggiunto al PATH se serve; nient'altro). Poi:

jumphp new mon-jeu       # un progetto: l'assistente verifica git e Docker (e propone di installarli), crea il gioco

Entrambi in un colpo solo: curl -fsSL https://jumphp.net/install.sh | sh -s -- mon-jeu. Gli script sono leggibili prima di avviarli: install.sh, install.ps1.

Senza l'installer

composer create-project jumphp/jumphp mes-jeux   # oppure: git clone https://github.com/davidnurdin/jumPhp.git mes-jeux
cd mes-jeux
bin/jumphp new mon-jeu "MON JEU"      # un gioco a partire dallo scheletro (un piccolo gioco di piattaforme)
bin/jumphp install mon-jeu
bin/jumphp run mon-jeu                # il gioco in una finestra, con il suono

composer create-project avvia un assistente che verifica gli strumenti, crea il tuo gioco e propone di installare il comando jumphp per tutto il sistema (bin/jumphp cli:install, in ~/.local/bin):

  • jumphp test mon-jeu da qualsiasi cartella del progetto (invece di bin/jumphp alla radice);
  • jumphp new altro-progetto per iniziarne un altro (con Composer, o in Docker senza Composer);
  • una volta al giorno, controlla su Packagist se è uscita una nuova versione di JumPHP e ti chiede se aggiornare il progetto (bin/jumphp update): sì, no (più tardi) o «non questa versione». JUMPHP_NO_UPDATE_CHECK=1 la zittisce; bin/jumphp cli:uninstall la rimuove.
Comando
bin/jumphp test mon-jeu verifica la sintassi, l'analisi statica, e gioca 600 fotogrammi senza schermo (il minimo avviso PHP è un errore)
bin/jumphp shot mon-jeu 120 uno screenshot dopo 2 secondi di gioco, senza finestra
bin/jumphp build mon-jeu la versione per il browser (dist/web), poi bin/jumphp serve mon-jeu
bin/jumphp build:remote mon-jeu il gioco così come lo carica questo sito (motore condiviso, file uno per uno)
bin/jumphp deploy mon-jeu sul tuo server
bin/jumphp twa mon-jeu --url … un'app Android per Google Play (la guida)
bin/jumphp export:standalone mon-jeu il gioco in un solo file eseguibile, per Linux e Windows (la guida)

Per pubblicarlo qui: fai il push del tuo progetto in un repository pubblico GitHub, poi importalo. Ogni push viene poi ripubblicato.

Il progetto contiene un AGENTS.md: è la documentazione completa di JumPHP (e ciò che legge il tuo Claude).