Initial commit: UK Data Services website

This commit is contained in:
Peter
2025-06-07 10:53:32 +01:00
commit 3e9968f1b4
63 changed files with 6597 additions and 0 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@@ -0,0 +1,98 @@
<svg width="800" height="500" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="dashGrad1" 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>
<linearGradient id="chartGrad1" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" style="stop-color:#667eea;stop-opacity:0.8" />
<stop offset="100%" style="stop-color:#764ba2;stop-opacity:0.8" />
</linearGradient>
</defs>
<!-- Dashboard Background -->
<rect width="800" height="500" fill="#f8f9fa" rx="12"/>
<!-- Header -->
<rect x="0" y="0" width="800" height="60" fill="url(#dashGrad1)" rx="12"/>
<text x="30" y="35" font-family="Inter, Arial, sans-serif" font-size="18" font-weight="600" fill="white">E-commerce Competitor Price Intelligence Dashboard</text>
<text x="700" y="35" font-family="Arial" font-size="12" fill="white" opacity="0.8">Live Data</text>
<!-- KPI Cards -->
<rect x="30" y="90" width="180" height="100" fill="white" stroke="#e1e5e9" stroke-width="1" rx="8"/>
<text x="50" y="115" font-family="Arial" font-size="12" fill="#666">Total Products Monitored</text>
<text x="50" y="140" font-family="Arial" font-size="32" font-weight="700" fill="url(#dashGrad1)">10,247</text>
<text x="50" y="165" font-family="Arial" font-size="10" fill="#28a745">↑ 5.2% vs last week</text>
<rect x="230" y="90" width="180" height="100" fill="white" stroke="#e1e5e9" stroke-width="1" rx="8"/>
<text x="250" y="115" font-family="Arial" font-size="12" fill="#666">Price Changes Today</text>
<text x="250" y="140" font-family="Arial" font-size="32" font-weight="700" fill="url(#dashGrad1)">1,234</text>
<text x="250" y="165" font-family="Arial" font-size="10" fill="#e74c3c">↑ 12.8% vs yesterday</text>
<rect x="430" y="90" width="180" height="100" fill="white" stroke="#e1e5e9" stroke-width="1" rx="8"/>
<text x="450" y="115" font-family="Arial" font-size="12" fill="#666">Avg Price Difference</text>
<text x="450" y="140" font-family="Arial" font-size="32" font-weight="700" fill="url(#dashGrad1)">-£2.34</text>
<text x="450" y="165" font-family="Arial" font-size="10" fill="#28a745">Competitive advantage</text>
<rect x="630" y="90" width="140" height="100" fill="white" stroke="#e1e5e9" stroke-width="1" rx="8"/>
<text x="650" y="115" font-family="Arial" font-size="12" fill="#666">Market Position</text>
<text x="650" y="140" font-family="Arial" font-size="32" font-weight="700" fill="url(#dashGrad1)">#3</text>
<text x="650" y="165" font-family="Arial" font-size="10" fill="#ffc107">of 15 competitors</text>
<!-- Price Trend Chart -->
<rect x="30" y="220" width="370" height="250" fill="white" stroke="#e1e5e9" stroke-width="1" rx="8"/>
<text x="50" y="245" font-family="Arial" font-size="14" font-weight="600" fill="#333">Price Trends - Last 30 Days</text>
<!-- Chart Lines -->
<polyline points="60,420 100,400 140,390 180,385 220,380 260,375 300,370 340,365 380,360"
stroke="#667eea" stroke-width="3" fill="none"/>
<polyline points="60,430 100,425 140,420 180,415 220,410 260,405 300,400 340,395 380,390"
stroke="#e74c3c" stroke-width="2" fill="none" stroke-dasharray="5,5"/>
<polyline points="60,440 100,438 140,435 180,430 220,425 260,420 300,415 340,410 380,405"
stroke="#28a745" stroke-width="2" fill="none" stroke-dasharray="3,3"/>
<!-- Legend -->
<rect x="60" y="260" width="10" height="3" fill="#667eea"/>
<text x="75" y="268" font-family="Arial" font-size="10" fill="#666">Your Prices</text>
<rect x="140" y="260" width="10" height="3" fill="#e74c3c"/>
<text x="155" y="268" font-family="Arial" font-size="10" fill="#666">Competitor A</text>
<rect x="220" y="260" width="10" height="3" fill="#28a745"/>
<text x="235" y="268" font-family="Arial" font-size="10" fill="#666">Market Average</text>
<!-- Top Competitors Table -->
<rect x="420" y="220" width="350" height="250" fill="white" stroke="#e1e5e9" stroke-width="1" rx="8"/>
<text x="440" y="245" font-family="Arial" font-size="14" font-weight="600" fill="#333">Top Competitors by Volume</text>
<!-- Table Headers -->
<text x="440" y="270" font-family="Arial" font-size="11" font-weight="600" fill="#666">Competitor</text>
<text x="580" y="270" font-family="Arial" font-size="11" font-weight="600" fill="#666">Avg Price</text>
<text x="680" y="270" font-family="Arial" font-size="11" font-weight="600" fill="#666">Change</text>
<!-- Table Rows -->
<text x="440" y="295" font-family="Arial" font-size="11" fill="#333">Amazon UK</text>
<text x="580" y="295" font-family="Arial" font-size="11" fill="#333">£24.99</text>
<text x="680" y="295" font-family="Arial" font-size="11" fill="#e74c3c">+2.1%</text>
<text x="440" y="320" font-family="Arial" font-size="11" fill="#333">John Lewis</text>
<text x="580" y="320" font-family="Arial" font-size="11" fill="#333">£27.50</text>
<text x="680" y="320" font-family="Arial" font-size="11" fill="#28a745">-1.5%</text>
<text x="440" y="345" font-family="Arial" font-size="11" fill="#333">Next</text>
<text x="580" y="345" font-family="Arial" font-size="11" fill="#333">£23.99</text>
<text x="680" y="345" font-family="Arial" font-size="11" fill="#ffc107">0.0%</text>
<text x="440" y="370" font-family="Arial" font-size="11" fill="#333">ASOS</text>
<text x="580" y="370" font-family="Arial" font-size="11" fill="#333">£22.75</text>
<text x="680" y="370" font-family="Arial" font-size="11" fill="#e74c3c">+5.2%</text>
<text x="440" y="395" font-family="Arial" font-size="11" fill="#333">Zara</text>
<text x="580" y="395" font-family="Arial" font-size="11" fill="#333">£29.99</text>
<text x="680" y="395" font-family="Arial" font-size="11" fill="#28a745">-3.1%</text>
<!-- Status Indicators -->
<circle cx="760" cy="30" r="5" fill="#28a745"/>
<text x="680" y="35" font-family="Arial" font-size="10" fill="white" opacity="0.8">Data Fresh</text>
<!-- Timestamp -->
<text x="30" y="490" font-family="Arial" font-size="10" fill="#999">Last updated: Today 14:23 GMT | Data sources: 15 competitors | Update frequency: Real-time</text>
</svg>

