Voltar
Jogo de quebra-cabeça com gatos em WebGPU foi entregue em três dias com Expo, e um agente de IA fez o papel de time de QA

Purrkour, jogo de quebra-cabeça com gatos em WebGPU, chega à App Store em três dias com Expo e agente de IA no papel de QA

Aprofundamento CEVIU

Aprofundamento

O Purrkour é um puzzle em um tabuleiro 5x5 em que cada gato precisa chegar a uma caixa, pulando outros gatos, plantas e caixas ocupadas. Tudo é renderizado com WebGPU dentro de um app Expo, sem arquivos de imagem, modelos 3D ou áudio. O primeiro commit foi em 21 de julho de 2026, e a versão 1.0.0 ficou pronta para a App Store em 23 de julho, em 15 commits, já com anúncios, política de privacidade, config do EAS e deploy web.

A peça central é o TypeGPU: shaders tipados em TypeScript, compilados para WGSL, rodam no WebGPU do navegador e no react-native-webgpu (Dawn) no dispositivo. O jogo todo vive em packages/engine (regras, solver, níveis, malhas, renderer, áudio e sessão). O app Expo e o site em Vite são cascas finas ao redor, e o engine recebe por injeção o contexto do canvas GPU, uma fábrica de AudioContext e um armazenamento tipo localStorage (MMKV no mobile). A base é o Expo SDK 57 na New Architecture (React Native 0.86), exigida por react-native-webgpu, react-native-audio-api, Reanimated 4 e Worklets.

O que mudou

Em 28 de outubro de 2026, o CEVIU noticiou "Expo Agent CLI: ferramenta experimental ajuda agentes de IA a compilar, abrir e testar apps", sobre agentes que rodam e testam apps Expo. O Purrkour mostra a mesma ideia em um caso concreto, com o agente de IA tocando o jogo no simulador iOS e no Chrome via Argent. Ali o foco era a CLI da Expo, aqui é uma ferramenta diferente (Argent, da Software Mansion) resolvendo o problema de testar um canvas sem árvore de acessibilidade.

Por que isso importa

Para quem testa apps com canvas, WebGPU ou jogos, o truque do debug bridge é reaproveitável: expor estado e projeção de câmera em builds de desenvolvimento dá ao agente coordenadas exatas, sem depender de screenshot. Para quem avalia stack, o caso sugere que um app 3D em TypeScript com Expo é viável sem engine de jogo, embora seja um jogo pequeno e pouco pesado em computação, como o próprio autor admite.

Linha do tempo

  1. Primeiro commit do Purrkour.

  2. Versão 1.0.0 do Purrkour fica pronta para a App Store.

  3. CEVIU noticia a Expo Agent CLI, ferramenta experimental para agentes de IA testarem apps.

  4. Purrkour é apresentado: três dias do primeiro commit à App Store, com solver e agente de IA via Argent como QA.

Perguntas frequentes

Como o agente de IA testa um jogo que é um único canvas WebGPU?

O autor criou um debug bridge, um objeto __purrkour exposto no escopo global em builds de desenvolvimento. A função cellScreen usa a mesma projeção de câmera do renderer e devolve o ponto exato na tela de cada célula. O agente pega o próximo movimento ótimo do solver, toca ali via Argent e confere com state() e um screenshot.

Como os níveis do Purrkour são validados?

Há 25 níveis. Os 10 primeiros foram feitos à mão. Nos mais difíceis, um script gera milhares de tabuleiros aleatórios e mantém só os aprovados por um solver BFS. Um teste unitário resolve os 25 de novo, então cada pontuação perfeita é um mínimo provado.

O mesmo código roda no iOS e na web?

Sim. O engine em TypeScript é compartilhado, e o TypeGPU faz os mesmos shaders rodarem em WebGPU no navegador e em react-native-webgpu no dispositivo. O app Expo e o site Vite são cascas finas ao redor, com armazenamento injetado (MMKV no mobile, localStorage na web).

O WebGPU funciona no Expo Go?

Segundo o autor, não. O jogo exige um development build, e ele cita como item de sua lista de desejos ter WebGPU no Expo Go, para testar via QR code sem build próprio.

Fontes

Avalie este artigo:
Categoria
CEVIU Web Dev
Publicado
06 de novembro de 2026
Editoria
CEVIU Web Dev

Quer receber mais sobre CEVIU Web Dev?

Conteúdo curado diariamente, direto no seu e-mail.

Conteúdo curado diariamenteDiversas categoriasCancele quando quiser