final class GamePage extends Page
{
#[State] public int $playerScore = 0;
#[State] public string $gameId = '';
private function startGame(): ClientInstruction
{
return Api::post('/api/games', [
'player_name' => StateRef::to('playerName'),
])->storeIn('gameId', 'id');
}
}Oracle Arena
Un jeu compact qui démontre un parcours PHPAML complet, de l’interaction réactive au classement persistant.
Ce que cette démo valide
État réactif et effets sans JavaScript manuel, appels API same-origin protégés par CSRF, règles recalculées côté serveur, migrations SQLite et navigation client sans rechargement complet.
Stack
01AML View02AML Engine03PHPAML API04PHPAML Data05SQLite06Automated tests