After

Width:  |  Height:  |  Size: 6.2 KiB

View File

@@ -0,0 +1,132 @@
<svg width="800" height="500" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="finGrad" 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>
<!-- Dashboard Background -->
<rect width="800" height="500" fill="#f8f9fa" rx="12"/>
<!-- Header -->
<rect x="0" y="0" width="800" height="60" fill="url(#finGrad)" rx="12"/>
<text x="30" y="35" font-family="Inter, Arial, sans-serif" font-size="18" font-weight="600" fill="white">Financial Market Intelligence Dashboard</text>
<text x="650" y="35" font-family="Arial" font-size="12" fill="white" opacity="0.8">Real-time Analytics</text>
<!-- Market Sentiment -->
<rect x="30" y="90" width="200" height="120" fill="white" stroke="#e1e5e9" stroke-width="1" rx="8"/>
<text x="50" y="115" font-family="Arial" font-size="14" font-weight="600" fill="#333">Market Sentiment</text>
<!-- Sentiment gauge -->
<circle cx="130" cy="160" r="35" fill="none" stroke="#e1e5e9" stroke-width="8"/>
<circle cx="130" cy="160" r="35" fill="none" stroke="#28a745" stroke-width="8"
stroke-dasharray="110 220" stroke-dashoffset="55" transform="rotate(-90 130 160)"/>
<text x="130" y="167" font-family="Arial" font-size="16" font-weight="700" fill="#28a745" text-anchor="middle">72%</text>
<text x="130" y="185" font-family="Arial" font-size="10" fill="#666" text-anchor="middle">Bullish</text>
<!-- News Analytics -->
<rect x="250" y="90" width="260" height="120" fill="white" stroke="#e1e5e9" stroke-width="1" rx="8"/>
<text x="270" y="115" font-family="Arial" font-size="14" font-weight="600" fill="#333">News Analytics - Last 24h</text>
<!-- News bars -->
<rect x="280" y="130" width="60" height="30" fill="#28a745" rx="2"/>
<text x="310" y="150" font-family="Arial" font-size="10" fill="white" text-anchor="middle">142</text>
<text x="310" y="175" font-family="Arial" font-size="9" fill="#666" text-anchor="middle">Positive</text>
<rect x="350" y="135" width="60" height="25" fill="#ffc107" rx="2"/>
<text x="380" y="152" font-family="Arial" font-size="10" fill="white" text-anchor="middle">89</text>
<text x="380" y="175" font-family="Arial" font-size="9" fill="#666" text-anchor="middle">Neutral</text>
<rect x="420" y="145" width="60" height="15" fill="#e74c3c" rx="2"/>
<text x="450" y="156" font-family="Arial" font-size="10" fill="white" text-anchor="middle">34</text>
<text x="450" y="175" font-family="Arial" font-size="9" fill="#666" text-anchor="middle">Negative</text>
<!-- Social Media Trends -->
<rect x="530" y="90" width="240" height="120" fill="white" stroke="#e1e5e9" stroke-width="1" rx="8"/>
<text x="550" y="115" font-family="Arial" font-size="14" font-weight="600" fill="#333">Social Media Trends</text>
<text x="550" y="140" font-family="Arial" font-size="11" fill="#333">#1 Trending: $NVDA</text>
<text x="700" y="140" font-family="Arial" font-size="10" fill="#28a745">+15.2K mentions</text>
<text x="550" y="160" font-family="Arial" font-size="11" fill="#333">#2 Trending: $TSLA</text>
<text x="700" y="160" font-family="Arial" font-size="10" fill="#e74c3c">-8.7K mentions</text>
<text x="550" y="180" font-family="Arial" font-size="11" fill="#333">#3 Trending: $AAPL</text>
<text x="700" y="180" font-family="Arial" font-size="10" fill="#28a745">+12.1K mentions</text>
<!-- Price Movement Predictions -->
<rect x="30" y="230" width="370" height="240" fill="white" stroke="#e1e5e9" stroke-width="1" rx="8"/>
<text x="50" y="255" font-family="Arial" font-size="14" font-weight="600" fill="#333">Price Movement Predictions</text>
<!-- Stock prediction chart -->
<text x="50" y="280" font-family="Arial" font-size="12" font-weight="600" fill="#667eea">FTSE 100 - Next 5 Days</text>
<!-- Chart area -->
<line x1="60" y1="430" x2="380" y2="430" stroke="#e1e5e9" stroke-width="1"/>
<line x1="60" y1="300" x2="60" y2="430" stroke="#e1e5e9" stroke-width="1"/>
<!-- Prediction line -->
<polyline points="60,420 120,410 180,405 240,400 300,395 360,390"
stroke="#667eea" stroke-width="3" fill="none"/>
<!-- Confidence band -->
<polyline points="60,425 120,415 180,410 240,408 300,405 360,400"
stroke="#667eea" stroke-width="1" fill="none" opacity="0.5" stroke-dasharray="2,2"/>
<polyline points="60,415 120,405 180,400 240,392 300,385 360,380"
stroke="#667eea" stroke-width="1" fill="none" opacity="0.5" stroke-dasharray="2,2"/>
<!-- Axis labels -->
<text x="40" y="425" font-family="Arial" font-size="8" fill="#666">7800</text>
<text x="40" y="395" font-family="Arial" font-size="8" fill="#666">7900</text>
<text x="40" y="365" font-family="Arial" font-size="8" fill="#666">8000</text>
<text x="60" y="445" font-family="Arial" font-size="8" fill="#666">Mon</text>
<text x="180" y="445" font-family="Arial" font-size="8" fill="#666">Wed</text>
<text x="300" y="445" font-family="Arial" font-size="8" fill="#666">Fri</text>
<!-- Model accuracy -->
<text x="50" y="385" font-family="Arial" font-size="10" fill="#28a745">Accuracy: 84.7% | Confidence: High</text>
<!-- Alternative Data Sources -->
<rect x="420" y="230" width="350" height="240" fill="white" stroke="#e1e5e9" stroke-width="1" rx="8"/>
<text x="440" y="255" font-family="Arial" font-size="14" font-weight="600" fill="#333">Alternative Data Sources</text>
<!-- Data source status -->
<text x="440" y="280" font-family="Arial" font-size="12" font-weight="600" fill="#333">Real-time Feeds</text>
<circle cx="450" cy="300" r="3" fill="#28a745"/>
<text x="460" y="305" font-family="Arial" font-size="11" fill="#333">Reuters News API</text>
<text x="680" y="305" font-family="Arial" font-size="10" fill="#28a745">Active</text>
<circle cx="450" cy="320" r="3" fill="#28a745"/>
<text x="460" y="325" font-family="Arial" font-size="11" fill="#333">Twitter Financial</text>
<text x="680" y="325" font-family="Arial" font-size="10" fill="#28a745">Active</text>
<circle cx="450" cy="340" r="3" fill="#28a745"/>
<text x="460" y="345" font-family="Arial" font-size="11" fill="#333">Reddit WSB</text>
<text x="680" y="345" font-family="Arial" font-size="10" fill="#28a745">Active</text>
<circle cx="450" cy="360" r="3" fill="#ffc107"/>
<text x="460" y="365" font-family="Arial" font-size="11" fill="#333">Google Trends</text>
<text x="680" y="365" font-family="Arial" font-size="10" fill="#ffc107">Delayed</text>
<circle cx="450" cy="380" r="3" fill="#28a745"/>
<text x="460" y="385" font-family="Arial" font-size="11" fill="#333">Economic Calendar</text>
<text x="680" y="385" font-family="Arial" font-size="10" fill="#28a745">Active</text>
<!-- Performance metrics -->
<text x="440" y="415" font-family="Arial" font-size="12" font-weight="600" fill="#333">Today's Performance</text>
<text x="440" y="435" font-family="Arial" font-size="10" fill="#666">Data Points Processed:</text>
<text x="680" y="435" font-family="Arial" font-size="10" font-weight="600" fill="#667eea">1.2M</text>
<text x="440" y="450" font-family="Arial" font-size="10" fill="#666">Signals Generated:</text>
<text x="680" y="450" font-family="Arial" font-size="10" font-weight="600" fill="#28a745">47</text>
<!-- Status indicator -->
<circle cx="760" cy="30" r="5" fill="#28a745"/>
<!-- Timestamp -->
<text x="30" y="490" font-family="Arial" font-size="10" fill="#999">Last updated: Today 15:42 GMT | Data latency: &lt;2ms | Model accuracy: 84.7% | Sources: 12 active</text>
</svg>

