1<!DOCTYPE html><html lang="en" class="google_sans_code_b386f835-module__T8HX3a__variable" data-site-edition="normal" data-site-environment="production" data-scroll-behavior="smooth"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover"/><link rel="stylesheet" href="/_next/static/immutable/chunks/3gu2mew9vteh4.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/immutable/chunks/25wblkozn4pzw.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/immutable/chunks/2hcxg69l5s4d0.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/immutable/chunks/17tuxysuvqwd2.js"/>
1<script src="/_next/static/immutable/chunks/32_9u2lef27ri.js" async=""></script>
1<script src="/_next/static/immutable/chunks/11bn2mta_phqx.js" async=""></script>
1<script src="/_next/static/immutable/chunks/0n0fwvxjnvj-g.js" async=""></script>
1<script src="/_next/static/immutable/chunks/turbopack-3xmrt1s2qk-ya.js" async=""></script>
1<script src="/_next/static/immutable/chunks/3raffv9p1t49v.js" async=""></script>
1<script src="/_next/static/immutable/chunks/05dlkq2nnf33a.js" async=""></script>
1<script src="/_next/static/immutable/chunks/20e10milov9tx.js" async=""></script>
1<script src="/_next/static/immutable/chunks/0wjkuawavaiu3.js" async=""></script>
1<script src="/_next/static/immutable/chunks/1tgye6zfkp8pz.js" async=""></script>
1<title>That Josh Guy</title><meta name="description" content="Designer, tech journalist and Samsung/Android creator. Explore my articles and design projects."/><meta name="author" content="Josh Skinner"/><meta name="keywords" content="Josh Skinner, That Josh Guy, UI/UX Designer, Graphic Designer, Web Developer, Writer, Portfolio, Freelance, Creative"/><link rel="canonical" href="https://tjg.gg"/><meta property="og:title" content="That Josh Guy"/><meta property="og:description" content="Designer, tech journalist and Samsung/Android creator. Explore my articles and design projects."/><meta property="og:url" content="https://tjg.gg"/><meta property="og:image" content="https://tjg.gg/images/preview.png"/><meta property="og:image:width" content="1200"/><meta property="og:image:height" content="630"/><meta property="og:image:alt" content="That Josh Guy"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:title" content="That Josh Guy"/><meta name="twitter:description" content="Designer, tech journalist and Samsung/Android creator. Explore my articles and design projects."/><meta name="twitter:image" content="https://tjg.gg/images/preview.png"/><link rel="icon" href="/favicon.ico"/><meta name="theme-color" content="#000"/><link rel="preload" href="/fonts/oneuisans-subset.woff2" as="font" type="font/woff2" crossorigin="anonymous"/>
1<script> 2 (function() { 3 var viewportWidth = window.innerWidth; 4 var viewportHeight = window.innerHeight; 5 var frame = 0; 6 var hasCoarsePointer = window.matchMedia('(pointer: coarse)'); 7 8 function lockHeroViewportHeight() { 9 viewportWidth = window.innerWidth; 10 viewportHeight = window.innerHeight; 11 document.documentElement.style.setProperty( 12 '--hero-viewport-height', 13 viewportHeight + 'px' 14 ); 15 } 16 17 function scheduleHeroViewportLock() { 18 cancelAnimationFrame(frame); 19 frame = requestAnimationFrame(lockHeroViewportHeight); 20 } 21 22 lockHeroViewportHeight(); 23 24 window.addEventListener('resize', function() { 25 var widthChanged = window.innerWidth !== viewportWidth; 26 var heightChanged = window.innerHeight !== viewportHeight; 27 28 if (!widthChanged && (!heightChanged || hasCoarsePointer.matches)) return; 29 scheduleHeroViewportLock(); 30 }, { passive: true }); 31 32 window.addEventListener('orientationchange', scheduleHeroViewportLock, { passive: true }); 33 })(); 34 </script>
34<script> 35 (function() { 36 try { 37 var theme = localStorage.getItem('theme'); 38 var currentTheme; 39 if (theme && theme !== 'auto') { 40 currentTheme = theme; 41 document.documentElement.dataset.theme = theme; 42 } else { 43 currentTheme = window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light'; 44 document.documentElement.dataset.theme = currentTheme; 45 } 46 // Set theme-color meta tag for Safari URL bar 47 var themeColorMeta = document.querySelector('meta[name="theme-color"]'); 48 if (themeColorMeta) { 49 themeColorMeta.setAttribute('content', currentTheme === 'dark' ? '#000' : '#f1f1f3'); 50 } 51 var progressiveBlur = localStorage.getItem('progressiveBlur'); 52 if (progressiveBlur) { 53 document.documentElement.dataset.progressiveBlur = progressiveBlur; 54 } else { 55 document.documentElement.dataset.progressiveBlur = 'true'; 56 } 57 var accentColor = localStorage.getItem('accentColor') || 'blue'; 58 var accentColors = { 59 blue: '#387aff', 60 coral: '#ff6b6b', 61 mint: '#4ecdc4', 62 lilac: '#a78bfa', 63 mono: '#808080' 64 }; 65 if (!accentColors[accentColor]) accentColor = 'blue'; 66 document.documentElement.dataset.accent = accentColor; 67 document.documentElement.style.setProperty('--accent', accentColors[accentColor] || accentColors.blue); 68 var csAvailable = true; 69 var csLisseSupported = 'ResizeObserver' in window && window.CSS && CSS.supports && CSS.supports('clip-path', 'path("M 0 0 L 1 0 L 1 1 Z")'); 70 var csSaved = localStorage.getItem('cornerSmoothing'); 71 var csEnabled = csAvailable && csLisseSupported && (csSaved === null ? true : csSaved === 'true'); 72 document.documentElement.dataset.cornerSmoothing = csEnabled ? 'true' : 'false'; 73 } catch (e) {} 74 })(); 75 </script>
75<script src="/_next/static/immutable/chunks/0c0hxoamwjsbw.js" noModule=""></script>
75</head><body><div hidden=""><!--$--><!--/$--></div>
75<script> 76 (function() { 77 try { 78 var storedNavState = sessionStorage.getItem('sidebar-collapsed'); 79 document.body.classList.toggle( 80 'nav-collapsed', 81 storedNavState === null ? true : storedNavState === 'true' 82 ); 83 } catch (e) { 84 document.body.classList.add('nav-collapsed'); 85 } 86 })(); 87 </script>
87<a class="skip-link" href="#main-content" data-no-smooth-corners="">Skip to main content</a><div class="progressive-blur-overlay progressive-blur-overlay--top" aria-hidden="true" style="opacity:0;transition:opacity 180ms ease-out"><div class="progressive-blur-layer" style="backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px);mask-image:linear-gradient(rgba(0,0,0,0) 60%, rgba(0,0,0,1) 70%, rgba(0,0,0,1) 90%, rgba(0,0,0,0) 100%);-webkit-mask-image:linear-gradient(rgba(0,0,0,0) 60%, rgba(0,0,0,1) 70%, rgba(0,0,0,1) 90%, rgba(0,0,0,0) 100%)"></div><div class="progressive-blur-layer" style="backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);mask-image:linear-gradient(rgba(0,0,0,0) 50%, rgba(0,0,0,1) 60%, rgba(0,0,0,1) 80%, rgba(0,0,0,0) 90%);-webkit-mask-image:linear-gradient(rgba(0,0,0,0) 50%, rgba(0,0,0,1) 60%, rgba(0,0,0,1) 80%, rgba(0,0,0,0) 90%)"></div><div class="progressive-blur-layer" style="backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);mask-image:linear-gradient(rgba(0,0,0,0) 40%, rgba(0,0,0,1) 50%, rgba(0,0,0,1) 70%, rgba(0,0,0,0) 85%);-webkit-mask-image:linear-gradient(rgba(0,0,0,0) 40%, rgba(0,0,0,1) 50%, rgba(0,0,0,1) 70%, rgba(0,0,0,0) 85%)"></div><div class="progressive-blur-layer" style="backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);mask-image:linear-gradient(rgba(0,0,0,0) 30%, rgba(0,0,0,1) 40%, rgba(0,0,0,1) 60%, rgba(0,0,0,0) 80%);-webkit-mask-image:linear-gradient(rgba(0,0,0,0) 30%, rgba(0,0,0,1) 40%, rgba(0,0,0,1) 60%, rgba(0,0,0,0) 80%)"></div><div class="progressive-blur-layer" style="backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);mask-image:linear-gradient(rgba(0,0,0,0) 10%, rgba(0,0,0,1) 20%, rgba(0,0,0,1) 40%, rgba(0,0,0,0) 60%);-webkit-mask-image:linear-gradient(rgba(0,0,0,0) 10%, rgba(0,0,0,1) 20%, rgba(0,0,0,1) 40%, rgba(0,0,0,0) 60%)"></div><div class="progressive-blur-layer" style="backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);mask-image:linear-gradient(rgba(0,0,0,1) 20%, rgba(0,0,0,0) 40%);-webkit-mask-image:linear-gradient(rgba(0,0,0,1) 20%, rgba(0,0,0,0) 40%)"></div><div class="progressive-blur-layer" style="backdrop-filter:blur(64px);-webkit-backdrop-filter:blur(64px);mask-image:linear-gradient(rgba(0,0,0,1) 0%, rgba(0,0,0,0) 30%);-webkit-mask-image:linear-gradient(rgba(0,0,0,1) 0%, rgba(0,0,0,0) 30%)"></div><div class="progressive-blur-gradient" style="background:linear-gradient(var(--background), transparent)"></div></div><div class="progressive-blur-overlay progressive-blur-overlay--bottom" aria-hidden="true" style="opacity:1"><div class="progressive-blur-layer" style="backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px);mask-image:linear-gradient(rgba(0,0,0,0) 0%, rgba(0,0,0,1) 10%, rgba(0,0,0,1) 30%, rgba(0,0,0,0) 40%);-webkit-mask-image:linear-gradient(rgba(0,0,0,0) 0%, rgba(0,0,0,1) 10%, rgba(0,0,0,1) 30%, rgba(0,0,0,0) 40%)"></div><div class="progressive-blur-layer" style="backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);mask-image:linear-gradient(rgba(0,0,0,0) 10%, rgba(0,0,0,1) 20%, rgba(0,0,0,1) 40%, rgba(0,0,0,0) 50%);-webkit-mask-image:linear-gradient(rgba(0,0,0,0) 10%, rgba(0,0,0,1) 20%, rgba(0,0,0,1) 40%, rgba(0,0,0,0) 50%)"></div><div class="progressive-blur-layer" style="backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);mask-image:linear-gradient(rgba(0,0,0,0) 15%, rgba(0,0,0,1) 30%, rgba(0,0,0,1) 50%, rgba(0,0,0,0) 60%);-webkit-mask-image:linear-gradient(rgba(0,0,0,0) 15%, rgba(0,0,0,1) 30%, rgba(0,0,0,1) 50%, rgba(0,0,0,0) 60%)"></div><div class="progressive-blur-layer" style="backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);mask-image:linear-gradient(rgba(0,0,0,0) 20%, rgba(0,0,0,1) 40%, rgba(0,0,0,1) 60%, rgba(0,0,0,0) 70%);-webkit-mask-image:linear-gradient(rgba(0,0,0,0) 20%, rgba(0,0,0,1) 40%, rgba(0,0,0,1) 60%, rgba(0,0,0,0) 70%)"></div><div class="progressive-blur-layer" style="backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);mask-image:linear-gradient(rgba(0,0,0,0) 40%, rgba(0,0,0,1) 60%, rgba(0,0,0,1) 80%, rgba(0,0,0,0) 90%);-webkit-mask-image:linear-gradient(rgba(0,0,0,0) 40%, rgba(0,0,0,1) 60%, rgba(0,0,0,1) 80%, rgba(0,0,0,0) 90%)"></div><div class="progressive-blur-layer" style="backdrop-filter:blur(32px);-webkit-backdrop-filter:blur(32px);mask-image:linear-gradient(rgba(0,0,0,0) 60%, rgba(0,0,0,1) 80%);-webkit-mask-image:linear-gradient(rgba(0,0,0,0) 60%, rgba(0,0,0,1) 80%)"></div><div class="progressive-blur-layer" style="backdrop-filter:blur(64px);-webkit-backdrop-filter:blur(64px);mask-image:linear-gradient(rgba(0,0,0,0) 70%, rgba(0,0,0,1) 100%);-webkit-mask-image:linear-gradient(rgba(0,0,0,0) 70%, rgba(0,0,0,1) 100%)"></div><div class="progressive-blur-gradient" style="background:linear-gradient(transparent, var(--background))"></div></div><div class="desktop-nav-shadow" data-no-smooth-corners="" aria-hidden="true"></div><nav class="tab-container desktop-nav collapsed" data-no-smooth-corners=""><div class="desktop-nav-indicator desktop-nav-indicator--instant" data-direction="1" style="transform:translate3d(0px, 0px, 0);width:0;height:0;--desktop-nav-direction:1" aria-hidden="true"><div class="desktop-nav-indicator-pill"></div></div><div class="icon-container"><div class="shortcut-popover-anchor"><div class="sidebar-toggle nav-icon-container sidebar-toggle-collapsed" tabindex="0" role="button" aria-label="Expand navigation" aria-keyshortcuts="/"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M19 17.75C19.414 17.75 19.75 18.086 19.75 18.5C19.75 18.915 19.414 19.25 19 19.25H5C4.586 19.25 4.25 18.915 4.25 18.5C4.25 18.086 4.586 17.75 5 17.75H19ZM19 11.25C19.414 11.25 19.75 11.586 19.7
875 12C19.75 12.415 19.414 12.75 19 12.75H5C4.586 12.75 4.25 12.415 4.25 12C4.25 11.586 4.586 11.25 5 11.25H19ZM19 4.75C19.414 4.75 19.75 5.086 19.75 5.5C19.75 5.915 19.414 6.25 19 6.25H5C4.586 6.25 4.25 5.915 4.25 5.5C4.25 5.086 4.586 4.75 5 4.75H19Z" fill="var(--primary)"></path></svg></div></div><a class="nav-icon-container-selected desktop-nav-core-tab" data-no-smooth-corners="" href="/"><div class="desktop-nav-content"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M18.7204 8.46198L13.6396 3.70139C12.6534 2.77675 11.1544 2.7647 10.1543 3.67487L4.89313 8.45957C4.32562 8.97553 4 9.71934 4 10.5017V17.2791C4 18.7824 5.17573 20 6.62475 20H8.25751C8.80874 20 9.25647 19.5359 9.25647 18.9645V13.3335C9.25647 12.8513 9.60535 12.3691 10.1868 12.3691H13.3977C13.9117 12.3691 14.328 12.8018 14.328 13.3347V18.9645C14.328 19.5359 14.7758 20 15.327 20H16.9598C18.4088 20 19.5833 18.7824 19.5833 17.2791V10.4776C19.5833 9.70969 19.2705 8.97674 18.7204 8.46198Z" fill="var(--primary)"></path></svg><div class="nav-label-selected">Home</div></div></a><a class="nav-icon-container desktop-nav-core-tab" data-no-smooth-corners="" href="/shop"><div class="desktop-nav-content"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M17.5066 17.1416C18.4036 17.1416 19.1326 17.8696 19.1326 18.7656C19.1326 19.6616 18.4036 20.3916 17.5066 20.3916C16.6116 20.3916 15.8826 19.6616 15.8826 18.7656C15.8826 17.8696 16.6116 17.1416 17.5066 17.1416ZM10.2683 17.1416C11.1643 17.1416 11.8933 17.8696 11.8933 18.7656C11.8933 19.6616 11.1643 20.3916 10.2683 20.3916C9.3723 20.3916 8.6443 19.6616 8.6443 18.7656C8.6443 17.8696 9.3723 17.1416 10.2683 17.1416ZM5.1664 3.60742C5.9454 3.60742 6.6374 4.12942 6.8504 4.87842L7.5044 7.18342H19.8594C20.8524 7.18342 21.5714 8.13042 21.3044 9.08642L20.1054 13.3854C19.8034 14.4664 18.8194 15.2134 17.6974 15.2134H10.0954C8.9774 15.2134 7.9944 14.4714 7.6904 13.3954L5.9314 7.18342H5.9464L5.4084 5.28942C5.3764 5.18142 5.2784 5.10742 5.1664 5.10742H3.3894C2.9754 5.10742 2.6394 4.77142 2.6394 4.35742C2.6394 3.94342 2.9754 3.60742 3.3894 3.60742H5.1664Z" fill="var(--secondary)"></path></svg><div class="nav-label">Shop</div></div></a><a class="nav-icon-container desktop-nav-core-tab" data-no-smooth-corners="" href="/blog"><div class="desktop-nav-content"><svg width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="var(--secondary)" d="M16 4C17.3807 4 18.5 5.1193 18.5 6.5V18C18.5 19.3805 17.3807 20.5 16 20.5H7.5C6.1193 20.5 5 19.3805 5 18V16.6758C5.04072 16.6826 5.08233 16.6875 5.125 16.6875H7.56738L7.64453 16.6836C8.02265 16.6451 8.31738 16.3258 8.31738 15.9375C8.31738 15.5492 8.02265 15.2299 7.64453 15.1914L7.56738 15.1875H5.125C5.08239 15.1875 5.04067 15.1914 5 15.1982V12.9883C5.04072 12.9951 5.08233 13 5.125 13H7.56738L7.64453 12.9961C8.02265 12.9576 8.31738 12.6383 8.31738 12.25C8.31738 11.8617 8.02265 11.5424 7.64453 11.5039L7.56738 11.5H5.125C5.08239 11.5 5.04067 11.5039 5 11.5107V9.30078C5.04072 9.30763 5.08233 9.3125 5.125 9.3125H7.56738L7.64453 9.30859C8.02265 9.27012 8.31738 8.95077 8.31738 8.5625C8.31738 8.17423 8.02265 7.85488 7.64453 7.81641L7.56738 7.8125H5.125C5.08239 7.8125 5.04067 7.81642 5 7.82324V6.5C5 5.1193 6.1193 4 7.5 4H16Z"></path></svg><div class="nav-label">Blog</div></div></a><a class="nav-icon-container desktop-nav-core-tab" data-no-smooth-corners="" href="/contact"><div class="desktop-nav-content"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12.005 20.9508C14.839 20.9508 17.3653 19.6352 19.01 17.5837C18.293 14.3749 15.4299 11.9763 12.005 11.9763C8.58017 11.9763 5.71725 14.3749 5 17.5837C6.645 19.6352 9.17029 20.9508 12.005 20.9508Z" fill="var(--secondary)"></path><path d="M15.6247 6.61916C15.6247 8.6184 14.0044 10.2382 12.0053 10.2382C10.0061 10.2382 8.3858 8.6184 8.3858 6.61916C8.3858 4.62057 10.0061 3 12.0053 3C14.0044 3 15.6247 4.62057 15.6247 6.61916Z" fill="var(--secondary)"></path></svg><div class="nav-label">Contact</div></div></a></div><div class="nav-footer"><a class="nav-icon-container" data-no-smooth-corners="" href="/settings"><div class="desktop-nav-content"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M20.1782 14.2996L18.7782 12.8996C18.5782 12.6996 18.4782 12.3996 18.4782 12.1996C18.4782 12.1996 18.4782 12.1996 18.4782 11.9996C18.4782 11.7996 18.4782 11.7996 18.4782 11.7996C18.4782 11.5996 18.5782 11.2996 18.7782 11.0996L20.1782 9.69961C20.3782 9.49961 20.3782 9.19961 20.2782 8.89961L18.7782 6.29961C18.6782 6.09961 18.2782 5.89961 18.0782 5.99961L16.1782 6.49961C15.8782 6.59961 15.5782 6.49961 15.3782 6.39961C15.1782 6.29961 14.6782 5.79961 14.5782 5.49961L14.0782 3.59961C13.9782 3.29961 13.7782 3.09961 13.4782 3.09961H10.4782C10.1782 3.09961 9.87823 3.29961 9.87823 3.59961L9.37823 5.499
8761C9.27823 5.79961 9.07823 6.09961 8.87823 6.19961C8.67823 6.29961 7.97823 6.49961 7.77823 6.49961L5.87823 5.99961C5.57823 5.89961 5.27823 6.09961 5.17823 6.29961L3.67823 8.89961C3.57823 9.09961 3.57823 9.49961 3.77823 9.69961L5.17823 11.0996C5.37823 11.2996 5.47823 11.5996 5.47823 11.7996C5.47823 11.7996 5.47823 11.7996 5.47823 11.9996C5.47823 12.1996 5.47823 12.1996 5.47823 12.1996C5.47823 12.3996 5.37823 12.6996 5.17823 12.8996L3.77823 14.2996C3.57823 14.4996 3.57823 14.7996 3.67823 15.0996L5.17823 17.6996C5.27823 17.8996 5.67823 18.0996 5.87823 17.9996L7.77823 17.4996C8.07823 17.3996 8.37823 17.4996 8.57823 17.5996C8.77823 17.6996 9.27823 18.1996 9.37823 18.4996L9.87823 20.3996C9.97823 20.6996 10.1782 20.8996 10.4782 20.8996H13.4782C13.7782 20.8996 14.0782 20.6996 14.0782 20.3996L14.5782 18.4996C14.6782 18.1996 14.8782 17.8996 15.0782 17.7996C15.2782 17.6996 15.9782 17.4996 16.1782 17.4996L18.0782 17.9996C18.3782 18.0996 18.6782 17.8996 18.7782 17.6996L20.2782 15.0996C20.4782 14.8996 20.3782 14.4996 20.1782 14.2996ZM12.0782 14.9996C10.3782 14.9996 9.07823 13.6996 9.07823 11.9996C9.07823 10.2996 10.3782 8.99961 12.0782 8.99961C13.7782 8.99961 15.0782 10.2996 15.0782 11.9996C15.0782 13.6996 13.6782 14.9996 12.0782 14.9996Z" fill="var(--primary)"></path></svg><div class="nav-label" style="color:var(--primary)">Settings</div></div></a></div></nav><nav class="mobile-nav-bar"><div class="mobile-nav-tabs" data-item-count="4" style="backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)"><div class="mobile-nav-indicator mobile-nav-indicator--instant" data-direction="1" style="transform:translateX(0px);width:0;--mobile-nav-direction:1" aria-hidden="true"><div class="mobile-nav-indicator-pill"></div></div><a class="mobile-nav-tab mobile-nav-tab--active" href="/"><div class="mobile-nav-tab-content"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M18.7204 8.46198L13.6396 3.70139C12.6534 2.77675 11.1544 2.7647 10.1543 3.67487L4.89313 8.45957C4.32562 8.97553 4 9.71934 4 10.5017V17.2791C4 18.7824 5.17573 20 6.62475 20H8.25751C8.80874 20 9.25647 19.5359 9.25647 18.9645V13.3335C9.25647 12.8513 9.60535 12.3691 10.1868 12.3691H13.3977C13.9117 12.3691 14.328 12.8018 14.328 13.3347V18.9645C14.328 19.5359 14.7758 20 15.327 20H16.9598C18.4088 20 19.5833 18.7824 19.5833 17.2791V10.4776C19.5833 9.70969 19.2705 8.97674 18.7204 8.46198Z" fill="var(--primary)"></path></svg><span class="mobile-nav-label">Home</span></div></a><a class="mobile-nav-tab" href="/shop"><div class="mobile-nav-tab-content"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M17.5066 17.1416C18.4036 17.1416 19.1326 17.8696 19.1326 18.7656C19.1326 19.6616 18.4036 20.3916 17.5066 20.3916C16.6116 20.3916 15.8826 19.6616 15.8826 18.7656C15.8826 17.8696 16.6116 17.1416 17.5066 17.1416ZM10.2683 17.1416C11.1643 17.1416 11.8933 17.8696 11.8933 18.7656C11.8933 19.6616 11.1643 20.3916 10.2683 20.3916C9.3723 20.3916 8.6443 19.6616 8.6443 18.7656C8.6443 17.8696 9.3723 17.1416 10.2683 17.1416ZM5.1664 3.60742C5.9454 3.60742 6.6374 4.12942 6.8504 4.87842L7.5044 7.18342H19.8594C20.8524 7.18342 21.5714 8.13042 21.3044 9.08642L20.1054 13.3854C19.8034 14.4664 18.8194 15.2134 17.6974 15.2134H10.0954C8.9774 15.2134 7.9944 14.4714 7.6904 13.3954L5.9314 7.18342H5.9464L5.4084 5.28942C5.3764 5.18142 5.2784 5.10742 5.1664 5.10742H3.3894C2.9754 5.10742 2.6394 4.77142 2.6394 4.35742C2.6394 3.94342 2.9754 3.60742 3.3894 3.60742H5.1664Z" fill="var(--secondary)"></path></svg><span class="mobile-nav-label">Shop</span></div></a><a class="mobile-nav-tab" href="/blog"><div class="mobile-nav-tab-content"><svg width="24" height="24" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="var(--secondary)" d="M16 4C17.3807 4 18.5 5.1193 18.5 6.5V18C18.5 19.3805 17.3807 20.5 16 20.5H7.5C6.1193 20.5 5 19.3805 5 18V16.6758C5.04072 16.6826 5.08233 16.6875 5.125 16.6875H7.56738L7.64453 16.6836C8.02265 16.6451 8.31738 16.3258 8.31738 15.9375C8.31738 15.5492 8.02265 15.2299 7.64453 15.1914L7.56738 15.1875H5.125C5.08239 15.1875 5.04067 15.1914 5 15.1982V12.9883C5.04072 12.9951 5.08233 13 5.125 13H7.56738L7.64453 12.9961C8.02265 12.9576 8.31738 12.6383 8.31738 12.25C8.31738 11.8617 8.02265 11.5424 7.64453 11.5039L7.56738 11.5H5.125C5.08239 11.5 5.04067 11.5039 5 11.5107V9.30078C5.04072 9.30763 5.08233 9.3125 5.125 9.3125H7.56738L7.64453 9.30859C8.02265 9.27012 8.31738 8.95077 8.31738 8.5625C8.31738 8.17423 8.02265 7.85488 7.64453 7.8164
871L7.56738 7.8125H5.125C5.08239 7.8125 5.04067 7.81642 5 7.82324V6.5C5 5.1193 6.1193 4 7.5 4H16Z"></path></svg><span class="mobile-nav-label">Blog</span></div></a><a class="mobile-nav-tab" href="/contact"><div class="mobile-nav-tab-content"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M12.005 20.9508C14.839 20.9508 17.3653 19.6352 19.01 17.5837C18.293 14.3749 15.4299 11.9763 12.005 11.9763C8.58017 11.9763 5.71725 14.3749 5 17.5837C6.645 19.6352 9.17029 20.9508 12.005 20.9508Z" fill="var(--secondary)"></path><path d="M15.6247 6.61916C15.6247 8.6184 14.0044 10.2382 12.0053 10.2382C10.0061 10.2382 8.3858 8.6184 8.3858 6.61916C8.3858 4.62057 10.0061 3 12.0053 3C14.0044 3 15.6247 4.62057 15.6247 6.61916Z" fill="var(--secondary)"></path></svg><span class="mobile-nav-label">Contact</span></div></a></div></nav><main class="site-main" id="main-content"><!--$?--><template id="B:0"></template><div class="page"><div class="page-body"><div class="main-content"><span class="top-app-bar-anchor" data-mobile-buttons="" aria-hidden="true"></span><div style="display:flex;flex-direction:column;align-items:center;gap:16px;padding-top:32px;padding-bottom:24px"><div class="skeleton-box" style="width:120px;height:120px;border-radius:50%" aria-hidden="true"></div><div class="skeleton-box" style="height:20px;width:120px" aria-hidden="true"></div><div class="skeleton-box" style="height:40px;width:240px" aria-hidden="true"></div><div class="skeleton-box" style="height:16px;width:200px" aria-hidden="true"></div></div><div style="display:flex;flex-wrap:wrap;gap:12px;margin-bottom:24px"><div class="skeleton-box" style="flex:1 1 160px;height:88px;border-radius:var(--br-2lg)" aria-hidden="true"></div><div class="skeleton-box" style="flex:1 1 160px;height:88px;border-radius:var(--br-2lg)" aria-hidden="true"></div></div><div class="skeleton-box" style="height:16px;width:140px;margin-bottom:12px" aria-hidden="true"></div><div style="display:flex;gap:12px;flex-wrap:wrap"><div style="flex:1 1 160px;display:flex;flex-direction:column;gap:8px"><div class="skeleton-box" style="width:100%;height:100px;border-radius:var(--br-md)" aria-hidden="true"></div><div class="skeleton-box" style="height:14px;width:85%" aria-hidden="true"></div><div class="skeleton-box" style="height:12px;width:55%" aria-hidden="true"></div></div><div style="flex:1 1 160px;display:flex;flex-direction:column;gap:8px"><div class="skeleton-box" style="width:100%;height:100px;border-radius:var(--br-md)" aria-hidden="true"></div><div class="skeleton-box" style="height:14px;width:85%" aria-hidden="true"></div><div class="skeleton-box" style="height:12px;width:55%" aria-hidden="true"></div></div><div style="flex:1 1 160px;display:flex;flex-direction:column;gap:8px"><div class="skeleton-box" style="width:100%;height:100px;border-radius:var(--br-md)" aria-hidden="true"></div><div class="skeleton-box" style="height:14px;width:85%" aria-hidden="true"></div><div class="skeleton-box" style="height:12px;width:55%" aria-hidden="true"></div></div></div></div></div></div><!--/$--></main><!--$--><!--/$--><!--$--><!--/$--><svg width="0" height="0" style="position:absolute"><filter id="progressive-blur" x="0" y="0" width="100%" height="100%"><feGaussianBlur stdDeviation="0 24" edgeMode="duplicate"></feGaussianBlur></filter></svg>
87<script>requestAnimationFrame(function(){$RT=performance.now()});</script>
87<script src="/_next/static/immutable/chunks/17tuxysuvqwd2.js" id="_R_" async=""></script>
87<div hidden id="S:0"><div class="page home-page"><div class="page-body"><div class="main-content"><span class="top-app-bar-anchor" data-mobile-buttons="" aria-hidden="true"></span><div class="hero-role-wrapper"><div class="hero-section"><div class="hero-mesh" aria-hidden="true"><svg class="hero-mesh-layer hero-mesh-light hero-mesh-light-left" width="1637" height="1603" viewBox="0 0 1637 1603" preserveAspectRatio="none" overflow="visible" fill="none" focusable="false"><ellipse cx="818.5" cy="801.5" rx="318.5" ry="301.5" fill="#C6E0FF" filter="url(#_R_qavalb_-light-left)"></ellipse><defs><filter id="_R_qavalb_-light-left" x="0" y="0" width="1637" height="1603" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"><feGaussianBlur stdDeviation="250"></feGaussianBlur></filter></defs></svg><svg class="hero-mesh-layer hero-mesh-light hero-mesh-light-center" width="1637" height="1603" viewBox="0 0 1637 1603" preserveAspectRatio="none" overflow="visible" fill="none" focusable="false"><ellipse cx="818.5" cy="801.5" rx="318.5" ry="301.5" fill="#C6F4FF" filter="url(#_R_qavalb_-light-center)"></ellipse><defs><filter id="_R_qavalb_-light-center" x="0" y="0" width="1637" height="1603" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"><feGaussianBlur stdDeviation="250"></feGaussianBlur></filter></defs></svg><svg class="hero-mesh-layer hero-mesh-light hero-mesh-light-right" width="1624" height="1716" viewBox="0 0 1624 1716" preserveAspectRatio="none" overflow="visible" fill="none" focusable="false"><ellipse cx="812" cy="858" rx="312" ry="358" fill="#9EE1F8" filter="url(#_R_qavalb_-light-right)"></ellipse><defs><filter id="_R_qavalb_-light-right" x="0" y="0" width="1624" height="1716" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"><feGaussianBlur stdDeviation="250"></feGaussianBlur></filter></defs></svg><svg class="hero-mesh-layer hero-mesh-dark hero-mesh-dark-left" width="1777" height="1743" viewBox="0 0 1777 1743" preserveAspectRatio="none" overflow="visible" fill="none" focusable="false"><ellipse cx="888.5" cy="871.5" rx="318.5" ry="301.5" fill="#184172" filter="url(#_R_qavalb_-dark-left)"></ellipse><defs><filter id="_R_qavalb_-dark-left" x="0" y="0" width="1777" height="1743" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"><feGaussianBlur stdDeviation="285"></feGaussianBlur></filter></defs></svg><svg class="hero-mesh-layer hero-mesh-dark hero-mesh-dark-center" width="1777" height="1743" viewBox="0 0 1777 1743" preserveAspectRatio="none" overflow="visible" fill="none" focusable="false"><ellipse cx="888.5" cy="871.5" rx="318.5" ry="301.5" fill="#095060" filter="url(#_R_qavalb_-dark-center)"></ellipse><defs><filter id="_R_qavalb_-dark-center" x="0" y="0" width="1777" height="1743" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"><feGaussianBlur stdDeviation="285"></feGaussianBlur></filter></defs></svg><svg class="hero-mesh-layer hero-mesh-dark hero-mesh-dark-right" width="1764" height="1856" viewBox="0 0 1764 1856" preserveAspectRatio="none" overflow="visible" fill="none" focusable="false"><ellipse cx="882" cy="928" rx="312" ry="358" fill="#1E4958" filter="url(#_R_qavalb_-dark-right)"></ellipse><defs><filter id="_R_qavalb_-dark-right" x="0" y="0" width="1764" height="1856" filterUnits="userSpaceOnUse" color-interpolation-filters="sRGB"><feGaussianBlur stdDeviation="285"></feGaussianBlur></filter></defs></svg></div><div class="hero-intro"><span class="hero-subtitle">Hey, I'm</span><h1 class="hero-name"><div class="hero-name-entrance" style="display:inline-block;cursor:default;touch-action:pan-y"><span style="display:inline-block;font-family:One UI Sans;font-weight:700;transition:font-weight 0.1s ease-out;--animated-text-character-index:0">J</span><span style="display:inline-block;font-family:One UI Sans;font-weight:700;transition:font-weight 0.1s ease-out;--animated-text-character-index:1">o</span><span style="display:inline-block;font-family:One UI Sans;font-weight:700;transition:font-weight 0.1s ease-out;--animated-text-character-index:2">s</span><span style="display:inline-block;font-family:One UI Sans;font-weight:700;transition:font-weight 0.1s ease-out;--animated-text-character-index:3">h</span><span style="display:inline-block;font-family:One UI Sans;font-weight:700;transition:font-weight 0.1s ease-out;--animated-text-character-index:4"> </span><span style="display:inline-block;font-family:One UI Sans;font-weight:700;transition:font-weight 0.1s ease-out;--animated-text-character-index:5">S</span><span style="display:inline-block;font-family:One UI Sans;font-weight:700;transition:font-weight 0.1s ease-out;--animated-text-character-index:6">k</span><span style="display:inline-block;font-family:One UI Sans;font-weight:700;transition:font-weight 0.1s ease-out;--animated-text-character-index:7">i</span><span style="display:inline-block;font-family:One UI Sans;font-weight:700;transition:font-weight 0.1s ease-out;--animated-text-character-index:8">n</span><span style="display:inline-block;font-family:One UI Sans;font-weight:700;transition:font-weight 0.1s ease-out;--animated-text-character-index:9">n</span><span style="display:inline-block;font-family:One UI Sans;font-weight:700;transition:font-weight 0.1s ease-out;--animated-text-character-index:10">e</span><span style="display:inline-block;font-family:One UI Sans;font-weight:700;transition:font-weight 0.1s ease-out;--animated-text-character-index:11">r</span></div></h1><div class="hero-description"><span>aka</span><span class="hero-brand-mark" aria-hidden="true"><img alt="" loading="lazy" width="37" height="25" decoding="async" data-nimg="1" class="hero-theme-asset hero-theme-asset-light" style="color:transparent" src="/images/home/hero/brand-light.svg"/><img alt="" loading="lazy" width="37" height="25" decoding="async" data-nimg="1" class="hero-theme-asset hero-theme-asset-dark" style="color:transparent" src="/images/home/hero/brand-dark.svg"/></span><span class="hero-alias">That Josh Guy</span></div></div><a href="#about" class="hero-scroll-indicator" aria-label="Scroll to About"><img alt="" loading="lazy" width="76" height="40" decoding="async" data-nimg="1" class="hero-scroll-arrow hero-theme-asset hero-theme-asset-light" style="color:transparent" src="/images/home/hero/arrow-light.svg"/><img alt="" loading="lazy" width="76" height="40" decoding="async" data-nimg="1" class="hero-scroll-arrow hero-theme-asset hero-theme-asset-dark" style="color:transparent" src="/images/home/hero/arrow-dark.svg"/></a></div></div><!--$?--><template id="B:1"></template><div class="home-content-loading" role="status">Loading more about Joshâ¦</div><!--/$--></div></div></div><!--$--><!--/$--></div>
87<script>$RB=[];$RV=function(a){$RT=performance.now();for(var b=0;b<a.length;b+=2){var c=a[b],e=a[b+1];null!==e.parentNode&&e.parentNode.removeChild(e);var f=c.parentNode;if(f){var g=c.previousSibling,h=0;do{if(c&&8===c.nodeType){var d=c.data;if("/$"===d||"/&"===d)if(0===h)break;else h--;else"$"!==d&&"$?"!==d&&"$~"!==d&&"$!"!==d&&"&"!==d||h++}d=c.nextSibling;f.removeChild(c);c=d}while(c);for(;e.firstChild;)f.insertBefore(e.firstChild,c);g.data="$";g._reactRetry&&requestAnimationFrame(g._reactRetry)}}a.length=0}; 88$RC=function(a,b){if(b=document.getElementById(b))(a=document.getElementById(a))?(a.previousSibling.data="$~",$RB.push(a,b),2===$RB.length&&("number"!==typeof $RT?requestAnimationFrame($RV.bind(null,$RB)):(a=performance.now(),setTimeout($RV.bind(null,$RB),2300>a&&2E3<a?2300-a:$RT+300-a)))):b.parentNode.removeChild(b)};$RC("B:0","S:0")</script>
88<div hidden id="S:1"><section class="about-section" id="about"><div class="about-copy"><h2 class="about-headline">Hey,</h2><p class="about-text">I'm Josh, a designer, journalist and lifelong Samsung enthusiast based in the south of the UK. I follow everything Samsung, from their software updates, UX design, to even hardware leaks.</p><p class="about-text">I work with <a href="https://sammyguru.com/author/josh_skinner/" target="_blank" rel="noopener noreferrer">SammyGuru</a>, and contribute to publications like <a href="https://9to5google.com/" target="_blank" rel="noopener noreferrer">9to5Google</a>, <a href="https://www.sammobile.com/" target="_blank" rel="noopener noreferrer">SamMobile</a> and <a href="https://www.androidauthority.com/" target="_blank" rel="noopener noreferrer">Android Authority</a>.</p><p class="about-text">I've recreated One UI's design system in Figma with the <a href="/blog/oneui-design-kit">One UI Design Kit</a>, letting enthusiasts and developers create native looking interfaces.</p><p class="about-text">In early 2026, I leaked animations on how the <a href="https://sammyguru.com/galaxy-s26-ultra-privacy-display-animation/" target="_blank" rel="noopener noreferrer">Galaxy S26 Ultra's Privacy Display</a> worked, showed off <a href="https://sammyguru.com/exclusive-samsung-internet-gets-massive-redesign-in-one-ui-8-0/" target="_blank" rel="noopener noreferrer">Samsung Internet's redesign</a> in Nov 2025, and was first to share the update artwork for <a href="https://x.com/thatjoshguy69" target="_blank" rel="noopener noreferrer">One UI 9.5</a>.</p><p class="about-text">I also review the latest and greatest Samsung tech for <a href="https://sammyguru.com/author/josh_skinner/" target="_blank" rel="noopener noreferrer">SammyGuru</a>, and dig through Samsung's applications for signs of unreleased hardware and new features.</p><p class="about-text">I also overhauled <a href="https://sammyguru.com/" target="_blank" rel="noopener noreferrer">SammyGuru's brand identity</a>, bringing a cohesive colour system with a new logo and social media branding.</p></div><aside class="about-aside" aria-label="Profile details"><figure class="about-portrait"><img alt="Josh Skinner beside the River Thames in London, with Tower Bridge behind him" loading="lazy" decoding="async" data-nimg="fill" class="about-portrait-image" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="(max-width: 699px) calc(100vw - 40px), 414px" srcSet="/_next/image?url=%2Fimages%2Fhome%2Fabout%2Flondon.jpg&w=32&q=75 32w, /_next/image?url=%2Fimages%2Fhome%2Fabout%2Flondon.jpg&w=48&q=75 48w, /_next/image?url=%2Fimages%2Fhome%2Fabout%2Flondon.jpg&w=64&q=75 64w, /_next/image?url=%2Fimages%2Fhome%2Fabout%2Flondon.jpg&w=96&q=75 96w, /_next/image?url=%2Fimages%2Fhome%2Fabout%2Flondon.jpg&w=128&q=75 128w, /_next/image?url=%2Fimages%2Fhome%2Fabout%2Flondon.jpg&w=256&q=75 256w, /_next/image?url=%2Fimages%2Fhome%2Fabout%2Flondon.jpg&w=384&q=75 384w, /_next/image?url=%2Fimages%2Fhome%2Fabout%2Flondon.jpg&w=640&q=75 640w, /_next/image?url=%2Fimages%2Fhome%2Fabout%2Flondon.jpg&w=750&q=75 750w, /_next/image?url=%2Fimages%2Fhome%2Fabout%2Flondon.jpg&w=828&q=75 828w, /_next/image?url=%2Fimages%2Fhome%2Fabout%2Flondon.jpg&w=1080&q=75 1080w, /_next/image?url=%2Fimages%2Fhome%2Fabout%2Flondon.jpg&w=1200&q=75 1200w, /_next/image?url=%2Fimages%2Fhome%2Fabout%2Flondon.jpg&w=1920&q=75 1920w, /_next/image?url=%2Fimages%2Fhome%2Fabout%2Flondon.jpg&w=2048&q=75 2048w, /_next/image?url=%2Fimages%2Fhome%2Fabout%2Flondon.jpg&w=3840&q=75 3840w" src="/_next/image?url=%2Fimages%2Fhome%2Fabout%2Flondon.jpg&w=3840&q=75"/><figcaption class="about-location"><svg width="28" height="28" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M11.9994 13.1684C10.3434 13.1684 8.99942 11.8254 8.99942 10.1664C8.99942 8.51137 10.3434 7.16837 11.9994 7.16837C13.6564 7.16837 14.9994 8.51137 14.9994 10.1664C14.9994 11.8254 13.6564 13.1684 11.9994 13.1684ZM11.9984 3.02637C8.02042 3.02637 4.78442 6.26237 4.78442 10.2394C4.78442 12.9944 6.87942 15.3144 6.96142 15.4024L10.8604 20.4494C11.4594 21.1474 12.5394 21.1474 13.1384 20.4484L17.0284 15.4114C17.1184 15.3144 19.2154 12.9944 19.2154 10.2394C19.2154 6.26237 15.9784 3.02637 11.9984 3.02637Z" fill="currentColor"></path></svg><span>London</span></figcaption></figure><ul class="list-group home-facts-list" aria-label="A few facts about Josh"><li class="list home-fact-item"><span class="home-fact-icon home-fact-icon-phone" aria-hidden="true"><svg aria-hidden="true" width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M20.2252 6.37178C20.2252 5.26693 19.3295 4.37207 18.2255 4.37207H7.22576C6.1209 4.37207 5.22519 5.26693 5.22519 6.37178V12.4729C5.22519 12.6829 5.19262 12.8912 5.12747 13.0909L3.87262 16.9541C3.80747 17.1538 3.7749 17.3629 3.7749 17.5721C3.7749 18.6769 4.66976 19.5726 5.77462 19.5726H16.8446C17.7455 19.5726 18.5358 18.9692 18.7732 18.1001L20.1549 13.0489C20.2012 12.8766 20.2252 12.6992 20.2252 12.5209V6.37178ZM8.92976 8.97236C8.92976 9.52436 8.48233 9.97178 7.93033 9.97178C7.37747 9.97178 6.93005 9.52436 6.93005 8.97236C6.93005 8.4195 7.37747 7.97207 7.93033 7.97207C8.48233 7.97207 8.92976 8.4195 8.92976 8.97236Z" fill="currentColor"></path><path fill-rule="evenodd" clip-rule="evenodd" d="M7.2531 4.39941H18.2528C19.3577 4.39941 20.2534 5.29513 20.2534 6.39913V12.5491C20.2534 12.7274 20.2294 12.9048 20.1822 13.0763L18.8014 18.1274C18.5631 18.9974 17.7737 19.6 16.872 19.6H5.80282C4.69796 19.6 3.80225 18.7043 3.80225 17.6003C3.80225 17.3903 3.83567 17.182 3.89996 16.9823L5.15482 13.1183C5.21996 12.9194 5.25339 12.7103 5.25339 12.5011V6.39913C5.25339 5.29513 6.14825 4.39941 7.2531 4.39941Z" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"></path></svg></span><span class="home-fact-copy"><span class="home-fact-label">Current phone</span><span class="home-fact-value">Galaxy Z Fold8</span></span></li><li class="list home-fact-item"><span class="home-fact-icon home-fact-icon-game" aria-hidden="true"><img alt="" loading="lazy" width="24" height="29" decoding="async" data-nimg="1" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fhome%2Fabout%2Fpersona-3-reload.png&w=32&q=75 1x, /_next/image?url=%2Fimages%2Fhome%2Fabout%2Fpersona-3-reload.png&w=48&q=75 2x" src="/_next/image?url=%2Fimages%2Fhome%2Fabout%2Fpersona-3-reload.png&w=48&q=75"/></span><span class="home-fact-copy"><span class="home-fact-label">Favourite video game</span><span class="home-fact-value">Persona 3 Reload</span></span></li><li class="list home-fact-item"><span class="home-fact-icon home-fact-icon-f1" aria-hidden="true"><img alt="" loading="lazy" width="28" height="16" decoding="async" data-nimg="1" style="color:transparent" src="/images/home/about/lewis-hamilton.svg"/></span><span class="home-fact-copy"><span class="home-fact-label">Favourite Formula 1 driver</span><span class="home-fact-value">Lewis Hamilton</span></span></li></ul></aside></section><div class="journalist-section"><h2 class="journalist-headline">Featured In</h2><div class="publications-marquee-wrapper"><div class="publications-marquee publications-marquee-forward"><div class="publications-marquee-content"><a class="publication-item" href="https://sammyguru.com/" target="_blank" rel="noopener noreferrer" title="SammyGuru" data-publication="SammyGuru"><span role="img" aria-label="SammyGuru" class="publication-logo-image publication-logo-mask" style="--publication-width:245px;
88--publication-height:50px;--publication-mask:url("/images/home/svg/sammyguru-2026.svg")"></span></a><a class="publication-item" href="https://www.xda-developers.com/" target="_blank" rel="noopener noreferrer" title="XDA Developers" data-publication="XDA Developers"><span role="img" aria-label="XDA Developers" class="publication-logo-image publication-logo-mask" style="--publication-width:169px;--publication-height:50px;--publication-mask:url("/images/home/svg/xda-developers.svg")"></span></a><a class="publication-item" href="https://www.androidauthority.com/" target="_blank" rel="noopener noreferrer" title="Android Authority" data-publication="Android Authority"><span role="img" aria-label="Android Authority" class="publication-logo-image publication-logo-mask" style="--publication-width:316px;--publication-height:40px;--publication-mask:url("/images/home/svg/android-authority.svg")"></span></a><a class="publication-item" href="https://9to5google.com/" target="_blank" rel="noopener noreferrer" title="9to5Google" data-publication="9to5Google"><span role="img" aria-label="9to5Google" class="publication-logo-image publication-logo-mask" style="--publication-width:250px;--publication-height:50px;--publication-mask:url("/images/home/svg/9to5google.svg")"></span></a></div><div class="publications-marquee-content" aria-hidden="true"><a class="publication-item" href="https://sammyguru.com/" target="_blank" rel="noopener noreferrer" title="SammyGuru" data-publication="SammyGuru" tabindex="-1"><span role="img" aria-label="SammyGuru" class="publication-logo-image publication-logo-mask" style="--publication-width:245px;--publication-height:50px;--publication-mask:url("/images/home/svg/sammyguru-2026.svg")"></span></a><a class="publication-item" href="https://www.xda-developers.com/" target="_blank" rel="noopener noreferrer" title="XDA Developers" data-publication="XDA Developers" tabindex="-1"><span role="img" aria-label="XDA Developers" class="publication-logo-image publication-logo-mask" style="--publication-width:169px;--publication-height:50px;--publication-mask:url("/images/home/svg/xda-developers.svg")"></span></a><a class="publication-item" href="https://www.androidauthority.com/" target="_blank" rel="noopener noreferrer" title="Android Authority" data-publication="Android Authority" tabindex="-1"><span role="img" aria-label="Android Authority" class="publication-logo-image publication-logo-mask" style="--publication-width:316px;--publication-height:40px;--publication-mask:url("/images/home/svg/android-authority.svg")"></span></a><a class="publication-item" href="https://9to5google.com/" target="_blank" rel="noopener noreferrer" title="9to5Google" data-publication="9to5Google" tabindex="-1"><span role="img" aria-label="9to5Google" class="publication-logo-image publication-logo-mask" style="--publication-width:250px;--publication-height:50px;--publication-mask:url("/images/home/svg/9to5google.svg")"></span></a></div></div><div class="publications-marquee publications-marquee-reverse"><div class="publications-marquee-content"><a class="publication-item" href="https://www.androidpolice.com/" target="_blank" rel="noopener noreferrer" title="Android Police" data-publication="Android Police"><span role="img" aria-label="Android Police" class="publication-logo-image publication-logo-mask" style="--publication-width:236px;--publication-height:50px;--publication-mask:url("/images/home/svg/android_police.svg")"></span></a><a class="publication-item" href="https://www.androidheadlines.com/" target="_blank" rel="noopener noreferrer" title="Android Headlines" data-publication="Android Headlines"><span role="img" aria-label="Android Headlines" class="publication-logo-image publication-logo-mask" style="--publication-width:193px;--publication-height:50px;--publication-mask:url("/images/home/svg/android_headlines.svg")"></span></a><a class="publication-item" href="https://www.sammobile.com/" target="_blank" rel="noopener noreferrer" title="SamMobile" data-publication="SamMobile"><span role="img" aria-label="SamMobile" class="publication-logo-image publication-logo-mask" style="--publication-width:304px;--publication-height:50px;--publication-mask:url("/images/home/svg/sammobile.svg")"></span></a><a class="publication-item" href="https://www.androidcentral.com/" target="_blank" rel="noopener noreferrer" title="Android Central" data-publication="Android Central"><span role="img" aria-label="Android Central" class="publication-logo-image publication-logo-mask" style="--publication-width:378px;--publication-height:40px;--publication-mask:url("/images/home/svg/android_central.svg")"></span></a><a class="publication-item" href="https://www.tomsguide.com/" target="_blank" rel="noopener noreferrer" title="Tom's Guide" data-publication="Tom's Guide"><span role="img" aria-label="Tom's Guide" class="publication-logo-image publication-logo-mask" style="--publication-width:283px;--publication-height:50px;--publication-mask:url("/images/home/svg/toms_guide-figma.svg")"></span></a></div><div class="publications-marquee-content" aria-hidden="true"><a class="publication-item" href="https://www.androidpolice.com/" target="_blank" rel="noopener noreferrer" title="Android Police" data-publication="Android Police" tabindex="-1"><span role="img" aria-label="Android Police" class="publication-logo-image publication-logo-mask" style="--publication-width:236px;--publication-height:50px;--publication-mask:url("/images/home/svg/android_police.svg")"></span></a><a class="publication-item" href="https://www.androidheadlines.com/" target="_blank" rel="noopener noreferrer" title="Android Headlines" data-publication="Android Headlines" tabindex="-1"><span role="img" aria-label="Android Headlines" class="publication-logo-image publication-logo-mask" style="--publication-width:193px;--publication-height:50px;--publication-mask:url("/images/home/svg/android_headlines.svg")"></span></a><a class="publication-item" href="https://www.sammobile.com/" target="_blank" rel="noopener noreferrer" title="SamMobile" data-publication="SamMobile" tabindex="-1"><span role="img" aria-label="SamMobile" class="publication-logo-image publication-logo-mask" style="--publication-width:304px;--publication-height:50px;--publication-mask:url("/images/home/svg/sammobile.svg")"></span></a><a class="publication-item" href="https://www.androidcentral.com/" target="_blank" rel="noopener noreferrer" title="Android Central" data-publication="Android Central" tabindex="-1"><span role="img" aria-label="Android Central" class="publication-logo-image publication-logo-mask" style="--publication-width:378px;--publication-height:40px;--publication-mask:url("/images/home/svg/android_central.svg")"></span></a><a class="publication-item" href="https://www.tomsguide.com/" target="_blank" rel="noopener noreferrer" title="Tom's Guide" data-publication="Tom's Guide" tabindex="-1"><span role="img" aria-label="Tom's Guide" class="publication-logo-image publication-logo-mask" style="--publication-width:283px;--publication-height:50px;--publication-mask:url("/images/home/svg/toms_guide-figma.svg")"></span></a></div></div></div></div><div class="featured-stories-section"><h2 class="featured-stories-headline">Popular articles</h2><div class="featured-stories-scroll-wrapper"><div class="featured-stories-scroll"><div class="featured-stories-scroll-inner"><a href="https://sammyguru.com/samsung-galaxy-z-fold-8-review/" target="_blank" rel="noopener noreferrer" class="story-card"><div class="story-card-thumbnail"><img alt="Galaxy Z Fold 8 One-Month Review: The Perfect Shape?" loading="lazy" width="320" height="180" decoding="async" data-nimg="1" class="story-card-image" style="color:transparent" srcSet="/_next/image?url=https%3A%2F%2Fsammyguru.com%2Fwp-content%2Fuploads%2F2026%2F09%2Fgalaxy-z-fold-8-review-hero-1200x675.jpg&w=384&q=75 1x, /_next/image?url=https%3A%2F%2Fsammyguru.com%2Fwp-content%2Fuploads%2F2026%2F09%2Fgalaxy-z-fold-8-review-hero-1200x675.jpg&w=640&q=75 2x" src="/_next/image?url=https%3A%2F%2Fsammyguru.com%2Fwp-content%2Fuploads%2F2026%2F09%2Fgalaxy-z-fold-8-review-hero-1200x675.jpg&w=640&q=75"/></div><div class="story-card-info"><span class="story-card-title">Galaxy Z Fold 8 One-Month Review: The Perfect Shape?</span><span class="story-card-site">SammyGuru</span></div></a><a href="https://sammyguru.com/samsung-galaxy-s26-plus-review/" target="_blank" rel="noopener noreferrer" class="story-card"><div class="story-card-thumbnail"><img alt="Galaxy S26+ Review: The Awkward Middle Child" loading="lazy" width="320" height="180" decoding="async" data-nimg="1" class="story-card-image" style="color:transparent" srcSet="/_next/image?url=https%3A%2F%2Fsammyguru.com%2Fwp-content%2Fuploads%2F2026%2F04%2FS26-Review-Thumbnail-scaled.jpeg&w=384&q=75 1x, /_next/image?url=https%3A%2F%2Fsammyguru.com%2Fwp-content%2Fuploads%2F2026%2F04%2FS26-Review-Thumbnail-scaled.jpeg&w=640&q=75 2x" src="/_next/image?url=https%3A%2F%2Fsammyguru.com%2Fwp-content%2Fuploads%2F2026%2F04%2FS26-Review-Thumbnail-scaled.jpeg&w=640&q=75"/></div><div class="story-card-info"><span class="story-card-title">Galaxy S26+ Review: The Awkward Middle Child</span><span class="story-card-site">SammyGuru</span></div></a><a href="https://sammyguru.com/galaxy-s26-ultra-privacy-display-animation/" target="_blank" rel="noopener noreferrer" class="story-card"><div class="story-card-thumbnail"><img alt="Hereâs How the Galaxy S26 Ultraâs Privacy Display Will Work" loading="lazy" width="320" height="180" decoding="async" data-nimg="1" class="story-card-image" style="color:transparent" srcSet="/_next/image?url=https%3A%2F%2Fsammyguru.com%2Fwp-content%2Fuploads%2F2026%2F01%2FPrivacy-Display-thumbnail.png&w=384&q=75 1x, /_next/image?url=https%3A%2F%2Fsammyguru.com%2Fwp-content%2Fuploads%2F2026%2F01%2FPrivacy-Display-thumbnail.png&w=640&q=75 2x" src="/_next/image?url=https%3A%2F%2Fsammyguru.com%2Fwp-content%2Fuploads%2F2026%2F01%2FPrivacy-Display-thumbnail.png&w=640&q=75"/></div><div class="story-card-info"><span class="story-card-title">Hereâs How the Galaxy S26 Ultraâs Privacy Display Will Work</span><span class="story-card-site">SammyGuru</span></div></a><a href="https://www.sammobile.com/news/samsung-one-ui-9-galaxy-ai-now-nudge/" target="_blank" rel="noopener noreferrer" class="story-card"><div class="story-card-thumbnail"><img alt="Here's the first glimpse of a One UI 9.0 Galaxy AI feature!" loading="lazy" width="320" height="180" decoding="async" data-nimg="1" class="story-card-image" style="color:transparent" srcSet="/_next/image?url=https%3A%2F%2Fwww.sammobile.com%2Fwp-content%2Fuploads%2F2026%2F01%2FNow-Brief-Galaxy-AI-1200x675.jpg&w=384&q=75 1x, /_next/image?url=https%3A%2F%2Fwww.sammobile.com%2Fwp-content%2Fuploads%2F2026%2F01%2FNow-Brief-Galaxy-AI-1200x675.jpg&w=640&q=75 2x" src="/_next/image?url=https%3A%2F%2Fwww.sammobile.com%2Fwp-content%2Fuploads%2F2026%2F01%2FNow-Brief-Galaxy-AI-1200x675.jpg&w=640&q=75"/></div><div class="story-card-info"><span class="story-card-title">Here's the first glimpse of a One UI 9.0 Galaxy AI feature!</span><span class="story-card-site">SamMobile</span></div></a><a href="https://www.phonearena.com/news/samsungs-rumored-perplexity-powered-bixby-leaks-in-new-video_id176996" target="_blank" rel="noopener noreferrer" class="story-card"><div class="story-card-thumbnail"><img alt="Samsungâs rumored Perplexity-powered Bixby leaks in new video" loading="lazy" width="320" height="180" decoding="async" data-nimg="1" class="story-card-image" style="color:transparent" srcSet="/_next/image?url=https%3A%2F%2Fm-cdn.phonearena.com%2Fimages%2Farticle%2F176996-wide-two_1200%2FSamsungs-rumored-Perplexity-powered-Bixby-leaks-in-new-video.webp%3F1767393754&w=384&q=75 1x, /_next/image?url=https%3A%2F%2Fm-cdn.phonearena.com%2Fimages%2Farticle%2F176996-wide-two_1200%2FSamsungs-rumored-Perplexity-powered-Bixby-leaks-in-new-video.webp%3F1767393754&w=640&q=75 2x" src="/_next/image?url=https%3A%2F%2Fm-cdn.phonearena.com%2Fimages%2Farticle%2F176996-wide-two_1200%2FSamsungs-rumored-Perplexity-powered-Bixby-leaks-in-new-video.webp%3F1767393754&w=640&q=75"/></div><div class="story-card-info"><span class="story-card-title">Samsungâs rumored Perplexity-powered Bixby leaks in new video</span><span class="story-card-site">PhoneArena</span></div></a><a href="https://sammyguru.com/galaxy-z-fold-7-review/" target="_blank" rel="noopener noreferrer" class="story-card"><div class="story-card-thumbnail"><img alt="Galaxy Z Fold 7 Review: I Ditched My Slab Phone⦠and Things Got Interesting" loading="lazy" width="320" height="180" decoding="async" data-nimg="1" class="story-card-image" style="color:transparent" srcSet="/_next/image?url=https%3A%2F%2Fsammyguru.com%2Fwp-content%2Fuploads%2F2025%2F07%2FGalaxy-Z-Fold-7-SammyGuru-28.jpg&w=384&q=75 1x, /_next/image?url=https%3A%2F%2Fsammyguru.com%2Fwp-content%2Fuploads%2F2025%2F07%2FGalaxy-Z-Fold-7-SammyGuru-28.jpg&w=640&q=75 2x" src="/_next/image?url=https%3A%2F%2Fsammyguru.com%2Fwp-content%2Fuploads%2F2025%2F07%2FGalaxy-Z-Fold-7-SammyGuru-28.jpg&w=640&q=75"/></div><div class="story-card-info"><span class="story-card-title">Galaxy Z Fold 7 Review: I Ditched My Slab Phone⦠and Things Got Interesting</span><span class="story-card-site">SammyGuru</span></div></a><a href="https://www.androidheadlines.com/2025/11/samsung-internet-browser-app-ui-redesign-one-ui-8-5.html" target="_blank" rel="noopener noreferrer" class="story-card"><div class="story-card-thumbnail"><img alt="Samsung Internet Browser Gets Massive Redesign in One UI 8.5" loading="lazy" width="320" height="180" decoding="async" data-nimg="1" class="story-card-image" style="color:transparent" srcSet="/_next/image?url=https%3A%2F%2Fwww.androidheadlines.com%2Fwp-content%2Fuploads%2F2025%2F09%2FSamsung-Galaxy-S25-FE-AM-AH-19-1.jpg&w=384&q=75 1x, /_next/image?url=https%3A%2F%2Fwww.androidheadlines.com%2Fwp-content%2Fuploads%2F2025%2F09%2FSamsung-Galaxy-S25-FE-AM-AH-19-1.jpg&w=640&q=75 2x" src="/_next/image?url=https%3A%2F%2Fwww.androidheadlines.com%2Fwp-content%2Fuploads%2F2025%2F09%2FSamsung-Galaxy-S25-FE-AM-AH-19-1.jpg&w=640&q=75"/></div><div class="story-card-info"><span class="story-card-title">Samsung Internet Browser Gets Massive Redesign in One UI 8.5</span><span class="story-card-site">Android Headlines</span></div></a></div></div></div></div><section class="design-projects-section projects-showcase-section" id="design-work"><h2 class="design-projects-headline">Projects</h2><div class="design-projects-scroll-wrapper"><div class="design-projects-scroll"><div class="design-projects-scroll-inner"><article class="design-project-card project-app-card project-app-card--light"><div class="design-project-thumbnail"><img alt="" loading="lazy" width="852" height="604" decoding="async" data-nimg="1" class="design-project-image" style="color:transparent" sizes="(max-width: 699px) calc(100vw - 64px), 426px" srcSet="/_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=32&q=75 32w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=48&q=75 48w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=64&q=75 64w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=96&q=75 96w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=128&q=75 128w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=256&q=75 256w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=384&q=75 384w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=640&q=75 640w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=750&q=75 750w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=828&q=75 828w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=1080&q=75 1080w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=1
88200&q=75 1200w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=1920&q=75 1920w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=2048&q=75 2048w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=3840&q=75 3840w" src="/_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=3840&q=75"/></div><a href="https://github.com/thatjoshguy67/twidget" target="_blank" rel="noopener noreferrer" class="project-app-card-body-link" aria-label="Open Twidget"></a><div class="project-app-card-panel"><span class="project-app-card-progressive-blur" aria-hidden="true"></span><img alt="" loading="lazy" width="80" height="80" decoding="async" data-nimg="1" class="project-app-card-icon" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-icon.png&w=96&q=75 1x, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-icon.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-icon.png&w=256&q=75"/><div class="project-app-card-copy"><h3 class="project-app-card-title">Twidget</h3><p class="project-app-card-description">Twitter/X analytics app with pretty widgets and a clean One UI design.</p></div><a href="https://github.com/thatjoshguy67/twidget/releases" target="_blank" rel="noopener noreferrer" class="project-app-card-action" aria-label="View Twidget releases" title="View Twidget releases"><img alt="" loading="lazy" width="24" height="24" decoding="async" data-nimg="1" class="project-app-card-action-icon" style="color:transparent" src="/images/home/projects/action-download.svg"/></a></div></article><article class="design-project-card project-app-card project-app-card--dark"><div class="design-project-thumbnail"><img alt="" loading="lazy" width="852" height="604" decoding="async" data-nimg="1" class="design-project-image" style="color:transparent" sizes="(max-width: 699px) calc(100vw - 64px), 426px" srcSet="/_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fblur-widget-card.png&w=32&q=75 32w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fblur-widget-card.png&w=48&q=75 48w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fblur-widget-card.png&w=64&q=75 64w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fblur-widget-card.png&w=96&q=75 96w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fblur-widget-card.png&w=128&q=75 128w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fblur-widget-card.png&w=256&q=75 256w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fblur-widget-card.png&w=384&q=75 384w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fblur-widget-card.png&w=640&q=75 640w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fblur-widget-card.png&w=750&q=75 750w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fblur-widget-card.png&w=828&q=75 828w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fblur-widget-card.png&w=1080&q=75 1080w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fblur-widget-card.png&w=1200&q=75 1200w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fblur-widget-card.png&w=1920&q=75 1920w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fblur-widget-card.png&w=2048&q=75 2048w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fblur-widget-card.png&w=3840&q=75 3840w" src="/_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fblur-widget-card.png&w=3840&q=75"/></div><a href="https://github.com/thatjoshguy67/blur-widget-demo" target="_blank" rel="noopener noreferrer" class="project-app-card-body-link" aria-label="Open Blur widget demo"></a><div class="project-app-card-panel"><span class="project-app-card-progressive-blur" aria-hidden="true"></span><img alt="" loading="lazy" width="80" height="80" decoding="async" data-nimg="1" class="project-app-card-icon" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fblur-widget-icon.png&w=96&q=75 1x, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fblur-widget-icon.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fblur-widget-icon.png&w=256&q=75"/><div class="project-app-card-copy"><h3 class="project-app-card-title">Blur widget demo</h3><p class="project-app-card-description">POC of One UI Homeâs widget blur capabilities.</p></div><a href="https://github.com/thatjoshguy67/blur-widget-demo/releases" target="_blank" rel="noopener noreferrer" class="project-app-card-action" aria-label="View Blur widget demo releases" title="View Blur widget demo releases"><img alt="" loading="lazy" width="24" height="24" decoding="async" data-nimg="1" class="project-app-card-action-icon" style="color:transparent" src="/images/home/projects/action-download.svg"/></a></div></article><article class="design-project-card project-app-card project-app-card--dark"><div class="design-project-thumbnail"><img alt="" loading="lazy" width="852" height="604" decoding="async" data-nimg="1" class="design-project-image" style="color:transparent" sizes="(max-width: 699px) calc(100vw - 64px), 426px" srcSet="/_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fone-ui-design-kit-card.png&w=32&q=75 32w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fone-ui-design-kit-card.png&w=48&q=75 48w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fone-ui-design-kit-card.png&w=64&q=75 64w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fone-ui-design-kit-card.png&w=96&q=75 96w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fone-ui-design-kit-card.png&w=128&q=75 128w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fone-ui-design-kit-card.png&w=256&q=75 256w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fone-ui-design-kit-card.png&w=384&q=75 384w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fone-ui-design-kit-card.png&w=640&q=75 640w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fone-ui-design-kit-card.png&w=750&q=75 750w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fone-ui-design-kit-card.png&w=828&q=75 828w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fone-ui-design-kit-card.png&w=1080&q=75 1080w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fone-ui-design-kit-card.png&w=1200&q=75 1200w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fone-ui-design-kit-card.png&w=1920&q=75 1920w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fone-ui-design-kit-card.png&w=2048&q=75 2048w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fone-ui-design-kit-card.png&w=3840&q=75 3840w" src="/_next/image?url=%2Fimages%2Fhome%2Fprojects%2Fone-ui-design-kit-card.png&w=3840&q=75"/></div><a href="https://www.figma.com/community/file/1456035621603784201/one-ui-design-kit" target="_blank" rel="noopener noreferrer" class="project-app-card-body-link" aria-label="Open One UI Design Kit"></a><div class="project-app-card-panel"><span class="project-app-card-progressive-blur" aria-hidden="true"></span><div class="project-app-card-copy"><h3 class="project-app-card-title">One UI Design Kit</h3><p class="project-app-card-description">Library of One UI components, icons, assets and more.</p></div><a href="https://www.figma.com/community/file/1456035621603784201/one-ui-design-kit" target="_blank" rel="noopener noreferrer" class="project-app-card-action" aria-label="Open One UI Design Kit" title="Open One UI Design Kit"><img alt="" loading="lazy" width="24" height="24" decoding="async" data-nimg="1" class="project-app-card-action-icon" style="color:transparent" src="/images/home/projects/action-open.svg"/></a></div></article><article class="design-project-card project-app-card project-app-card--light"><div class="design-project-thumbnail"><img alt="" loading="lazy" width="852" height="604" decoding="async" data-nimg="1" class="design-project-image" style="color:transparent" sizes="(max-width: 699px) calc(100vw - 64px), 426px" srcSet="/_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=32&q=75 32w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=48&q=75 48w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=64&q=75 64w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=96&q=75 96w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=128&q=75 128w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=256&q=75 256w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=384&q=75 384w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=640&q=75 640w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=750&q=75 750w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=828&q=75 828w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=1080&q=75 1080w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=1200&q=75 1200w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=1920&q=75 1920w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=2048&q=75 2048w, /_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=3840&q=75 3840w" src="/_next/image?url=%2Fimages%2Fhome%2Fprojects%2Ftwidget-card.png&w=3840&q=75"/></div><div class="project-app-card-panel"><span class="project-app-card-progressive-blur" aria-hidden="true"></span><div class="project-app-card-copy"><h3 class="project-app-card-title">This website</h3><p class="project-app-card-description">The very thing youâre looking at right now.</p></div><button type="button" class="project-app-card-action" aria-label="Copy this page link" title="Copy this page link"><img alt="" loading="lazy" width="24" height="24" decoding="async" data-nimg="1" class="project-app-card-action-icon" style="color:transparent" src="/images/home/projects/action-link.svg"/></button></div></article></div></div></div></section><div class="stack-section"><div class="stack-text"><h2 class="stack-headline">Tools I use</h2></div><div class="stack-icon-grid"><div class="stack-icon" title="Todoist" data-no-smooth-corners=""><img alt="Todoist" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ftodoist.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ftodoist.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ftodoist.png&w=256&q=75"/></div><div class="stack-icon" title="Figma" data-no-smooth-corners=""><img alt="Figma" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ffigma.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ffigma.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ffigma.png&w=256&q=75"/></div><div class="stack-icon" title="Notion" data-no-smooth-corners=""><img alt="Notion" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fnotion.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fnotion.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fnotion.png&w=256&q=75"/></div><div class="stack-icon" title="GitHub" data-no-smooth-corners=""><img alt="GitHub" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fgithub.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fgithub.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fgithub.png&w=256&q=75"/></div><div class="stack-icon" title="Cursor" data-no-smooth-corners=""><img alt="Cursor" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fcursor.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fcursor.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fcursor.png&w=256&q=75"/></div><div class="stack-icon" title="Claude" data-no-smooth-corners=""><img alt="Claude" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fclaude.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fclaude.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fclaude.png&w=256&q=75"/></div><div class="stack-icon" title="ChatGPT" data-no-smooth-corners=""><img alt="ChatGPT" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fchatgpt.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fchatgpt.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fchatgpt.png&w=256&q=75"/></div><div class="stack-icon" title="Helium" data-no-smooth-corners=""><img alt="Helium" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fdia.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fdia.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fdia.png&w=256&q=75"/></div><div class="stack-icon" title="Codex" data-no-smooth-corners=""><img alt="Codex" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fwarp.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fwarp.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fwarp.png&w=256&q=75"/></div><div class="stack-icon" title="Slack" data-no-smooth-corners=""><img alt="Slack" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fslack.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fslack.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fslack.png&w=256&q=75"/></div><div class="stack-icon" title="Blip" data-no-smooth-corners=""><img alt="Blip" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fframer.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fframer.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fframer.png&w=256&q=75"/></div><div class="stack-icon" title="Calendar" data-no-smooth-corners=""><img alt="Calendar" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fcalendar.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fcalendar.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fcalendar.png&w=256&q=75"/></div><div class="stack-icon" title="1Password" data-no-smooth-corners=""><img alt="1Password" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2F1password.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2F1password.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2F1password.png&w=256&q=75"/></div><div class="stack-icon" title="X" data-no-smooth-corners=""><img alt="X" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fx.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fx.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fx.png&w=256&q=75"/></div><div class="stack-icon" title="Twidget" data-no-smooth-corners=""><img alt="Twidget" loading="lazy" width="128"
88height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ftwidget.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ftwidget.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ftwidget.png&w=256&q=75"/></div><div class="stack-icon" title="Codex Meter" data-no-smooth-corners=""><img alt="Codex Meter" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ftermius.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ftermius.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ftermius.png&w=256&q=75"/></div></div><div class="stack-marquee-rows"><div class="stack-marquee-wrapper"><div class="stack-marquee"><div class="stack-marquee-content"><div class="stack-icon" title="Todoist" data-no-smooth-corners=""><img alt="Todoist" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ftodoist.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ftodoist.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ftodoist.png&w=256&q=75"/></div><div class="stack-icon" title="Figma" data-no-smooth-corners=""><img alt="Figma" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ffigma.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ffigma.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ffigma.png&w=256&q=75"/></div><div class="stack-icon" title="Notion" data-no-smooth-corners=""><img alt="Notion" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fnotion.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fnotion.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fnotion.png&w=256&q=75"/></div><div class="stack-icon" title="GitHub" data-no-smooth-corners=""><img alt="GitHub" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fgithub.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fgithub.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fgithub.png&w=256&q=75"/></div><div class="stack-icon" title="Cursor" data-no-smooth-corners=""><img alt="Cursor" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fcursor.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fcursor.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fcursor.png&w=256&q=75"/></div><div class="stack-icon" title="Claude" data-no-smooth-corners=""><img alt="Claude" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fclaude.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fclaude.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fclaude.png&w=256&q=75"/></div><div class="stack-icon" title="ChatGPT" data-no-smooth-corners=""><img alt="ChatGPT" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fchatgpt.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fchatgpt.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fchatgpt.png&w=256&q=75"/></div><div class="stack-icon" title="Helium" data-no-smooth-corners=""><img alt="Helium" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fdia.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fdia.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fdia.png&w=256&q=75"/></div></div><div class="stack-marquee-content" aria-hidden="true"><div class="stack-icon" title="Todoist" data-no-smooth-corners=""><img alt="Todoist" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ftodoist.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ftodoist.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ftodoist.png&w=256&q=75"/></div><div class="stack-icon" title="Figma" data-no-smooth-corners=""><img alt="Figma" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ffigma.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ffigma.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ffigma.png&w=256&q=75"/></div><div class="stack-icon" title="Notion" data-no-smooth-corners=""><img alt="Notion" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fnotion.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fnotion.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fnotion.png&w=256&q=75"/></div><div class="stack-icon" title="GitHub" data-no-smooth-corners=""><img alt="GitHub" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fgithub.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fgithub.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fgithub.png&w=256&q=75"/></div><div class="stack-icon" title="Cursor" data-no-smooth-corners=""><img alt="Cursor" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fcursor.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fcursor.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fcursor.png&w=256&q=75"/></div><div class="stack-icon" title="Claude" data-no-smooth-corners=""><img alt="Claude" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fclaude.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fclaude.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fclaude.png&w=256&q=75"/></div><div class="stack-icon" title="ChatGPT" data-no-smooth-corners=""><img alt="ChatGPT" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fchatgpt.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fchatgpt.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fchatgpt.png&w=256&q=75"/></div><div class="stack-icon" title="Helium" data-no-smooth-corners=""><img alt="Helium" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fdia.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fdia.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fdia.png&w=256&q=75"/></div></div><div class="stack-marquee-content" aria-hidden="true"><div class="stack-icon" title="Todoist" data-no-smooth-corners=""><img alt="Todoist" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ftodoist.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ftodoist.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ftodoist.png&w=256&q=75"/></div><div class="stack-icon" title="Figma" data-no-smooth-corners=""><img alt="Figma" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ffigma.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ffigma.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ffigma.png&w=256&q=75"/></div><div class="stack-icon" title="Notion" data-no-smooth-corners=""><img alt="Notion" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fnotion.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fnotion.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fnotion.png&w=256&q=75"/></div><div class="stack-icon" title="GitHub" data-no-smooth-corners=""><img alt="GitHub" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fgithub.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fgithub.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fgithub.png&w=256&q=75"/></div><div class="stack-icon" title="Cursor" data-no-smooth-corners=""><img alt="Cursor" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fcursor.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fcursor.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fcursor.png&w=256&q=75"/></div><div class="stack-icon" title="Claude" data-no-smooth-corners=""><img alt="Claude" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fclaude.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fclaude.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fclaude.png&w=256&q=75"/></div><div class="stack-icon" title="ChatGPT" data-no-smooth-corners=""><img alt="ChatGPT" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fchatgpt.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fchatgpt.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fchatgpt.png&w=256&q=75"/></div><div class="stack-icon" title="Helium" data-no-smooth-corners=""><img alt="Helium" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fdia.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fdia.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fdia.png&w=256&q=75"/></div></div><div class="stack-marquee-content" aria-hidden="true"><div class="stack-icon" title="Todoist" data-no-smooth-corners=""><img alt="Todoist" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ftodoist.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ftodoist.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ftodoist.png&w=256&q=75"/></div><div class="stack-icon" title="Figma" data-no-smooth-corners=""><img alt="Figma" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ffigma.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ffigma.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ffigma.png&w=256&q=75"/></div><div class="stack-icon" title="Notion" data-no-smooth-corners=""><img alt="Notion" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fnotion.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fnotion.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fnotion.png&w=256&q=75"/></div><div class="stack-icon" title="GitHub" data-no-smooth-corners=""><img alt="GitHub" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fgithub.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fgithub.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fgithub.png&w=256&q=75"/></div><div class="stack-icon" title="Cursor" data-no-smooth-corners=""><img alt="Cursor" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fcursor.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fcursor.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fcursor.png&w=256&q=75"/></div><div class="stack-icon" title="Claude" data-no-smooth-corners=""><img alt="Claude" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fclaude.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fclaude.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fclaude.png&w=256&q=75"/></div><div class="stack-icon" title="ChatGPT" data-no-smooth-corners=""><img alt="ChatGPT" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fchatgpt.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fchatgpt.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fchatgpt.png&w=256&q=75"/></div><div class="stack-icon" title="Helium" data-no-smooth-corners=""><img alt="Helium" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fdia.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fdia.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fdia.png&w=256&q=75"/></div></div></div></div><div class="stack-marquee-wrapper"><div class="stack-marquee stack-marquee-reverse"><div class="stack-marquee-content"><div class="stack-icon" title="Codex" data-no-smooth-corners=""><img alt="Codex" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fwarp.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fwarp.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fwarp.png&w=256&q=75"/></div><div class="stack-icon" title="Slack" data-no-smooth-corners=""><img alt="Slack" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fslack.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fslack.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fslack.png&w=256&q=75"/></div><div class="stack-icon" title="Blip" data-no-smooth-corners=""><img alt="Blip" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fframer.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fframer.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ffr
88amer.png&w=256&q=75"/></div><div class="stack-icon" title="Calendar" data-no-smooth-corners=""><img alt="Calendar" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fcalendar.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fcalendar.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fcalendar.png&w=256&q=75"/></div><div class="stack-icon" title="1Password" data-no-smooth-corners=""><img alt="1Password" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2F1password.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2F1password.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2F1password.png&w=256&q=75"/></div><div class="stack-icon" title="X" data-no-smooth-corners=""><img alt="X" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fx.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fx.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fx.png&w=256&q=75"/></div><div class="stack-icon" title="Twidget" data-no-smooth-corners=""><img alt="Twidget" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ftwidget.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ftwidget.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ftwidget.png&w=256&q=75"/></div><div class="stack-icon" title="Codex Meter" data-no-smooth-corners=""><img alt="Codex Meter" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ftermius.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ftermius.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ftermius.png&w=256&q=75"/></div></div><div class="stack-marquee-content" aria-hidden="true"><div class="stack-icon" title="Codex" data-no-smooth-corners=""><img alt="Codex" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fwarp.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fwarp.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fwarp.png&w=256&q=75"/></div><div class="stack-icon" title="Slack" data-no-smooth-corners=""><img alt="Slack" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fslack.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fslack.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fslack.png&w=256&q=75"/></div><div class="stack-icon" title="Blip" data-no-smooth-corners=""><img alt="Blip" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fframer.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fframer.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fframer.png&w=256&q=75"/></div><div class="stack-icon" title="Calendar" data-no-smooth-corners=""><img alt="Calendar" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fcalendar.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fcalendar.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fcalendar.png&w=256&q=75"/></div><div class="stack-icon" title="1Password" data-no-smooth-corners=""><img alt="1Password" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2F1password.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2F1password.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2F1password.png&w=256&q=75"/></div><div class="stack-icon" title="X" data-no-smooth-corners=""><img alt="X" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fx.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fx.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fx.png&w=256&q=75"/></div><div class="stack-icon" title="Twidget" data-no-smooth-corners=""><img alt="Twidget" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ftwidget.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ftwidget.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ftwidget.png&w=256&q=75"/></div><div class="stack-icon" title="Codex Meter" data-no-smooth-corners=""><img alt="Codex Meter" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ftermius.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ftermius.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ftermius.png&w=256&q=75"/></div></div><div class="stack-marquee-content" aria-hidden="true"><div class="stack-icon" title="Codex" data-no-smooth-corners=""><img alt="Codex" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fwarp.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fwarp.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fwarp.png&w=256&q=75"/></div><div class="stack-icon" title="Slack" data-no-smooth-corners=""><img alt="Slack" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fslack.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fslack.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fslack.png&w=256&q=75"/></div><div class="stack-icon" title="Blip" data-no-smooth-corners=""><img alt="Blip" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fframer.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fframer.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fframer.png&w=256&q=75"/></div><div class="stack-icon" title="Calendar" data-no-smooth-corners=""><img alt="Calendar" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fcalendar.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fcalendar.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fcalendar.png&w=256&q=75"/></div><div class="stack-icon" title="1Password" data-no-smooth-corners=""><img alt="1Password" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2F1password.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2F1password.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2F1password.png&w=256&q=75"/></div><div class="stack-icon" title="X" data-no-smooth-corners=""><img alt="X" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fx.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fx.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fx.png&w=256&q=75"/></div><div class="stack-icon" title="Twidget" data-no-smooth-corners=""><img alt="Twidget" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ftwidget.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ftwidget.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ftwidget.png&w=256&q=75"/></div><div class="stack-icon" title="Codex Meter" data-no-smooth-corners=""><img alt="Codex Meter" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ftermius.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ftermius.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ftermius.png&w=256&q=75"/></div></div><div class="stack-marquee-content" aria-hidden="true"><div class="stack-icon" title="Codex" data-no-smooth-corners=""><img alt="Codex" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fwarp.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fwarp.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fwarp.png&w=256&q=75"/></div><div class="stack-icon" title="Slack" data-no-smooth-corners=""><img alt="Slack" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fslack.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fslack.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fslack.png&w=256&q=75"/></div><div class="stack-icon" title="Blip" data-no-smooth-corners=""><img alt="Blip" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fframer.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fframer.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fframer.png&w=256&q=75"/></div><div class="stack-icon" title="Calendar" data-no-smooth-corners=""><img alt="Calendar" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fcalendar.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fcalendar.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fcalendar.png&w=256&q=75"/></div><div class="stack-icon" title="1Password" data-no-smooth-corners=""><img alt="1Password" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2F1password.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2F1password.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2F1password.png&w=256&q=75"/></div><div class="stack-icon" title="X" data-no-smooth-corners=""><img alt="X" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fx.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fx.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fx.png&w=256&q=75"/></div><div class="stack-icon" title="Twidget" data-no-smooth-corners=""><img alt="Twidget" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ftwidget.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ftwidget.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ftwidget.png&w=256&q=75"/></div><div class="stack-icon" title="Codex Meter" data-no-smooth-corners=""><img alt="Codex Meter" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ftermius.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ftermius.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ftermius.png&w=256&q=75"/></div></div></div></div></div><div class="stack-marquee-wrapper stack-marquee-wide-wrapper"><div class="stack-marquee-wide-content"><div class="stack-icon" title="Todoist" data-no-smooth-corners=""><img alt="Todoist" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ftodoist.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ftodoist.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ftodoist.png&w=256&q=75"/></div><div class="stack-icon" title="Figma" data-no-smooth-corners=""><img alt="Figma" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ffigma.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ffigma.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ffigma.png&w=256&q=75"/></div><div class="stack-icon" title="Notion" data-no-smooth-corners=""><img alt="Notion" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fnotion.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fnotion.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fnotion.png&w=256&q=75"/></div><div class="stack-icon" title="GitHub" data-no-smooth-corners=""><img alt="GitHub" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fgithub.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fgithub.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fgithub.png&w=256&q=75"/></div><div class="stack-icon" title="Cursor" data-no-smooth-corners=""><img alt="Cursor" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fcursor.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fcursor.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fcursor.png&w=256&q=75"/></div><div class="stack-icon" title="Claude" data-no-smooth-corners=""><img alt="Claude" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fclaude.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fclaude.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fclaude.png&w=256&q=75"/></div><div class="stack-icon" title="ChatGPT" data-no-smooth-corners=""><img alt="ChatGPT" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fchatgpt.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fchatgpt.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fchatgpt.png&w=256&q=75"/></div><div class="stack-icon" title="Helium" data-no-smooth-corners=""><img alt="Helium" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fdia.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fdia.png&w=256&q=75 2x" src="/_
88next/image?url=%2Fimages%2Fstack%2Fdia.png&w=256&q=75"/></div><div class="stack-icon" title="Codex" data-no-smooth-corners=""><img alt="Codex" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fwarp.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fwarp.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fwarp.png&w=256&q=75"/></div><div class="stack-icon" title="Slack" data-no-smooth-corners=""><img alt="Slack" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fslack.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fslack.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fslack.png&w=256&q=75"/></div><div class="stack-icon" title="Blip" data-no-smooth-corners=""><img alt="Blip" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fframer.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fframer.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fframer.png&w=256&q=75"/></div><div class="stack-icon" title="Calendar" data-no-smooth-corners=""><img alt="Calendar" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fcalendar.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fcalendar.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fcalendar.png&w=256&q=75"/></div><div class="stack-icon" title="1Password" data-no-smooth-corners=""><img alt="1Password" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2F1password.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2F1password.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2F1password.png&w=256&q=75"/></div><div class="stack-icon" title="X" data-no-smooth-corners=""><img alt="X" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Fx.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Fx.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Fx.png&w=256&q=75"/></div><div class="stack-icon" title="Twidget" data-no-smooth-corners=""><img alt="Twidget" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ftwidget.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ftwidget.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ftwidget.png&w=256&q=75"/></div><div class="stack-icon" title="Codex Meter" data-no-smooth-corners=""><img alt="Codex Meter" loading="lazy" width="128" height="128" decoding="async" data-nimg="1" class="stack-icon-image" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Fstack%2Ftermius.png&w=128&q=75 1x, /_next/image?url=%2Fimages%2Fstack%2Ftermius.png&w=256&q=75 2x" src="/_next/image?url=%2Fimages%2Fstack%2Ftermius.png&w=256&q=75"/></div></div></div></div><div class="section"><div class="section-header"><h2 class="title">Misc</h2></div><div class="list-group"><a href="https://legacy.tjg.gg" class="list"><div class="list-item-icon"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><mask id="mask0_misc_home" style="mask-type:alpha" maskUnits="userSpaceOnUse" x="0" y="0" width="24" height="24"><rect width="24" height="24" fill="#D9D9D9"></rect></mask><g mask="url(#mask0_misc_home)"><path d="M4.825 12.025L8.7 15.9C8.88334 16.0833 8.975 16.3167 8.975 16.6C8.975 16.8833 8.88334 17.1167 8.7 17.3C8.51667 17.4833 8.28334 17.575 8 17.575C7.71667 17.575 7.48334 17.4833 7.3 17.3L2.7 12.7C2.6 12.6 2.52917 12.4917 2.4875 12.375C2.44584 12.2583 2.425 12.1333 2.425 12C2.425 11.8667 2.44584 11.7417 2.4875 11.625C2.52917 11.5083 2.6 11.4 2.7 11.3L7.3 6.7C7.5 6.5 7.7375 6.4 8.0125 6.4C8.2875 6.4 8.525 6.5 8.725 6.7C8.925 6.9 9.025 7.1375 9.025 7.4125C9.025 7.6875 8.925 7.925 8.725 8.125L4.825 12.025ZM19.175 11.975L15.3 8.1C15.1167 7.91667 15.025 7.68333 15.025 7.4C15.025 7.11667 15.1167 6.88333 15.3 6.7C15.4833 6.51667 15.7167 6.425 16 6.425C16.2833 6.425 16.5167 6.51667 16.7 6.7L21.3 11.3C21.4 11.4 21.4708 11.5083 21.5125 11.625C21.5542 11.7417 21.575 11.8667 21.575 12C21.575 12.1333 21.5542 12.2583 21.5125 12.375C21.4708 12.4917 21.4 12.6 21.3 12.7L16.7 17.3C16.5 17.5 16.2667 17.5958 16 17.5875C15.7333 17.5792 15.5 17.475 15.3 17.275C15.1 17.075 15 16.8375 15 16.5625C15 16.2875 15.1 16.05 15.3 15.85L19.175 11.975Z" fill="var(--accent)"></path></g></svg></div><div class="list-item-content"><div class="body-text">My old site</div><div class="information-wrapper"><div class="information">legacy.tjg.gg, made in conjunction with Dhiren Vasnani</div></div></div></a></div></div><footer class="site-footer" aria-label="Site footer"><div class="footer-divider" aria-hidden="true"></div><div class="footer-brand-block"><img alt="That Josh Guy" loading="lazy" width="60" height="60" decoding="async" data-nimg="1" class="footer-brand" style="color:transparent" src="/images/footer/brand.svg"/><span class="footer-copyright">©<!-- -->2026<!-- --> Josh Skinner</span></div><div class="footer-contact-block"><span class="footer-contact-label">Hit me up</span><div class="footer-socials" aria-label="Contact links"><a href="mailto:[email protected]" class="footer-social-link" aria-label="Email" title="Email"><img alt="" aria-hidden="true" loading="lazy" width="40" height="40" decoding="async" data-nimg="1" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Ffooter%2Femail.png&w=48&q=75 1x, /_next/image?url=%2Fimages%2Ffooter%2Femail.png&w=96&q=75 2x" src="/_next/image?url=%2Fimages%2Ffooter%2Femail.png&w=96&q=75"/></a><a href="https://t.me/ThatJoshGuy" class="footer-social-link" aria-label="Telegram" title="Telegram" target="_blank" rel="noopener noreferrer"><img alt="" aria-hidden="true" loading="lazy" width="40" height="40" decoding="async" data-nimg="1" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Ffooter%2Ftelegram.png&w=48&q=75 1x, /_next/image?url=%2Fimages%2Ffooter%2Ftelegram.png&w=96&q=75 2x" src="/_next/image?url=%2Fimages%2Ffooter%2Ftelegram.png&w=96&q=75"/></a><a href="https://discord.gg/dRhJ78YH6M" class="footer-social-link" aria-label="Discord" title="Discord" target="_blank" rel="noopener noreferrer"><img alt="" aria-hidden="true" loading="lazy" width="40" height="40" decoding="async" data-nimg="1" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Ffooter%2Fdiscord.png&w=48&q=75 1x, /_next/image?url=%2Fimages%2Ffooter%2Fdiscord.png&w=96&q=75 2x" src="/_next/image?url=%2Fimages%2Ffooter%2Fdiscord.png&w=96&q=75"/></a><a href="https://x.com/thatjoshguy69" class="footer-social-link" aria-label="X" title="X" target="_blank" rel="noopener noreferrer"><img alt="" aria-hidden="true" loading="lazy" width="40" height="40" decoding="async" data-nimg="1" style="color:transparent" srcSet="/_next/image?url=%2Fimages%2Ffooter%2Fx.png&w=48&q=75 1x, /_next/image?url=%2Fimages%2Ffooter%2Fx.png&w=96&q=75 2x" src="/_next/image?url=%2Fimages%2Ffooter%2Fx.png&w=96&q=75"/></a></div></div></footer></div>
88<script>$RC("B:1","S:1")</script>
88<script>(self.__next_f=self.__next_f||[]).push([0])</script>
88<script>self.__next_f.push([1,"1:I[39756,[\"/_next/static/immutable/chunks/3raffv9p1t49v.js\",\"/_next/static/immutable/chunks/05dlkq2nnf33a.js\",\"/_next/static/immutable/chunks/20e10milov9tx.js\"],\"LoadingBoundaryProvider\"]\n2:I[1553,[\"/_next/static/immutable/chunks/3raffv9p1t49v.js\",\"/_next/static/immutable/chunks/05dlkq2nnf33a.js\",\"/_next/static/immutable/chunks/20e10milov9tx.js\",\"/_next/static/immutable/chunks/0wjkuawavaiu3.js\"],\"default\"]\n3:\"$Sreact.fragment\"\n6:I[97367,[\"/_next/static/immutable/chunks/3raffv9p1t49v.js\",\"/_next/static/immutable/chunks/05dlkq2nnf33a.js\",\"/_next/static/immutable/chunks/20e10milov9tx.js\"],\"OutletBoundary\"]\n7:\"$Sreact.suspense\"\n9:I[97367,[\"/_next/static/immutable/chunks/3raffv9p1t49v.js\",\"/_next/static/immutable/chunks/05dlkq2nnf33a.js\",\"/_next/static/immutable/chunks/20e10milov9tx.js\"],\"ViewportBoundary\"]\nb:I[97367,[\"/_next/static/immutable/chunks/3raffv9p1t49v.js\",\"/_next/static/immutable/chunks/05dlkq2nnf33a.js\",\"/_next/static/immutable/chunks/20e10milov9tx.js\"],\"MetadataBoundary\"]\nd:I[68027,[\"/_next/static/immutable/chunks/3raffv9p1t49v.js\",\"/_next/static/immutable/chunks/05dlkq2nnf33a.js\",\"/_next/static/immutable/chunks/20e10milov9tx.js\"],\"default\",1]\n:HL[\"/_next/static/immutable/chunks/3gu2mew9vteh4.css\",\"style\"]\n:HL[\"/_next/static/immutable/media/6babc54cc0db7717.p.1rnqr0mf5ghj_.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/immutable/media/ef93e6f9fdca11e7.p.2lft_rz1w783n.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/immutable/chunks/25wblkozn4pzw.css\",\"style\"]\n:HL[\"/_next/static/immutable/chunks/2hcxg69l5s4d0.css\",\"style\"]\n0:{\"P\":null,\"c\":[\"\",\"\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4096]},\"$undefined\",\"$undefined\",4116],[[\"$\",\"$L1\",null,{\"loading\":[[\"$\",\"div\",\"l\",{\"className\":\"page\",\"children\":[\"$\",\"div\",null,{\"className\":\"page-body\",\"children\":[\"$\",\"div\",null,{\"className\":\"main-content\",\"children\":[[\"$\",\"$L2\",null,{\"mobileSettingsHref\":\"/settings?from=%2F\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"gap\":16,\"paddingTop\":32,\"paddingBottom\":24},\"children\":[[\"$\",\"div\",null,{\"className\":\"skeleton-box\",\"style\":{\"width\":120,\"height\":120,\"borderRadius\":\"50%\"},\"aria-hidden\":\"true\"}],[\"$\",\"div\",null,{\"className\":\"skeleton-box\",\"style\":{\"height\":20,\"width\":120},\"aria-hidden\":\"true\"}],[\"$\",\"div\",null,{\"className\":\"skeleton-box\",\"style\":{\"height\":40,\"width\":240},\"aria-hidden\":\"true\"}],[\"$\",\"div\",null,{\"className\":\"skeleton-box\",\"style\":{\"height\":16,\"width\":200},\"aria-hidden\":\"true\"}]]}],[\"$\",\"div\",null,{\"style\":{\"display\":\"flex\",\"flexWrap\":\"wrap\",\"gap\":12,\"marginBottom\":24},\"children\":[[\"$\",\"div\",\"1\",{\"className\":\"skeleton-box\",\"style\":{\"flex\":\"1 1 160px\",\"height\":88,\"borderRadius\":\"var(--br-2lg)\"},\"aria-hidden\":\"true\"}],[\"$\",\"div\",\"2\",{\"className\":\"skeleton-box\",\"style\":{\"flex\":\"1 1 160px\",\"height\":88,\"borderRadius\":\"var(--br-2lg)\"},\"aria-hidden\":\"true\"}]]}],[\"$\",\"div\",null,{\"className\":\"skeleton-box\",\"style\":{\"height\":16,\"width\":140,\"marginBottom\":12},\"aria-hidden\":\"true\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"flex\",\"gap\":12,\"flexWrap\":\"wrap\"},\"children\":[[\"$\",\"div\",\"1\",{\"style\":{\"flex\":\"1 1 160px\",\"display\":\"flex\",\"flexDirection\":\"column\",\"gap\":8},\"children\":[[\"$\",\"div\",null,{\"className\":\"skeleton-box\",\"style\":{\"width\":\"100%\",\"height\":100,\"borderRadius\":\"var(--br-md)\"},\"aria-hidden\":\"true\"}],[\"$\",\"div\",null,{\"className\":\"skeleton-box\",\"style\":{\"height\":14,\"width\":\"85%\"},\"aria-hidden\":\"true\"}],[\"$\",\"div\",null,{\"className\":\"skeleton-box\",\"style\":{\"height\":12,\"width\":\"55%\"},\"aria-hidden\":\"true\"}]]}],[\"$\",\"div\",\"2\",{\"style\":{\"flex\":\"1 1 160px\",\"display\":\"flex\",\"flexDirection\":\"column\",\"gap\":8},\"children\":[[\"$\",\"div\",null,{\"className\":\"skeleton-box\",\"style\":{\"width\":\"100%\",\"height\"
88:100,\"borderRadius\":\"var(--br-md)\"},\"aria-hidden\":\"true\"}],[\"$\",\"div\",null,{\"className\":\"skeleton-box\",\"style\":{\"height\":14,\"width\":\"85%\"},\"aria-hidden\":\"true\"}],[\"$\",\"div\",null,{\"className\":\"skeleton-box\",\"style\":{\"height\":12,\"width\":\"55%\"},\"aria-hidden\":\"true\"}]]}],[\"$\",\"div\",\"3\",{\"style\":{\"flex\":\"1 1 160px\",\"display\":\"flex\",\"flexDirection\":\"column\",\"gap\":8},\"children\":[[\"$\",\"div\",null,{\"className\":\"skeleton-box\",\"style\":{\"width\":\"100%\",\"height\":100,\"borderRadius\":\"var(--br-md)\"},\"aria-hidden\":\"true\"}],[\"$\",\"div\",null,{\"className\":\"skeleton-box\",\"style\":{\"height\":14,\"width\":\"85%\"},\"aria-hidden\":\"true\"}],[\"$\",\"div\",null,{\"className\":\"skeleton-box\",\"style\":{\"height\":12,\"width\":\"55%\"},\"aria-hidden\":\"true\"}]]}]]}]]}]}]}],[],[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/immutable/chunks/1tgye6zfkp8pz.js\",\"async\":true}]]],\"children\":[\"$\",\"$3\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/immutable/chunks/3gu2mew9vteh4.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/immutable/chunks/3raffv9p1t49v.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/immutable/chunks/05dlkq2nnf33a.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-2\",{\"src\":\"/_next/static/immutable/chunks/20e10milov9tx.js\",\"async\":true,\"nonce\":\"$undefined\"}]],\"$L4\"]}]}],{\"children\":[[\"$\",\"$3\",\"c\",{\"children\":[\"$L5\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/immutable/chunks/25wblkozn4pzw.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/immutable/chunks/2hcxg69l5s4d0.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/immutable/chunks/0wjkuawavaiu3.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$L6\",null,{\"children\":[\"$\",\"$7\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@8\"}]}]]}],{},null,false,null]},null,false,null],[\"$\",\"$3\",\"h\",{\"children\":[null,[\"$\",\"$L9\",null,{\"children\":\"$La\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$Lb\",null,{\"children\":[\"$\",\"$7\",null,{\"name\":\"Next.Metadata\",\"children\":\"$Lc\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$d\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/immutable/chunks/3gu2mew9vteh4.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":false,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"jmjZ3WkEujn8bWiZxa8U8\"}\ne:I[62438,[\"/_next/static/immutable/chunks/3raffv9p1t49v.js\",\"/_next/static/immutable/chunks/05dlkq2nnf33a.js\",\"/_next/static/immutable/chunks/20e10milov9tx.js\",\"/_next/static/immutable/chunks/0wjkuawavaiu3.js\"],\"default\"]\n5:[\"$\",\"div\",null,{\"className\":\"page home-page\",\"children\":[\"$\",\"div\",null,{\"className\":\"page-body\",\"children\":[\"$\",\"div\",null,{\"className\":\"main-content\",\"children\":[[\"$\",\"$L2\",null,{\"mobileSettingsHref\":\"/settings?from=%2F\"}],[\"$\",\"$Le\",null,{\"environmentLabel\":null,\"isCollege\":false}],[\"$\",\"$7\",null,{\"fallback\":[\"$\",\"div\",null,{\"className\":\"home-content-loading\",\"role\":\"status\",\"children\":\"Loading more about Joshâ¦\"}],\"children\":\"$Lf\"}]]}]}]}]\na:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n10:I[27201,[\"/_next/static/immutable/chunks/3raffv9p1t49v.js\",\"/_next/static/immutable/chunks/05dlkq2nnf33a.js\",\"/_next/static/immutable/chunks/20e10milov9tx.js\"],\"IconMark\"]\n8:null\nc:[[\"$\",\"title\",\"0\",{\"children\":\"That Josh Guy\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Designer, tech journalist and Samsung/Android creator. Explore my articles and design projects.\"}],[\"$\",\"meta\",\"2\",{\"name\":\"author\",\"content\":\"Josh Skinner\"}],[\"$\",\"meta\",\"3\",{\"name\":\"keywords\",\"content\":\"Josh Skinner, That Josh Guy, UI/UX Designer, Graphic Designer, Web Developer, Writer, Portfolio, Freelance, Creative\"}],[\"$\",\"link\",\"4\",{\"rel\":\"canonical\",\"href\":\"https://tjg.gg\"}],[\"$\",\"meta\",\"5\",{\"property\":\"og:title\",\"content\":\"That Josh Guy\"}],[\"$\",\"meta\",\"6\",{\"property\":\"og:description\",\"content\":\"Designer, tech journalist and Samsung/Android creator. Explore my articles and design projects.\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:url\",\"content\":\"https://tjg.gg\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:image\",\"content\":\"https://tjg.gg/images/preview.png\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:image:alt\",\"content\":\"That Josh Guy\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"13\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:title\",\"content\":\"That Josh Guy\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:description\",\"content\":\"Designer, tech journalist and Samsung/Android creator. Explore my articles and design projects.\"}],[\"$\",\"meta\",\"16\",{\"name\":\"twitter:image\",\"content\":\"https://tjg.gg/images/preview.png\"}],[\"$\",\"link\",\"17\",{\"rel\":\"icon\",\"href\":\"/favicon.ico\"}],[\"$\",\"$L10\",\"18\",{}]]\n14:I[94751,[\"/_next/static/immutable/chunks/3raffv9p1t49v.js\",\"/_next/static/immutable/chunks/05dlkq2nnf33a.js\",\"/_next/static/immutable/chunks/20e10milov9tx.js\",\"/_next/static/immutable/chunks/0wjkuawavaiu3.js\"],\"default\"]\n:HL[\"/fonts/oneuisans-subset.woff2\",\"font\",{\"crossOrigin\":\"anonymous\",\"type\":\"font/woff2\"}
88]\n11:T55b,\n (function() {\n var viewportWidth = window.innerWidth;\n var viewportHeight = window.innerHeight;\n var frame = 0;\n var hasCoarsePointer = window.matchMedia('(pointer: coarse)');\n\n function lockHeroViewportHeight() {\n viewportWidth = window.innerWidth;\n viewportHeight = window.innerHeight;\n document.documentElement.style.setProperty(\n '--hero-viewport-height',\n viewportHeight + 'px'\n );\n }\n\n function scheduleHeroViewportLock() {\n cancelAnimationFrame(frame);\n frame = requestAnimationFrame(lockHeroViewportHeight);\n }\n\n lockHeroViewportHeight();\n\n window.addEventListener('resize', function() {\n var widthChanged = window.innerWidth !== viewportWidth;\n var heightChanged = window.innerHeight !== viewportHeight;\n\n if (!widthChanged \u0026\u0026 (!heightChanged || hasCoarsePointer.matches)) return;\n scheduleHeroViewportLock();\n }, { passive: true });\n\n window.addEventListener('orientationchange', scheduleHeroViewportLock, { passive: true });\n })();\n 12:T92f,\n (function() {\n try {\n var theme = localStorage.getItem('theme');\n var currentTheme;\n if (theme \u0026\u0026 theme !== 'auto') {\n currentTheme = theme;\n document.documentElement.dataset.theme = theme;\n } else {\n currentTheme = window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : 'light';\n document.documentElement.dataset.theme = currentTheme;\n }\n // Set theme-color meta tag for Safari URL bar\n var themeColorMeta = document.querySelector('meta[name=\"theme-color\"]');\n if (themeColorMeta) {\n themeColorMeta.setAttribute('content', currentTheme === 'dark' ? '#000' : '#f1f1f3');\n }\n var progressiveBlur = localStorage.getItem('progressiveBlur');\n if (progressiveBlur) {\n document.documentElement.dataset.progressiveBlur = progressiveBlur;\n } else {\n document.documentElement.dataset.progressiveBlur = 'true';\n }\n var accentColor = localStorage.getItem('accentColor') || 'blue';\n var accentColors = {\n blue: '#387aff',\n coral: '#ff6b6b',\n mint: '#4ecdc4',\n lilac: '#a78bfa',\n mono: '#808080'\n };\n if (!accentColors[accentColor]) accentColor = 'blue';\n document.documentElement.dataset.accent = accentColor;\n document.documentElement.style.setProperty('--accent', accentColors[accentColor] || accentColors.blue);\n var csAvailable = true;\n var csLisseSupported = 'ResizeObserver' in window \u0026\u0026 window.CSS \u0026\u0026 CSS.supports \u0026\u0026 CSS.supports('clip-path', 'path(\"M 0 0 L 1 0 L 1 1 Z\")');\n var csSaved = localStorage.getItem('cornerSmoothing');\n var csEnabled = csAvailable \u0026\u0026 csLisseSupported \u0026\u0026 (csSaved === null ? true : csSaved === 'true');\n document.documentElement.dataset.cornerSmoothing = csEnabled ? 'true' : 'false';\n } catch (e) {}\n })();\n 4:[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"google_sans_code_b386f835-module__T8HX3a__variable\",\"data-site-edition\":\"normal\",\"data-site-environment\":\"production\",\"data-scroll-behavior\":\"smooth\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"meta\",null,{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1.0, viewport-fit=cover\"}],[\"$\",\"meta\",null,{\"name\":\"theme-color\",\"content\":\"#000\"}],[\"$\",\"script\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"$11\"}}],[\"$\",\"link\",null,{\"rel\":\"preload\",\"href\":\"/fonts/oneuisans-subset.woff2\",\"as\":\"font\",\"type\":\"font/woff2\",\"crossOrigin\":\"anonymous\"}],[\"$\",\"script\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"$12\"}}]]}],\"$L13\"]}]\nf:[\"$\",\"$L14\",null,{\"featuredStories\":[{\"title\":\"Galaxy Z Fold 8 One-Month Review: The Perfect Shape?\",\"thumbnail\":\"https://sammyguru.com/wp-content/uploads/2026/09/galaxy-z-fold-8-review-hero-1200x675.jpg\",\"site\":\"SammyGuru\",\"url\":\"https://sammyguru.com/samsung-galaxy-z-fold-8-review/\"},{\"title\":\"Galaxy S26+ Review: The Awkward Middle Child\",\"thumbnail\":\"https://sammyguru.com/wp-content/uploads/2026/04/S26-Review-Thumbnail-scaled.jpeg\",\"site\":\"SammyGuru\",\"url\":\"https://sammyguru.com/samsung-galaxy-s26-plus-review/\"},{\"title\":\"Hereâs How the Galaxy S26 Ultraâs Privacy Display Will Work\",\"thumbnail\":\"https://sammyguru.com/wp-content/uploads/2026/01/Privacy-Display-thumbnail.png\",\"site\":\"SammyGuru\",\"url\":\"https://sammyguru.com/galaxy-s26-ultra-privacy-display-animation/\"},{\"title\":\"Here's the first glimpse of a One UI 9.0 Galaxy AI feature!\",\"thumbnail\":\"https://www.sammobile.com/wp-content/uploads/2026/01/Now-Brief-Galaxy-AI-1200x675.jpg\",\"site\":\"SamMobile\",\"url\":\"https://www.sammobile.com/news/samsung-one-ui-9-galaxy-ai-now-nudge/\"},{\"title\":\"Samsungâs rumored Perplexity-powered Bixby leaks in new video\",\"thumbnail\":\"https://m-cdn.phonearena.com/images/article/176996-wide-two_1200/Samsungs-rumored-Perplexity-powered-Bixby-leaks-in-new-video.webp?1767393754\",\"site\":\"PhoneArena\",\"url\":\"https://www.phonearena.com/news/samsungs-rumored-perplexity-powered-bixby-leaks-in-new-video_id176996\"},{\"title\":\"Galaxy Z Fold 7 Review: I Ditched My Slab Phone⦠and Things Got Interesting\",\"thumbnail\":\"https://sammyguru.com/wp-content/uploads/2025/07/Galaxy-Z-Fold-7-SammyGuru-28.jpg\",\"site\":\"SammyGuru\",\"url\":\"https://sammyguru.com/galaxy-z-fold-7-review/\"},{\"title\":\"Samsung Internet Browser Gets Massive Redesign in One UI 8.5\",\"thumbnail\":\"https://www.androidheadlines.com/wp-content/uploads/2025/09/Samsung-Galaxy-S25-FE-AM-AH-19-1.jpg\",\"site\":\"Android Headlines\",\"url\":\"https://www.androidheadlines.com/2025/11/samsung-internet-browser-app-ui-redesign-one-ui-8-5.html\"}],\"projects\":[{\"title\":\"Twidget\",\"thumbnail\":\"/images/home/projects/twidget-card.png\",\"description\":\"Twitter/X analytics app with pretty widgets and a clean One UI design.\",\"tone\":\"light\",\"action\":\"link\",\"actionIcon\":\"download\",\"bodyUrl\":\"https://github.com/thatjoshguy67/twidget\",\"actionUrl\":\"https://github.com/thatjoshguy67/twidget/releases\",\"icon\":\"/images/home/projects/twidget-icon.png\"},{\"title\":\"Blur widget demo\",\"thumbnail\":\"/images/home/projects/blur-widget-card.png\",\"description\":\"POC of One UI Homeâs widget blur capabilities.\",\"tone\":\"dark\",\"action\":\"link\",\"actionIcon\":\"download\",\"bodyUrl\":\"https://github.com/thatjoshguy67/blur-widget-demo\",\"actionUrl\":\"https://github.com/thatjoshguy67/blur-widget-demo/releases\",\"icon\":\"/images/home/projects/blur-widget-icon.png\"},{\"title\":\"One UI Design Kit\",\"thumbnail\":\"/images/home/projects/one-ui-design-kit-card.png\",\"description\":\"Library of One UI components, icons, assets and more.\",\"tone\":\"dark\",\"action\":\"link\",\"actionIcon\":\"open\",\"bodyUrl\":\"https://www.figma.com/community/file/1456035621603784201/one-ui-design-kit\",\"actionUrl\":\"https://www.figma.com/community/file/1456035621603784201/one-ui-design-kit\"},{\"title\":\"This website\",\"thumbnail\":\"/images/home/projects/twidget-card.png\",\"description\":\"The very thing youâre looking at right now.\",\"tone\":\"light\",\"action\":\"copy-current-url\",\"actionIcon\":\"link\"}],\"popularStoriesEnabled\":true,\"projectsEnabled\":true,\"miscSectionEnabled\":true,\"recentBlogPostsEnabled\":false,\"recentBlogPosts\":[],\"profileFacts\":[{\"label\":\"Current phone\",\"value\":\"Galaxy Z Fold8\",\"icon\":\"phone\"},{\"label\":\"Favourite video game\",\"value\":\"Persona 3 Reload\",\"icon\":\"game\"},{\"label\":\"Favourite Formula 1 driver\",\"value\":\"Lewis Hamilton\",\"icon\":\"f1\"}]}]\n15:I[89220,[\"/_next/static/immutable/chunks/3raffv9p1t49v.js\",\"/_next/static/immutable/chunks/05dlkq2nnf33a.js\",\"/_next/static/immutable/chunks/20e10milov9tx.js\"],\"ThemeProvider\"]\n16:I[84155,[\"/_next/static/immutable/chunks/3raffv9p1t49v.js\",\"/_next/static/immutable/chunks/05dlkq2nnf33a.js\",\"/_next/static/immutable/chunks/20e10milov9tx.js\"],\"BlogFlagProvider\"]\n17:I[62181,[\"/_next/static/immutable/chunks/3raffv9p1t49v.js\",\"/_next/static/immutable/chunks/05dlkq2nnf33a.js\",\"/_next/static/immutable/chunks/20e10milov9tx.js\"],\"default\"]\n18:I[19016,[\"/_next/static/immutable/chunks/3raffv9p1t49v.js\",\"/_next/static/immutable/chunks/05dlkq2nnf33a.js\",\"/_next/static/immutable/chunks/20e10milov9tx.js\"],\"default\"]\n19:I[39756,[\"/_next/static/immutable/chunks/3raffv9p1t49v.js\",\"/_next/static/immutable/chunks/05dlkq2nnf33a.js\",\"/_next/static/immutable/chunks/20e10milov9tx.js\"],\"default\"]\n1a:I[8821,[\"/_next/static/immutable/chunks/3raffv9p1t49v.js\",\"/_next/static/immutable/chunks/05dlkq2nnf33a.js\",\"/_next/static/immutable/chunks/20e10milov9tx.js\",\"/_next/static/immutable/chunks/1__yih3g2ouij.js\"],\"default\"]\n1b:I[37457,[\"/_next/static/immutable/chunks/3raffv9p1t49v.js\",\"/_next/static/immutable/chunks/05dlkq2nnf33a.js\",\"/_next/static/immutable/chunks/20e10milov9tx.js\"],\"default\"]\n1c:I[22016,[\"/_next/static/immutable/chunks/3raffv9p1t49v.js\",\"/_next/static/immutable/chunks/05dlkq2nnf33a.js\",\"/_next/static/immutable/chunks/20e10milov9tx.js\"],\"\"]\n1d:I[86333,[\"/_
88next/static/immutable/chunks/3raffv9p1t49v.js\",\"/_next/static/immutable/chunks/05dlkq2nnf33a.js\",\"/_next/static/immutable/chunks/20e10milov9tx.js\"],\"default\"]\n1e:I[2355,[\"/_next/static/immutable/chunks/3raffv9p1t49v.js\",\"/_next/static/immutable/chunks/05dlkq2nnf33a.js\",\"/_next/static/immutable/chunks/20e10milov9tx.js\"],\"Analytics\"]\n1f:I[57215,[\"/_next/static/immutable/chunks/3raffv9p1t49v.js\",\"/_next/static/immutable/chunks/05dlkq2nnf33a.js\",\"/_next/static/immutable/chunks/20e10milov9tx.js\"],\"SpeedInsights\"]\n:HL[\"/_next/static/immutable/chunks/1n0h4q166wa08.css\",\"style\"]\n13:[\"$\",\"body\",null,{\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"script\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"\\n (function() {\\n try {\\n var storedNavState = sessionStorage.getItem('sidebar-collapsed');\\n document.body.classList.toggle(\\n 'nav-collapsed',\\n storedNavState === null ? true : storedNavState === 'true'\\n );\\n } catch (e) {\\n document.body.classList.add('nav-collapsed');\\n }\\n })();\\n \"}}],[\"$\",\"$L15\",null,{\"cornerSmoothingAvailable\":true,\"fmpSeparatedViewAvailable\":true,\"children\":[\"$\",\"$L16\",null,{\"blogEnabled\":true,\"children\":[[\"$\",\"a\",null,{\"className\":\"skip-link\",\"href\":\"#main-content\",\"data-no-smooth-corners\":\"\",\"children\":\"Skip to main content\"}],[\"$\",\"$L17\",null,{}],[\"$\",\"$L17\",null,{\"position\":\"bottom\"}],[\"$\",\"$L18\",null,{}],[\"$\",\"main\",null,{\"className\":\"site-main\",\"id\":\"main-content\",\"children\":[\"$\",\"$L19\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$1a\",\"errorStyles\":[],\"errorScripts\":[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/immutable/chunks/1__yih3g2ouij.js\",\"async\":true}]],\"template\":[\"$\",\"$L1b\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"div\",null,{\"className\":\"not-found-module__sxuMuG__page\",\"children\":[\"$\",\"section\",null,{\"className\":\"not-found-module__sxuMuG__stage\",\"aria-labelledby\":\"not-found-title\",\"children\":[\"$\",\"div\",null,{\"className\":\"not-found-module__sxuMuG__hero\",\"children\":[[\"$\",\"div\",null,{\"className\":\"not-found-module__sxuMuG__errorIcon\",\"aria-hidden\":\"true\",\"children\":[\"$\",\"svg\",null,{\"width\":100,\"height\":100,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"className\":\"$undefined\",\"children\":[[\"$\",\"path\",null,{\"d\":\"M11.9995 16.8525C12.5525 16.8525 12.9995 16.4055 12.9995 15.8525C12.9995 15.3005 12.5525 14.8525 11.9995 14.8525C11.4475 14.8525 10.9995 15.3005 10.9995 15.8525C10.9995 16.4055 11.4475 16.8525 11.9995 16.8525Z\",\"fill\":\"currentColor\"}],[\"$\",\"path\",null,{\"d\":\"M12 12.4849V7.3959M20.5 12C20.5 16.694 16.695 20.5 12 20.5C7.306 20.5 3.5 16.694 3.5 12C3.5 7.306 7.306 3.5 12 3.5C16.695 3.5 20.5 7.306 20.5 12Z\",\"stroke\":\"currentColor\",\"strokeWidth\":\"1.5\",\"strokeLinecap\":\"round\",\"strokeLinejoin\":\"round\"}]]}]}],[\"$\",\"h1\",null,{\"className\":\"not-found-module__sxuMuG__title\",\"id\":\"not-found-title\",\"children\":\"Error 404\"}],[\"$\",\"p\",null,{\"className\":\"not-found-module__sxuMuG__description\",\"children\":\"This page probably doesn't exist, or there's a typo in the URL. Double-check it, or go back home.\"}],[\"$\",\"$L1c\",null,{\"href\":\"/\",\"className\":\"blog-button\",\"children\":[[\"$\",\"svg\",null,{\"width\":24,\"height\":24,\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"className\":\"$undefined\",\"children\":[\"$\",\"path\",null,{\"fillRule\":\"evenodd\",\"clipRule\":\"evenodd\",\"d\":\"M18.7204 8.46198L13.6396 3.70139C12.6534 2.77675 11.1544 2.7647 10.1543 3.67487L4.89313 8.45957C4.32562 8.97553 4 9.71934 4 10.5017V17.2791C4 18.7824 5.17573 20 6.62475 20H8.25751C8.80874 20 9.25647 19.5359 9.25647 18.9645V13.3335C9.25647 12.8513 9.60535 12.3691 10.1868 12.3691H13.3977C13.9117 12.3691 14.328 12.8018 14.328 13.3347V18.9645C14.328 19.5359 14.7758 20 15.327 20H16.9598C18.4088 20 19.5833 18.7824 19.5833 17.2791V10.4776C19.5833 9.70969 19.2705 8.97674 18.7204 8.46198Z\",\"fill\":\"currentColor\"}]}],\"Go home\"]}]]}]}]}],[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/immutable/chunks/1n0h4q166wa08.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}],[\"$\",\"$L1d\",null,{}]]}]}],[\"$\",\"$L1e\",null,{}],[\"$\",\"$L1f\",null,{}
88],[\"$\",\"svg\",null,{\"width\":\"0\",\"height\":\"0\",\"style\":{\"position\":\"absolute\"},\"children\":[\"$\",\"filter\",null,{\"id\":\"progressive-blur\",\"x\":\"0\",\"y\":\"0\",\"width\":\"100%\",\"height\":\"100%\",\"children\":[\"$\",\"feGaussianBlur\",null,{\"stdDeviation\":\"0 24\",\"edgeMode\":\"duplicate\"}]}]}]]}]\n"])</script>
88</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.