comparisons

~/tests/xadrez

3D chess game in a single HTML file

An 8x8 board and all 32 pieces rendered in WebGL with Three.js, in a single file with inline CSS and JavaScript. The brief asks for the full rules engine — legal moves, castling, en passant, promotion, check, checkmate and stalemate — plus an orbital camera and a panel showing turn, move history and captures. Three.js comes from the CDN through an inline import map, so the artifact runs inside the viewer's opaque-origin iframe without weakening the sandbox.

3 runs3 models
  • html
  • javascript
  • three-js
  • 3d
  • webgl
  • jogo
  • arquivo-unico

challenge prompt

Crie um jogo de xadrez 3D jogavel em um unico arquivo HTML.

Requisitos funcionais:
- Tabuleiro 8x8 e as 32 pecas renderizadas em 3D com Three.js
- Regras completas: movimentos legais de cada peca, roque, en passant, promocao de peao, xeque, xeque-mate e empate por afogamento
- Dois jogadores no mesmo dispositivo: clicar na peca destaca as casas legais, clicar na casa de destino executa o lance
- Camera orbital com o mouse (arrastar para girar, scroll para zoom)
- Painel com o turno atual, historico de lances e pecas capturadas

Restricoes tecnicas (obrigatorias):
- UM unico arquivo index.html. Todo o CSS e todo o JavaScript inline. Nao crie nenhum outro arquivo
- Three.js vem do CDN, declarado num <script type="importmap"> inline e consumido por um <script type="module"> tambem inline:

  <script type="importmap">
  {"imports":{
    "three":"https://cdn.jsdelivr.net/npm/three@0.180.0/build/three.module.js",
    "three/addons/":"https://cdn.jsdelivr.net/npm/three@0.180.0/examples/jsm/"
  }}
  </script>
  <script type="module">
  import * as THREE from 'three';
  import { OrbitControls } from 'three/addons/controls/OrbitControls.js';
  </script>

  Atencao: importar https://cdn.jsdelivr.net/npm/three@0.180.0/examples/jsm/controls/OrbitControls.js pela URL direta NAO funciona — esse arquivo faz `import ... from 'three'`, e o especificador bare so resolve pelo importmap
- NAO use <script type="module" src="..."> apontando para arquivo local
- NAO use localStorage nem sessionStorage — eles lancam SecurityError no ambiente onde a pagina roda
- A pagina roda dentro de um iframe sandbox de origem opaca: sem cookies, sem acesso a janela pai
- Deve caber e ficar legivel em 1440x900

metadata side by side

3 runs

These numbers describe what each run generated. They are not a score or rank.

metadata side by side
model harness author files lines duration author's rating
Claude Haiku 4.5 Claude Code Web Leonardo 1 956 ~2min
Claude Opus 5 Claude Code Web Leonardo 1 1,108 ~27min
Claude Sonnet 5 Claude Code Web Leonardo 1 1,144 ~11min

runs on this challenge

3 models