After

Width:  |  Height:  |  Size: 7.6 KiB

View File

@@ -0,0 +1,112 @@
<svg width="800" height="500" viewBox="0 0 800 500" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="headerGrad" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" style="stop-color:#667eea;stop-opacity:1" />
<stop offset="100%" style="stop-color:#764ba2;stop-opacity:1" />
</linearGradient>
<linearGradient id="cardGrad" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" style="stop-color:#f8f9ff;stop-opacity:1" />
<stop offset="100%" style="stop-color:#ffffff;stop-opacity:1" />
</linearGradient>
<filter id="shadow" x="-20%" y="-20%" width="140%" height="140%">
<feDropShadow dx="0" dy="2" stdDeviation="4" flood-color="#000000" flood-opacity="0.1"/>
</filter>
</defs>
<!-- Main Background -->
<rect width="800" height="500" fill="#f5f7fa" rx="12"/>
<!-- Header Bar -->
<rect x="0" y="0" width="800" height="60" fill="url(#headerGrad)" rx="12"/>
<rect x="0" y="48" width="800" height="12" fill="url(#headerGrad)"/>
<!-- Header Content -->
<text x="24" y="32" font-family="Inter, -apple-system, sans-serif" font-size="20" font-weight="700" fill="white">Property Investment Dashboard</text>
<text x="24" y="48" font-family="Inter, -apple-system, sans-serif" font-size="12" font-weight="400" fill="rgba(255,255,255,0.8)">Real-time market intelligence & investment opportunities</text>
<!-- Status Indicator -->
<circle cx="720" cy="25" r="6" fill="#00ff88"/>
<text x="735" y="30" font-family="Inter, -apple-system, sans-serif" font-size="12" font-weight="600" fill="white">LIVE</text>
<!-- Refresh Icon -->
<circle cx="760" cy="25" r="12" fill="rgba(255,255,255,0.2)" stroke="rgba(255,255,255,0.3)" stroke-width="1"/>
<path d="M 755 20 A 5 5 0 1 1 765 20 M 765 18 L 767 20 L 765 22" stroke="white" stroke-width="1.5" fill="none"/>
<!-- Market Overview Section -->
<rect x="20" y="80" width="360" height="180" fill="white" stroke="#e2e8f0" stroke-width="1" rx="8" filter="url(#shadow)"/>
<rect x="20" y="80" width="360" height="40" fill="url(#cardGrad)" rx="8"/>
<rect x="20" y="112" width="360" height="8" fill="url(#cardGrad)"/>
<text x="32" y="100" font-family="Inter, -apple-system, sans-serif" font-size="16" font-weight="600" fill="#1e293b">London Investment Hotspots</text>
<text x="32" y="115" font-family="Inter, -apple-system, sans-serif" font-size="11" fill="#64748b">Price growth & opportunity analysis</text>
<!-- Map Area -->
<rect x="32" y="130" width="200" height="120" fill="#f1f5f9" stroke="#cbd5e1" stroke-width="1" rx="4"/>
<!-- Simplified London Map -->
<path d="M 80 160 Q 100 150 120 155 Q 140 160 160 155 Q 180 150 200 160 Q 210 180 200 200 Q 180 210 160 205 Q 140 200 120 205 Q 100 210 80 200 Q 70 180 80 160 Z"
fill="#ddd6fe" stroke="#8b5cf6" stroke-width="1"/>
<!-- Location Markers -->
<circle cx="120" cy="175" r="8" fill="#ef4444"/>
<text x="116" y="180" font-family="Inter, -apple-system, sans-serif" font-size="10" font-weight="700" fill="white">1</text>
<circle cx="160" cy="185" r="6" fill="#f59e0b"/>
<text x="157" y="189" font-family="Inter, -apple-system, sans-serif" font-size="9" font-weight="700" fill="white">2</text>
<circle cx="140" cy="200" r="5" fill="#10b981"/>
<text x="138" y="204" font-family="Inter, -apple-system, sans-serif" font-size="8" font-weight="700" fill="white">3</text>
<!-- Legend -->
<rect x="250" y="140" width="120" height="90" fill="#fafbfc" stroke="#e2e8f0" stroke-width="1" rx="4"/>
<text x="260" y="155" font-family="Inter, -apple-system, sans-serif" font-size="12" font-weight="600" fill="#334155">Growth Zones</text>
<circle cx="265" cy="170" r="4" fill="#ef4444"/>
<text x="275" y="174" font-family="Inter, -apple-system, sans-serif" font-size="10" fill="#475569">High (>15%)</text>
<circle cx="265" cy="185" r="4" fill="#f59e0b"/>
<text x="275" y="189" font-family="Inter, -apple-system, sans-serif" font-size="10" fill="#475569">Medium (8-15%)</text>
<circle cx="265" cy="200" r="4" fill="#10b981"/>
<text x="275" y="204" font-family="Inter, -apple-system, sans-serif" font-size="10" fill="#475569">Emerging (<8%)</text>
<text x="260" y="220" font-family="Inter, -apple-system, sans-serif" font-size="9" font-weight="500" fill="#10b981">📈 156 opportunities</text>
<!-- Top Opportunities Section -->
<rect x="400" y="80" width="380" height="180" fill="white" stroke="#e2e8f0" stroke-width="1" rx="8" filter="url(#shadow)"/>
<rect x="400" y="80" width="380" height="40" fill="url(#cardGrad)" rx="8"/>
<rect x="400" y="112" width="380" height="8" fill="url(#cardGrad)"/>
<text x="412" y="100" font-family="Inter, -apple-system, sans-serif" font-size="16" font-weight="600" fill="#1e293b">Investment Opportunities</text>
<text x="412" y="115" font-family="Inter, -apple-system, sans-serif" font-size="11" fill="#64748b">AI-ranked by potential ROI</text>
<!-- Property Cards -->
<rect x="412" y="130" width="175" height="55" fill="#fefefe" stroke="#667eea" stroke-width="1" rx="6"/>
<rect x="412" y="130" width="175" height="20" fill="url(#headerGrad)" rx="6"/>
<rect x="412" y="144" width="175" height="6" fill="url(#headerGrad)"/>
<text x="420" y="143" font-family="Inter, -apple-system, sans-serif" font-size="11" font-weight="600" fill="white">3 Bed House • SE1 4AA</text>
<text x="420" y="165" font-family="Inter, -apple-system, sans-serif" font-size="13" font-weight="700" fill="#1e293b">£485,000</text>
<text x="420" y="178" font-family="Inter, -apple-system, sans-serif" font-size="10" font-weight="600" fill="#059669">ROI: 12.3% • Score: 9.2/10</text>
<rect x="595" y="130" width="175" height="55" fill="#fefefe" stroke="#667eea" stroke-width="1" rx="6"/>
<rect x="595" y="130" width="175" height="20" fill="url(#headerGrad)" rx="6"/>
<rect x="595" y="144" width="175" height="6" fill="url(#headerGrad)"/>
<text x="603" y="143" font-family="Inter, -apple-system, sans-serif" font-size="11" font-weight="600" fill="white">2 Bed Flat • E14 9SN</text>
<text x="603" y="165" font-family="Inter, -apple-system, sans-serif" font-size="13" font-weight="700" fill="#1e293b">£325,000</text>
<text x="603" y="178" font-family="Inter, -apple-system, sans-serif" font-size="10" font-weight="600" fill="#059669">ROI: 11.8% • Score: 8.9/10</text>
<rect x="412" y="195" width="175" height="55" fill="#fefefe" stroke="#667eea" stroke-width="1" rx="6"/>
<rect x="412" y="195" width="175" height="20" fill="url(#headerGrad)" rx="6"/>
<rect x="412" y="209" width="175" height="6" fill="url(#headerGrad)"/>
<text x="420" y="208" font-family="Inter, -apple-system, sans-serif" font-size="11" font-weight="600" fill="white">1 Bed Flat • SW3 6LB</text>
<text x="420" y="230" font-family="Inter, -apple-system, sans-serif" font-size="13" font-weight="700" fill="#1e293b">£625,000</text>
<text x="420" y="243" font-family="Inter, -apple-system, sans-serif" font-size="10" font-weight="600" fill="#059669">ROI: 9.2% • Score: 8.1/10</text>
<rect x="595" y="195" width="175" height="55" fill="#fefefe" stroke="#667eea" stroke-width="1" rx="6"/>
<rect x="595" y="195" width="175" height="20" fill="url(#headerGrad)" rx="6"/>
<rect x="595" y="209" width="175" height="6" fill="url(#headerGrad)"/>
<text x="603" y="208" font-family="Inter, -apple-

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 894 B

