PT

No seu computador

Tudo passa por um comando, bin/jumphp, que executa PHP, Composer, o compilador WebAssembly, o servidor web e os testes dentro do Docker. Basta ter Docker e git.

Instalar em uma linha

Linux, macOS, Windows com WSL (em um terminal):

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

Windows (no PowerShell): o JumPHP roda no WSL (Linux dentro do Windows); a linha verifica se ele está presente (senão, diz como instalá-lo: wsl --install como administrador e depois uma reinicialização) e instala o JumPHP nele. Docker: Docker Desktop, com o motor WSL 2.

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

Ela instala o comando jumphp (em ~/.local/bin, adicionado ao PATH se necessário; nada além disso). Depois:

jumphp new meu-jogo       # um projeto: o assistente verifica git e Docker (e se oferece para instalá-los), cria o jogo

Os dois de uma vez: curl -fsSL https://jumphp.net/install.sh | sh -s -- meu-jogo. Os scripts podem ser lidos antes de executá-los: install.sh, install.ps1.

Sem o instalador

composer create-project jumphp/jumphp meus-jogos   # ou: git clone https://github.com/davidnurdin/jumPhp.git meus-jogos
cd meus-jogos
bin/jumphp new meu-jogo "MEU JOGO"      # um jogo a partir do esqueleto (um pequeno jogo de plataforma)
bin/jumphp install meu-jogo
bin/jumphp run meu-jogo                 # o jogo em uma janela, com som

O composer create-project executa um assistente que verifica as ferramentas, cria o seu jogo e se oferece para instalar o comando jumphp para o sistema todo (bin/jumphp cli:install, em ~/.local/bin):

  • jumphp test meu-jogo a partir de qualquer pasta do projeto (em vez de bin/jumphp na raiz);
  • jumphp new outro-projeto para começar outro (com Composer, ou no Docker sem Composer);
  • uma vez por dia, ele consulta o Packagist para ver se saiu uma nova versão do JumPHP e pergunta a você se deve atualizar o projeto (bin/jumphp update): sim, não (depois) ou “não esta versão”. JUMPHP_NO_UPDATE_CHECK=1 o silencia; bin/jumphp cli:uninstall o remove.
Comando
bin/jumphp test meu-jogo verifica a sintaxe, a análise estática e joga 600 quadros sem tela (o menor alerta do PHP é um erro)
bin/jumphp shot meu-jogo 120 uma captura de tela após 2 segundos de jogo, sem janela
bin/jumphp build meu-jogo a versão para navegador (dist/web), e depois bin/jumphp serve meu-jogo
bin/jumphp build:remote meu-jogo o jogo como este site o carrega (motor compartilhado, arquivos um a um)
bin/jumphp deploy meu-jogo no seu próprio servidor
bin/jumphp twa meu-jogo --url … um aplicativo Android para o Google Play (o guia)
bin/jumphp export:standalone meu-jogo o jogo em um único arquivo executável, para Linux e Windows (o guia)

Para publicá-lo aqui: envie o seu projeto para um repositório público do GitHub e depois importe-o. Cada push é republicado em seguida.

O projeto contém um AGENTS.md: é a documentação completa do JumPHP (e o que o seu Claude lê).