1<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="/_next/static/css/cac5573dcaa2a7c5.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-d4f91d4c4a494129.js"/>
1<script src="/_next/static/chunks/620846f1-77a02eece743eeab.js" async=""></script>
1<script src="/_next/static/chunks/336-38ab5f2b7cd995b8.js" async=""></script>
1<script src="/_next/static/chunks/main-app-6e0d2f410441a710.js" async=""></script>
1<script src="/_next/static/chunks/330-c4313b310e6cadea.js" async=""></script>
1<script src="/_next/static/chunks/app/page-e4cda67ab72a8747.js" async=""></script>
1<title>Antony Kimpton - software engineer, UK</title><meta name="description" content="Software engineer in the UK. Public projects: the Palworld breeding guide, an OSRS AI companion, a D2R terror zone tracker, and two RuneLite plugins on the Plugin Hub."/><link rel="canonical" href="https://kimpton.io"/><meta property="og:title" content="Antony Kimpton - software engineer, UK"/><meta property="og:description" content="Software engineer in the UK. Public projects: the Palworld breeding guide, an OSRS AI companion, a D2R terror zone tracker, and two RuneLite plugins on the Plugin Hub."/><meta property="og:url" content="https://kimpton.io"/><meta property="og:site_name" content="kimpton.io"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary"/><meta name="twitter:title" content="Antony Kimpton - software engineer, UK"/><meta name="twitter:description" content="Software engineer in the UK. Public projects: the Palworld breeding guide, an OSRS AI companion, a D2R terror zone tracker, and two RuneLite plugins on the Plugin Hub."/><link rel="icon" href="/favicon.ico" type="image/x-icon" sizes="16x16"/><link rel="icon" href="/icon.png?67240e7ca04260b8" type="image/png" sizes="512x512"/><link rel="apple-touch-icon" href="/apple-icon.png?a015fc4985438333" type="image/png" sizes="180x180"/>
1<script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script>
1</head><body class="min-h-screen"><div hidden=""><!--$--><!--/$--></div>
1<script defer="" src="https://analytics.kimpton.io/script.js" data-website-id="cff082d9-00fd-4e4e-9186-905a2e050661"></script>
1<main class="mx-auto max-w-3xl px-5 py-16 sm:px-8 sm:py-24"><header class="mb-16"><div class="mb-5 flex items-center gap-3"><span aria-hidden="true" class="block h-5 w-1.5" style="background-color:var(--accent)"></span><span class="text-[13px] tracking-tight" style="color:var(--faint);font-family:var(--mono)">kimpton.io</span></div><h1 class="text-2xl font-semibold tracking-tight sm:text-3xl">Antony Kimpton</h1><p class="mt-1 text-[15px]" style="color:var(--accent)">Software engineer, consultant and father, UK</p><ul class="mt-6 space-y-1.5"><li class="flex gap-3 text-[15px]" style="color:var(--muted)"><span aria-hidden="true" style="color:var(--faint)">âº</span><span>Role: Self-employed SWE consultant</span></li><li class="flex gap-3 text-[15px]" style="color:var(--muted)"><span aria-hidden="true" style="color:var(--faint)">âº</span><span>Homelab: Hetzner, Proxmox, a rack of Raspberry Pis</span></li><li class="flex gap-3 text-[15px]" style="color:var(--muted)"><span aria-hidden="true" style="color:var(--faint)">âº</span><span>Interests: AI workflows, voice pipelines, personal tooling</span></li><li class="flex gap-3 text-[15px]" style="color:var(--muted)"><span aria-hidden="true" style="color:var(--faint)">âº</span><span>Side projects: game tools, family sites, crypto</span></li></ul><nav class="mt-6 flex flex-wrap items-center gap-x-4 gap-y-2 text-[14px]"><a href="https://github.com/A-Kimpton" target="_blank" rel="noopener noreferrer" style="font-family:var(--mono)">GitHub</a><a href="https://www.linkedin.com/in/antonykimpton/" target="_blank" rel="noopener noreferrer" style="font-family:var(--mono)">LinkedIn</a><a href="https://discordapp.com/users/kimpton" target="_blank" rel="noopener noreferrer" style="font-family:var(--mono)">Discord</a><a href="mailto:[email protected]" rel="noopener noreferrer" style="font-family:var(--mono)">Email</a></nav></header><section aria-labelledby="projects"><div class="mb-1 flex items-baseline justify-between"><h2 id="projects" class="text-[11px] uppercase tracking-[0.18em]" style="color:var(--faint);font-family:var(--mono)">Public projects</h2><span class="text-[11px]" style="color:var(--faint);font-family:var(--mono)">05</span></div><ul style="border-top:1px solid var(--border)"><li style="border-bottom:1px solid var(--border)"><a href="https://palworld.kimpton.io" target="_blank" rel="noopener noreferrer" class="group grid grid-cols-[2.5rem_1fr] gap-x-2 py-6 no-underline sm:grid-cols-[3.5rem_1fr] sm:gap-x-4" style="color:var(--text)"><span aria-hidden="true" class="pt-1 text-[13px] transition-colors group-hover:text-[var(--accent)]" style="color:var(--faint);font-family:var(--mono)">01</span><div class="flex flex-col gap-4 sm:flex-row sm:items-start sm:gap-6"><div class="min-w-0 flex-1"><h3 class="text-base font-semibold tracking-tight group-hover:underline">Palworld Breeding Guide</h3><p class="mt-0.5 text-[12px]" style="color:var(--faint);font-family:var(--mono)">palworld.kimpton.io</p><p class="mt-2 text-[15px] leading-relaxed" style="color:var(--muted)">Breeding calculator, parent finder, full matrix and shortest-path solver, with every combination datamined straight from the game files.</p><div class="mt-3 flex flex-wrap items-center gap-2"><span class="rounded px-1.5 py-0.5 text-[11px]" style="background-color:var(--deep);border:1px solid var(--border);color:var(--muted);font-family:var(--mono)">Next.js</span><span class="rounded px-1.5 py-0.5 text-[11px]" style="background-color:var(--deep);border:1px solid var(--border);color:var(--muted);font-family:var(--mono)">Cloudflare</span><span class="rounded px-1.5 py-0.5 text-[11px]" style="background-color:var(--deep);border:1px solid var(--border);color:var(--muted);font-family:var(--mono)">Palworld</span><span class="rounded px-1.5 py-0.5 text-[11px]" style="background-color:var(--deep);border:1px solid var(--border);color:var(--muted);font-family:var(--mono)">datamined</span></div></div><div class="w-full shrink-0 overflow-hidden rounded sm:w-[220px]" style="border:1px solid var(--border);background-color:var(--deep)">
1<img src="/previews/palworld.webp" alt="" width="760" height="475" loading="lazy" decoding="async" class="block h-[132px] w-full object-cover object-top transition-opacity duration-150 group-hover:opacity-85 sm:h-[138px]"/></div></div></a><div class="grid grid-cols-[2.5rem_1fr] gap-x-2 pb-6 sm:grid-cols-[3.5rem_1fr] sm:gap-x-4"><span></span><a href="https://palworld.kimpton.io/map" target="_blank" rel="noopener noreferrer" class="text-[13px]">Interactive map</a></div></li><li style="border-bottom:1px solid var(--border)"><a href="https://demo.osrs.kimpton.io" target="_blank" rel="noopener noreferrer" class="group grid grid-cols-[2.5rem_1fr] gap-x-2 py-6 no-underline sm:grid-cols-[3.5rem_1fr] sm:gap-x-4" style="color:var(--text)"><span aria-hidden="true" class="pt-1 text-[13px] transition-colors group-hover:text-[var(--accent)]" style="color:var(--faint);font-family:var(--mono)">02</span><div class="flex flex-col gap-4 sm:flex-row sm:items-start sm:gap-6"><div class="min-w-0 flex-1"><h3 class="text-base font-semibold tracking-tight group-hover:underline">OSRS AI Companion</h3><p class="mt-0.5 text-[12px]" style="color:var(--faint);font-family:var(--mono)">demo.osrs.kimpton.io</p><p class="mt-2 text-[15px] leading-relaxed" style="color:var(--muted)">Local-first companion for Old School RuneScape: reads your account snapshot, tracks goals and gear, and answers questions about your own save. This is the public demo.</p><div class="mt-3 flex flex-wrap items-center gap-2"><span class="rounded px-1.5 py-0.5 text-[11px]" style="background-color:var(--deep);border:1px solid var(--border);color:var(--muted);font-family:var(--mono)">Go</span><span class="rounded px-1.5 py-0.5 text-[11px]" style="background-color:var(--deep);border:1px solid var(--border);color:var(--muted);font-family:var(--mono)">Electron</span><span class="rounded px-1.5 py-0.5 text-[11px]" style="background-color:var(--deep);border:1px solid var(--border);color:var(--muted);font-family:var(--mono)">React</span><span class="rounded px-1.5 py-0.5 text-[11px]" style="background-color:var(--deep);border:1px solid var(--border);color:var(--muted);font-family:var(--mono)">MCP</span></div></div><div class="w-full shrink-0 overflow-hidden rounded sm:w-[220px]" style="border:1px solid var(--border);background-color:var(--deep)"><img src="/previews/osrs-companion.webp" alt="" width="760" height="475" loading="lazy" decoding="async" class="block h-[132px] w-full object-cover object-top transition-opacity duration-150 group-hover:opacity-85 sm:h-[138px]"/></div></div></a></li><li style="border-bottom:1px solid var(--border)"><a href="https://d2r.kimpton.io" target="_blank" rel="noopener noreferrer" class="group grid grid-cols-[2.5rem_1fr] gap-x-2 py-6 no-underline sm:grid-cols-[3.5rem_1fr] sm:gap-x-4" style="color:var(--text)"><span aria-hidden="true" class="pt-1 text-[13px] transition-colors group-hover:text-[var(--accent)]" style="color:var(--faint);font-family:var(--mono)">03</span><div class="flex flex-col gap-4 sm:flex-row sm:items-start sm:gap-6"><div class="min-w-0 flex-1"><h3 class="text-base font-semibold tracking-tight group-hover:underline">D2R Terror Zone Tracker</h3><p class="mt-0.5 text-[12px]" style="color:var(--faint);font-family:var(--mono)">d2r.kimpton.io</p><p class="mt-2 text-[15px] leading-relaxed" style="color:var(--muted)">Live Terror Zone rotation and Diablo Clone progress for Diablo II: Resurrected, plus a drag-and-drop tier list editor you can share as a link.</p><div class="mt-3 flex flex-wrap items-center gap-2"><span class="rounded px-1.5 py-0.5 text-[11px]" style="background-color:var(--deep);border:1px solid var(--border);color:var(--muted);font-family:var(--mono)">Next.js</span><span class="rounded px-1.5 py-0.5 text-[11px]" style="background-color:var(--deep);border:1px solid var(--border);color:var(--muted);font-family:var(--mono)">Cloudflare</span><span class="rounded px-1.5 py-0.5 text-[11px]" style="background-color:var(--deep);border:1px solid var(--border);color:var(--muted);font-family:var(--mono)">live data</span></div></div><div class="w-full shrink-0 overflow-hidden rounded sm:w-[220px]" style="border:1px solid var(--border);background-color:var(--deep)"><img src="/previews/d2r.webp" alt="" width="760" height="475" loading="lazy" decoding="async" class="block h-[132px] w-full object-cover object-top transition-opacity duration-150 group-hover:opacity-85 sm:h-[138px]"/></div></div></a></li><li style="border-bottom:1px solid var(--border)"><a href="https://runelite.net/plugin-hub/show/slayer-block-lists" target="_blank" rel="noopener noreferrer" class="group grid grid-cols-[2.5rem_1fr] gap-x-2 py-6 no-underline sm:grid-cols-[3.5rem_1fr] sm:gap-x-4" style="color:var(--text)"><span aria-hidden="true" class="pt-1 text-[13px] transition-colors group-hover:text-[var(--accent)]" style="color:var(--faint);font-family:var(--mono)">04</span><div class="flex flex-col gap-4 sm:flex-row sm:items-start sm:gap-6"><div class="min-w-0 flex-1"><h3 class="text-base font-semibold tracking-tight group-hover:underline">Slayer Block Lists</h3><p class="mt-0.5 text-[12px]" style="color:var(--faint);font-family:var(--mono)">RuneLite Plugin Hub</p><p class="mt-2 text-[15px] leading-relaxed" style="color:var(--muted)">Side panel showing your block list for every Slayer master at once, read live from the game, with unlock requirements for the slots you have not bought yet.</p><div class="mt-3 flex flex-wrap items-center gap-2"><span class="rounded px-1.5 py-0.5 text-[11px]" style="background-color:var(--deep);border:1px solid var(--border);color:var(--muted);font-family:var(--mono)">Java</span><span class="rounded px-1.5 py-0.5 text-[11px]" style="background-color:var(--deep);border:1px solid var(--border);color:var(--muted);font-family:var(--mono)">RuneLite</span><span class="rounded px-1.5 py-0.5 text-[11px]" style="background-color:var(--deep);border:1px solid var(--border);color:var(--muted);font-family:var(--mono)">Plugin Hub</span></div></div><div class="w-full shrink-0 overflow-hidden rounded sm:w-[220px]" style="border:1px solid var(--border);background-color:var(--deep)"><img src="/previews/slayer-block-lists.webp" alt="" width="760" height="475" loading="lazy" decoding="async" class="block h-[132px] w-full object-cover object-top transition-opacity duration-150 group-hover:opacity-85 sm:h-[138px]"/></div></div></a><div class="grid grid-cols-[2.5rem_1fr] gap-x-2 pb-6 sm:grid-cols-[3.5rem_1fr] sm:gap-x-4"><span></span><a href="https://github.com/A-Kimpton/slayer-block-lists" target="_blank" rel="noopener noreferrer" class="text-[13px]">Source on GitHub</a></div></li><li style="border-bottom:1px solid var(--border)"><a href="https://runelite.net/plugin-hub/show/account-data-exporter" target="_blank" rel="noopener noreferrer" class="group grid grid-cols-[2.5rem_1fr] gap-x-2 py-6 no-underline sm:grid-cols-[3.5rem_1fr] sm:gap-x-4" style="color:var(--text)"><span aria-hidden="true" class="pt-1 text-[13px] transition-colors group-hover:text-[var(--accent)]" style="color:var(--faint);font-family:var(--mono)">05</span><div class="flex flex-col gap-4 sm:flex-row sm:items-start sm:gap-6"><div class="min-w-0 flex-1"><h3 class="text-base font-semibold tracking-tight group-hover:underline">Account Data Exporter</h3><p class="mt-0.5 text-[12px]" style="color:var(--faint);font-family:var(--mono)">RuneLite Plugin Hub</p><p class="mt-2 text-[15px] leading-relaxed" style="color:var(--muted)">Exports your OSRS account to local JSON: skills, bank, inventory, quests, diaries, combat achievements and slayer. Yours on your own disk, for spreadsheets or tooling.</p><div class="mt-3 flex flex-wrap items-center gap-2"><span class="rounded px-1.5 py-0.5 text-[11px]" style="background-color:var(--deep);border:1px solid var(--border);color:var(--muted);font-family:var(--mono)">Java</span><span class="rounded px-1.5 py-0.5 text-[11px]" style="background-color:var(--deep);border:1px solid var(--border);color:var(--muted);font-family:var(--mono)">RuneLite</span><span class="rounded px-1.5 py-0.5 text-[11px]" style="background-color:var(--deep);border:1px solid var(--border);color:var(--muted);font-family:var(--mono)">Plugin Hub</span></div></div></div></a><div class="grid grid-cols-[2.5rem_1fr] gap-x-2 pb-6 sm:grid-cols-[3.5rem_1fr] sm:gap-x-4"><span></span><a href="https://github.com/A-Kimpton/account-data-exporter" target="_blank" rel="noopener noreferrer" class="text-[13px]">Source on GitHub</a></div></li></ul></section><section class="mt-16"><h2 class="mb-3 text-[11px] uppercase tracking-[0.18em]" style="color:var(--faint);font-family:var(--mono)">Support</h2><p class="mb-4 max-w-xl text-[15px] leading-relaxed" style="color:var(--muted)">These run on services I pay for and update whenever I can. If one of them saved you some time, there is a donation link below.</p><a href="https://www.buymeacoffee.com/kimpton" target="_blank" rel="noopener noreferrer" class="inline-flex items-stretch overflow-hidden rounded-md no-underline transition-opacity hover:opacity-90" style="border:1px solid #000"><span class="inline-flex items-center gap-2 px-4 py-2 text-sm font-semibold" style="background-color:#f3ca63;color:#000"><svg viewBox="0 0 24 24" class="h-4 w-4" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M17 8h1a4 4 0 1 1 0 8h-1"></path><path d="M3 8h14v9a4 4 0 0 1-4 4H7a4 4 0 0 1-4-4Z"></path><path d="M6 2v3M10 2v3M14 2v3"></path></svg>Buy me a coffee</span><span class="inline-flex flex-col items-center justify-center px-3 py-1 text-[11px] font-semibold leading-tight" style="background-color:#e0b74f;color:#000;border-left:1px solid #000" title="76 supporters"><svg viewBox="0 0 24 24" class="h-3 w-3" fill="currentColor" aria-hidden="true"><path d="M12 21s-8-4.9-8-10.4A4.6 4.6 0 0 1 12 7a4.6 4.6 0 0 1 8 3.6C20 16.1 12 21 12 21z"></path></svg>76</span></a></section><footer class="mt-20 pt-6 text-[13px]" style="border-top:1px solid var(--border);color:var(--faint)"><span style="font-family:var(--mono)"><span><a href="https://github.com/A-Kimpton" target="_blank" rel="noopener noreferrer">GitHub</a></span><span><span class="px-2">/</span><a href="https://www.linkedin.com/in/antonykimpton/" target="_blank" rel="noopener noreferrer">LinkedIn</a></span><span><span class="px-2">/</span><a href="https://discordapp.com/users/kimpton" target="_blank" rel="noopener noreferrer">Discord</a></span><span><span class="px-2">/</span><a href="mailto:[email protected]" rel="noopener noreferrer">Email</a></span><span class="px-2">/</span><a href="/privacy">Privacy</a></span></footer></main><!--$--><!--/$-->
1<script src="/_next/static/chunks/webpack-d4f91d4c4a494129.js" id="_R_" async=""></script>
1<script>(self.__next_f=self.__next_f||[]).push([0])</script>
1<script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[6131,[],\"\"]\n3:I[7599,[],\"\"]\na:I[729,[],\"\"]\n:HL[\"/_next/static/css/cac5573dcaa2a7c5.css\",\"style\"]\n"])</script>
1<script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"IPWb5hNX-cJe39si_FJp5\",\"p\":\"\",\"c\":[\"\",\"\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/cac5573dcaa2a7c5.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"children\":[\"$\",\"body\",null,{\"className\":\"min-h-screen\",\"children\":[[\"$\",\"script\",null,{\"defer\":true,\"src\":\"https://analytics.kimpton.io/script.js\",\"data-website-id\":\"cff082d9-00fd-4e4e-9186-905a2e050661\"}],[\"$\",\"$L2\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L3\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[[\"$\",\"main\",null,{\"className\":\"mx-auto max-w-3xl px-5 py-16 sm:px-8 sm:py-24\",\"children\":[[\"$\",\"header\",null,{\"className\":\"mb-16\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mb-5 flex items-center gap-3\",\"children\":[[\"$\",\"span\",null,{\"aria-hidden\":\"true\",\"className\":\"block h-5 w-1.5\",\"style\":{\"backgroundColor\":\"var(--accent)\"}}],[\"$\",\"span\",null,{\"className\":\"text-[13px] tracking-tight\",\"style\":{\"color\":\"var(--faint)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"kimpton.io\"}]]}],[\"$\",\"h1\",null,{\"className\":\"text-2xl font-semibold tracking-tight sm:text-3xl\",\"children\":\"Antony Kimpton\"}],[\"$\",\"p\",null,{\"className\":\"mt-1 text-[15px]\",\"style\":{\"color\":\"var(--accent)\"},\"children\":\"Software engineer, consultant and father, UK\"}],[\"$\",\"ul\",null,{\"className\":\"mt-6 space-y-1.5\",\"children\":[[\"$\",\"li\",\"Role: Self-employed SWE consultant\",{\"className\":\"flex gap-3 text-[15px]\",\"style\":{\"color\":\"var(--muted)\"},\"children\":[[\"$\",\"span\",null,{\"aria-hidden\":\"true\",\"style\":{\"color\":\"var(--faint)\"},\"children\":\"âº\"}],[\"$\",\"span\",null,{\"children\":\"Role: Self-employed SWE consultant\"}]]}],[\"$\",\"li\",\"Homelab: Hetzner, Proxmox, a rack of Raspberry Pis\",{\"className\":\"flex gap-3 text-[15px]\",\"style\":{\"color\":\"var(--muted)\"},\"children\":[[\"$\",\"span\",null,{\"aria-hidden\":\"true\",\"style\":{\"color\":\"var(--faint)\"},\"children\":\"âº\"}],[\"$\",\"span\",null,{\"children\":\"Homelab: Hetzner, Proxmox, a rack of Raspberry Pis\"}]]}],[\"$\",\"li\",\"Interests: AI workflows, voice pipelines, personal tooling\",{\"className\":\"flex gap-3 text-[15px]\",\"style\":{\"color\":\"var(--muted)\"},\"children\":[[\"$\",\"span\",null,{\"aria-hidden\":\"true\",\"style\":{\"color\":\"var(--faint)\"},\"children\":\"âº\"}],[\"$\",\"span\",null,{\"children\":\"Interests: AI workflows, voice pipelines, personal tooling\"}]]}],[\"$\",\"li\",\"Side projects: game tools, family sites, crypto\",{\"className\":\"flex gap-3 text-[15px]\",\"style\":{\"color\":\"var(--muted)\"},\"children\":[[\"$\",\"span\",null,{\"aria-hidden\":\"true\",\"style\":{\"color\":\"var(--faint)\"},\"children\":\"âº\"}],[\"$\",\"span\",null,{\"children\":\"Side projects: game tools, family sites, crypto\"}]]}]]}],[\"$\",\"nav\",null,{\"className\":\"mt-6 flex flex-"])</script>
1<script>self.__next_f.push([1,"wrap items-center gap-x-4 gap-y-2 text-[14px]\",\"children\":[[\"$\",\"a\",\"GitHub\",{\"href\":\"https://github.com/A-Kimpton\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"style\":{\"fontFamily\":\"var(--mono)\"},\"children\":\"GitHub\"}],[\"$\",\"a\",\"LinkedIn\",{\"href\":\"https://www.linkedin.com/in/antonykimpton/\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"style\":{\"fontFamily\":\"var(--mono)\"},\"children\":\"LinkedIn\"}],[\"$\",\"a\",\"Discord\",{\"href\":\"https://discordapp.com/users/kimpton\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"style\":{\"fontFamily\":\"var(--mono)\"},\"children\":\"Discord\"}],\"$L4\"]}]]}],\"$L5\",\"$L6\",\"$L7\"]}],null,\"$L8\"]}],{},null,false]},null,false],\"$L9\",false]],\"m\":\"$undefined\",\"G\":[\"$a\",[]],\"s\":false,\"S\":true}\n13:I[6330,[\"330\",\"static/chunks/330-c4313b310e6cadea.js\",\"974\",\"static/chunks/app/page-e4cda67ab72a8747.js\"],\"\"]\n14:I[7098,[],\"OutletBoundary\"]\n16:I[5583,[],\"AsyncMetadataOutlet\"]\n18:I[7098,[],\"ViewportBoundary\"]\n1a:I[7098,[],\"MetadataBoundary\"]\n1b:\"$Sreact.suspense\"\n4:[\"$\",\"a\",\"Email\",{\"href\":\"mailto:[email protected]\",\"target\":\"$undefined\",\"rel\":\"noopener noreferrer\",\"style\":{\"fontFamily\":\"var(--mono)\"},\"children\":\"Email\"}]\n5:[\"$\",\"section\",null,{\"aria-labelledby\":\"projects\",\"children\":[[\"$\",\"div\",null,{\"className\":\"mb-1 flex items-baseline justify-between\",\"children\":[[\"$\",\"h2\",null,{\"id\":\"projects\",\"className\":\"text-[11px] uppercase tracking-[0.18em]\",\"style\":{\"color\":\"var(--faint)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"Public projects\"}],[\"$\",\"span\",null,{\"className\":\"text-[11px]\",\"style\":{\"color\":\"var(--faint)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"05\"}]]}],[\"$\",\"ul\",null,{\"style\":{\"borderTop\":\"1px solid var(--border)\"},\"children\":[[\"$\",\"li\",\"https://palworld.kimpton.io\",{\"style\":{\"borderBottom\":\"1px solid var(--border)\"},\"children\":[[\"$\",\"a\",null,{\"href\":\"https://palworld.kimpton.io\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"className\":\"group grid grid-cols-[2.5rem_1fr] gap-x-2 py-6 no-underline sm:grid-cols-[3.5rem_1fr] sm:gap-x-4\",\"style\":{\"color\":\"var(--text)\"},\"children\":[[\"$\",\"span\",null,{\"aria-hidden\":\"true\",\"className\":\"pt-1 text-[13px] transition-colors group-hover:text-[var(--accent)]\",\"style\":{\"color\":\"var(--faint)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"01\"}],[\"$\",\"div\",null,{\"className\":\"flex flex-col gap-4 sm:flex-row sm:items-start sm:gap-6\",\"children\":[[\"$\",\"div\",null,{\"className\":\"min-w-0 flex-1\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-base font-semibold tracking-tight group-hover:underline\",\"children\":\"Palworld Breeding Guide\"}],[\"$\",\"p\",null,{\"className\":\"mt-0.5 text-[12px]\",\"style\":{\"color\":\"var(--faint)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"palworld.kimpton.io\"}],[\"$\",\"p\",null,{\"className\":\"mt-2 text-[15px] leading-relaxed\",\"style\":{\"color\":\"var(--muted)\"},\"children\":\"Breeding calculator, parent finder, full matrix and shortest-path solver, with every combination datamined straight from the game files.\"}],[\"$\",\"div\",null,{\"className\":\"mt-3 flex flex-wrap items-center gap-2\",\"children\":[[\"$\",\"span\",\"Next.js\",{\"className\":\"rounded px-1.5 py-0.5 text-[11px]\",\"style\":{\"backgroundColor\":\"var(--deep)\",\"border\":\"1px solid var(--border)\",\"color\":\"var(--muted)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"Next.js\"}],[\"$\",\"span\",\"Cloudflare\",{\"className\":\"rounded px-1.5 py-0.5 text-[11px]\",\"style\":{\"backgroundColor\":\"var(--deep)\",\"border\":\"1px solid var(--border)\",\"color\":\"var(--muted)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"Cloudflare\"}],[\"$\",\"span\",\"Palworld\",{\"className\":\"rounded px-1.5 py-0.5 text-[11px]\",\"style\":{\"backgroundColor\":\"var(--deep)\",\"border\":\"1px solid var(--border)\",\"color\":\"var(--muted)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"Palworld\"}],[\"$\",\"span\",\"datamined\",{\"className\":\"rounded px-1.5 py-0.5 text-[11px]\",\"style\":{\"backgroundColor\":\"var(--deep)\",\"border\":\"1px solid var(--border)\",\"color\":\"var(--muted)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"datamined\"}]]}]]}],[\"$\",\"div\",null,{\"className\":\"w-full shrink-0 overflow-hidden rounded sm:w-[220px]\",\"style\":{\"border\":\"1px solid var(--border)\",\"backgroundColor\":\"var(--deep)\"},\"children\":[\"$\",\"img\",null,{\"src\":\"/previews/palw"])</script>
1<script>self.__next_f.push([1,"orld.webp\",\"alt\":\"\",\"width\":760,\"height\":475,\"loading\":\"lazy\",\"decoding\":\"async\",\"className\":\"block h-[132px] w-full object-cover object-top transition-opacity duration-150 group-hover:opacity-85 sm:h-[138px]\"}]}]]}]]}],[\"$\",\"div\",null,{\"className\":\"grid grid-cols-[2.5rem_1fr] gap-x-2 pb-6 sm:grid-cols-[3.5rem_1fr] sm:gap-x-4\",\"children\":[[\"$\",\"span\",null,{}],[\"$\",\"a\",null,{\"href\":\"https://palworld.kimpton.io/map\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"className\":\"text-[13px]\",\"children\":\"Interactive map\"}]]}]]}],[\"$\",\"li\",\"https://demo.osrs.kimpton.io\",{\"style\":{\"borderBottom\":\"1px solid var(--border)\"},\"children\":[[\"$\",\"a\",null,{\"href\":\"https://demo.osrs.kimpton.io\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"className\":\"group grid grid-cols-[2.5rem_1fr] gap-x-2 py-6 no-underline sm:grid-cols-[3.5rem_1fr] sm:gap-x-4\",\"style\":{\"color\":\"var(--text)\"},\"children\":[[\"$\",\"span\",null,{\"aria-hidden\":\"true\",\"className\":\"pt-1 text-[13px] transition-colors group-hover:text-[var(--accent)]\",\"style\":{\"color\":\"var(--faint)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"02\"}],[\"$\",\"div\",null,{\"className\":\"flex flex-col gap-4 sm:flex-row sm:items-start sm:gap-6\",\"children\":[[\"$\",\"div\",null,{\"className\":\"min-w-0 flex-1\",\"children\":[\"$Lb\",\"$Lc\",\"$Ld\",\"$Le\"]}],\"$Lf\"]}]]}],\"$undefined\"]}],\"$L10\",\"$L11\",\"$L12\"]}]]}]\n6:[\"$\",\"section\",null,{\"className\":\"mt-16\",\"children\":[[\"$\",\"h2\",null,{\"className\":\"mb-3 text-[11px] uppercase tracking-[0.18em]\",\"style\":{\"color\":\"var(--faint)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"Support\"}],[\"$\",\"p\",null,{\"className\":\"mb-4 max-w-xl text-[15px] leading-relaxed\",\"style\":{\"color\":\"var(--muted)\"},\"children\":\"These run on services I pay for and update whenever I can. If one of them saved you some time, there is a donation link below.\"}],[\"$\",\"a\",null,{\"href\":\"https://www.buymeacoffee.com/kimpton\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"className\":\"inline-flex items-stretch overflow-hidden rounded-md no-underline transition-opacity hover:opacity-90\",\"style\":{\"border\":\"1px solid #000\"},\"children\":[[\"$\",\"span\",null,{\"className\":\"inline-flex items-center gap-2 px-4 py-2 text-sm font-semibold\",\"style\":{\"backgroundColor\":\"#f3ca63\",\"color\":\"#000\"},\"children\":[[\"$\",\"svg\",null,{\"viewBox\":\"0 0 24 24\",\"className\":\"h-4 w-4\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":\"2\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\",\"aria-hidden\":\"true\",\"children\":[[\"$\",\"path\",null,{\"d\":\"M17 8h1a4 4 0 1 1 0 8h-1\"}],[\"$\",\"path\",null,{\"d\":\"M3 8h14v9a4 4 0 0 1-4 4H7a4 4 0 0 1-4-4Z\"}],[\"$\",\"path\",null,{\"d\":\"M6 2v3M10 2v3M14 2v3\"}]]}],\"Buy me a coffee\"]}],[\"$\",\"span\",null,{\"className\":\"inline-flex flex-col items-center justify-center px-3 py-1 text-[11px] font-semibold leading-tight\",\"style\":{\"backgroundColor\":\"#e0b74f\",\"color\":\"#000\",\"borderLeft\":\"1px solid #000\"},\"title\":\"76 supporters\",\"children\":[[\"$\",\"svg\",null,{\"viewBox\":\"0 0 24 24\",\"className\":\"h-3 w-3\",\"fill\":\"currentColor\",\"aria-hidden\":\"true\",\"children\":[\"$\",\"path\",null,{\"d\":\"M12 21s-8-4.9-8-10.4A4.6 4.6 0 0 1 12 7a4.6 4.6 0 0 1 8 3.6C20 16.1 12 21 12 21z\"}]}],76]}]]}]]}]\n7:[\"$\",\"footer\",null,{\"className\":\"mt-20 pt-6 text-[13px]\",\"style\":{\"borderTop\":\"1px solid var(--border)\",\"color\":\"var(--faint)\"},\"children\":[\"$\",\"span\",null,{\"style\":{\"fontFamily\":\"var(--mono)\"},\"children\":[[[\"$\",\"span\",\"GitHub\",{\"children\":[false,[\"$\",\"a\",null,{\"href\":\"https://github.com/A-Kimpton\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"children\":\"GitHub\"}]]}],[\"$\",\"span\",\"LinkedIn\",{\"children\":[[\"$\",\"span\",null,{\"className\":\"px-2\",\"children\":\"/\"}],[\"$\",\"a\",null,{\"href\":\"https://www.linkedin.com/in/antonykimpton/\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"children\":\"LinkedIn\"}]]}],[\"$\",\"span\",\"Discord\",{\"children\":[[\"$\",\"span\",null,{\"className\":\"px-2\",\"children\":\"/\"}],[\"$\",\"a\",null,{\"href\":\"https://discordapp.com/users/kimpton\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"children\":\"Discord\"}]]}],[\"$\",\"span\",\"Email\",{\"children\":[[\"$\",\"span\",null,{\"className\":\"px-2\",\"children\":\"/\"}],[\"$\",\"a\",null,{\"href\":\"mailto:[email protected]\",\"target\":\"$undefined\",\"rel\":\"noopener noreferre"])</script>
1<script>self.__next_f.push([1,"r\",\"children\":\"Email\"}]]}]],[\"$\",\"span\",null,{\"className\":\"px-2\",\"children\":\"/\"}],[\"$\",\"$L13\",null,{\"href\":\"/privacy\",\"children\":\"Privacy\"}]]}]}]\n8:[\"$\",\"$L14\",null,{\"children\":[\"$L15\",[\"$\",\"$L16\",null,{\"promise\":\"$@17\"}]]}]\n9:[\"$\",\"$1\",\"h\",{\"children\":[null,[[\"$\",\"$L18\",null,{\"children\":\"$L19\"}],null],[\"$\",\"$L1a\",null,{\"children\":[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$1b\",null,{\"fallback\":null,\"children\":\"$L1c\"}]}]}]]}]\nb:[\"$\",\"h3\",null,{\"className\":\"text-base font-semibold tracking-tight group-hover:underline\",\"children\":\"OSRS AI Companion\"}]\nc:[\"$\",\"p\",null,{\"className\":\"mt-0.5 text-[12px]\",\"style\":{\"color\":\"var(--faint)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"demo.osrs.kimpton.io\"}]\nd:[\"$\",\"p\",null,{\"className\":\"mt-2 text-[15px] leading-relaxed\",\"style\":{\"color\":\"var(--muted)\"},\"children\":\"Local-first companion for Old School RuneScape: reads your account snapshot, tracks goals and gear, and answers questions about your own save. This is the public demo.\"}]\ne:[\"$\",\"div\",null,{\"className\":\"mt-3 flex flex-wrap items-center gap-2\",\"children\":[[\"$\",\"span\",\"Go\",{\"className\":\"rounded px-1.5 py-0.5 text-[11px]\",\"style\":{\"backgroundColor\":\"var(--deep)\",\"border\":\"1px solid var(--border)\",\"color\":\"var(--muted)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"Go\"}],[\"$\",\"span\",\"Electron\",{\"className\":\"rounded px-1.5 py-0.5 text-[11px]\",\"style\":{\"backgroundColor\":\"var(--deep)\",\"border\":\"1px solid var(--border)\",\"color\":\"var(--muted)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"Electron\"}],[\"$\",\"span\",\"React\",{\"className\":\"rounded px-1.5 py-0.5 text-[11px]\",\"style\":{\"backgroundColor\":\"var(--deep)\",\"border\":\"1px solid var(--border)\",\"color\":\"var(--muted)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"React\"}],[\"$\",\"span\",\"MCP\",{\"className\":\"rounded px-1.5 py-0.5 text-[11px]\",\"style\":{\"backgroundColor\":\"var(--deep)\",\"border\":\"1px solid var(--border)\",\"color\":\"var(--muted)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"MCP\"}]]}]\nf:[\"$\",\"div\",null,{\"className\":\"w-full shrink-0 overflow-hidden rounded sm:w-[220px]\",\"style\":{\"border\":\"1px solid var(--border)\",\"backgroundColor\":\"var(--deep)\"},\"children\":[\"$\",\"img\",null,{\"src\":\"/previews/osrs-companion.webp\",\"alt\":\"\",\"width\":760,\"height\":475,\"loading\":\"lazy\",\"decoding\":\"async\",\"className\":\"block h-[132px] w-full object-cover object-top transition-opacity duration-150 group-hover:opacity-85 sm:h-[138px]\"}]}]\n10:[\"$\",\"li\",\"https://d2r.kimpton.io\",{\"style\":{\"borderBottom\":\"1px solid var(--border)\"},\"children\":[[\"$\",\"a\",null,{\"href\":\"https://d2r.kimpton.io\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"className\":\"group grid grid-cols-[2.5rem_1fr] gap-x-2 py-6 no-underline sm:grid-cols-[3.5rem_1fr] sm:gap-x-4\",\"style\":{\"color\":\"var(--text)\"},\"children\":[[\"$\",\"span\",null,{\"aria-hidden\":\"true\",\"className\":\"pt-1 text-[13px] transition-colors group-hover:text-[var(--accent)]\",\"style\":{\"color\":\"var(--faint)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"03\"}],[\"$\",\"div\",null,{\"className\":\"flex flex-col gap-4 sm:flex-row sm:items-start sm:gap-6\",\"children\":[[\"$\",\"div\",null,{\"className\":\"min-w-0 flex-1\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-base font-semibold tracking-tight group-hover:underline\",\"children\":\"D2R Terror Zone Tracker\"}],[\"$\",\"p\",null,{\"className\":\"mt-0.5 text-[12px]\",\"style\":{\"color\":\"var(--faint)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"d2r.kimpton.io\"}],[\"$\",\"p\",null,{\"className\":\"mt-2 text-[15px] leading-relaxed\",\"style\":{\"color\":\"var(--muted)\"},\"children\":\"Live Terror Zone rotation and Diablo Clone progress for Diablo II: Resurrected, plus a drag-and-drop tier list editor you can share as a link.\"}],[\"$\",\"div\",null,{\"className\":\"mt-3 flex flex-wrap items-center gap-2\",\"children\":[[\"$\",\"span\",\"Next.js\",{\"className\":\"rounded px-1.5 py-0.5 text-[11px]\",\"style\":{\"backgroundColor\":\"var(--deep)\",\"border\":\"1px solid var(--border)\",\"color\":\"var(--muted)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"Next.js\"}],[\"$\",\"span\",\"Cloudflare\",{\"className\":\"rounded px-1.5 py-0.5 text-[11px]\",\"style\":{\"backgroundColor\":\"var(--deep)\",\"border\":\"1px solid var(--border)\",\"color\":\"var(--muted)\",\"fontFamily\":\"var(--mon"])</script>
1<script>self.__next_f.push([1,"o)\"},\"children\":\"Cloudflare\"}],[\"$\",\"span\",\"live data\",{\"className\":\"rounded px-1.5 py-0.5 text-[11px]\",\"style\":{\"backgroundColor\":\"var(--deep)\",\"border\":\"1px solid var(--border)\",\"color\":\"var(--muted)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"live data\"}]]}]]}],[\"$\",\"div\",null,{\"className\":\"w-full shrink-0 overflow-hidden rounded sm:w-[220px]\",\"style\":{\"border\":\"1px solid var(--border)\",\"backgroundColor\":\"var(--deep)\"},\"children\":[\"$\",\"img\",null,{\"src\":\"/previews/d2r.webp\",\"alt\":\"\",\"width\":760,\"height\":475,\"loading\":\"lazy\",\"decoding\":\"async\",\"className\":\"block h-[132px] w-full object-cover object-top transition-opacity duration-150 group-hover:opacity-85 sm:h-[138px]\"}]}]]}]]}],\"$undefined\"]}]\n11:[\"$\",\"li\",\"https://runelite.net/plugin-hub/show/slayer-block-lists\",{\"style\":{\"borderBottom\":\"1px solid var(--border)\"},\"children\":[[\"$\",\"a\",null,{\"href\":\"https://runelite.net/plugin-hub/show/slayer-block-lists\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"className\":\"group grid grid-cols-[2.5rem_1fr] gap-x-2 py-6 no-underline sm:grid-cols-[3.5rem_1fr] sm:gap-x-4\",\"style\":{\"color\":\"var(--text)\"},\"children\":[[\"$\",\"span\",null,{\"aria-hidden\":\"true\",\"className\":\"pt-1 text-[13px] transition-colors group-hover:text-[var(--accent)]\",\"style\":{\"color\":\"var(--faint)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"04\"}],[\"$\",\"div\",null,{\"className\":\"flex flex-col gap-4 sm:flex-row sm:items-start sm:gap-6\",\"children\":[[\"$\",\"div\",null,{\"className\":\"min-w-0 flex-1\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-base font-semibold tracking-tight group-hover:underline\",\"children\":\"Slayer Block Lists\"}],[\"$\",\"p\",null,{\"className\":\"mt-0.5 text-[12px]\",\"style\":{\"color\":\"var(--faint)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"RuneLite Plugin Hub\"}],[\"$\",\"p\",null,{\"className\":\"mt-2 text-[15px] leading-relaxed\",\"style\":{\"color\":\"var(--muted)\"},\"children\":\"Side panel showing your block list for every Slayer master at once, read live from the game, with unlock requirements for the slots you have not bought yet.\"}],[\"$\",\"div\",null,{\"className\":\"mt-3 flex flex-wrap items-center gap-2\",\"children\":[[\"$\",\"span\",\"Java\",{\"className\":\"rounded px-1.5 py-0.5 text-[11px]\",\"style\":{\"backgroundColor\":\"var(--deep)\",\"border\":\"1px solid var(--border)\",\"color\":\"var(--muted)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"Java\"}],[\"$\",\"span\",\"RuneLite\",{\"className\":\"rounded px-1.5 py-0.5 text-[11px]\",\"style\":{\"backgroundColor\":\"var(--deep)\",\"border\":\"1px solid var(--border)\",\"color\":\"var(--muted)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"RuneLite\"}],[\"$\",\"span\",\"Plugin Hub\",{\"className\":\"rounded px-1.5 py-0.5 text-[11px]\",\"style\":{\"backgroundColor\":\"var(--deep)\",\"border\":\"1px solid var(--border)\",\"color\":\"var(--muted)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"Plugin Hub\"}]]}]]}],[\"$\",\"div\",null,{\"className\":\"w-full shrink-0 overflow-hidden rounded sm:w-[220px]\",\"style\":{\"border\":\"1px solid var(--border)\",\"backgroundColor\":\"var(--deep)\"},\"children\":[\"$\",\"img\",null,{\"src\":\"/previews/slayer-block-lists.webp\",\"alt\":\"\",\"width\":760,\"height\":475,\"loading\":\"lazy\",\"decoding\":\"async\",\"className\":\"block h-[132px] w-full object-cover object-top transition-opacity duration-150 group-hover:opacity-85 sm:h-[138px]\"}]}]]}]]}],[\"$\",\"div\",null,{\"className\":\"grid grid-cols-[2.5rem_1fr] gap-x-2 pb-6 sm:grid-cols-[3.5rem_1fr] sm:gap-x-4\",\"children\":[[\"$\",\"span\",null,{}],[\"$\",\"a\",null,{\"href\":\"https://github.com/A-Kimpton/slayer-block-lists\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"className\":\"text-[13px]\",\"children\":\"Source on GitHub\"}]]}]]}]\n12:[\"$\",\"li\",\"https://runelite.net/plugin-hub/show/account-data-exporter\",{\"style\":{\"borderBottom\":\"1px solid var(--border)\"},\"children\":[[\"$\",\"a\",null,{\"href\":\"https://runelite.net/plugin-hub/show/account-data-exporter\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"className\":\"group grid grid-cols-[2.5rem_1fr] gap-x-2 py-6 no-underline sm:grid-cols-[3.5rem_1fr] sm:gap-x-4\",\"style\":{\"color\":\"var(--text)\"},\"children\":[[\"$\",\"span\",null,{\"aria-hidden\":\"true\",\"className\":\"pt-1 text-[13px] transition-colors group-hover:text-[var(--accent)]\",\"style\":{\"color\":\"var(--fa"])</script>
1<script>self.__next_f.push([1,"int)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"05\"}],[\"$\",\"div\",null,{\"className\":\"flex flex-col gap-4 sm:flex-row sm:items-start sm:gap-6\",\"children\":[[\"$\",\"div\",null,{\"className\":\"min-w-0 flex-1\",\"children\":[[\"$\",\"h3\",null,{\"className\":\"text-base font-semibold tracking-tight group-hover:underline\",\"children\":\"Account Data Exporter\"}],[\"$\",\"p\",null,{\"className\":\"mt-0.5 text-[12px]\",\"style\":{\"color\":\"var(--faint)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"RuneLite Plugin Hub\"}],[\"$\",\"p\",null,{\"className\":\"mt-2 text-[15px] leading-relaxed\",\"style\":{\"color\":\"var(--muted)\"},\"children\":\"Exports your OSRS account to local JSON: skills, bank, inventory, quests, diaries, combat achievements and slayer. Yours on your own disk, for spreadsheets or tooling.\"}],[\"$\",\"div\",null,{\"className\":\"mt-3 flex flex-wrap items-center gap-2\",\"children\":[[\"$\",\"span\",\"Java\",{\"className\":\"rounded px-1.5 py-0.5 text-[11px]\",\"style\":{\"backgroundColor\":\"var(--deep)\",\"border\":\"1px solid var(--border)\",\"color\":\"var(--muted)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"Java\"}],[\"$\",\"span\",\"RuneLite\",{\"className\":\"rounded px-1.5 py-0.5 text-[11px]\",\"style\":{\"backgroundColor\":\"var(--deep)\",\"border\":\"1px solid var(--border)\",\"color\":\"var(--muted)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"RuneLite\"}],[\"$\",\"span\",\"Plugin Hub\",{\"className\":\"rounded px-1.5 py-0.5 text-[11px]\",\"style\":{\"backgroundColor\":\"var(--deep)\",\"border\":\"1px solid var(--border)\",\"color\":\"var(--muted)\",\"fontFamily\":\"var(--mono)\"},\"children\":\"Plugin Hub\"}]]}]]}],\"$undefined\"]}]]}],[\"$\",\"div\",null,{\"className\":\"grid grid-cols-[2.5rem_1fr] gap-x-2 pb-6 sm:grid-cols-[3.5rem_1fr] sm:gap-x-4\",\"children\":[[\"$\",\"span\",null,{}],[\"$\",\"a\",null,{\"href\":\"https://github.com/A-Kimpton/account-data-exporter\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"className\":\"text-[13px]\",\"children\":\"Source on GitHub\"}]]}]]}]\n"])</script>
1<script>self.__next_f.push([1,"19:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n15:null\n"])</script>
1<script>self.__next_f.push([1,"1d:I[8719,[],\"IconMark\"]\n"])</script>
1<script>self.__next_f.push([1,"17:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"Antony Kimpton - software engineer, UK\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Software engineer in the UK. Public projects: the Palworld breeding guide, an OSRS AI companion, a D2R terror zone tracker, and two RuneLite plugins on the Plugin Hub.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"canonical\",\"href\":\"https://kimpton.io\"}],[\"$\",\"meta\",\"3\",{\"property\":\"og:title\",\"content\":\"Antony Kimpton - software engineer, UK\"}],[\"$\",\"meta\",\"4\",{\"property\":\"og:description\",\"content\":\"Software engineer in the UK. Public projects: the Palworld breeding guide, an OSRS AI companion, a D2R terror zone tracker, and two RuneLite plugins on the Plugin Hub.\"}],[\"$\",\"meta\",\"5\",{\"property\":\"og:url\",\"content\":\"https://kimpton.io\"}],[\"$\",\"meta\",\"6\",{\"property\":\"og:site_name\",\"content\":\"kimpton.io\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"8\",{\"name\":\"twitter:card\",\"content\":\"summary\"}],[\"$\",\"meta\",\"9\",{\"name\":\"twitter:title\",\"content\":\"Antony Kimpton - software engineer, UK\"}],[\"$\",\"meta\",\"10\",{\"name\":\"twitter:description\",\"content\":\"Software engineer in the UK. Public projects: the Palworld breeding guide, an OSRS AI companion, a D2R terror zone tracker, and two RuneLite plugins on the Plugin Hub.\"}],[\"$\",\"link\",\"11\",{\"rel\":\"icon\",\"href\":\"/favicon.ico\",\"type\":\"image/x-icon\",\"sizes\":\"16x16\"}],[\"$\",\"link\",\"12\",{\"rel\":\"icon\",\"href\":\"/icon.png?67240e7ca04260b8\",\"type\":\"image/png\",\"sizes\":\"512x512\"}],[\"$\",\"link\",\"13\",{\"rel\":\"apple-touch-icon\",\"href\":\"/apple-icon.png?a015fc4985438333\",\"type\":\"image/png\",\"sizes\":\"180x180\"}],[\"$\",\"$L1d\",\"14\",{}]],\"error\":null,\"digest\":\"$undefined\"}\n1c:\"$17:metadata\"\n"])</script>
1<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"51c9167434824726a46aa3b744078e60","r":1,"spa":2}' crossorigin="anonymous"></script>
1 2</body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.