15
assets/images/favicon.svg Normal file
View File

@@ -0,0 +1,15 @@
<svg width="32" height="32" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="faviconGrad" 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>
<!-- Favicon background -->
<rect width="32" height="32" fill="url(#faviconGrad)" rx="6"/>
<!-- UK initials -->
<text x="16" y="22" font-family="Arial, sans-serif" font-size="16" font-weight="bold" fill="white" text-anchor="middle">UK</text>
<!-- Data symbol -->
<rect x="6" y="6" width="20" height="2" fill="white" opacity="0.8" rx="1"/>
<rect x="8" y="9" width="16" height="1" fill="white" opacity="0.6" rx="0.5"/>
</svg>

After

Width:  |  Height:  |  Size: 756 B

View File

@@ -0,0 +1,27 @@
<svg width="500" height="400" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="heroGrad" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" style="stop-color:#667eea;stop-opacity:0.8" />
<stop offset="100%" style="stop-color:#764ba2;stop-opacity:0.8" />
</linearGradient>
</defs>
<!-- Dashboard background -->
<rect x="50" y="50" width="400" height="300" fill="white" stroke="#e1e5e9" stroke-width="2" rx="16"/>
<!-- Charts and graphs -->
<rect x="80" y="80" width="150" height="100" fill="url(#heroGrad)" rx="8" opacity="0.3"/>
<rect x="250" y="80" width="150" height="60" fill="url(#heroGrad)" rx="8" opacity="0.5"/>
<rect x="250" y="160" width="150" height="60" fill="url(#heroGrad)" rx="8" opacity="0.4"/>
<!-- Data points -->
<circle cx="120" cy="130" r="4" fill="#667eea"/>
<circle cx="160" cy="110" r="4" fill="#764ba2"/>
<circle cx="200" cy="140" r="4" fill="#667eea"/>
<!-- Lines connecting data points -->
<line x1="120" y1="130" x2="160" y2="110" stroke="#667eea" stroke-width="2"/>
<line x1="160" y1="110" x2="200" y2="140" stroke="#667eea" stroke-width="2"/>
<!-- Title -->
<text x="250" y="30" font-family="Inter, Arial, sans-serif" font-size="24" font-weight="600" fill="#1a1a1a" text-anchor="middle">Data Analytics</text>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -0,0 +1,21 @@
<svg width="80" height="80" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="accuracyGrad" 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>
<!-- Target circles -->
<circle cx="40" cy="40" r="25" fill="none" stroke="url(#accuracyGrad)" stroke-width="2" opacity="0.3"/>
<circle cx="40" cy="40" r="18" fill="none" stroke="url(#accuracyGrad)" stroke-width="2" opacity="0.5"/>
<circle cx="40" cy="40" r="11" fill="none" stroke="url(#accuracyGrad)" stroke-width="2" opacity="0.7"/>
<!-- Bullseye center -->
<circle cx="40" cy="40" r="4" fill="url(#accuracyGrad)"/>
<!-- Arrow hitting center -->
<path d="M 20 20 L 36 36" stroke="url(#accuracyGrad)" stroke-width="3" marker-end="url(#accuracyArrow)"/>
<defs>
<marker id="accuracyArrow" markerWidth="10" markerHeight="10" refX="9" refY="3" orient="auto">
<polygon points="0 0, 10 3, 0 6" fill="#667eea"/>
</marker>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1,26 @@
<svg width="60" height="60" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="grad4" 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>
<!-- Workflow boxes -->
<rect x="8" y="20" width="12" height="8" fill="url(#grad4)" rx="2"/>
<rect x="24" y="15" width="12" height="8" fill="url(#grad4)" rx="2"/>
<rect x="40" y="20" width="12" height="8" fill="url(#grad4)" rx="2"/>
<!-- Connecting arrows -->
<path d="M 20 24 L 24 19" stroke="url(#grad4)" stroke-width="2" marker-end="url(#arrowhead2)"/>
<path d="M 36 19 L 40 24" stroke="url(#grad4)" stroke-width="2" marker-end="url(#arrowhead2)"/>
<defs>
<marker id="arrowhead2" markerWidth="8" markerHeight="6" refX="7" refY="3" orient="auto">
<polygon points="0 0, 8 3, 0 6" fill="#667eea"/>
</marker>
</defs>
<!-- API/automation symbols -->
<circle cx="14" cy="40" r="3" fill="url(#grad4)"/>
<circle cx="30" cy="40" r="3" fill="url(#grad4)"/>
<circle cx="46" cy="40" r="3" fill="url(#grad4)"/>
<line x1="17" y1="40" x2="27" y2="40" stroke="url(#grad4)" stroke-width="2"/>
<line x1="33" y1="40" x2="43" y2="40" stroke="url(#grad4)" stroke-width="2"/>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -0,0 +1,18 @@
<svg width="60" height="60" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="grad2" 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>
<!-- Chart bars -->
<rect x="15" y="35" width="8" height="15" fill="url(#grad2)" rx="2"/>
<rect x="25" y="25" width="8" height="25" fill="url(#grad2)" rx="2"/>
<rect x="35" y="20" width="8" height="30" fill="url(#grad2)" rx="2"/>
<!-- Trend line -->
<polyline points="19,42 29,32 39,27" stroke="#667eea" stroke-width="2" fill="none"/>
<!-- Data points -->
<circle cx="19" cy="42" r="2" fill="#764ba2"/>
<circle cx="29" cy="32" r="2" fill="#764ba2"/>
<circle cx="39" cy="27" r="2" fill="#764ba2"/>
</svg>

