Prepare for launch: Add Google Analytics, enhanced SEO, and go-live checklist

This commit is contained in:
Peter
2025-06-07 11:03:22 +01:00
parent f13a131700
commit 4f56b3664a
4 changed files with 277 additions and 11 deletions

View File

@@ -0,0 +1,61 @@
<svg width="60" height="60" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="webScrapingGrad2" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" style="stop-color:#667eea;stop-opacity:1" />
<stop offset="100%" style="stop-color:#764ba2;stop-opacity:1" />
</linearGradient>
</defs>
<!-- Browser window with data -->
<rect x="5" y="12" width="35" height="25" fill="none" stroke="url(#webScrapingGrad2)" stroke-width="2" rx="3"/>
<rect x="5" y="12" width="35" height="6" fill="url(#webScrapingGrad2)" rx="3"/>
<!-- Browser dots -->
<circle cx="9" cy="15" r="1" fill="white"/>
<circle cx="12" cy="15" r="1" fill="white"/>
<circle cx="15" cy="15" r="1" fill="white"/>
<!-- Data lines in browser -->
<line x1="8" y1="22" x2="25" y2="22" stroke="url(#webScrapingGrad2)" stroke-width="1.5"/>
<line x1="8" y1="26" x2="32" y2="26" stroke="url(#webScrapingGrad2)" stroke-width="1.5"/>
<line x1="8" y1="30" x2="20" y2="30" stroke="url(#webScrapingGrad2)" stroke-width="1.5"/>
<line x1="8" y1="34" x2="28" y2="34" stroke="url(#webScrapingGrad2)" stroke-width="1.5"/>
<!-- Extraction arrow -->
<path d="M 42 25 Q 48 20 52 25" stroke="url(#webScrapingGrad2)" stroke-width="2" fill="none" marker-end="url(#extractArrow2)"/>
<!-- Database/storage -->
<rect x="46" y="35" width="12" height="20" fill="none" stroke="url(#webScrapingGrad2)" stroke-width="2" rx="2"/>
<!-- Data rows in storage -->
<line x1="48" y1="40" x2="56" y2="40" stroke="url(#webScrapingGrad2)" stroke-width="1"/>
<line x1="48" y1="43" x2="54" y2="43" stroke="url(#webScrapingGrad2)" stroke-width="1"/>
<line x1="48" y1="46" x2="56" y2="46" stroke="url(#webScrapingGrad2)" stroke-width="1"/>
<line x1="48" y1="49" x2="52" y2="49" stroke="url(#webScrapingGrad2)" stroke-width="1"/>
<line x1="48" y1="52" x2="55" y2="52" stroke="url(#webScrapingGrad2)" stroke-width="1"/>
<!-- Web network nodes -->
<circle cx="15" cy="45" r="3" fill="url(#webScrapingGrad2)" opacity="0.7"/>
<circle cx="25" cy="50" r="2.5" fill="url(#webScrapingGrad2)" opacity="0.7"/>
<circle cx="35" cy="48" r="2" fill="url(#webScrapingGrad2)" opacity="0.7"/>
<!-- Connection lines -->
<line x1="17" y1="46" x2="23" y2="49" stroke="url(#webScrapingGrad2)" stroke-width="1.5" opacity="0.6"/>
<line x1="27" y1="50" x2="33" y2="48" stroke="url(#webScrapingGrad2)" stroke-width="1.5" opacity="0.6"/>
<!-- Data extraction particles -->
<circle cx="44" cy="23" r="1" fill="url(#webScrapingGrad2)">
<animate attributeName="cx" values="44;50;44" dur="2s" repeatCount="indefinite"/>
<animate attributeName="opacity" values="1;0.3;1" dur="2s" repeatCount="indefinite"/>
</circle>
<circle cx="42" cy="27" r="0.8" fill="url(#webScrapingGrad2)">
<animate attributeName="cx" values="42;48;42" dur="2.5s" repeatCount="indefinite"/>
<animate attributeName="opacity" values="1;0.3;1" dur="2.5s" repeatCount="indefinite"/>
</circle>
<defs>
<marker id="extractArrow2" markerWidth="8" markerHeight="6" refX="7" refY="3" orient="auto">
<polygon points="0 0, 8 3, 0 6" fill="#667eea"/>
</marker>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 3.1 KiB

View File

