Models 44

Gemini 3.1 Flash Lite

by GoogleReasoningClean
Open in new window

Running live in a sandboxed frame. Click inside it before using the keyboard.

How it went

Total time
3.9 s
Cost
$0.0022
Output tokens
1,374
Spent thinking
0 tokens
Speed
410.6 tok/s
Console errors
0
First token after
556 ms
First visible text after
556 ms
Prompt tokens
533
Code size
3.0 KB
Finish reason
stop
Served by
Google
Model id
google/gemini-3.1-flash-lite
Reasoning sent
{"effort":"minimal"}
Max output
65,536 tokens
Generated
Nov 12, 2026

What it was asked

The prompt
Create a standalone SVG illustration of a fox sitting on a hill, looking at the moon on a starry night, with a few subtle animations. Requirements: - Output a single valid .svg file (```svg code block) with a viewBox of 0 0 800 600. - Hand-written shapes and paths only: no embedded raster images, no external references, no JavaScript. - The fox must be clearly recognizable (pointy ears, snout, bushy tail with a white tip). - Include the moon with a soft glow, many stars, the hill and some background elements (trees, distant hills). - Use a coherent color palette and at least one gradient. - Animations (SMIL or CSS inside the SVG), all looping seamlessly: stars twinkling, the fox's tail swaying gently, and a shooting star crossing the sky every 4 seconds (the first one within 2 seconds).
System prompt, sent with every prompt
You are generating a self-contained web demo. It will be rendered automatically in a sandboxed iframe and compared side by side with the output of other AI models given the exact same task.

Output rules:
- Reply with exactly ONE fenced code block containing the complete file: ```html (or ```svg when the task asks for an SVG). No text before or after the code block.
- Everything must be inline: CSS in <style>, JavaScript in <script>. No external files, images, fonts or network requests, except the CDN URLs explicitly allowed by the task.
- Do not use localStorage, sessionStorage, cookies, IndexedDB, alert(), confirm(), prompt() or window.open(): they are blocked in the sandbox and will throw.
- The page must look right in a 1280×800 viewport and adapt gracefully down to 375px wide. No horizontal scrollbar.
- Something meaningful must be visible on first paint: a screenshot is taken automatically about 3 seconds after load, without any interaction.
- Everything that makes the demo interesting must be visible within the first seconds: nothing hidden behind a high score, a later level or a long play session.
- Games must start in a self-playing demo mode (a simple AI plays) behind a "Click or press a key to start" message, so the game can be judged in action without playing.
- The iframe only receives keyboard events after the user clicks it: if the demo uses the keyboard, display a clear "Click or press a key to start" message.
- The code must run with zero errors in the console of the latest Chrome.

Code run-1.svg · 63 lines

<svg viewBox="0 0 800 600" xmlns="http://www.w3.org/2000/svg">
  <defs>
    <linearGradient id="skyGrad" x1="0" y1="0" x2="0" y2="1">
      <stop offset="0%" stop-color="#0a0a20" />
      <stop offset="100%" stop-color="#1a1a40" />
    </linearGradient>
    <radialGradient id="moonGlow">
      <stop offset="0%" stop-color="#fff9d6" />
      <stop offset="50%" stop-color="#fff9d688" />
      <stop offset="100%" stop-color="#fff9d600" />
    </radialGradient>
    <filter id="glow">
      <feGaussianBlur stdDeviation="3" />
    </filter>
  </defs>

  <!-- Background -->
  <rect width="800" height="600" fill="url(#skyGrad)" />
  
  <!-- Stars -->
  <g class="stars">
    <circle cx="100" cy="50" r="1.5" fill="white"><animate attributeName="opacity" values="0.2;1;0.2" dur="3s" repeatCount="indefinite"/></circle>
    <circle cx="300" cy="120" r="1" fill="white"><animate attributeName="opacity" values="0.5;0.1;0.5" dur="4s" repeatCount="indefinite"/></circle>
    <circle cx="500" cy="80" r="1.5" fill="white"><animate attributeName="opacity" values="0.3;1;0.3" dur="2s" repeatCount="indefinite"/></circle>
    <circle cx="700" cy="200" r="1" fill="white"><animate attributeName="opacity" values="0.8;0.2;0.8" dur="5s" repeatCount="indefinite"/></circle>
    <circle cx="50" cy="400" r="1.5" fill="white"><animate attributeName="opacity" values="0.4;1;0.4" dur="2.5s" repeatCount="indefinite"/></circle>
  </g>

  <!-- Moon -->
  <circle cx="650" cy="120" r="50" fill="url(#moonGlow)" />
  <circle cx="650" cy="120" r="40" fill="#fff9d6" />

  <!-- Distant Hills -->
  <path d="M0 600 L0 400 Q200 300 400 400 L800 600 Z" fill="#0f0f2a" />
  <path d="M0 600 L150 450 Q350 350 550 450 L800 600 Z" fill="#161633" />
  
  <!-- Foreground Hill -->
  <path d="M-50 600 C 200 400 600 400 850 600 Z" fill="#1e1e40" />

  <!-- Fox -->
  <g transform="translate(400, 480)">
    <!-- Tail -->
    <path d="M 40 0 C 80 -40 100 -20 120 0 C 130 10 130 20 120 20 L 110 10" fill="#d35400" stroke="#a04000" stroke-width="2">
      <animateTransform attributeName="transform" type="rotate" values="-5 40 0; 5 40 0; -5 40 0" dur="3s" repeatCount="indefinite" />
    </path>
    <path d="M 120 0 C 130 10 130 20 120 20 L 110 10" fill="#ffffff" />
    <!-- Body -->
    <ellipse cx="20" cy="10" rx="30" ry="20" fill="#d35400" />
    <!-- Head -->
    <g transform="translate(-10, -30)">
      <path d="M 0 0 L 20 0 L 10 -25 Z" fill="#d35400" /> <!-- Ears -->
      <path d="M 20 0 L 40 0 L 30 -25 Z" fill="#d35400" />
      <ellipse cx="20" cy="0" rx="25" ry="20" fill="#d35400" /> <!-- Face -->
      <path d="M 35 -5 L 45 -5 L 40 5 Z" fill="black" /> <!-- Snout -->
    </g>
  </g>

  <!-- Shooting Star -->
  <path d="M 0 0 L 50 -50" stroke="white" stroke-width="2" stroke-linecap="round" opacity="0">
    <animateTransform attributeName="transform" type="translate" from="-100 200" to="900 -100" dur="4s" repeatCount="indefinite" />
    <animate attributeName="opacity" values="0;1;0" dur="4s" repeatCount="indefinite" />
  </path>
</svg>