After

Width:  |  Height:  |  Size: 836 B

View File

@@ -0,0 +1,25 @@
<svg width="80" height="80" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="complianceGrad" 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>
<!-- Document/certificate -->
<rect x="20" y="15" width="40" height="50" fill="white" stroke="url(#complianceGrad)" stroke-width="2" rx="4"/>
<!-- GDPR badge -->
<circle cx="40" cy="30" r="8" fill="url(#complianceGrad)"/>
<text x="40" y="27" font-family="Arial" font-size="6" fill="white" text-anchor="middle" font-weight="bold">GDPR</text>
<text x="40" y="34" font-family="Arial" font-size="4" fill="white" text-anchor="middle">COMPLIANT</text>
<!-- Checkmarks -->
<polyline points="25,45 28,48 35,41" stroke="url(#complianceGrad)" stroke-width="2" fill="none"/>
<polyline points="25,55 28,58 35,51" stroke="url(#complianceGrad)" stroke-width="2" fill="none"/>
<!-- Legal scales -->
<line x1="45" y1="45" x2="55" y2="45" stroke="url(#complianceGrad)" stroke-width="2"/>
<line x1="50" y1="40" x2="50" y2="45" stroke="url(#complianceGrad)" stroke-width="2"/>
<circle cx="47" cy="47" r="2" fill="none" stroke="url(#complianceGrad)" stroke-width="1.5"/>
<circle cx="53" cy="47" r="2" fill="none" stroke="url(#complianceGrad)" stroke-width="1.5"/>
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@@ -0,0 +1,15 @@
<svg width="60" height="60" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="grad5" 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>
<!-- Shield shape -->
<path d="M 30 10 L 20 15 L 20 35 Q 20 45 30 50 Q 40 45 40 35 L 40 15 Z" fill="url(#grad5)"/>
<!-- Lock icon inside -->
<rect x="26" y="28" width="8" height="6" fill="white" rx="1"/>
<path d="M 28 28 L 28 25 Q 28 23 30 23 Q 32 23 32 25 L 32 28" fill="none" stroke="white" stroke-width="1.5"/>
<!-- Checkmark -->
<polyline points="25,20 28,23 35,16" stroke="white" stroke-width="2" fill="none"/>
</svg>

