1f695d3932
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
92 lines
7.6 KiB
XML
92 lines
7.6 KiB
XML
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1440 1560" font-family="Segoe UI, Arial, sans-serif">
|
||
<rect width="1440" height="1560" fill="#0B0E14"/>
|
||
<text x="120" y="44" fill="#E5A93D" font-family="Consolas, monospace" font-size="12">M6: homepage lower half — projects · experience timeline · about teaser · contact band</text>
|
||
|
||
<!-- ===== PROJECTS ===== -->
|
||
<text x="120" y="110" fill="#3ECFAE" font-family="Consolas, monospace" font-size="12" letter-spacing="2">02 — PROJECTS</text>
|
||
<text x="120" y="162" fill="#E8ECF2" font-size="39" font-weight="600">Built, shipped, and running</text>
|
||
|
||
<!-- card 1: JobTrack (hover state shown) -->
|
||
<rect x="120" y="200" width="588" height="470" rx="12" fill="#11151D" stroke="#E8ECF2" stroke-opacity="0.16"/>
|
||
<rect x="120" y="200" width="588" height="280" rx="12" fill="#171C26"/>
|
||
<rect x="120" y="464" width="588" height="16" fill="#171C26"/>
|
||
<text x="414" y="348" fill="#5C6675" font-size="12" text-anchor="middle">[ JobTrack — applications table screenshot, 4px hover shift ]</text>
|
||
<rect x="600" y="220" width="88" height="26" rx="13" fill="#0B0E14" stroke="#3ECFAE" stroke-opacity="0.4"/>
|
||
<circle cx="616" cy="233" r="3.5" fill="#3ECFAE"/>
|
||
<text x="628" y="238" fill="#3ECFAE" font-family="Consolas, monospace" font-size="10">ACTIVE</text>
|
||
<text x="148" y="524" fill="#E8ECF2" font-size="24" font-weight="600">JobTrack</text>
|
||
<line x1="148" y1="532" x2="248" y2="532" stroke="#3ECFAE" stroke-width="2"/>
|
||
<text x="148" y="556" fill="#9AA4B2" font-size="14">One workspace for the whole job-application journey —</text>
|
||
<text x="148" y="576" fill="#9AA4B2" font-size="14">pipeline, correspondence, attachments, AI summaries.</text>
|
||
<g font-family="Consolas, monospace" font-size="11" fill="#9AA4B2">
|
||
<rect x="148" y="594" width="60" height="24" rx="12" fill="#171C26"/><text x="178" y="610" text-anchor="middle">.NET 9</text>
|
||
<rect x="216" y="594" width="56" height="24" rx="12" fill="#171C26"/><text x="244" y="610" text-anchor="middle">React</text>
|
||
<rect x="280" y="594" width="66" height="24" rx="12" fill="#171C26"/><text x="313" y="610" text-anchor="middle">SQLite</text>
|
||
<rect x="354" y="594" width="66" height="24" rx="12" fill="#171C26"/><text x="387" y="610" text-anchor="middle">Ollama</text>
|
||
<rect x="428" y="594" width="66" height="24" rx="12" fill="#171C26"/><text x="461" y="610" text-anchor="middle">Docker</text>
|
||
</g>
|
||
<text x="148" y="646" fill="#3ECFAE" font-size="14">Read case study →→</text>
|
||
|
||
<!-- card 2: InboxIntel (rest state) -->
|
||
<rect x="732" y="200" width="588" height="470" rx="12" fill="#11151D" stroke="#E8ECF2" stroke-opacity="0.08"/>
|
||
<rect x="732" y="200" width="588" height="280" rx="12" fill="#171C26"/>
|
||
<rect x="732" y="464" width="588" height="16" fill="#171C26"/>
|
||
<text x="1026" y="348" fill="#5C6675" font-size="12" text-anchor="middle">[ InboxIntel — draggable analytics dashboard screenshot ]</text>
|
||
<rect x="1156" y="220" width="146" height="26" rx="13" fill="#0B0E14" stroke="#E5A93D" stroke-opacity="0.4"/>
|
||
<circle cx="1172" cy="233" r="3.5" fill="#E5A93D"/>
|
||
<text x="1184" y="238" fill="#E5A93D" font-family="Consolas, monospace" font-size="10">IN DEVELOPMENT</text>
|
||
<text x="760" y="524" fill="#E8ECF2" font-size="24" font-weight="600">InboxIntel</text>
|
||
<text x="760" y="556" fill="#9AA4B2" font-size="14">Gmail analytics and safe bulk cleanup — Clean Architecture,</text>
|
||
<text x="760" y="576" fill="#9AA4B2" font-size="14">encrypted OAuth tokens, preview-before-delete by design.</text>
|
||
<g font-family="Consolas, monospace" font-size="11" fill="#9AA4B2">
|
||
<rect x="760" y="594" width="60" height="24" rx="12" fill="#171C26"/><text x="790" y="610" text-anchor="middle">.NET 8</text>
|
||
<rect x="828" y="594" width="100" height="24" rx="12" fill="#171C26"/><text x="878" y="610" text-anchor="middle">PostgreSQL</text>
|
||
<rect x="936" y="594" width="56" height="24" rx="12" fill="#171C26"/><text x="964" y="610" text-anchor="middle">React</text>
|
||
<rect x="1000" y="594" width="96" height="24" rx="12" fill="#171C26"/><text x="1048" y="610" text-anchor="middle">Gmail API</text>
|
||
</g>
|
||
<text x="760" y="646" fill="#3ECFAE" font-size="14">Read case study →</text>
|
||
|
||
<!-- slim homelab card -->
|
||
<rect x="120" y="694" width="1200" height="92" rx="12" fill="#11151D" stroke="#E8ECF2" stroke-opacity="0.08"/>
|
||
<g stroke="#3ECFAE" stroke-width="1.3" fill="none" opacity="0.8">
|
||
<rect x="152" y="722" width="24" height="16" rx="2"/><rect x="152" y="744" width="24" height="16" rx="2"/>
|
||
<path d="M176 730 h20 v22 h-20 M186 730 v-8 h30"/>
|
||
</g>
|
||
<text x="240" y="732" fill="#E8ECF2" font-size="18" font-weight="600">Self-hosted infrastructure lab</text>
|
||
<text x="240" y="758" fill="#9AA4B2" font-size="14">Ubuntu · Docker services · reverse proxy · auth · monitoring · Gitea (this site's own git remote)</text>
|
||
<text x="1180" y="746" fill="#3ECFAE" font-size="14">Explore →</text>
|
||
|
||
<!-- ===== EXPERIENCE ===== -->
|
||
<text x="120" y="884" fill="#3ECFAE" font-family="Consolas, monospace" font-size="12" letter-spacing="2">03 — EXPERIENCE</text>
|
||
<text x="120" y="936" fill="#E8ECF2" font-size="39" font-weight="600">Where I've worked</text>
|
||
|
||
<!-- timeline spine -->
|
||
<line x1="160" y1="972" x2="160" y2="1270" stroke="#E8ECF2" stroke-opacity="0.12" stroke-width="1.5"/>
|
||
<!-- featured -->
|
||
<circle cx="160" cy="990" r="5" fill="#3ECFAE"/>
|
||
<text x="196" y="996" fill="#E8ECF2" font-size="20" font-weight="600">System Developer — Warwickshire County Council</text>
|
||
<text x="196" y="1020" fill="#5C6675" font-family="Consolas, monospace" font-size="12">2015 – 2023 · UK public sector · full-stack</text>
|
||
<text x="196" y="1050" fill="#9AA4B2" font-size="15">· Replaced spreadsheet-heavy workflows with reliable internal systems used across the council</text>
|
||
<text x="196" y="1076" fill="#9AA4B2" font-size="15">· Built and maintained full-stack applications in C#, Python, Ruby on Rails, SQL and JavaScript</text>
|
||
<text x="196" y="1102" fill="#9AA4B2" font-size="15">· Owned deployments, permissions hardening and production troubleshooting on live systems</text>
|
||
<!-- compact items -->
|
||
<circle cx="160" cy="1150" r="4" fill="#5C6675"/>
|
||
<text x="196" y="1156" fill="#9AA4B2" font-size="14">2017 – 2021 · Sales Representative · Royal Vapes</text>
|
||
<circle cx="160" cy="1188" r="4" fill="#5C6675"/>
|
||
<text x="196" y="1194" fill="#9AA4B2" font-size="14">2016 – 2018 · Bartender · The Hodcarrier</text>
|
||
<circle cx="160" cy="1226" r="4" fill="#5C6675"/>
|
||
<text x="196" y="1232" fill="#9AA4B2" font-size="14">2014 – 2015 · Receptionist · Nuffield Health</text>
|
||
<circle cx="160" cy="1264" r="4" fill="#5C6675"/>
|
||
<text x="196" y="1270" fill="#9AA4B2" font-size="14">2012 – 2015 · Extended Diploma NVQ L3 in ICT · Warwickshire College</text>
|
||
<text x="196" y="1300" fill="#5C6675" font-family="Consolas, monospace" font-size="12">earlier customer-facing roles — kept for honesty, de-emphasised · timeline draws on scroll (A8)</text>
|
||
|
||
<!-- ===== CONTACT BAND ===== -->
|
||
<rect x="120" y="1360" width="1200" height="140" rx="16" fill="#171C26"/>
|
||
<text x="160" y="1418" fill="#E8ECF2" font-size="28" font-weight="600">Looking for a systems developer in Norway?</text>
|
||
<text x="160" y="1450" fill="#9AA4B2" font-size="15">I usually reply within a day — e-mail is fastest.</text>
|
||
<rect x="880" y="1404" width="300" height="48" rx="8" fill="#3ECFAE"/>
|
||
<text x="1030" y="1434" fill="#062A22" font-size="15" font-weight="600" text-anchor="middle">connor.babbington@cesnimda.co.uk ⧉</text>
|
||
<text x="1216" y="1434" fill="#062A22" font-size="0">copy</text>
|
||
<text x="1230" y="1432" fill="#9AA4B2" font-size="14">Contact form →</text>
|
||
</svg>
|