@@ -1,12 +1,61 @@
<svg width="60" height="60" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="grad1" x1="0%" y1="0%" x2="100%" y2="100%">
<linearGradient id="webScrapingGrad" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" style="stop-color:#667eea;stop-opacity:1" />
<stop offset="100%" style="stop-color:#764ba2;stop-opacity:1" />
</linearGradient>
</defs>
<rect x="10" y="15" width="40" height="30" fill="none" stroke="url(#grad1)" stroke-width="3" rx="4"/>
<line x1="15" y1="25" x2="35" y2="25" stroke="url(#grad1)" stroke-width="2"/>
<line x1="15" y1="30" x2="45" y2="30" stroke="url(#grad1)" stroke-width="2"/>
<line x1="15" y1="35" x2="40" y2="35" stroke="url(#grad1)" stroke-width="2"/>
<!-- Browser window with data -->
<rect x="5" y="12" width="35" height="25" fill="none" stroke="url(#webScrapingGrad)" stroke-width="2" rx="3"/>
<rect x="5" y="12" width="35" height="6" fill="url(#webScrapingGrad)" rx="3"/>
<!-- Browser dots -->
<circle cx="9" cy="15" r="1" fill="white"/>
<circle cx="12" cy="15" r="1" fill="white"/>
<circle cx="15" cy="15" r="1" fill="white"/>
<!-- Data lines in browser -->
<line x1="8" y1="22" x2="25" y2="22" stroke="url(#webScrapingGrad)" stroke-width="1.5"/>
<line x1="8" y1="26" x2="32" y2="26" stroke="url(#webScrapingGrad)" stroke-width="1.5"/>
<line x1="8" y1="30" x2="20" y2="30" stroke="url(#webScrapingGrad)" stroke-width="1.5"/>
<line x1="8" y1="34" x2="28" y2="34" stroke="url(#webScrapingGrad)" stroke-width="1.5"/>
<!-- Extraction arrow -->
<path d="M 42 25 Q 48 20 52 25" stroke="url(#webScrapingGrad)" stroke-width="2" fill="none" marker-end="url(#extractArrow)"/>
<!-- Database/storage -->
<rect x="46" y="35" width="12" height="20" fill="none" stroke="url(#webScrapingGrad)" stroke-width="2" rx="2"/>
<!-- Data rows in storage -->
<line x1="48" y1="40" x2="56" y2="40" stroke="url(#webScrapingGrad)" stroke-width="1"/>
<line x1="48" y1="43" x2="54" y2="43" stroke="url(#webScrapingGrad)" stroke-width="1"/>
<line x1="48" y1="46" x2="56" y2="46" stroke="url(#webScrapingGrad)" stroke-width="1"/>
<line x1="48" y1="49" x2="52" y2="49" stroke="url(#webScrapingGrad)" stroke-width="1"/>
<line x1="48" y1="52" x2="55" y2="52" stroke="url(#webScrapingGrad)" stroke-width="1"/>
<!-- Web network nodes -->
<circle cx="15" cy="45" r="3" fill="url(#webScrapingGrad)" opacity="0.7"/>
<circle cx="25" cy="50" r="2.5" fill="url(#webScrapingGrad)" opacity="0.7"/>
<circle cx="35" cy="48" r="2" fill="url(#webScrapingGrad)" opacity="0.7"/>
<!-- Connection lines -->
<line x1="17" y1="46" x2="23" y2="49" stroke="url(#webScrapingGrad)" stroke-width="1.5" opacity="0.6"/>
<line x1="27" y1="50" x2="33" y2="48" stroke="url(#webScrapingGrad)" stroke-width="1.5" opacity="0.6"/>
<!-- Data extraction particles -->
<circle cx="44" cy="23" r="1" fill="url(#webScrapingGrad)">
<animate attributeName="cx" values="44;50;44" dur="2s" repeatCount="indefinite"/>
<animate attributeName="opacity" values="1;0.3;1" dur="2s" repeatCount="indefinite"/>
</circle>
<circle cx="42" cy="27" r="0.8" fill="url(#webScrapingGrad)">
<animate attributeName="cx" values="42;48;42" dur="2.5s" repeatCount="indefinite"/>
<animate attributeName="opacity" values="1;0.3;1" dur="2.5s" repeatCount="indefinite"/>
</circle>
<defs>
<marker id="extractArrow" markerWidth="8" markerHeight="6" refX="7" refY="3" orient="auto">
<polygon points="0 0, 8 3, 0 6" fill="#667eea"/>
</marker>
</defs>
</svg>

Before

Width:  |  Height:  |  Size: 663 B

After

Width:  |  Height:  |  Size: 3.1 KiB