After

Width:  |  Height:  |  Size: 749 B

View File

@@ -0,0 +1,18 @@
<svg width="60" height="60" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="grad6" 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>
<!-- Person icon -->
<circle cx="25" cy="18" r="4" fill="url(#grad6)"/>
<path d="M 17 35 Q 17 28 25 28 Q 33 28 33 35 L 33 40 L 17 40 Z" fill="url(#grad6)"/>
<!-- Speech bubble/consulting -->
<ellipse cx="40" cy="25" rx="8" ry="6" fill="none" stroke="url(#grad6)" stroke-width="2"/>
<path d="M 35 28 L 32 32 L 35 30 Z" fill="url(#grad6)"/>
<!-- Chart/strategy lines inside bubble -->
<line x1="37" y1="23" x2="43" y2="23" stroke="url(#grad6)" stroke-width="1"/>
<line x1="37" y1="25" x2="41" y2="25" stroke="url(#grad6)" stroke-width="1"/>
<line x1="37" y1="27" x2="43" y2="27" stroke="url(#grad6)" stroke-width="1"/>
</svg>

After

Width:  |  Height:  |  Size: 956 B

View File

@@ -0,0 +1,28 @@
<svg width="60" height="60" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="grad3" 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>
<!-- Database/file icons -->
<rect x="12" y="15" width="16" height="20" fill="none" stroke="url(#grad3)" stroke-width="2" rx="2"/>
<rect x="32" y="15" width="16" height="20" fill="none" stroke="url(#grad3)" stroke-width="2" rx="2"/>
<!-- Data lines inside -->
<line x1="15" y1="20" x2="25" y2="20" stroke="url(#grad3)" stroke-width="1"/>
<line x1="15" y1="25" x2="25" y2="25" stroke="url(#grad3)" stroke-width="1"/>
<line x1="15" y1="30" x2="25" y2="30" stroke="url(#grad3)" stroke-width="1"/>
<line x1="35" y1="20" x2="45" y2="20" stroke="url(#grad3)" stroke-width="1"/>
<line x1="35" y1="25" x2="45" y2="25" stroke="url(#grad3)" stroke-width="1"/>
<line x1="35" y1="30" x2="45" y2="30" stroke="url(#grad3)" stroke-width="1"/>
<!-- Processing arrow -->
<path d="M 28 25 L 32 25" stroke="url(#grad3)" stroke-width="2" marker-end="url(#arrowhead)"/>
<defs>
<marker id="arrowhead" markerWidth="10" markerHeight="7" refX="9" refY="3.5" orient="auto">
<polygon points="0 0, 10 3.5, 0 7" fill="#667eea"/>
</marker>
</defs>
<!-- Gear/processing icon -->
<circle cx="30" cy="40" r="6" fill="none" stroke="url(#grad3)" stroke-width="2"/>
<circle cx="30" cy="40" r="2" fill="url(#grad3)"/>
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

View File

@@ -0,0 +1,15 @@
<svg width="40" height="40" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="emailGrad" 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>
<!-- Envelope -->
<rect x="6" y="12" width="28" height="18" fill="url(#emailGrad)" rx="2"/>
<!-- Envelope flap -->
<path d="M 6 12 L 20 22 L 34 12" stroke="white" stroke-width="2" fill="none"/>
<!-- @ symbol inside -->
<circle cx="20" cy="21" r="3" fill="none" stroke="white" stroke-width="1"/>
<circle cx="22" cy="21" r="1" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 677 B

View File

@@ -0,0 +1,16 @@
<svg width="40" height="40" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="linkedinGrad" 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>
<!-- LinkedIn background -->
<rect x="4" y="4" width="32" height="32" fill="url(#linkedinGrad)" rx="6"/>
<!-- LinkedIn "in" -->
<rect x="9" y="16" width="3" height="12" fill="white"/>
<circle cx="10.5" cy="12" r="1.5" fill="white"/>
<rect x="15" y="16" width="3" height="12" fill="white"/>
<rect x="19" y="20" width="3" height="8" fill="white"/>
<path d="M 19 20 Q 19 18 21 18 Q 23 18 23 20 L 23 28 L 26 28 L 26 19 Q 26 16 23 16 Q 20 16 19 18" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 801 B

View File

@@ -0,0 +1,15 @@
<svg width="40" height="40" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="locationGrad" 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>
<!-- Location pin -->
<path d="M 20 8 Q 14 8 14 14 Q 14 20 20 28 Q 26 20 26 14 Q 26 8 20 8 Z" fill="url(#locationGrad)"/>
<!-- Center dot -->
<circle cx="20" cy="14" r="3" fill="white"/>
<!-- UK flag pattern -->
<line x1="19" y1="13" x2="21" y2="15" stroke="#e74c3c" stroke-width="0.5"/>
<line x1="21" y1="13" x2="19" y2="15" stroke="#e74c3c" stroke-width="0.5"/>
</svg>

After

Width:  |  Height:  |  Size: 704 B

View File

@@ -0,0 +1,16 @@
<svg width="40" height="40" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="phoneGrad" 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>
<!-- Phone body -->
<rect x="12" y="8" width="16" height="24" fill="url(#phoneGrad)" rx="3"/>
<!-- Screen -->
<rect x="14" y="12" width="12" height="16" fill="white" rx="1"/>
<!-- Speaker -->
<rect x="16" y="10" width="8" height="1" fill="white" rx="0.5"/>
<!-- Home button -->
<circle cx="20" cy="30" r="1" fill="white"/>
</svg>

After

Width:  |  Height:  |  Size: 662 B

View File

