lighthouse-storm
rendered
the brief, redacted

Draw a lighthouse on a rocky outcrop during a storm, as a single self-contained SVG. Tests composition, layering, and whether a model can suggest weather without raster effects.

338 chars · 53 words · fingerprint 0b46c0c31095

raw output — byte exact

I’ll create a storm-lashed lighthouse scene with stark rock, sweeping rain, and a bright beam cutting through the darkened sky.
```svg
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 600">
  <defs>
    <!-- Background Rain Pattern -->
    <pattern id="rainBg" width="60" height="60" patternUnits="userSpaceOnUse" patternTransform="rotate(18)">
      <line x1="10" y1="0" x2="10" y2="10" stroke="#F4F4F9" stroke-width="1.5" opacity="0.3" />
      <line x1="40" y1="30" x2="40" y2="40" stroke="#F4F4F9" stroke-width="1" opacity="0.2" />
      <line x1="20" y1="50" x2="20" y2="60" stroke="#457B9D" stroke-width="1.5" opacity="0.4" />
      <line x1="50" y1="15" x2="50" y2="25" stroke="#F4F4F9" stroke-width="1" opacity="0.3" />
    </pattern>
    
    <!-- Foreground Rain Pattern -->
    <pattern id="rainFg" width="80" height="80" patternUnits="userSpaceOnUse" patternTransform="rotate(25)">
      <line x1="15" y1="0" x2="15" y2="20" stroke="#F4F4F9" stroke-width="2" opacity="0.5" />
      <line x1="55" y1="40" x2="55" y2="60" stroke="#F4F4F9" stroke-width="2.5" opacity="0.4" />
      <line x1="25" y1="70" x2="25" y2="90" stroke="#457B9D" stroke-width="2" opacity="0.6" />
      <line x1="65" y1="15" x2="65" y2="35" stroke="#F4F4F9" stroke-width="1.5" opacity="0.5" />
    </pattern>
  </defs>

  <!-- SKY BACKGROUND -->
  <rect width="800" height="600" fill="#0A1128" />

  <!-- STORM CLOUDS -->
  <path d="M 0,0 Q 200,100 400,50 Q 600,150 800,0 Z" fill="#1F3545" />
  <path d="M 0,100 Q 300,200 500,80 Q 700,180 800,100 Z" fill="#1F3545" opacity="0.6" />
  <path d="M 0,200 Q 150,150 300,250 Q 500,300 800,200 Z" fill="#1F3545" opacity="0.4" />

  <!-- LIGHTNING BOLT -->
  <polygon points="150,0 180,60 160,70 200,130 180,140 230,200 210,210 260,270 240,280 300,340 280,350 350,420 300,500 220,450 250,380 200,430 170,370 220,320 190,370 160,310 200,260 180,270 130,200 150,190 110,140 130,130 90,70 110,60" fill="#F4F4F9" />
  <polygon points="200,130 230,160 210,170 240,220 220,230 260,290" fill="none" stroke="#F4F4F9" stroke-width="3" />
  <polygon points="130,200 160,230 140,240 170,280" fill="none" stroke="#F4F4F9" stroke-width="2" />
  <polygon points="280,270 310,300 290,310 320,350" fill="none" stroke="#F4F4F9" stroke-width="2" />

  <!-- BACKGROUND RAIN -->
  <rect width="800" height="600" fill="url(#rainBg)" />

  <!-- WIND STREAKS (ATMOSPHERE) -->
  <path d="M -100,150 Q 200,100 400,80 T 900,20" fill="none" stroke="#1F3545" stroke-width="20" opacity="0.5" />
  <path d="M -100,250 Q 200,200 400,180 T 900,120" fill="none" stroke="#1F3545" stroke-width="15" opacity="0.4" />
  <path d="M -100,350 Q 300,280 500,250 T 900,200" fill="none" stroke="#457B9D" stroke-width="10" opacity="0.3" />
  <path d="M -100,450 Q 250,400 450,380 T 900,350" fill="none" stroke="#1F3545" stroke-width="8" opacity="0.5" />

  <!-- DISTANT OCEAN BACKGROUND -->
  <path d="M 0,450 L 800,450 L 800,550 Q 600,520 400,500 T 0,480 Z" fill="#457B9D" />

  <!-- LIGHTHOUSE BEAM -->
  <!-- Light halo glow -->
  <circle cx="600" cy="200" r="60" fill="#EFD09E" opacity="0.1" />
  <circle cx="600" cy="200" r="40" fill="#EFD09E" opacity="0.15" />
  <circle cx="600" cy="200" r="20" fill="#EFD09E" opacity="0.25" />
  <circle cx="600" cy="200" r="10" fill="#F4F4F9" opacity="0.8" />

  <!-- Left Beam (Primary) -->
  <polygon points="600,190 0,0 0,400 600,210" fill="#EFD09E" opacity="0.15" />
  <polygon points="600,192 0,50 0,350 600,208" fill="#EFD09E" opacity="0.25" />
  <polygon points="600,195 0,100 0,300 600,205" fill="#EFD09E" opacity="0.4" />
  <polygon points="600,197 0,150 0,250 600,203" fill="#F4F4F9" opacity="0.6" />

  <!-- Right Beam (Secondary) -->
  <polygon points="600,190 800,0 800,400 600,210" fill="#EFD09E" opacity="0.1" />
  <polygon points="600,195 800,100 800,300 600,205" fill="#EFD09E" opacity="0.2" />

  <!-- ROCKY OUTCROP -->
  <path d="M 500,600 L 520,530 L 540,560 L 580,510 L 620,490 L 660,510 L 700,480 L 750,540 L 800,600 Z" fill="#1F3545" />
  <path d="M 520,530 L 540,560 L 580,510 L 600,550 L 580,560 Z" fill="#0A1128" />
  <path d="M 620,490 L 660,510 L 640,550 L 610,530 Z" fill="#0A1128" />

  <!-- LIGHTHOUSE STRUCTURE -->
  <!-- Main Body -->
  <polygon points="575,250 625,250 650,500 550,500" fill="#F4F4F9" />
  
  <!-- Red Stripes -->
  <polygon points="580,300 630,300 634,340 584,340" fill="#D62828" />
  <polygon points="590,400 640,400 644,440 594,440" fill="#D62828" />
  
  <!-- Shadow Overlay (Right Side) -->
  <polygon points="600,250 625,250 650,500 600,500" fill="#1F3545" opacity="0.7" />

  <!-- Base Door -->
  <rect x="585" y="460" width="30" height="40" fill="#0A1128" />
  <rect x="588" y="463" width="24" height="34" fill="#1F3545" />

  <!-- Gallery Deck & Railing -->
  <rect x="560" y="230" width="80" height="8" fill="#1F3545" />
  <rect x="565" y="250" width="70" height="5" fill="#0A1128" />
  <!-- Railing Posts -->
  <line x1="565" y1="230" x2="565" y2="240" stroke="#1F3545" stroke-width="3" />
  <line x1="580" y1="230" x2="580" y2="240" stroke="#1F3545" stroke-width="3" />
  <line x1="620" y1="230" x2="620" y2="240" stroke="#1F3545" stroke-width="3" />
  <line x1="635" y1="230" x2="635" y2="240" stroke="#1F3545" stroke-width="3" />
  
  <!-- Gallery Shadow -->
  <rect x="600" y="230" width="40" height="20" fill="#1F3545" opacity="0.7" />

  <!-- Lantern Room -->
  <rect x="580" y="180" width="40" height="50" fill="#1F3545" />
  <rect x="583" y="185" width="34" height="30" fill="#EFD09E" />
  
  <!-- Lantern Light Source -->
  <circle cx="600" cy="200" r="8" fill="#F4F4F9" />
  
  <!-- Lantern Room Shadow -->
  <rect x="600" y="180" width="20" height="50" fill="#1F3545" opacity="0.7" />

  <!-- Cupola / Roof -->
  <path d="M 575,180 Q 600,130 625,180 Z" fill="#D62828" />
  <!-- Roof Shadow -->
  <path d="M 600,180 Q 612,155 625,180 Z" fill="#1F3545" opacity="0.7" />

  <!-- Top Details -->
  <circle cx="600" cy="135" r="5" fill="#1F3545" />
  <line x1="600" y1="130" x2="600" y2="110" stroke="#1F3545" stroke-width="2" />

  <!-- FOREGROUND OCEAN WAVES -->
  <path d="M 0,500 Q 200,470 400,520 T 750,540 L 800,550 L 800,600 L 0,600 Z" fill="#1F3545" />
  
  <!-- Wave Foam & Splash -->
  <path d="M 150,490 Q 250,470 350,510" fill="none" stroke="#F4F4F9" stroke-width="4" stroke-linecap="round" />
  <path d="M 450,530 Q 550,510 650,535" fill="none" stroke="#F4F4F9" stroke-width="3" stroke-linecap="round" />
  <path d="M 520,480 Q 550,440 580,480 T 620,500" fill="none" stroke="#F4F4F9" stroke-width="3" stroke-linecap="round" opacity="0.8" />
  
  <!-- Splash Spray Drops -->
  <circle cx="600" cy="490" r="10" fill="#F4F4F9" opacity="0.8" />
  <circle cx="620" cy="485" r="6" fill="#F4F4F9" opacity="0.6" />
  <circle cx="580" cy="495" r="8" fill="#F4F4F9" opacity="0.7" />
  <circle cx="560" cy="450" r="12" fill="#F4F4F9" opacity="0.6" />
  <circle cx="580" cy="440" r="8" fill="#F4F4F9" opacity="0.5" />
  <circle cx="540" cy="460" r="6" fill="#F4F4F9" opacity="0.7" />

  <!-- Ocean Wind Streaks -->
  <path d="M 0,550 Q 150,530 300,560 T 500,540" fill="none" stroke="#F4F4F9" stroke-width="1.5" opacity="0.4" />
  <path d="M 200,520 Q 350,500 450,530 T 650,510" fill="none" stroke="#F4F4F9" stroke-width="2" opacity="0.3" />

  <!-- FOREGROUND RAIN & WIND (Overlapping everything) -->
  <rect width="800" height="600" fill="url(#rainFg)" />
  
  <!-- Manual Prominent Wind/Rain Lines (Battering the lighthouse) -->
  <line x1="400" y1="200" x2="550" y2="350" stroke="#F4F4F9" stroke-width="2" opacity="0.6" />
  <line x1="650" y1="220" x2="800" y2="380" stroke="#F4F4F9" stroke-width="3" opacity="0.5" />
  <line x1="200" y1="100" x2="250" y2="150" stroke="#F4F4F9" stroke-width="2" opacity="0.7" />
  <line x1="300" y1="50" x2="350" y2="100" stroke="#F4F4F9" stroke-width="1.5" opacity="0.6" />
  <line x1="400" y1="200" x2="450" y2="250" stroke="#F4F4F9" stroke-width="2.5" opacity="0.8" />
  <line x1="150" y1="300" x2="180" y2="340" stroke="#457B9D" stroke-width="2" opacity="0.5" />
  <line x1="700" y1="180" x2="760" y2="240" stroke="#F4F4F9" stroke-width="2" opacity="0.6" />
</svg>
```
The composition places the lighthouse on a rugged outcrop at the right, with intense slanting rain, dark cloud masses, and a jagged lightning bolt in the distance. The warm beam extends strongly across the frame, while the restrained blue-gray palette keeps the mood turbulent and cohesive.

request envelope — prompt redacted

{
  "model": "deepseek/deepseek-v4-pro",
  "system": "Respond with a single complete <svg> element and nothing else. No markdown fences, no explanation. Include an explicit viewBox. Do not reference external fonts, images, or stylesheets — the SVG must be fully self-contained.",
  "messages": [
    {
      "role": "user",
      "content": "«REDACTED — 58 words, 338 chars»"
    }
  ],
  "maxOutputTokens": 16000,
  "gatewayStringId": "fe6a6f66-4ed7-4df8-8302-305b7500d370"
}