@@ -0,0 +1,26 @@
<svg width="80" height="80" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="scaleGrad" 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>
<!-- Expanding boxes representing scalability -->
<rect x="30" y="50" width="20" height="15" fill="url(#scaleGrad)" rx="2" opacity="0.8"/>
<rect x="20" y="35" width="40" height="20" fill="none" stroke="url(#scaleGrad)" stroke-width="2" rx="2" opacity="0.6"/>
<rect x="10" y="20" width="60" height="25" fill="none" stroke="url(#scaleGrad)" stroke-width="2" rx="2" opacity="0.4"/>
<!-- Upward arrows -->
<path d="M 25 30 L 30 25 L 35 30" stroke="url(#scaleGrad)" stroke-width="2" fill="none" marker-end="url(#scaleArrow)"/>
<path d="M 45 30 L 50 25 L 55 30" stroke="url(#scaleGrad)" stroke-width="2" fill="none" marker-end="url(#scaleArrow)"/>
<!-- Infinity symbol -->
<path d="M 25 60 Q 30 55 35 60 Q 40 65 45 60 Q 50 55 55 60 Q 50 65 45 60 Q 40 55 35 60 Q 30 65 25 60"
fill="none" stroke="url(#scaleGrad)" stroke-width="2"/>
<defs>
<marker id="scaleArrow" markerWidth="8" markerHeight="8" refX="7" refY="2" orient="auto">
<polygon points="0 0, 8 2, 0 4" fill="#667eea"/>
</marker>
</defs>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -0,0 +1,17 @@
<svg width="80" height="80" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="securityGrad" 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>
<!-- Shield -->
<path d="M 40 10 L 25 18 L 25 45 Q 25 60 40 65 Q 55 60 55 45 L 55 18 Z" fill="url(#securityGrad)"/>
<!-- Lock inside shield -->
<rect x="35" y="40" width="10" height="8" fill="white" rx="1"/>
<path d="M 37 40 L 37 35 Q 37 32 40 32 Q 43 32 43 35 L 43 40" fill="none" stroke="white" stroke-width="2"/>
<!-- Security patterns -->
<circle cx="40" cy="25" r="2" fill="white" opacity="0.8"/>
<circle cx="35" cy="30" r="1.5" fill="white" opacity="0.6"/>
<circle cx="45" cy="30" r="1.5" fill="white" opacity="0.6"/>
</svg>

After

Width:  |  Height:  |  Size: 868 B

View File

@@ -0,0 +1,17 @@
<svg width="80" height="80" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="speedGrad" 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>
<!-- Lightning bolt -->
<path d="M 35 15 L 25 35 L 35 35 L 30 55 L 50 30 L 40 30 L 45 15 Z" fill="url(#speedGrad)"/>
<!-- Speed lines -->
<line x1="15" y1="25" x2="25" y2="25" stroke="url(#speedGrad)" stroke-width="2" opacity="0.6"/>
<line x1="15" y1="35" x2="23" y2="35" stroke="url(#speedGrad)" stroke-width="2" opacity="0.6"/>
<line x1="15" y1="45" x2="25" y2="45" stroke="url(#speedGrad)" stroke-width="2" opacity="0.6"/>
<line x1="50" y1="20" x2="60" y2="20" stroke="url(#speedGrad)" stroke-width="2" opacity="0.6"/>
<line x1="52" y1="30" x2="65" y2="30" stroke="url(#speedGrad)" stroke-width="2" opacity="0.6"/>
<line x1="50" y1="40" x2="60" y2="40" stroke="url(#speedGrad)" stroke-width="2" opacity="0.6"/>
</svg>

After

Width:  |  Height:  |  Size: 1.0 KiB

View File

@@ -0,0 +1,26 @@
<svg width="80" height="80" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="supportGrad" 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>
<!-- Headset -->
<path d="M 25 35 Q 25 25 40 25 Q 55 25 55 35 L 55 45 Q 55 50 50 50 L 47 50 L 47 40 L 53 40 L 53 35 Q 53 30 40 30 Q 27 30 27 35 L 27 40 L 33 40 L 33 50 L 30 50 Q 25 50 25 45 Z"
fill="url(#supportGrad)"/>
<!-- Microphone -->
<rect x="38" y="45" width="4" height="8" fill="url(#supportGrad)" rx="2"/>
<line x1="40" y1="53" x2="40" y2="58" stroke="url(#supportGrad)" stroke-width="2"/>
<line x1="36" y1="58" x2="44" y2="58" stroke="url(#supportGrad)" stroke-width="2"/>
<!-- 24/7 indicators -->
<circle cx="15" cy="15" r="3" fill="url(#supportGrad)"/>
<circle cx="65" cy="15" r="3" fill="url(#supportGrad)"/>
<text x="15" y="18" font-family="Arial" font-size="8" fill="white" text-anchor="middle">24</text>
<text x="65" y="18" font-family="Arial" font-size="8" fill="white" text-anchor="middle">7</text>
<!-- Support waves -->
<path d="M 15 45 Q 25 40 35 45" stroke="url(#supportGrad)" stroke-width="1.5" fill="none" opacity="0.6"/>
<path d="M 45 45 Q 55 40 65 45" stroke="url(#supportGrad)" stroke-width="1.5" fill="none" opacity="0.6"/>
</svg>

After

Width:  |  Height:  |  Size: 1.4 KiB

View File

@@ -0,0 +1,12 @@
<svg width="40" height="40" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="twitterGrad" 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>
<!-- Twitter/X background -->
<rect x="4" y="4" width="32" height="32" fill="url(#twitterGrad)" rx="6"/>
<!-- X symbol -->
<path d="M 14 14 L 26 26 M 26 14 L 14 26" stroke="white" stroke-width="3" stroke-linecap="round"/>
</svg>

After

Width:  |  Height:  |  Size: 555 B

View File

@@ -0,0 +1,12 @@
<svg width="60" height="60" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="grad1" 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"/>
</svg>

After

Width:  |  Height:  |  Size: 663 B

View File

@@ -0,0 +1,24 @@
<svg width="250" height="70" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="businessGrad" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" style="stop-color:#1e3a8a;stop-opacity:1" />
<stop offset="50%" style="stop-color:#3b82f6;stop-opacity:1" />
<stop offset="100%" style="stop-color:#60a5fa;stop-opacity:1" />
</linearGradient>
</defs>
<!-- Shield/badge background -->
<path d="M 20 10 L 60 10 Q 70 10 70 20 L 70 40 Q 70 60 50 60 L 30 60 Q 10 60 10 40 L 10 20 Q 10 10 20 10 Z"
fill="url(#businessGrad)" stroke="white" stroke-width="2"/>
<!-- UK initials in shield -->
<text x="40" y="35" font-family="Arial, sans-serif" font-size="20" font-weight="700" fill="white" text-anchor="middle">UK</text>
<text x="40" y="50" font-family="Arial, sans-serif" font-size="8" fill="white" text-anchor="middle" opacity="0.9">DATA</text>
<!-- Company name -->
<text x="85" y="25" font-family="Inter, Arial, sans-serif" font-size="18" font-weight="600" fill="#1e3a8a">UK Data Services</text>
<text x="85" y="42" font-family="Inter, Arial, sans-serif" font-size="11" font-weight="400" fill="#64748b">Professional Web Scraping & Analytics</text>
<!-- Established year -->
<text x="85" y="55" font-family="Inter, Arial, sans-serif" font-size="9" font-weight="500" fill="#94a3b8">Est. 2018</text>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -0,0 +1,27 @@
<svg width="280" height="60" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="corpGrad" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" style="stop-color:#334155;stop-opacity:1" />
<stop offset="100%" style="stop-color:#475569;stop-opacity:1" />
</linearGradient>
</defs>
<!-- Clean rectangular background -->
<rect x="0" y="0" width="280" height="60" fill="url(#corpGrad)" rx="8"/>
<!-- Data icon -->
<g transform="translate(15, 15)">
<!-- Database symbol -->
<ellipse cx="15" cy="8" rx="12" ry="4" fill="white" opacity="0.9"/>
<rect x="3" y="8" width="24" height="12" fill="white" opacity="0.9"/>
<ellipse cx="15" cy="20" rx="12" ry="4" fill="white" opacity="0.9"/>
<!-- Data flow lines -->
<line x1="30" y1="14" x2="45" y2="14" stroke="white" stroke-width="2" opacity="0.8"/>
<line x1="30" y1="18" x2="40" y2="18" stroke="white" stroke-width="2" opacity="0.6"/>
</g>
<!-- Company text -->
<text x="70" y="25" font-family="Inter, Arial, sans-serif" font-size="20" font-weight="600" fill="white">UK Data Services</text>
<text x="70" y="42" font-family="Inter, Arial, sans-serif" font-size="10" font-weight="400" fill="white" opacity="0.8">Web Scraping | Business Intelligence | Data Analytics</text>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -0,0 +1,24 @@
<svg width="300" height="80" xmlns="http://www.w3.org/2000/svg">
<!-- Background -->
<rect width="300" height="80" fill="white" rx="12"/>
<!-- Main company name -->
<text x="40" y="35" font-family="Inter, Arial, sans-serif" font-size="24" font-weight="700" fill="#1a1a1a">UK DATA</text>
<text x="40" y="60" font-family="Inter, Arial, sans-serif" font-size="24" font-weight="700" fill="#1a1a1a">SERVICES</text>
<!-- Professional tagline -->
<text x="185" y="35" font-family="Inter, Arial, sans-serif" font-size="11" font-weight="500" fill="#666">Professional Data Solutions</text>
<text x="185" y="50" font-family="Inter, Arial, sans-serif" font-size="11" font-weight="500" fill="#666">Web Scraping • Analytics • Intelligence</text>
<!-- Data visualization element -->
<g transform="translate(200, 20)">
<!-- Chart bars -->
<rect x="0" y="25" width="4" height="15" fill="#667eea" rx="2"/>
<rect x="8" y="20" width="4" height="20" fill="#667eea" rx="2"/>
<rect x="16" y="15" width="4" height="25" fill="#667eea" rx="2"/>
<rect x="24" y="10" width="4" height="30" fill="#667eea" rx="2"/>
<!-- Connecting line -->
<polyline points="2,32 10,27 18,22 26,17" stroke="#667eea" stroke-width="1.5" fill="none"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

View File

@@ -0,0 +1,31 @@
<svg width="300" height="80" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="enhancedLogoGrad" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" style="stop-color:#667eea;stop-opacity:1" />
<stop offset="100%" style="stop-color:#764ba2;stop-opacity:1" />
</linearGradient>
</defs>
<!-- Background with subtle pattern -->
<rect width="300" height="80" fill="url(#enhancedLogoGrad)" rx="12"/>
<!-- Main company name -->
<text x="40" y="35" font-family="Inter, Arial, sans-serif" font-size="24" font-weight="700" fill="white">UK DATA</text>
<text x="40" y="60" font-family="Inter, Arial, sans-serif" font-size="24" font-weight="700" fill="white">SERVICES</text>
<!-- Professional tagline -->
<text x="185" y="35" font-family="Inter, Arial, sans-serif" font-size="11" font-weight="500" fill="white" opacity="0.9">Professional Data Solutions</text>
<text x="185" y="50" font-family="Inter, Arial, sans-serif" font-size="11" font-weight="500" fill="white" opacity="0.9">Web Scraping • Analytics • Intelligence</text>
<!-- Data visualization element -->
<g transform="translate(200, 20)">
<!-- Chart bars -->
<rect x="0" y="25" width="4" height="15" fill="white" opacity="0.8" rx="2"/>
<rect x="8" y="20" width="4" height="20" fill="white" opacity="0.9" rx="2"/>
<rect x="16" y="15" width="4" height="25" fill="white" opacity="1" rx="2"/>
<rect x="24" y="10" width="4" height="30" fill="white" opacity="0.8" rx="2"/>
<!-- Connecting line -->
<polyline points="2,32 10,27 18,22 26,17" stroke="white" stroke-width="1.5" fill="none" opacity="0.7"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.6 KiB

View File

@@ -0,0 +1,4 @@
<svg width="200" height="50" xmlns="http://www.w3.org/2000/svg">
<rect width="200" height="50" fill="white" rx="8"/>
<text x="100" y="32" font-family="Inter, Arial, sans-serif" font-size="18" font-weight="600" fill="#1a1a1a" text-anchor="middle">UK Data Services</text>
</svg>

After

Width:  |  Height:  |  Size: 280 B

10
assets/images/logo.svg Normal file
View File

@@ -0,0 +1,10 @@
<svg width="200" height="50" xmlns="http://www.w3.org/2000/svg">
<defs>
<linearGradient id="logoGrad" x1="0%" y1="0%" x2="100%" y2="0%">
<stop offset="0%" style="stop-color:#667eea;stop-opacity:1" />
<stop offset="100%" style="stop-color:#764ba2;stop-opacity:1" />
</linearGradient>
</defs>
<rect width="200" height="50" fill="url(#logoGrad)" rx="8"/>
<text x="100" y="32" font-family="Inter, Arial, sans-serif" font-size="18" font-weight="600" fill="white" text-anchor="middle">UK Data Services</text>
</svg>

After

Width:  |  Height:  |  Size: 537 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB