1<!DOCTYPE html><html lang="en" class="instrument_sans_67693620-module__-Bd6ua__variable bricolage_grotesque_a0dad7de-module__70FoDq__variable jetbrains_mono_504d27e3-module__ZCA5yW__variable h-full antialiased"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" imageSrcSet="/_next/image?url=%2Flogo%2Flogo.png&w=32&q=75 1x, /_next/image?url=%2Flogo%2Flogo.png&w=64&q=75 2x"/><link rel="stylesheet" href="/_next/static/immutable/chunks/3m_cpv2dghtv8.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/immutable/chunks/3m0wi71hbve21.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/immutable/chunks/36k8in9a291ok.js"/>
1<script src="/_next/static/immutable/chunks/2p784a2jb6l-e.js" async=""></script>
1<script src="/_next/static/immutable/chunks/3lb4zm14lfvrl.js" async=""></script>
1<script src="/_next/static/immutable/chunks/23m24u2rpna6j.js" async=""></script>
1<script src="/_next/static/immutable/chunks/31tcpybs-b989.js" async=""></script>
1<script src="/_next/static/immutable/chunks/turbopack-0soa-p0f60p9a.js" async=""></script>
1<script src="/_next/static/immutable/chunks/0__ud3qzu0-5k.js" async=""></script>
1<script src="/_next/static/immutable/chunks/35i-ekbxk9bqz.js" async=""></script>
1<script src="/_next/static/immutable/chunks/0fzahk1eb5g2r.js" async=""></script>
1<script src="/_next/static/immutable/chunks/3cm7xwwg090p1.js" async=""></script>
1<script src="/_next/static/immutable/chunks/39hq-kpvexle7.js" async=""></script>
1<script src="/_next/static/immutable/chunks/33r6ck00xb1sr.js" async=""></script>
1<script src="/_next/static/immutable/chunks/2corl6wyj4669.js" async=""></script>
1<script src="/_next/static/immutable/chunks/1jt_v33a5o8v0.js" async=""></script>
1<link rel="preload" href="https://www.googletagmanager.com/gtag/js?id=G-XJ2V9J35N6" as="script"/><link rel="preload" href="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2818151696780017" as="script" crossorigin=""/><title>Blog | TCMHACK</title><meta name="description" content="Tutorials and articles on web development, JavaScript, Node.js, browser extensions and AI tools."/><link rel="manifest" href="/manifest.webmanifest"/><link rel="canonical" href="https://tcmhack.com/blog"/><meta property="og:title" content="Blog | TCMHACK"/><meta property="og:description" content="Tutorials and articles on web development, JavaScript, Node.js, browser extensions and AI tools."/><meta property="og:site_name" content="TCMHACK"/><meta property="og:locale" content="en_US"/><meta property="og:image" content="https://tcmhack.com/opengraph-image.png?opengraph-image.3hwc25vtvai4u.png"/><meta property="og:image:type" content="image/png"/><meta property="og:image:width" content="1640"/><meta property="og:image:height" content="924"/><meta property="og:image:alt" content="TCMHACK â Software development, products & tutorials"/><meta property="og:type" content="website"/><meta name="twitter:card" content="summary_large_image"/><meta name="twitter:site" content="@tcmhack"/><meta name="twitter:title" content="Blog | TCMHACK"/><meta name="twitter:description" content="Tutorials and articles on web development, JavaScript, Node.js, browser extensions and AI tools."/><meta name="twitter:image" content="https://tcmhack.com/twitter-image.png?twitter-image.3hwc25vtvai4u.png"/><meta name="twitter:image:alt" content="TCMHACK â Software development, products & tutorials"/><meta name="twitter:image:type" content="image/png"/><meta name="twitter:image:width" content="1640"/><meta name="twitter:image:height" content="924"/><link rel="icon" href="/favicon/favicon-32x32.png" sizes="32x32" type="image/png"/><link rel="icon" href="/favicon/favicon-16x16.png" sizes="16x16" type="image/png"/><link rel="apple-touch-icon" href="/favicon/apple-touch-icon.png"/><meta name="next-size-adjust" content=""/>
1<script>(function(){try{var t=localStorage.getItem('tcm-theme');if(!t)t=matchMedia('(prefers-color-scheme: dark)').matches?'dark':'light';document.documentElement.classList.toggle('dark',t==='dark');}catch(e){}})();</script>
1<script src="/_next/static/immutable/chunks/0c0hxoamwjsbw.js" noModule=""></script>
1</head><body class="flex min-h-full flex-col"><div hidden=""><!--$--><!--/$--></div>
1<script type="application/ld+json">{"@context":"https://schema.org","@type":"Organization","name":"TCMHACK","url":"https://tcmhack.com","logo":"https://tcmhack.com/logo/logo.png","email":"[email protected]","sameAs":["https://www.facebook.com/tcmhack","https://www.linkedin.com/company/tcmhack","https://www.instagram.com/tcm_hack","https://www.x.com/tcmhack","https://www.youtube.com/tikamchand06"]}</script>
1<a href="#main" class="sr-only focus:not-sr-only focus:fixed focus:top-2 focus:left-2 focus:z-50 focus:rounded-md focus:bg-background focus:px-3 focus:py-2">Skip to content</a><header class="sticky top-0 z-40 border-b transition-[background-color,border-color,box-shadow] duration-300 border-transparent bg-card"><div class="mx-auto flex h-16 max-w-6xl items-center justify-between gap-4 px-4"><a class="group flex items-center gap-2 font-heading text-lg font-bold tracking-tight" href="/"><img alt="" width="32" height="32" decoding="async" data-nimg="1" class="size-8 transition-transform duration-300 group-hover:-rotate-12 motion-reduce:transition-none" style="color:transparent" srcSet="/_next/image?url=%2Flogo%2Flogo.png&w=32&q=75 1x, /_next/image?url=%2Flogo%2Flogo.png&w=64&q=75 2x" src="/_next/image?url=%2Flogo%2Flogo.png&w=64&q=75"/>TCMHACK</a><nav aria-label="Main" class="hidden items-center gap-1 md:flex"><a class="nav-link rounded-md px-3 py-2 font-heading text-sm font-semibold text-muted-foreground transition-colors hover:text-foreground" href="/">Home</a><a aria-current="page" class="nav-link rounded-md px-3 py-2 font-heading text-sm font-semibold transition-colors hover:text-foreground text-foreground" href="/blog">Blog</a><a class="nav-link rounded-md px-3 py-2 font-heading text-sm font-semibold text-muted-foreground transition-colors hover:text-foreground" href="/projects">Projects</a><a class="nav-link rounded-md px-3 py-2 font-heading text-sm font-semibold text-muted-foreground transition-colors hover:text-foreground" href="/services">Services</a><a class="nav-link rounded-md px-3 py-2 font-heading text-sm font-semibold text-muted-foreground transition-colors hover:text-foreground" href="/about-us">About Us</a><a class="nav-link rounded-md px-3 py-2 font-heading text-sm font-semibold text-muted-foreground transition-colors hover:text-foreground" href="/contact-us">Contact Us</a></nav><div class="flex items-center gap-2"><button type="button" aria-label="Switch to dark theme" title="Switch to dark theme" class="group items-center gap-2 rounded-md border bg-card text-foreground transition-colors hover:border-primary/40 hover:text-primary size-9 justify-center hidden md:inline-flex"><span class="relative grid size-4 place-items-center"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-sun absolute size-4 scale-100 rotate-0 transition-transform duration-300 dark:scale-0 dark:-rotate-90 motion-reduce:transition-none" aria-hidden="true"><circle cx="12" cy="12" r="4"></circle><path d="M12 2v2"></path><path d="M12 20v2"></path><path d="m4.93 4.93 1.41 1.41"></path><path d="m17.66 17.66 1.41 1.41"></path><path d="M2 12h2"></path><path d="M20 12h2"></path><path d="m6.34 17.66-1.41 1.41"></path><path d="m19.07 4.93-1.41 1.41"></path></svg><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-moon absolute size-4 scale-0 rotate-90 transition-transform duration-300 dark:scale-100 dark:rotate-0 motion-reduce:transition-none" aria-hidden="true"><path d="M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401"></path></svg></span></button><a class="group/button shrink-0 items-center justify-center rounded-md border border-transparent bg-clip-padding font-heading text-sm font-semibold whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 bg-primary-button text-primary-button-foreground hover:bg-primary-button/85 h-10 gap-1.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 group hidden px-4 sm:inline-flex" href="/contact-us">Start a project<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right transition-transform group-hover:translate-x-0.5 motion-reduce:transition-none" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a><button type="button" tabindex="0" data-slot="sheet-trigger" aria-label="Open menu" data-base-ui-click-trigger="" id="base-ui-_R_vstb_" aria-haspopup="dialog" aria-expanded="false" class="group/button inline-flex shrink-0 items-center justify-center rounded-md border bg-clip-padding font-heading text-sm font-semibold whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-
1px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 border-foreground/15 bg-card text-foreground shadow-[0_1px_2px_rgb(20_21_49/0.06)] hover:border-primary/50 hover:bg-primary/5 hover:text-primary aria-expanded:border-primary/50 aria-expanded:bg-primary/5 aria-expanded:text-primary dark:border-input dark:bg-input/30 dark:hover:bg-input/50 size-9 md:hidden"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-menu" aria-hidden="true"><path d="M4 5h16"></path><path d="M4 12h16"></path><path d="M4 19h16"></path></svg></button></div></div></header><main id="main" class="flex-1"><!--$?--><template id="B:0"></template><div role="status" aria-label="Loading articles"><section class="relative overflow-hidden bg-card border-b"><div aria-hidden="true" class="absolute inset-0 bg-[radial-gradient(var(--border)_1px,transparent_1px)] [background-size:18px_18px] [mask-image:linear-gradient(to_bottom,black,transparent)]"></div><div aria-hidden="true" class="absolute -top-32 right-0 size-96 rounded-full bg-primary/10 blur-3xl"></div><div class="relative mx-auto max-w-6xl space-y-6 px-4 py-16 sm:py-24"><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-12 w-full max-w-3xl sm:h-20"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-full max-w-xl"></div></div></section><div class="mx-auto max-w-6xl px-4 py-12"><div class="flex flex-wrap gap-2"><div class="animate-pulse bg-muted motion-reduce:animate-none h-8 w-24 rounded-full"></div><div class="animate-pulse bg-muted motion-reduce:animate-none h-8 w-24 rounded-full"></div><div class="animate-pulse bg-muted motion-reduce:animate-none h-8 w-24 rounded-full"></div><div class="animate-pulse bg-muted motion-reduce:animate-none h-8 w-24 rounded-full"></div><div class="animate-pulse bg-muted motion-reduce:animate-none h-8 w-24 rounded-full"></div><div class="animate-pulse bg-muted motion-reduce:animate-none h-8 w-24 rounded-full"></div></div><div class="mt-10 grid gap-6 sm:grid-cols-2 lg:grid-cols-3"><div class="flex flex-col overflow-hidden rounded-2xl border bg-card"><div class="animate-pulse bg-muted motion-reduce:animate-none aspect-[16/9] rounded-none"></div><div class="space-y-3 p-5"><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-24"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-full"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-2/3"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-full"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-5/6"></div></div></div><div class="flex flex-col overflow-hidden rounded-2xl border bg-card"><div class="animate-pulse bg-muted motion-reduce:animate-none aspect-[16/9] rounded-none"></div><div class="space-y-3 p-5"><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-24"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-full"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-2/3"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-full"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-5/6"></div></div></div><div class="flex flex-col overflow-hidden rounded-2xl border bg-card"><div class="animate-pulse bg-muted motion-reduce:animate-none aspect-[16/9] rounded-none"></div><div class="space-y-3 p-5"><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-24"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-full"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-2/3"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-full"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-5/6"></div></div></div><div class="flex flex-col overflow-hidden rounded-2xl border bg-card"><div class="animate-pulse bg-muted motion-reduce:animate-none aspect-[16/9] rounded-none"></div><div class="space-y-3 p-5"><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-24"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-full"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-2/3"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-full"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-5/6"></div></div></div><div class="flex flex-col overflow-hidden rounded-2xl border bg-card"><div class="animate-pulse bg-muted motion-reduce:animate-none aspect-[16/9] rounded-none"></div><div class="space-y-3 p-5"><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-24"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-full"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-2/3"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-full"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-5/6"></div></div></div><div class="flex flex-col overflow-hidden rounded-2xl border bg-card"><div class="animate-pulse bg-muted motion-reduce:animate-none aspect-[16/9] rounded-none"></div><div class="space-y-3 p-5"><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-24"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-full"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-2/3"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-full"></div><div class="animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-5/6"></div></div></div></div></div></div><!--/$--></main><footer class="relative mt-24 overflow-hidden bg-ink text-ink-foreground"><div aria-hidden="true" class="absolute inset-0 bg-[radial-gradient(rgb(255_255_255/0.06)_1px,transparent_1px)] [background-size:18px_18px]"></div><div aria-hidden="true" class="absolute -top-40 left-1/3 size-96 rounded-full bg-primary/30 blur-3xl"></div><div class="relative mx-auto grid max-w-6xl grid-cols-[2fr_3fr] gap-x-6 gap-y-10 px-4 pt-10 pb-12 sm:pt-16 lg:grid-cols-[1.4fr_0.8fr_1fr_1.3fr] lg:gap-12"><div class="col-span-2 lg:col-span-1"><a class="inline-flex items-center gap-2 font-heading text-lg font-bold tracking-tight" href="/"><img alt="" loading="lazy" width="32" height="32" decoding="async" data-nimg="1" class="size-8" style="color:transparent" srcSet="/_next/image?url=%2Flogo%2Flogo.png&w=32&q=75 1x, /_next/image?url=%2Flogo%2Flogo.png&w=64&q=75 2x" src="/_next/image?url=%2Flogo%2Flogo.png&w=64&q=75"/>TCMHACK</a>
1<p class="mt-4 text-sm text-ink-foreground/70 lg:max-w-xs">Offering software development services, innovative products, and web development tutorials through our blogâa complete hub for developers and tech enthusiasts.</p><ul class="mt-6 flex flex-wrap gap-2"><li><a href="https://www.facebook.com/tcmhack" target="_blank" rel="noopener noreferrer" aria-label="TCMHACK on Facebook" class="grid size-9 place-items-center rounded-lg border border-ink-foreground/15 text-ink-foreground/80 transition hover:-translate-y-0.5 hover:border-accent hover:bg-accent hover:text-accent-foreground motion-reduce:transition-none" id="base-ui-_R_3ppddb_" data-base-ui-tooltip-trigger="" data-slot="tooltip-trigger"><svg viewBox="0 0 24 24" fill="currentColor" class="size-4" aria-hidden="true"><path d="M9.101 23.691v-7.98H6.627v-3.667h2.474v-1.58c0-4.085 1.848-5.978 5.858-5.978.401 0 .955.042 1.468.103a8.68 8.68 0 0 1 1.141.195v3.325a8.623 8.623 0 0 0-.653-.036 26.805 26.805 0 0 0-.733-.009c-.707 0-1.259.096-1.675.309a1.686 1.686 0 0 0-.679.622c-.258.42-.374.995-.374 1.752v1.297h3.919l-.386 2.103-.287 1.564h-3.246v8.245C19.396 23.238 24 18.179 24 12.044c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.628 3.874 10.35 9.101 11.647Z"></path></svg></a></li><li><a href="https://www.linkedin.com/company/tcmhack" target="_blank" rel="noopener noreferrer" aria-label="TCMHACK on LinkedIn" class="grid size-9 place-items-center rounded-lg border border-ink-foreground/15 text-ink-foreground/80 transition hover:-translate-y-0.5 hover:border-accent hover:bg-accent hover:text-accent-foreground motion-reduce:transition-none" id="base-ui-_R_3qpddb_" data-base-ui-tooltip-trigger="" data-slot="tooltip-trigger"><svg viewBox="0 0 24 24" fill="currentColor" class="size-4" aria-hidden="true"><path d="M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.062 2.062 0 1 1 0-4.125 2.062 2.062 0 0 1 0 4.125zM7.119 20.452H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z"></path></svg></a></li><li><a href="https://www.instagram.com/tcm_hack" target="_blank" rel="noopener noreferrer" aria-label="TCMHACK on Instagram" class="grid size-9 place-items-center rounded-lg border border-ink-foreground/15 text-ink-foreground/80 transition hover:-translate-y-0.5 hover:border-accent hover:bg-accent hover:text-accent-foreground motion-reduce:transition-none" id="base-ui-_R_3rpddb_" data-base-ui-tooltip-trigger="" data-slot="tooltip-trigger"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" class="size-4" aria-hidden="true"><rect x="2" y="2" width="20" height="20" rx="5"></rect><circle cx="12" cy="12" r="4"></circle><circle cx="17.5" cy="6.5" r="0.75" fill="currentColor"></circle></svg></a></li><li><a href="https://www.x.com/tcmhack" target="_blank" rel="noopener noreferrer" aria-label="TCMHACK on X (Twitter)" class="grid size-9 place-items-center rounded-lg border border-ink-foreground/15 text-ink-foreground/80 transition hover:-translate-y-0.5 hover:border-accent hover:bg-accent hover:text-accent-foreground motion-reduce:transition-none" id="base-ui-_R_3spddb_" data-base-ui-tooltip-trigger="" data-slot="tooltip-trigger"><svg viewBox="0 0 24 24" fill="currentColor" class="size-4" aria-hidden="true"><path d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"></path></svg></a></li><li><a href="https://www.youtube.com/tikamchand06" target="_blank" rel="noopener noreferrer" aria-label="TCMHACK on YouTube" class="grid size-9 place-items-center rounded-lg border border-ink-foreground/15 text-ink-foreground/80 transition hover:-translate-y-0.5 hover:border-accent hover:bg-accent hover:text-accent-foreground motion-reduce:transition-none" id="base-ui-_R_3tpddb_" data-base-ui-tooltip-trigger="" data-slot="tooltip-trigger"><svg viewBox="0 0 24 24" fill="currentColor" class="size-4" aria-hidden="true"><path d="M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z"></path></svg></a></li></ul></div><nav aria-label="Company"><p class="font-heading text-sm font-semibold">Company</p><ul class="mt-4 space-y-2.5 text-sm"><li>
1<a class="link-underline text-ink-foreground/70 hover:text-ink-foreground" href="/blog">Blog</a></li><li><a class="link-underline text-ink-foreground/70 hover:text-ink-foreground" href="/projects">Projects</a></li><li><a class="link-underline text-ink-foreground/70 hover:text-ink-foreground" href="/services">Services</a></li><li><a class="link-underline text-ink-foreground/70 hover:text-ink-foreground" href="/about-us">About Us</a></li><li><a class="link-underline text-ink-foreground/70 hover:text-ink-foreground" href="/contact-us">Contact Us</a></li></ul></nav><nav aria-label="Services"><p class="font-heading text-sm font-semibold">Services</p><ul class="mt-4 space-y-2.5 text-sm"><li><a class="link-underline text-ink-foreground/70 hover:text-ink-foreground" href="/services">Product Development</a></li><li><a class="link-underline text-ink-foreground/70 hover:text-ink-foreground" href="/services">Backend & API Development</a></li><li><a class="link-underline text-ink-foreground/70 hover:text-ink-foreground" href="/services">Web Application Development</a></li><li><a class="link-underline text-ink-foreground/70 hover:text-ink-foreground" href="/services">Browser Extension Development</a></li></ul></nav><div class="col-span-2 lg:col-span-1"><p class="font-heading text-sm font-semibold">Newsletter</p><p class="mt-4 text-sm text-ink-foreground/70">Get the latest tutorials and product updates in your inbox.</p><form class="mt-4 text-sm sm:[&>div]:flex-col [&_input]:border-ink-foreground/20 [&_input]:bg-ink-foreground/10 [&_input]:text-ink-foreground [&_input]:placeholder:text-ink-foreground/50 [&_button]:bg-accent [&_button]:text-accent-foreground [&_button]:hover:bg-accent/90 [&_[role=alert]]:text-accent" action="" encType="multipart/form-data" method="POST"><input type="hidden" name="$ACTION_REF_1"/><input type="hidden" name="$ACTION_1:0" value="{"id":"60c512beeb2534fec88c0d6de935abf1b576c081cd","bound":"$@1"}"/><input type="hidden" name="$ACTION_1:1" value="[null]"/><input type="hidden" name="$ACTION_KEY" value="kd9b69eff115276dc2324cc8945eb0362"/><div class="flex flex-col gap-2 sm:flex-row"><label for="newsletter-email" class="sr-only">Email address</label><input id="newsletter-email" type="email" data-slot="input" required="" autoComplete="email" placeholder="[email protected]" class="w-full min-w-0 rounded-md border border-input bg-transparent px-2.5 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 h-10" name="email"/><button type="submit" tabindex="0" data-slot="button" class="group/button inline-flex shrink-0 items-center justify-center rounded-md border border-transparent bg-clip-padding font-heading text-sm font-semibold whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 bg-primary-button text-primary-button-foreground hover:bg-primary-button/85 h-10 gap-1.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 px-4">Subscribe</button></div></form></div></div><div class="relative border-t border-ink-foreground/10"><div class="mx-auto flex max-w-6xl flex-col items-center gap-3 px-4 py-6 text-center text-sm text-ink-foreground
1/60 md:flex-row md:justify-between md:text-left"><p>© <!-- -->2026<!-- --> <!-- -->TCMHACK<!-- -->. All rights reserved.</p><ul class="flex flex-wrap justify-center gap-x-5 gap-y-2"><li><a class="link-underline text-ink-foreground/70 hover:text-ink-foreground" href="/privacy-policy">Privacy Policy</a></li><li><a class="link-underline text-ink-foreground/70 hover:text-ink-foreground" href="/terms-of-use">Terms of Use</a></li><li><a class="link-underline text-ink-foreground/70 hover:text-ink-foreground" href="/cookie-policy">Cookie Policy</a></li></ul><p>Designed & developed by<!-- --> <a href="https://tcmhack.in" target="_blank" rel="noopener" class="link-underline font-medium text-ink-foreground">Tikam Chand Meghwanshi</a></p></div></div><p aria-hidden="true" class="footer-wordmark relative -mb-[0.18em] text-center font-heading text-[clamp(4rem,19vw,16rem)] leading-none font-extrabold tracking-[-0.05em] select-none">TCMHACK</p></footer>
1<script>requestAnimationFrame(function(){$RT=performance.now()});</script>
1<script src="/_next/static/immutable/chunks/36k8in9a291ok.js" id="_R_" async=""></script>
1<div hidden id="S:0"><template id="P:1"></template><!--$--><!--/$--></div>
1<script>(self.__next_f=self.__next_f||[]).push([0])</script>
1<script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[58765,[\"/_next/static/immutable/chunks/0__ud3qzu0-5k.js\",\"/_next/static/immutable/chunks/35i-ekbxk9bqz.js\",\"/_next/static/immutable/chunks/0fzahk1eb5g2r.js\",\"/_next/static/immutable/chunks/3cm7xwwg090p1.js\",\"/_next/static/immutable/chunks/39hq-kpvexle7.js\",\"/_next/static/immutable/chunks/33r6ck00xb1sr.js\"],\"ThemeScript\"]\n3:I[54372,[\"/_next/static/immutable/chunks/0__ud3qzu0-5k.js\",\"/_next/static/immutable/chunks/35i-ekbxk9bqz.js\",\"/_next/static/immutable/chunks/0fzahk1eb5g2r.js\",\"/_next/static/immutable/chunks/3cm7xwwg090p1.js\",\"/_next/static/immutable/chunks/39hq-kpvexle7.js\",\"/_next/static/immutable/chunks/33r6ck00xb1sr.js\"],\"TooltipProvider\"]\n4:I[78588,[\"/_next/static/immutable/chunks/0__ud3qzu0-5k.js\",\"/_next/static/immutable/chunks/35i-ekbxk9bqz.js\",\"/_next/static/immutable/chunks/0fzahk1eb5g2r.js\",\"/_next/static/immutable/chunks/3cm7xwwg090p1.js\",\"/_next/static/immutable/chunks/39hq-kpvexle7.js\",\"/_next/static/immutable/chunks/33r6ck00xb1sr.js\"],\"SiteHeader\"]\n5:I[39756,[\"/_next/static/immutable/chunks/2corl6wyj4669.js\"],\"default\"]\n6:I[60505,[\"/_next/static/immutable/chunks/0__ud3qzu0-5k.js\",\"/_next/static/immutable/chunks/35i-ekbxk9bqz.js\",\"/_next/static/immutable/chunks/0fzahk1eb5g2r.js\",\"/_next/static/immutable/chunks/3cm7xwwg090p1.js\",\"/_next/static/immutable/chunks/39hq-kpvexle7.js\",\"/_next/static/immutable/chunks/33r6ck00xb1sr.js\",\"/_next/static/immutable/chunks/1jt_v33a5o8v0.js\"],\"default\"]\n7:I[37457,[\"/_next/static/immutable/chunks/2corl6wyj4669.js\"],\"default\"]\n8:I[22016,[\"/_next/static/immutable/chunks/0__ud3qzu0-5k.js\",\"/_next/static/immutable/chunks/35i-ekbxk9bqz.js\",\"/_next/static/immutable/chunks/0fzahk1eb5g2r.js\",\"/_next/static/immutable/chunks/3cm7xwwg090p1.js\",\"/_next/static/immutable/chunks/39hq-kpvexle7.js\",\"/_next/static/immutable/chunks/33r6ck00xb1sr.js\"],\"\"]\n15:I[68027,[\"/_next/static/immutable/chunks/0__ud3qzu0-5k.js\",\"/_next/static/immutable/chunks/35i-ekbxk9bqz.js\",\"/_next/static/immutable/chunks/0fzahk1eb5g2r.js\",\"/_next/static/immutable/chunks/3cm7xwwg090p1.js\",\"/_next/static/immutable/chunks/39hq-kpvexle7.js\",\"/_next/static/immutable/chunks/33r6ck00xb1sr.js\"],\"default\",1]\n:HL[\"/_next/static/immutable/chunks/3m_cpv2dghtv8.css\",\"style\"]\n:HL[\"/_next/static/immutable/chunks/3m0wi71hbve21.css\",\"style\"]\n:HL[\"/_next/static/immutable/media/017d9bea37084d9b-s.p.2fl0vhx7oyatw.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/immutable/media/70bc3e132a0a741e-s.p.269kn9uafm0ti.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/immutable/media/f06bf9da926bae75-s.p.3uuun_-7zsf1g.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n13:X\n0:{\"P\":null,\"c\":[\"\",\"blog\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"blog\",{\"children\":[\"__PAGE__\",{},\"$undefined\",\"$undefined\",4096]},\"$undefined\",\"$undefined\",4100]},\"$undefined\",\"$undefined\",4120],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/immutable/chunks/3m_cpv2dghtv8.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/immutable/chunks/3m0wi71hbve21.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/immutable/chunks/0__ud3qzu0-5k.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/immutable/chunks/35i-ekbxk9bqz.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-2\",{\"src\":\"/_next/static/immutable/chunks/0fzahk1eb5g2r.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-3\",{\"src\":\"/_next/static/immutable/chunks/3cm7xwwg090p1.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-4\",{\"src\":\"/_next/static/immutable/chunks/39hq-kpvexle7.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-5\",{\"src\":\"/_next/static/immutable/chunks/33r6ck00xb1sr.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"className\":\"instrument_sans_67693620-module__-Bd6ua__variable bricolage_grotesque_a0dad7de-module__70FoDq__variable jetbrains_mono_504d27e3-module__ZCA5yW__variable h-full antialiased\",\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"$L2\",null,{}]}],[\"$\",\"body\",null,{\"className\":\"flex min-h-full flex-col\",\"children\":[\"$\",\"$L3\",null,{\"delay\":150,\"children\":[[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"Organization\\\",\\\"name\\\":\\\"TCMHACK\\\",\\\"url\\\":\\\"https://tcmhack.com\\\",\\\"logo\\\":\\\"https://tcmhack.com/logo/logo.png\\\",\\\"email\\\":\\\"[email protected]\\\",\\\"sameAs\\\":[\\\"https://www.facebook.com/tcmhack\\\",\\\"https://www.linkedin.com/company/tcmhack\\\",\\\"https://www.instagram.com/tcm_hack\\\",\\\"https://www.x.com/tcmhack\\\",\\\"https://www.youtube.com/tikamchand06\\\"]}
1\"}}],[\"$\",\"a\",null,{\"href\":\"#main\",\"className\":\"sr-only focus:not-sr-only focus:fixed focus:top-2 focus:left-2 focus:z-50 focus:rounded-md focus:bg-background focus:px-3 focus:py-2\",\"children\":\"Skip to content\"}],[\"$\",\"$L4\",null,{}],[\"$\",\"main\",null,{\"id\":\"main\",\"className\":\"flex-1\",\"children\":[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$6\",\"errorStyles\":[],\"errorScripts\":[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/immutable/chunks/1jt_v33a5o8v0.js\",\"async\":true,\"nonce\":\"$undefined\"}]],\"template\":[\"$\",\"$L7\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[\"$\",\"section\",null,{\"className\":\"relative overflow-hidden\",\"children\":[[\"$\",\"div\",null,{\"aria-hidden\":true,\"className\":\"absolute inset-0 -z-10 bg-[radial-gradient(var(--border)_1px,transparent_1px)] [background-size:18px_18px] [mask-image:radial-gradient(ellipse_at_center,black_30%,transparent_70%)]\"}],[\"$\",\"div\",null,{\"aria-hidden\":true,\"className\":\"absolute top-10 left-1/2 -z-10 size-80 -translate-x-1/2 rounded-full bg-primary/10 blur-3xl\"}],[\"$\",\"div\",null,{\"className\":\"mx-auto max-w-xl animate-rise px-4 pt-24 pb-10 text-center sm:pt-32 sm:pb-12\",\"children\":[[\"$\",\"p\",null,{\"className\":\"font-heading text-8xl leading-none font-extrabold tracking-[-0.05em] sm:text-9xl\",\"children\":[\"$\",\"span\",null,{\"className\":\"relative inline-block\",\"children\":[[\"$\",\"span\",null,{\"aria-hidden\":true,\"className\":\"absolute inset-x-1 bottom-2 h-5 bg-accent/70 sm:bottom-3 sm:h-6\"}],[\"$\",\"span\",null,{\"className\":\"relative\",\"children\":[\"4\",[\"$\",\"span\",null,{\"className\":\"text-primary\",\"children\":\"0\"}],\"4\"]}]]}]}],[\"$\",\"h1\",null,{\"className\":\"mt-4 font-heading text-2xl font-bold tracking-tight sm:text-3xl\",\"children\":\"Page not found\"}],[\"$\",\"p\",null,{\"className\":\"mx-auto mt-3 max-w-sm text-muted-foreground\",\"children\":\"The page youâre looking for doesnât exist or has moved.\"}],[\"$\",\"div\",null,{\"className\":\"mt-8 flex flex-wrap justify-center gap-3\",\"children\":[[\"$\",\"$L8\",null,{\"href\":\"/\",\"className\":\"group/button inline-flex shrink-0 items-center justify-center rounded-md border border-transparent bg-clip-padding font-heading text-sm font-semibold whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [\u0026_svg]:pointer-events-none [\u0026_svg]:shrink-0 [\u0026_svg:not([class*='size-'])]:size-4 bg-primary-button text-primary-button-foreground hover:bg-primary-button/85 gap-1.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 h-11 px-5\",\"children\":[\"$L9\",\"Go home\"]}],\"$La\"]}],\"$Lb\"]}]]}],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}],\"$Lc\",\"$Ld\",\"$Le\",\"$Lf\",\"$L10\"]}]}]]}]]}],{\"children\":[\"$L11\",{\"children\":[\"$L12\",{},null,false,null]},null,false,\"$13\"]},null,false,null],\"$L14\",false]],\"m\":\"$undefined\",\"G\":[\"$15\",[\"$L16\",\"$L17\"]],\"S\":false,\"h\":null,\"r\":\"$undefined\",\"s\":\"$undefined\",\"a\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"yYjQglEgjdaESQQNCpGDj\"}\n18:I[5014,[\"/_next/static/immutable/chunks/0__ud3qzu0-5k.js\",\"/_next/static/immutable/chunks/35i-ekbxk9bqz.js\",\"/_next/static/immutable/chunks/0fzahk1eb5g2r.js\",\"/_next/static/immutable/chunks/3cm7xwwg090p1.js\",\"/_next/static/immutable/chunks/39hq-kpvexle7.js\",\"/_next/static/immutable/chunks/33r6ck00xb1sr.js\"],\"default\"]\n19:I[5500,[\"/_next/static/immutable/chunks/0__ud3qzu0-5k.js\",\"/_next/static/immutable/chunks/35i-ekbxk9bqz.js\",\"/_next/static/immutable/chunks/0fzahk1eb5g2r.js\",\"/_next/static/immutable/chunks/3cm7xwwg090p1.js\",\"/_next/static/immutable/chunks/39hq-kpvexle7.js\",\"/_next/static/immutable/chunks/33r6ck00xb1sr.js\"],\"Image\"]\n1a:I[91085,[\"/_next/static/immutable/chunks/0__ud3qzu0-5k.js\",\"/_next/static/immutable/chunks/35i-ekbxk9bqz.js\",\"/_next/static/immutable/chunks/0fzahk1eb5g2r.js\",\"/_next/static/immutable/chunks/3cm7xwwg090p1.js\",\"/_next/static/immutable/chunks/39hq-kpvexle7.js\",\"/_next/static/immutable/chunks/33r6ck00xb1sr.js\"],\"WithTooltip\"]\n23:I[16390,[\"/_next/static/immutable/chunks/0__ud3qzu0-5k.js\",\"/_next/static/immutable/chunks/35i-ekbxk9bqz.js\",\"/_next/static/immutable/chunks/0fzahk1eb5g2r.js\",\"/_next/static/immutable/chunks/3cm7xwwg090p1.js\",\"/_next/static/immutable/chunks/39hq-kpvexle7.js\",\"/_next/static/immutable/chunks/33r6ck00xb1sr.js\"],\"RevealObserver\"]\n24:I[64805,[\"/_next/static/immutable/chunks/0__ud3qzu0-5k.js\",\"/_next/static/immutable/chunks/35i-ekbxk9bqz.js\",\"/_next/static/immutable/chunks/0fzahk1eb5g2r.js\",\"/_next/static/immutable/chunks/3cm7xwwg090p1.js\",\"/_next/static/immutable/chunks/39hq-kpvexle7.js\",\"/_next/static/immutable/chunks/33r6ck00xb1sr.js\"],\"SamePageScroll\"]\n25:I[97329,[\"/_
1next/static/immutable/chunks/0__ud3qzu0-5k.js\",\"/_next/static/immutable/chunks/35i-ekbxk9bqz.js\",\"/_next/static/immutable/chunks/0fzahk1eb5g2r.js\",\"/_next/static/immutable/chunks/3cm7xwwg090p1.js\",\"/_next/static/immutable/chunks/39hq-kpvexle7.js\",\"/_next/static/immutable/chunks/33r6ck00xb1sr.js\"],\"CookieConsent\"]\n26:I[79520,[\"/_next/static/immutable/chunks/0__ud3qzu0-5k.js\",\"/_next/static/immutable/chunks/35i-ekbxk9bqz.js\",\"/_next/static/immutable/chunks/0fzahk1eb5g2r.js\",\"/_next/static/immutable/chunks/3cm7xwwg090p1.js\",\"/_next/static/immutable/chunks/39hq-kpvexle7.js\",\"/_next/static/immutable/chunks/33r6ck00xb1sr.js\"],\"\"]\n27:I[39756,[\"/_next/static/immutable/chunks/2corl6wyj4669.js\"],\"LoadingBoundaryProvider\"]\n2e:I[97367,[\"/_next/static/immutable/chunks/2corl6wyj4669.js\"],\"OutletBoundary\"]\n2f:\"$Sreact.suspense\"\n31:I[97367,[\"/_next/static/immutable/chunks/2corl6wyj4669.js\"],\"ViewportBoundary\"]\n33:I[97367,[\"/_next/static/immutable/chunks/2corl6wyj4669.js\"],\"MetadataBoundary\"]\n9:[\"$\",\"$L18\",null,{\"ref\":\"$undefined\",\"icon\":{\"name\":\"arrow-left\",\"size\":24,\"node\":[[\"path\",{\"d\":\"m12 19-7-7 7-7\",\"key\":\"1l729n\"}],[\"path\",{\"d\":\"M19 12H5\",\"key\":\"x3x0zl\"}]]},\"className\":\"$undefined\"}]\na:[\"$\",\"$L8\",null,{\"href\":\"/blog\",\"className\":\"group/button inline-flex shrink-0 items-center justify-center rounded-md border bg-clip-padding font-heading text-sm font-semibold whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [\u0026_svg]:pointer-events-none [\u0026_svg]:shrink-0 [\u0026_svg:not([class*='size-'])]:size-4 border-foreground
1/15 bg-card text-foreground shadow-[0_1px_2px_rgb(20_21_49/0.06)] hover:border-primary/50 hover:bg-primary/5 hover:text-primary aria-expanded:border-primary/50 aria-expanded:bg-primary/5 aria-expanded:text-primary dark:border-input dark:bg-input/30 dark:hover:bg-input/50 gap-1.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 h-11 px-5\",\"children\":[[\"$\",\"$L18\",null,{\"ref\":\"$undefined\",\"icon\":{\"name\":\"book-open\",\"size\":24,\"node\":[[\"path\",{\"d\":\"M12 5v16\",\"key\":\"1f6ucr\"}],[\"path\",{\"d\":\"M20.001 19A2 2 0 0022 17V5a2 2 0 00-1.999-2L16 3.002A5 5 0 0012 5a5 5 0 00-4-2H4a2 2 0 00-2 2v12a2 2 0 001.999 2H8a5 5 0 014 2 5 5 0 014-2z\",\"key\":\"1fyvmf\"}]]},\"className\":\"$undefined\"}],\"Read the blog\"]}]\nb:[\"$\",\"nav\",null,{\"aria-label\":\"Popular pages\",\"className\":\"mt-10 border-t pt-6\",\"children\":[\"$\",\"ul\",null,{\"className\":\"flex flex-wrap justify-center gap-x-6 gap-y-2 text-sm\",\"children\":[[\"$\",\"li\",\"/projects\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/projects\",\"className\":\"link-underline text-muted-foreground hover:text-foreground\",\"children\":\"Projects\"}]}],[\"$\",\"li\",\"/services\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/services\",\"className\":\"link-underline text-muted-foreground hover:text-foreground\",\"children\":\"Services\"}]}],[\"$\",\"li\",\"/about-us\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/about-us\",\"className\":\"link-underline text-muted-foreground hover:text-foreground\",\"children\":\"About\"}]}],[\"$\",\"li\",\"/contact-us\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/contact-us\",\"className\":\"link-underline text-muted-foreground hover:text-foreground\",\"children\":\"Contact\"}]}]]}]}]\nc:[\"$\",\"footer\",null,{\"className\":\"relative mt-24 overflow-hidden bg-ink text-ink-foreground\",\"children\":[[\"$\",\"div\",null,{\"aria-hidden\":true,\"className\":\"absolute inset-0 bg-[radial-gradient(rgb(255_255_255/0.06)_1px,transparent_1px)] [background-size:18px_18px]\"}],[\"$\",\"div\",null,{\"aria-hidden\":true,\"className\":\"absolute -top-40 left-1/3 size-96 rounded-full bg-primary/30 blur-3xl\"}],[\"$\",\"div\",null,{\"className\":\"relative mx-auto grid max-w-6xl grid-cols-[2fr_3fr] gap-x-6 gap-y-10 px-4 pt-10 pb-12 sm:pt-16 lg:grid-cols-[1.4fr_0.8fr_1fr_1.3fr] lg:gap-12\",\"children\":[[\"$\",\"div\",null,{\"className\":\"col-span-2 lg:col-span-1\",\"children\":[[\"$\",\"$L8\",null,{\"href\":\"/\",\"className\":\"inline-flex items-center gap-2 font-heading text-lg font-bold tracking-tight\",\"children\":[[\"$\",\"$L19\",null,{\"src\":\"/logo/logo.png\",\"alt\":\"\",\"width\":32,\"height\":32,\"className\":\"size-8\"}],\"TCMHACK\"]}],[\"$\",\"p\",null,{\"className\":\"mt-4 text-sm text-ink-foreground/70 lg:max-w-xs\",\"children\":\"Offering software development services, innovative products, and web development tutorials through our blogâa complete hub for developers and tech enthusiasts.\"}],[\"$\",\"ul\",null,{\"className\":\"mt-6 flex flex-wrap gap-2\",\"children\":[[\"$\",\"li\",\"https://www.facebook.com/tcmhack\",{\"children\":[\"$\",\"$L1a\",null,{\"label\":\"Facebook\",\"children\":[\"$\",\"a\",null,{\"href\":\"https://www.facebook.com/tcmhack\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"aria-label\":\"TCMHACK on Facebook\",\"className\":\"grid size-9 place-items-center rounded-lg border border-ink-foreground/15 text-ink-foreground/80 transition hover:-translate-y-0.5 hover:border-accent hover:bg-accent hover:text-accent-foreground motion-reduce:transition-none\",\"children\":[\"$\",\"svg\",null,{\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"className\":\"size-4\",\"aria-hidden\":true,\"children\":[\"$\",\"path\",null,{\"d\":\"M9.101 23.691v-7.98H6.627v-3.667h2.474v-1.58c0-4.085 1.848-5.978 5.858-5.978.401 0 .955.042 1.468.103a8.68 8.68 0 0 1 1.141.195v3.325a8.623 8.623 0 0 0-.653-.036 26.805 26.805 0 0 0-.733-.009c-.707 0-1.259.096-1.675.309a1.686 1.686 0 0 0-.679.622c-.258.42-.374.995-.374 1.752v1.297h3.919l-.386 2.103-.287 1.564h-3.246v8.245C19.396 23.238 24 18.179 24 12.044c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.628 3.874 10.35 9.101 11.647Z\"}]}]}]}]}],[\"$\",\"li\",\"https://www.linkedin.com/company/tcmhack\",{\"children\":[\"$\",\"$L1a\",null,{\"label\":\"LinkedIn\",\"children\":[\"$\",\"a\",null,{\"href\":\"https://www.linkedin.com/company/tcmhack\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"aria-label\":\"TCMHACK on LinkedIn\",\"className\":\"grid size-9 place-items-center rounded-lg border border-ink-foreground
1/15 text-ink-foreground/80 transition hover:-translate-y-0.5 hover:border-accent hover:bg-accent hover:text-accent-foreground motion-reduce:transition-none\",\"children\":[\"$\",\"svg\",null,{\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"className\":\"size-4\",\"aria-hidden\":true,\"children\":[\"$\",\"path\",null,{\"d\":\"M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85 3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.062 2.062 0 1 1 0-4.125 2.062 2.062 0 0 1 0 4.125zM7.119 20.452H3.555V9h3.564v11.452zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0h.003z\"}]}]}]}]}],[\"$\",\"li\",\"https://www.instagram.com/tcm_hack\",{\"children\":[\"$\",\"$L1a\",null,{\"label\":\"Instagram\",\"children\":[\"$\",\"a\",null,{\"href\":\"https://www.instagram.com/tcm_hack\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"aria-label\":\"TCMHACK on Instagram\",\"className\":\"grid size-9 place-items-center rounded-lg border border-ink-foreground/15 text-ink-foreground/80 transition hover:-translate-y-0.5 hover:border-accent hover:bg-accent hover:text-accent-foreground motion-reduce:transition-none\",\"children\":\"$L1b\"}]}]}],\"$L1c\",\"$L1d\"]}]]}],\"$L1e\",\"$L1f\",\"$L20\"]}],\"$L21\",\"$L22\"]}]\nd:[\"$\",\"$L23\",null,{}]\ne:[\"$\",\"$L24\",null,{}]\nf:[\"$\",\"$L25\",null,{}]\n10:[[[\"$\",\"$L26\",null,{\"src\":\"https://www.googletagmanager.com/gtag/js?id=G-XJ2V9J35N6\",\"strategy\":\"afterInteractive\"}],[\"$\",\"$L26\",null,{\"id\":\"ga-init\",\"strategy\":\"afterInteractive\",\"children\":\"
vendor: 118 bytes, line 1
1window.dataLayer=window.dataLayer||[];function gtag(){dataLayer.push(arguments);}gtag('js',new Date());gtag('config','
1G-XJ2V9J35N6
vendor: 3 bytes, line 1
1');
1\"}]],[\"$\",\"$L26\",null,{\"src\":\"https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-2818151696780017\",\"strategy\":\"afterInteractive\",\"crossOrigin\":\"anonymous\"}]]\n11:[\"$\",\"$L27\",null,{\"loading\":[[\"$\",\"div\",\"l\",{\"role\":\"status\",\"aria-label\":\"Loading articles\",\"children\":[[\"$\",\"section\",null,{\"className\":\"relative overflow-hidden bg-card border-b\",\"children\":[[\"$\",\"div\",null,{\"aria-hidden\":true,\"className\":\"absolute inset-0 bg-[radial-gradient(var(--border)_1px,transparent_1px)] [background-size:18px_18px] [mask-image:linear-gradient(to_bottom,black,transparent)]\"}],[\"$\",\"div\",null,{\"aria-hidden\":true,\"className\":\"absolute -top-32 right-0 size-96 rounded-full bg-primary/10 blur-3xl\"}],[\"$\",\"div\",null,{\"className\":\"relative mx-auto max-w-6xl space-y-6 px-4 py-16 sm:py-24\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-12 w-full max-w-3xl sm:h-20\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-full max-w-xl\"}]]}]]}],[\"$\",\"div\",null,{\"className\":\"mx-auto max-w-6xl px-4 py-12\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex flex-wrap gap-2\",\"children\":[[\"$\",\"div\",\"0\",{\"className\":\"animate-pulse bg-muted motion-reduce:animate-none h-8 w-24 rounded-full\"}],[\"$\",\"div\",\"1\",{\"className\":\"animate-pulse bg-muted motion-reduce:animate-none h-8 w-24 rounded-full\"}],[\"$\",\"div\",\"2\",{\"className\":\"animate-pulse bg-muted motion-reduce:animate-none h-8 w-24 rounded-full\"}],[\"$\",\"div\",\"3\",{\"className\":\"animate-pulse bg-muted motion-reduce:animate-none h-8 w-24 rounded-full\"}],[\"$\",\"div\",\"4\",{\"className\":\"animate-pulse bg-muted motion-reduce:animate-none h-8 w-24 rounded-full\"}],[\"$\",\"div\",\"5\",{\"className\":\"animate-pulse bg-muted motion-reduce:animate-none h-8 w-24 rounded-full\"}]]}],[\"$\",\"div\",null,{\"className\":\"mt-10 grid gap-6 sm:grid-cols-2 lg:grid-cols-3\",\"children\":[[\"$\",\"div\",\"0\",{\"className\":\"flex flex-col overflow-hidden rounded-2xl border bg-card\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse bg-muted motion-reduce:animate-none aspect-[16/9] rounded-none\"}],[\"$\",\"div\",null,{\"className\":\"space-y-3 p-5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-24\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-full\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-2/3\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-full\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-5/6\"}]]}]]}],[\"$\",\"div\",\"1\",{\"className\":\"flex flex-col overflow-hidden rounded-2xl border bg-card\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse bg-muted motion-reduce:animate-none aspect-[16/9] rounded-none\"}],[\"$\",\"div\",null,{\"className\":\"space-y-3 p-5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-24\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-full\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-2/3\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-full\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-5/6\"}]]}]]}],[\"$\",\"div\",\"2\",{\"className\":\"flex flex-col overflow-hidden rounded-2xl border bg-card\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse bg-muted motion-reduce:animate-none aspect-[16/9] rounded-none\"}],[\"$\",\"div\",null,{\"className\":\"space-y-3 p-5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-24\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-full\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-2/3\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-full\"}],\"$L28\"]}]]}],\"$L29\",\"$L2a\",\"$L2b\"]}]]}]]}],[],null],\"children\":\"$L2c\"}]\n12:[\"$\",\"$1\",\"c\",{\"children\":[\"$L2d\",null,[\"$\",\"$L2e\",null,{\"children\":[\"$\",\"$2f\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@30\"}]}]]}]\n14:[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L31\",null,{\"children\":\"$L32\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L33\",null,{\"children\":[\"$\",\"$2f\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L34\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}]\n16:[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/immutable/chunks/3m_cpv2dghtv8.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]\n17:[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/immutable/chunks/3m0wi71hbve21.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]\n35:I[18811,[\"/_next/static/immutable/chunks/0__ud3qzu0-5k.js\",\"/_next/static/immutable/chunks/35i-ekbxk9bqz.js\",\"/_next/static/immutable/chunks/0fzahk1eb5g2r.js\",\"/_next/static/immutable/chunks/3cm7xwwg090p1.js\",\"/_next/static/immutable/chunks/39hq-kpvexle7.js\",\"/_next/static/immutable/chunks/33r6ck00xb1sr.js\"],\"NewsletterForm\"]\n13:C\n1b:[\"$\",\"svg\",null,{\"viewBox\":\"0 0 24 24\",\"fill\":\"none\",\"stroke\":\"currentColor\",\"strokeWidth\":\"2\",\"className\":\"size-4\",\"aria-hidden\":true,\"children\":[[\"$\",\"rect\",null,{\"x\":\"2\",\"y\":\"2\",\"width\":\"20\",\"height\"
1:\"20\",\"rx\":\"5\"}],[\"$\",\"circle\",null,{\"cx\":\"12\",\"cy\":\"12\",\"r\":\"4\"}],[\"$\",\"circle\",null,{\"cx\":\"17.5\",\"cy\":\"6.5\",\"r\":\"0.75\",\"fill\":\"currentColor\"}]]}]\n1c:[\"$\",\"li\",\"https://www.x.com/tcmhack\",{\"children\":[\"$\",\"$L1a\",null,{\"label\":\"X (Twitter)\",\"children\":[\"$\",\"a\",null,{\"href\":\"https://www.x.com/tcmhack\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"aria-label\":\"TCMHACK on X (Twitter)\",\"className\":\"grid size-9 place-items-center rounded-lg border border-ink-foreground/15 text-ink-foreground/80 transition hover:-translate-y-0.5 hover:border-accent hover:bg-accent hover:text-accent-foreground motion-reduce:transition-none\",\"children\":[\"$\",\"svg\",null,{\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"className\":\"size-4\",\"aria-hidden\":true,\"children\":[\"$\",\"path\",null,{\"d\":\"M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z\"}]}]}]}]}]\n1d:[\"$\",\"li\",\"https://www.youtube.com/tikamchand06\",{\"children\":[\"$\",\"$L1a\",null,{\"label\":\"YouTube\",\"children\":[\"$\",\"a\",null,{\"href\":\"https://www.youtube.com/tikamchand06\",\"target\":\"_blank\",\"rel\":\"noopener noreferrer\",\"aria-label\":\"TCMHACK on YouTube\",\"className\":\"grid size-9 place-items-center rounded-lg border border-ink-foreground/15 text-ink-foreground/80 transition hover:-translate-y-0.5 hover:border-accent hover:bg-accent hover:text-accent-foreground motion-reduce:transition-none\",\"children\":[\"$\",\"svg\",null,{\"viewBox\":\"0 0 24 24\",\"fill\":\"currentColor\",\"className\":\"size-4\",\"aria-hidden\":true,\"children\":[\"$\",\"path\",null,{\"d\":\"M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814zM9.545 15.568V8.432L15.818 12l-6.273 3.568z\"}]}]}]}]}]\n1e:[\"$\",\"nav\",null,{\"aria-label\":\"Company\",\"children\":[[\"$\",\"p\",null,{\"className\":\"font-heading text-sm font-semibold\",\"children\":\"Company\"}],[\"$\",\"ul\",null,{\"className\":\"mt-4 space-y-2.5 text-sm\",\"children\":[[\"$\",\"li\",\"/blog\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog\",\"className\":\"link-underline text-ink-foreground/70 hover:text-ink-foreground\",\"children\":\"Blog\"}]}],[\"$\",\"li\",\"/projects\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/projects\",\"className\":\"link-underline text-ink-foreground/70 hover:text-ink-foreground\",\"children\":\"Projects\"}]}],[\"$\",\"li\",\"/services\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/services\",\"className\":\"link-underline text-ink-foreground/70 hover:text-ink-foreground\",\"children\":\"Services\"}]}],[\"$\",\"li\",\"/about-us\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/about-us\",\"className\":\"link-underline text-ink-foreground/70 hover:text-ink-foreground\",\"children\":\"About Us\"}]}],[\"$\",\"li\",\"/contact-us\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/contact-us\",\"className\":\"link-underline text-ink-foreground/70 hover:text-ink-foreground\",\"children\":\"Contact Us\"}]}]]}]]}]\n1f:[\"$\",\"nav\",null,{\"aria-label\":\"Services\",\"children\":[[\"$\",\"p\",null,{\"className\":\"font-heading text-sm font-semibold\",\"children\":\"Services\"}],[\"$\",\"ul\",null,{\"className\":\"mt-4 space-y-2.5 text-sm\",\"children\":[[\"$\",\"li\",\"Product Development\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/services\",\"className\":\"link-underline text-ink-foreground/70 hover:text-ink-foreground\",\"children\":\"Product Development\"}]}],[\"$\",\"li\",\"Backend \u0026 API Development\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/services\",\"className\":\"link-underline text-ink-foreground/70 hover:text-ink-foreground\",\"children\":\"Backend \u0026 API Development\"}]}],[\"$\",\"li\",\"Web Application Development\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/services\",\"className\":\"link-underline text-ink-foreground
1/70 hover:text-ink-foreground\",\"children\":\"Web Application Development\"}]}],[\"$\",\"li\",\"Browser Extension Development\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/services\",\"className\":\"link-underline text-ink-foreground/70 hover:text-ink-foreground\",\"children\":\"Browser Extension Development\"}]}]]}]]}]\n20:[\"$\",\"div\",null,{\"className\":\"col-span-2 lg:col-span-1\",\"children\":[[\"$\",\"p\",null,{\"className\":\"font-heading text-sm font-semibold\",\"children\":\"Newsletter\"}],[\"$\",\"p\",null,{\"className\":\"mt-4 text-sm text-ink-foreground/70\",\"children\":\"Get the latest tutorials and product updates in your inbox.\"}],[\"$\",\"$L35\",null,{\"className\":\"mt-4 text-sm sm:[\u0026\u003ediv]:flex-col [\u0026_input]:border-ink-foreground/20 [\u0026_input]:bg-ink-foreground/10 [\u0026_input]:text-ink-foreground [\u0026_input]:placeholder:text-ink-foreground/50 [\u0026_button]:bg-accent [\u0026_button]:text-accent-foreground [\u0026_button]:hover:bg-accent/90 [\u0026_[role=alert]]:text-accent\"}]]}]\n21:[\"$\",\"div\",null,{\"className\":\"relative border-t border-ink-foreground/10\",\"children\":[\"$\",\"div\",null,{\"className\":\"mx-auto flex max-w-6xl flex-col items-center gap-3 px-4 py-6 text-center text-sm text-ink-foreground/60 md:flex-row md:justify-between md:text-left\",\"children\":[[\"$\",\"p\",null,{\"children\":[\"© \",2026,\" \",\"TCMHACK\",\". All rights reserved.\"]}],[\"$\",\"ul\",null,{\"className\":\"flex flex-wrap justify-center gap-x-5 gap-y-2\",\"children\":[[\"$\",\"li\",\"/privacy-policy\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/privacy-policy\",\"className\":\"link-underline text-ink-foreground/70 hover:text-ink-foreground\",\"children\":\"Privacy Policy\"}]}],[\"$\",\"li\",\"/terms-of-use\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/terms-of-use\",\"className\":\"link-underline text-ink-foreground/70 hover:text-ink-foreground\",\"children\":\"Terms of Use\"}]}],[\"$\",\"li\",\"/cookie-policy\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/cookie-policy\",\"className\":\"link-underline text-ink-foreground/70 hover:text-ink-foreground\",\"children\":\"Cookie Policy\"}]}]]}],[\"$\",\"p\",null,{\"children\":[\"Designed \u0026 developed by\",\" \",[\"$\",\"a\",null,{\"href\":\"https://tcmhack.in\",\"target\":\"_blank\",\"rel\":\"noopener\",\"className\":\"link-underline font-medium text-ink-foreground\",\"children\":\"Tikam Chand Meghwanshi\"}]]}]]}]}]\n22:[\"$\",\"p\",null,{\"aria-hidden\":true,\"className\":\"footer-wordmark relative -mb-[0.18em] text-center font-heading text-[clamp(4rem,19vw,16rem)] leading-none font-extrabold tracking-[-0.05em] select-none\",\"children\":\"TCMHACK\"}]\n28:[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-5/6\"}]\n29:[\"$\",\"div\",\"3\",{\"className\":\"flex flex-col overflow-hidden rounded-2xl border bg-card\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse bg-muted motion-reduce:animate-none aspect-[16/9] rounded-none\"}],[\"$\",\"div\",null,{\"className\":\"space-y-3 p-5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-24\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-full\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-2/3\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-full\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-5/6\"}]]}]]}]\n2a:[\"$\",\"div\",\"4\",{\"className\":\"flex flex-col overflow-hidden rounded-2xl border bg-card\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse bg-muted motion-reduce:animate-none aspect-[16/9] rounded-none\"}],[\"$\",\"div\",null,{\"className\":\"space-y-3 p-5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-24\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-full\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-2/3\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-full\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-5/6\"}]]}]]}]\n2b:[\"$\",\"div\",\"5\",{\"className\":\"flex flex-col overflow-hidden rounded-2xl border bg-card\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse bg-muted motion-reduce:animate-none aspect-[16/9] rounded-none\"}],[\"$\",\"div\",null,{\"className\":\"space-y-3 p-5\",\"children\":[[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-24\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-full\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-5 w-2/3\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-full\"}],[\"$\",\"div\",null,{\"className\":\"animate-pulse rounded-md bg-muted motion-reduce:animate-none h-3 w-5/6\"}]]}]]}]\n2c:[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L5\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L7\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}]\n32:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n36:I[27201,[\"/_next/static/immutable/chunks/2corl6wyj4669.js\"],\"IconMark\"]\n30:null\n34:[[\"$\",\"title\",\"0\",{\"children\":\"Blog | TCMHACK\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Tutorials and articles on web development, JavaScript, Node.js, browser extensions and AI tools.\"}],[\"$\",\"link\",\"2\",{\"rel\":\"manifest\",\"href\":\"/manifest.webmanifest\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"3\",{\"rel\":\"canonical\",\"href\":\"https://tcmhack.com/blog\"}],[\"$\",\"meta\",\"4\",{\"property\":\"og:title\",\"content\":\"Blog | TCMHACK\"}],[\"$\",\"meta\",\"5\",{\"property\":\"og:description\",\"content\":\"Tutorials and articles on web development, JavaScript, Node.js, browser extensions and AI tools.\"}],[\"$\",\"meta\",\"6\",{\"property\":\"og:site_name\",\"content\":\"TCMHACK\"}],[\"$\",\"meta\",\"7\",{\"property\":\"og:locale\",\"content\":\"en_US\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:image\",\"content\":\"https://tcmhack.com/opengraph-image.png?opengraph-image.3hwc25vtvai4u.png\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:image:type\",\"content\":\"image/png\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:image:width\",\"content\":\"1640\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:image:height\",\"content\":\"924\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:image:alt\",\"content\":\"TCMHACK â Software development, products \u0026 tutorials\"}],[\"$\",\"meta\",\"13\",{\"property\":\"og:type\",\"content\":\"website\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:site\",\"content\":\"@tcmhack\"}],[\"$\",\"meta\",\"16\",{\"name\":\"twitter:title\",\"content\":\"Blog | TCMHACK\"}],[\"$\",\"meta\",\"17\",{\"name\":\"twitter:description\",\"content\":\"Tutorials and articles on web development, JavaScript, Node.js, browser extensions and AI tools.\"}],[\"$\",\"meta\",\"18\",{\"name\":\"twitter:image\",\"content\":\"https://tcmhack.com/twitter-image.png?twitter-image.3hwc25vtvai4u.png\"}],[\"$\",\"meta\",\"19\",{\"name\":\"twitter:image:alt\",\"content\":\"TCMHACK â Software development, products \u0026 tutorials\"}],[\"$\",\"meta\",\"20\",{\"name\":\"twitter:image:type\",\"content\":\"image/png\"}],[\"$\",\"meta\",\"21\",{\"name\":\"twitter:image:width\",\"content\":\"1640\"}],[\"$\",\"meta\",\"22\",{\"name\":\"twitter:image:height\",\"content\":\"924\"}],[\"$\",\"link\",\"23\",{\"rel\":\"icon\",\"href\":\"/favicon/favicon-32x32.png\",\"sizes\":\"32x32\",\"type\":\"image/png\"}],[\"$\",\"link\",\"24\",{\"rel\":\"icon\",\"href\":\"/favicon/favicon-16x16.png\",\"sizes\":\"16x16\",\"type\":\"image/png\"}],[\"$\",\"link\",\"25\",{\"rel\":\"apple-touch-icon\",\"href\":\"/favicon/apple-touch-icon.png\"}],[\"$\",\"$L36\",\"26\",{}]]\n"])</script>
1<script>self.__next_f.push([1,"2d:[[\"$\",\"section\",null,{\"className\":\"relative overflow-hidden border-b bg-card\",\"children\":[[\"$\",\"div\",null,{\"aria-hidden\":true,\"className\":\"absolute inset-0 bg-[radial-gradient(var(--border)_1px,transparent_1px)] [background-size:18px_18px] [mask-image:linear-gradient(to_bottom,black,transparent)]\"}],[\"$\",\"div\",null,{\"aria-hidden\":true,\"className\":\"absolute -top-32 right-0 size-96 rounded-full bg-primary/10 blur-3xl\"}],[\"$\",\"div\",null,{\"className\":\"relative mx-auto max-w-6xl px-4 py-16 sm:py-24\",\"children\":[[\"$\",\"h1\",null,{\"className\":\"max-w-4xl animate-rise font-heading text-4xl leading-[1] font-extrabold tracking-[-0.04em] text-balance sm:text-7xl\",\"children\":[\"Tutorials \u0026 notes for people who \",[\"$\",\"span\",null,{\"className\":\"relative whitespace-nowrap\",\"children\":[[\"$\",\"span\",null,{\"aria-hidden\":true,\"className\":\"absolute inset-x-0 bottom-1 h-3 bg-accent/70 sm:bottom-2 sm:h-4\"}],[\"$\",\"span\",null,{\"className\":\"relative\",\"children\":\"build.\"}]]}]]}],[\"$\",\"p\",null,{\"className\":\"mt-6 max-w-2xl animate-rise text-lg text-muted-foreground\",\"style\":{\"--delay\":\"120ms\"},\"children\":\"Practical articles on web development, JavaScript, browser extensions and the tools we use every day.\"}],[\"$\",\"div\",null,{\"className\":\"mt-8 animate-rise\",\"style\":{\"--delay\":\"220ms\"},\"children\":[\"$\",\"a\",null,{\"href\":\"/blog/rss.xml\",\"className\":\"inline-flex items-center gap-2 rounded-full border bg-card px-3.5 py-1.5 text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[[\"$\",\"$L18\",null,{\"ref\":\"$undefined\",\"icon\":{\"name\":\"rss\",\"size\":24,\"node\":[[\"path\",{\"d\":\"M4 11a9 9 0 0 1 9 9\",\"key\":\"pv89mb\"}],[\"path\",{\"d\":\"M4 4a16 16 0 0 1 16 16\",\"key\":\"k0647b\"}],[\"circle\",{\"cx\":\"5\",\"cy\":\"19\",\"r\":\"1\",\"key\":\"bfqh0e\"}]]},\"className\":\"size-4 text-accent\",\"aria-hidden\":true}],\"Subscribe via RSS\"]}]}]]}]]}],[\"$\",\"div\",null,{\"className\":\"mx-auto max-w-6xl px-4 py-12\",\"children\":[[\"$\",\"nav\",null,{\"aria-label\":\"Categories\",\"className\":\"-mx-4 overflow-x-auto px-4 [scrollbar-width:none]\",\"children\":[\"$\",\"ul\",null,{\"className\":\"flex gap-2 pb-1 sm:flex-wrap\",\"children\":[[\"$\",\"li\",null,{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog\",\"aria-current\":\"page\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors border-foreground bg-foreground text-background hover:border-foreground hover:text-background\",\"children\":\"All\"}]}],[[\"$\",\"li\",\"786328120\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/ai-devtools\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"AI \u0026 DevTools\",[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":3}]]}]}],[\"$\",\"li\",\"786327969\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/angular\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"Angular\",[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":1}]]}]}],[\"$\",\"li\",\"786327928\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/aws\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"AWS\",[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":2}]]}]}],[\"$\",\"li\",\"786328079\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/browser-extensions\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"Browser Extensions\",\"$L37\"]}]}],\"$L38\",\"$L39\",\"$L3a\",\"$L3b\",\"$L3c\",\"$L3d\",\"$L3e\",\"$L3f\",\"$L40\",\"$L41\",\"$L42\",\"$L43\",\"$L44\",\"$L45\",\"$L46\",\"$L47\",\"$L48\",\"$L49\",\"$L4a\"]]}]}],\"$L4b\",\"$L4c\",\"$L4d\",\"$L4e\"]}]]\n"])</script>
1<script>self.__next_f.push([1,"37:[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":4}]\n38:[\"$\",\"li\",\"786328113\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/bun\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"Bun\",[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":1}]]}]}]\n39:[\"$\",\"li\",\"786327959\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/extensions\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"Extensions\",[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":1}]]}]}]\n3a:[\"$\",\"li\",\"786327970\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/firebase\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"Firebase\",[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":3}]]}]}]\n3b:[\"$\",\"li\",\"786328023\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/google\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"Google\",[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":4}]]}]}]\n3c:[\"$\",\"li\",\"786328039\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/how-to\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"How To\",[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":17}]]}]}]\n3d:[\"$\",\"li\",\"1\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/javascript\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"JavaScript\",[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":13}]]}]}]\n3e:[\"$\",\"li\",\"786327979\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/mysql\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"MySQL\",[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":1}]]}]}]\n3f:[\"$\",\"li\",\"786328142\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/news\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"News\",[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":1}]]}]}]\n40:[\"$\",\"li\",\"786328103\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/nextjs\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"NextJS\",[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":1}]]}]}]\n41:[\"$\",\"li\",\"786327995\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/nodejs\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"NodeJS\",[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":5}]]}]}]\n42:[\"$\",\"li\",\"786327950\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/open-source-tools\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"Open Source Tools\",[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":1}]]}]}]\n43:[\"$\",\"li\",\"786328069\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/php\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"PHP\",[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":1}]]}]}]\n44:[\"$\",\"li\",\"786327960\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/productivity\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"Productivity\",[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":2}]]}]}]\n45:[\"$\",\"li\",\"786328102\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/react\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"React\",[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":1}]]}]}]\n46:[\"$\",\"li\",\"786327978\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/technology\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"Technology\",[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":2}]]}]}]\n47:[\"$\",\"li\",\"786327949\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/ubuntu\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"Ubuntu\",[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":12}]]}]}]\n48:[\"$\",\"li\",\"786327929\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/web-development\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"Web Development\",[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":15}]]}]}]\n49:[\"$\",\"li\",\"786327994\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/webrtc\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"WebRTC\",[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":1}]]}]}]\n4a:[\"$\",\"li\",\"786328068\",{\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/category/windows\",\"aria-current\":\"$undefined\",\"className\":\"inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary\",\"children\":[\"Windows\",[\"$\",\"span\",null,{\"className\":\"text-xs font-normal opacity-60 tabular-nums\",\"children\":1}]]}]}]\n4b:[\"$\",\"div\",null,{\"className\":\"mt-10\",\"children\":[\"$\",\"article\",null,{\"className\":\"reveal group relative grid overflow-hidden rounded-3xl border bg-card lg:grid-cols-[1.35fr_1fr]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"relative aspect-[16/9] overflow-hidden bg-muted lg:aspect-auto lg:min-h-96\",\"children\":[\"$\",\"$L19\",null,{\"src\":\"https://i0.wp.com/tcmhack0.wpcomstaging.com/wp-content/uploads/2026/03/how-to-grant-access-to-your-chrome-web-store-extension-the-2026-guide.webp?fit=1280%2C714\u0026ssl=1\",\"alt\":\"\",\"fill\":true,\"priority\":true,\"sizes\":\"(min-width: 1024px) 660px, 100vw\",\"className\":\"object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none\"}]}],[\"$\",\"div\",null,{\"className\":\"flex flex-col justify-center p-7 sm:p-10\",\"children\":[[\"$\",\"p\",null,{\"className\":\"flex flex-wrap items-center gap-2 text-xs\",\"children\":[[\"$\",\"span\",null,{\"className\":\"rounded-full bg-accent/25 px-2.5 py-0.5 font-semibold\",\"children\":\"Latest\"}],[\"$\",\"$L8\",null,{\"href\":\"/blog/category/browser-extensions\",\"className\":\"relative z-10 font-semibold text-primary hover:underline\",\"children\":\"Browser Extensions\"}],[\"$\",\"time\",null,{\"dateTime\":\"2026-03-09T14:20:48\",\"className\":\"text-muted-foreground\",\"children\":\"Mar 9, 2026\"}]]}],[\"$\",\"h2\",null,{\"className\":\"mt-4 font-heading text-2xl leading-tight font-bold tracking-tight text-balance sm:text-3xl\",\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/how-to-grant-access-to-your-chrome-web-store-extension-the-2026-guide\",\"className\":\"link-underline-group after:absolute after:inset-0\",\"children\":\"How to Grant Access to Your Chrome Web Store Extension: The 2026 Guide\"}]}],[\"$\",\"p\",null,{\"className\":\"mt-3 line-clamp-4 text-muted-foreground\",\"children\":\"Learn the exact workflow to set up Group Publishing on the Chrome Web Store. This guide covers how to securely grant team access, manage developer permissions, and allow teammates to upload extension builds using shared company emails.\"}],[\"$\",\"span\",null,{\"className\":\"group/button inline-flex shrink-0 items-center justify-center rounded-md border border-transparent bg-clip-padding font-heading text-sm font-semibold whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-
1px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [\u0026_svg]:pointer-events-none [\u0026_svg]:shrink-0 [\u0026_svg:not([class*='size-'])]:size-4 bg-primary-button text-primary-button-foreground hover:bg-primary-button/85 gap-1.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 pointer-events-none mt-6 h-11 w-fit px-5\",\"children\":[\"Read article\",[\"$\",\"$L18\",null,{\"ref\":\"$undefined\",\"icon\":{\"name\":\"arrow-right\",\"size\":24,\"node\":[[\"path\",{\"d\":\"M5 12h14\",\"key\":\"1ays0h\"}],[\"path\",{\"d\":\"m12 5 7 7-7 7\",\"key\":\"xquz4c\"}]]},\"className\":\"$undefined\"}]]}]]}]]}]}]\n4c:[\"$\",\"div\",null,{\"className\":\"mt-10\",\"children\":[\"$\",\"div\",null,{\"className\":\"grid gap-6 sm:grid-cols-2 lg:grid-cols-3\",\"children\":[[\"$\",\"article\",\"9000\",{\"className\":\"reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"relative aspect-[16/9] overflow-hidden bg-muted\",\"children\":[[\"$\",\"$L19\",null,{\"src\":\"https://i0.wp.com/tcmhack0.wpcomstaging.com/wp-content/uploads/2026/02/how-to-transfer-domain-godaddy-to-wordpress.webp?fit=1280%2C714\u0026ssl=1\",\"alt\":\"\",\"fill\":true,\"priority\":true,\"sizes\":\"(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw\",\"className\":\"object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none\"}],[\"$\",\"$L8\",null,{\"href\":\"/blog/category/how-to\",\"className\":\"relative z-10 m-3 inl
1ine-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground\",\"children\":\"How To\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-1 flex-col p-5\",\"children\":[[\"$\",\"time\",null,{\"dateTime\":\"2026-02-28T16:00:49\",\"className\":\"text-xs text-muted-foreground\",\"children\":\"Feb 28, 2026\"}],[\"$\",\"h3\",null,{\"className\":\"mt-2 font-heading text-lg leading-snug font-semibold\",\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/how-to-transfer-your-domain-from-godaddy-to-wordpress-com\",\"className\":\"link-underline-group after:absolute after:inset-0\",\"children\":\"How to Transfer Your Domain from GoDaddy to WordPress.com\"}]}],[\"$\",\"p\",null,{\"className\":\"mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground\",\"children\":\"Consolidate your tech stack. This guide shows you how to unlock your GoDaddy domain, generate an EPP code, and transfer it to WordPress.com for easier management.\"}],[\"$\",\"span\",null,{\"className\":\"mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary\",\"children\":[\"Read article\",[\"$\",\"$L18\",null,{\"ref\":\"$undefined\",\"icon\":{\"name\":\"arrow-up-right\",\"size\":24,\"node\":[[\"path\",{\"d\":\"M7 7h10v10\",\"key\":\"1tivn9\"}],[\"path\",{\"d\":\"M7 17 17 7\",\"key\":\"1vkiza\"}]]},\"className\":\"size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none\",\"aria-hidden\":true}]]}]]}]]}],[\"$\",\"article\",\"8995\",{\"className\":\"reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"relative aspect-[16/9] overflow-hidden bg-muted\",\"children\":[[\"$\",\"$L19\",null,{\"src\":\"https://i0.wp.com/tcmhack0.wpcomstaging.com/wp-content/uploads/2026/02/Gemini_Generated_Image_8wxqyk8wxqyk8wxq-1.webp?fit=1024%2C1024\u0026ssl=1\",\"alt\":\"\",\"fill\":true,\"priority\":true,\"sizes\":\"(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw\",\"className\":\"object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none\"}],[\"$\",\"$L8\",null,{\"href\":\"/blog/category/ai-devtools\",\"className\":\"relative z-10 m-3 inl
1ine-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground\",\"children\":\"AI \u0026 DevTools\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-1 flex-col p-5\",\"children\":[[\"$\",\"time\",null,{\"dateTime\":\"2026-02-21T14:10:01\",\"className\":\"text-xs text-muted-foreground\",\"children\":\"Feb 21, 2026\"}],[\"$\",\"h3\",null,{\"className\":\"mt-2 font-heading text-lg leading-snug font-semibold\",\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/google-launches-gemini-3-1-pro-a-new-frontier-in-ai-reasoning\",\"className\":\"link-underline-group after:absolute after:inset-0\",\"children\":\"Google Launches Gemini 3.1 Pro: A New Frontier in AI Reasoning\"}]}],\"$L4f\",\"$L50\"]}]]}],\"$L51\",\"$L52\",\"$L53\",\"$L54\",\"$L55\",\"$L56\",\"$L57\",\"$L58\",\"$L59\",\"$L5a\"]}]}]\n4d:[\"$\",\"nav\",null,{\"aria-label\":\"Pagination\",\"className\":\"mt-14 flex items-center justify-center gap-3 text-sm\",\"children\":[[\"$\",\"span\",null,{\"aria-disabled\":true,\"className\":\"group/button inline-flex shrink-0 items-center justify-center rounded-md border bg-clip-padding font-heading text-sm font-semibold whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [\u0026_svg]:pointer-events-none [\u0026_svg]:shrink-0 [\u0026_svg:not([class*='size-'])]:size-4 border-foreground
1/15 bg-card text-foreground shadow-[0_1px_2px_rgb(20_21_49/0.06)] hover:border-primary/50 hover:bg-primary/5 hover:text-primary aria-expanded:border-primary/50 aria-expanded:bg-primary/5 aria-expanded:text-primary dark:border-input dark:bg-input/30 dark:hover:bg-input/50 h-10 gap-1.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 px-4 pointer-events-none opacity-40\",\"children\":[[\"$\",\"$L18\",null,{\"ref\":\"$undefined\",\"icon\":\"$9:props:icon\",\"className\":\"$undefined\"}],\"Newer\"]}],[\"$\",\"span\",null,{\"className\":\"text-muted-foreground tabular-nums\",\"children\":[\"Page \",1,\" of \",3]}],[\"$\",\"$L8\",null,{\"href\":\"/blog?page=2\",\"rel\":\"next\",\"className\":\"group/button inline-flex shrink-0 items-center justify-center rounded-md border bg-clip-padding font-heading text-sm font-semibold whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [\u0026_svg]:pointer-events-none [\u0026_svg]:shrink-0 [\u0026_svg:not([class*='size-'])]:size-4 border-foreground
1/15 bg-card text-foreground shadow-[0_1px_2px_rgb(20_21_49/0.06)] hover:border-primary/50 hover:bg-primary/5 hover:text-primary aria-expanded:border-primary/50 aria-expanded:bg-primary/5 aria-expanded:text-primary dark:border-input dark:bg-input/30 dark:hover:bg-input/50 h-10 gap-1.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 px-4\",\"children\":[\"Older\",[\"$\",\"$L18\",null,{\"ref\":\"$undefined\",\"icon\":\"$4b:props:children:props:children:1:props:children:3:props:children:1:props:icon\",\"className\":\"$undefined\"}]]}]]}]\n4e:[\"$\",\"section\",null,{\"className\":\"reveal relative mt-16 overflow-hidden rounded-3xl bg-ink p-8 text-ink-foreground sm:p-10\",\"children\":[[\"$\",\"div\",null,{\"aria-hidden\":true,\"className\":\"absolute inset-0 bg-[radial-gradient(rgb(255_255_255/0.07)_1px,transparent_1px)] [background-size:18px_18px]\"}],[\"$\",\"div\",null,{\"aria-hidden\":true,\"className\":\"absolute -top-20 -right-20 size-64 rounded-full bg-primary/40 blur-3xl\"}],[\"$\",\"div\",null,{\"className\":\"relative grid gap-6 md:grid-cols-[1fr_1.1fr] md:items-center\",\"children\":[[\"$\",\"div\",null,{\"className\":\"flex gap-4\",\"children\":[[\"$\",\"span\",null,{\"className\":\"grid size-12 shrink-0 place-items-center rounded-xl bg-ink-foreground/10 text-accent\",\"children\":[\"$\",\"$L18\",null,{\"ref\":\"$undefined\",\"icon\":{\"name\":\"mail\",\"size\":24,\"node\":[[\"path\",{\"d\":\"m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7\",\"key\":\"132q7q\"}],[\"rect\",{\"x\":\"2\",\"y\":\"4\",\"width\":\"20\",\"height\":\"16\",\"rx\":\"2\",\"key\":\"izxlao\"}]]},\"className\":\"size-6\",\"aria-hidden\":true}]}],[\"$\",\"div\",null,{\"children\":[[\"$\",\"h2\",null,{\"className\":\"font-heading text-2xl font-bold\",\"children\":\"Get new posts in your inbox\"}],[\"$\",\"p\",null,{\"className\":\"mt-1 text-ink-foreground/70\",\"children\":\"Tutorials and product updates. No spam, unsubscribe any time.\"}]]}]]}],[\"$\",\"$L35\",null,{\"className\":\"text-sm [\u0026_input]:border-ink-foreground/20 [\u0026_input]:bg-ink-foreground/10 [\u0026_input]:text-ink-foreground [\u0026_input]:placeholder:text-ink-foreground/50 [\u0026_button]:bg-accent [\u0026_button]:text-accent-foreground [\u0026_[role=alert]]:text-accent\"}]]}]]}]\n"])</script>
1<link rel="preload" as="image" imageSrcSet="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F03%2Fhow-to-grant-access-to-your-chrome-web-store-extension-the-2026-guide.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F03%2Fhow-to-grant-access-to-your-chrome-web-store-extension-the-2026-guide.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F03%2Fhow-to-grant-access-to-your-chrome-web-store-extension-the-2026-guide.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F03%2Fhow-to-grant-access-to-your-chrome-web-store-extension-the-2026-guide.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F03%2Fhow-to-grant-access-to-your-chrome-web-store-extension-the-2026-guide.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F03%2Fhow-to-grant-access-to-your-chrome-web-store-extension-the-2026-guide.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F03%2Fhow-to-grant-access-to-your-chrome-web-store-extension-the-2026-guide.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F03%2Fhow-to-grant-access-to-your-chrome-web-store-extension-the-2026-guide.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=3840&q=75 3840w" imageSizes="(min-width: 1024px) 660px, 100vw"/><link rel="preload" as="image" imageSrcSet="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2Fhow-to-transfer-domain-godaddy-to-wordpress.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2Fhow-to-transfer-domain-godaddy-to-wordpress.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2Fhow-to-transfer-domain-godaddy-to-wordpress.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2Fhow-to-transfer-domain-godaddy-to-wordpress.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2Fhow-to-transfer-domain-godaddy-to-wordpress.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2Fhow-to-transfer-domain-godaddy-to-wordpress.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2Fhow-to-transfer-domain-godaddy-to-wordpress.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2Fhow-to-transfer-domain-godaddy-to-wordpress.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2Fhow-to-transfer-domain-godaddy-to-wordpress.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=3840&q=75 3840w" imageSizes="(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw"/><link rel="preload" as="image" imageSrcSet="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_8wxqyk8wxqyk8wxq-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_8wxqyk8wxqyk8wxq-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_8wxqyk8wxqyk8wxq-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_8wxqyk8wxqyk8wxq-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_8wxqyk8wxqyk8wxq-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_8wxqyk8wxqyk8wxq-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_8wxqyk8wxqyk8wxq-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_8wxqyk8wxqyk8wxq-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_8wxqyk8wxqyk8wxq-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75 3840w" imageSizes="(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw"/><div hidden id="S:1"><section class="relative overflow-hidden border-b bg-card"><div aria-hidden="true" class="absolute inset-0 bg-[radial-gradient(var(--border)_1px,transparent_1px)] [background-size:18px_18px] [mask-image:linear-gradient(to_bottom,black,transparent)]"></div><div aria-hidden="true" class="absolute -top-32 right-0 size-96 rounded-full bg-primary/10 blur-3xl"></div><div class="relative mx-auto max-w-6xl px-4 py-16 sm:py-24"><h1 class="max-w-4xl animate-rise font-heading text-4xl leading-[1] font-extrabold tracking-[-0.04em] text-balance sm:text-7xl">Tutorials & notes for people who <span class="relative whitespace-nowrap"><span aria-hidden="true" class="absolute inset-x-0 bottom-1 h-3 bg-accent/70 sm:bottom-2 sm:h-4"></span><span class="relative">
1build.</span></span></h1><p class="mt-6 max-w-2xl animate-rise text-lg text-muted-foreground" style="--delay:120ms">Practical articles on web development, JavaScript, browser extensions and the tools we use every day.</p><div class="mt-8 animate-rise" style="--delay:220ms"><a href="/blog/rss.xml" class="inline-flex items-center gap-2 rounded-full border bg-card px-3.5 py-1.5 text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-rss size-4 text-accent" aria-hidden="true"><path d="M4 11a9 9 0 0 1 9 9"></path><path d="M4 4a16 16 0 0 1 16 16"></path><circle cx="5" cy="19" r="1"></circle></svg>Subscribe via RSS</a></div></div></section><div class="mx-auto max-w-6xl px-4 py-12"><nav aria-label="Categories" class="-mx-4 overflow-x-auto px-4 [scrollbar-width:none]"><ul class="flex gap-2 pb-1 sm:flex-wrap"><li><a aria-current="page" class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors border-foreground bg-foreground text-background hover:border-foreground hover:text-background" href="/blog">All</a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/ai-devtools">AI & DevTools<span class="text-xs font-normal opacity-60 tabular-nums">3</span></a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/angular">Angular<span class="text-xs font-normal opacity-60 tabular-nums">1</span></a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/aws">AWS<span class="text-xs font-normal opacity-60 tabular-nums">2</span></a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/browser-extensions">Browser Extensions<span class="text-xs font-normal opacity-60 tabular-nums">4</span></a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/bun">Bun<span class="text-xs font-normal opacity-60 tabular-nums">1</span></a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/extensions">Extensions<span class="text-xs font-normal opacity-60 tabular-nums">1</span></a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/firebase">Firebase<span class="text-xs font-normal opacity-60 tabular-nums">3</span></a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/google">Google<span class="text-xs font-normal opacity-60 tabular-nums">4</span></a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/how-to">How To<span class="text-xs font-normal opacity-60 tabular-nums">17</span></a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/javascript">JavaScript<span class="text-xs font-normal opacity-60 tabular-nums">13</span></a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/mysql">MySQL<span class="text-xs font-normal opacity-60 tabular-nums">1</span></a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/news">News<span class="text-xs font-normal opacity-60 tabular-nums">1</span></a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/nextjs">NextJS<span class="text-xs font-normal opacity-60 tabular-nums">1</span></a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/nodejs">NodeJS<span class="text-xs font-normal opacity-60 tabular-nums">5</span></a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/open-source-tools">Open Source Tools<span class="text-xs font-normal opacity-60 tabular-nums">1</span></a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/php">PHP<span class="text-xs font-normal opacity-60 tabular-nums">1</span></a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/productivity">Productivity<span class="text-xs font-normal opacity-60 tabular-nums">2</span></a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/react">React<span class="text-xs font-normal opacity-60 tabular-nums">1</span></a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/technology">Technology<span class="text-xs font-normal opacity-60 tabular-nums">2</span></a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/ubuntu">Ubuntu<span class="text-xs font-normal opacity-60 tabular-nums">12</span></a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/web-development">Web Development<span class="text-xs font-normal opacity-60 tabular-nums">15</span></a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/webrtc">WebRTC<span class="text-xs font-normal opacity-60 tabular-nums">1</span></a></li><li><a class="inline-flex shrink-0 items-center gap-1.5 whitespace-nowrap rounded-full border bg-card px-3.5 py-1.5 font-heading text-sm font-semibold transition-colors hover:border-primary/40 hover:text-primary" href="/blog/category/windows">Windows<span class="text-xs font-normal opacity-60 tabular-nums">1</span></a></li></ul></nav><div class="mt-10"><article class="reveal group relative grid overflow-hidden rounded-3xl border bg-card lg:grid-cols-[1.35fr_1fr]"><div class="relative aspect-[16/9] overflow-hidden bg-muted lg:aspect-auto lg:min-h-96"><img alt="" decoding="async" data-nimg="fill" class="object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="(min-width: 1024px) 660px, 100vw" srcSet="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F03%2Fhow-to-grant-access-to-your-chrome-web-store-extension-the-2026-guide.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F03%2Fhow-to-grant-access-to-your-chrome-web-store-extension-the-2026-guide.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F03%2Fhow-to-grant-access-to-your-chrome-web-store-extension-the-2026-guide.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F03%2Fhow-to-grant-access-to-your-chrome-web-store-extension-the-2026-guide.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F03%2Fhow-to-grant-access-to-your-chrome-web-store-extension-the-2026-guide.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F03%2Fhow-to-grant-access-to-your-chrome-web-store-extension-the-2026-guide.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F03%2Fhow-to-grant-access-to-your-chrome-web-store-extension-the-2026-guide.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F03%2Fhow-to-grant-access-to-your-chrome-web-store-extension-the-2026-guide.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=3840&q=75 3840w" src="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F03%2Fhow-to-grant-access-to-your-chrome-web-store-extension-the-2026-guide.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=3840&q=75"/></div><div class="flex flex-col justify-center p-7 sm:p-10"><p class="flex flex-wrap items-center gap-2 text-xs"><span class="rounded-full bg-accent/25 px-2.5 py-0.5 font-semibold">Latest</span><a class="relative z-10 font-semibold text-primary hover:underline" href="/blog/category/browser-extensions">Browser Extensions</a><time dateTime="2026-03-09T14:20:48" class="text-muted-foreground">Mar 9, 2026</time></p><h2 class="mt-4 font-heading text-2xl leading-tight font-bold tracking-tight text-balance sm:text-3xl">
1<a class="link-underline-group after:absolute after:inset-0" href="/blog/how-to-grant-access-to-your-chrome-web-store-extension-the-2026-guide">How to Grant Access to Your Chrome Web Store Extension: The 2026 Guide</a></h2><p class="mt-3 line-clamp-4 text-muted-foreground">Learn the exact workflow to set up Group Publishing on the Chrome Web Store. This guide covers how to securely grant team access, manage developer permissions, and allow teammates to upload extension builds using shared company emails.</p><span class="group/button inline-flex shrink-0 items-center justify-center rounded-md border border-transparent bg-clip-padding font-heading text-sm font-semibold whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 bg-primary-button text-primary-button-foreground hover:bg-primary-button/85 gap-1.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 pointer-events-none mt-6 h-11 w-fit px-5">Read article<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></span></div></article></div><div class="mt-10"><div class="grid gap-6 sm:grid-cols-2 lg:grid-cols-3"><article class="reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]"><div class="relative aspect-[16/9] overflow-hidden bg-muted"><img alt="" decoding="async" data-nimg="fill" class="object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw" srcSet="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2Fhow-to-transfer-domain-godaddy-to-wordpress.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2Fhow-to-transfer-domain-godaddy-to-wordpress.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2Fhow-to-transfer-domain-godaddy-to-wordpress.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2Fhow-to-transfer-domain-godaddy-to-wordpress.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2Fhow-to-transfer-domain-godaddy-to-wordpress.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2Fhow-to-transfer-domain-godaddy-to-wordpress.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2Fhow-to-transfer-domain-godaddy-to-wordpress.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2Fhow-to-transfer-domain-godaddy-to-wordpress.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2Fhow-to-transfer-domain-godaddy-to-wordpress.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=3840&q=75 3840w" src="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2Fhow-to-transfer-domain-godaddy-to-wordpress.webp%3Ffit%3D1280%252C714%26ssl%3D1&w=3840&q=75"/>
1<a class="relative z-10 m-3 inline-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground" href="/blog/category/how-to">How To</a></div><div class="flex flex-1 flex-col p-5"><time dateTime="2026-02-28T16:00:49" class="text-xs text-muted-foreground">Feb 28, 2026</time><h3 class="mt-2 font-heading text-lg leading-snug font-semibold"><a class="link-underline-group after:absolute after:inset-0" href="/blog/how-to-transfer-your-domain-from-godaddy-to-wordpress-com">How to Transfer Your Domain from GoDaddy to WordPress.com</a></h3><p class="mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground">Consolidate your tech stack. This guide shows you how to unlock your GoDaddy domain, generate an EPP code, and transfer it to WordPress.com for easier management.</p><span class="mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary">Read article<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-up-right size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none" aria-hidden="true"><path d="M7 7h10v10"></path><path d="M7 17 17 7"></path></svg></span></div></article><article class="reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]"><div class="relative aspect-[16/9] overflow-hidden bg-muted"><img alt="" decoding="async" data-nimg="fill" class="object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw" srcSet="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_8wxqyk8wxqyk8wxq-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_8wxqyk8wxqyk8wxq-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_8wxqyk8wxqyk8wxq-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_8wxqyk8wxqyk8wxq-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_8wxqyk8wxqyk8wxq-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_8wxqyk8wxqyk8wxq-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_8wxqyk8wxqyk8wxq-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_8wxqyk8wxqyk8wxq-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_8wxqyk8wxqyk8wxq-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75 3840w" src="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_8wxqyk8wxqyk8wxq-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75"/>
1<a class="relative z-10 m-3 inline-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground" href="/blog/category/ai-devtools">AI & DevTools</a></div><div class="flex flex-1 flex-col p-5"><time dateTime="2026-02-21T14:10:01" class="text-xs text-muted-foreground">Feb 21, 2026</time><h3 class="mt-2 font-heading text-lg leading-snug font-semibold"><a class="link-underline-group after:absolute after:inset-0" href="/blog/google-launches-gemini-3-1-pro-a-new-frontier-in-ai-reasoning">Google Launches Gemini 3.1 Pro: A New Frontier in AI Reasoning</a></h3><template id="P:2"></template><template id="P:3"></template></div></article><template id="P:4"></template><template id="P:5"></template><template id="P:6"></template><template id="P:7"></template><template id="P:8"></template><template id="P:9"></template><template id="P:a"></template><template id="P:b"></template><template id="P:c"></template><template id="P:d"></template></div></div><nav aria-label="Pagination" class="mt-14 flex items-center justify-center gap-3 text-sm"><span aria-disabled="true" class="group/button inline-flex shrink-0 items-center justify-center rounded-md border bg-clip-padding font-heading text-sm font-semibold whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'
1])]:size-4 border-foreground/15 bg-card text-foreground shadow-[0_1px_2px_rgb(20_21_49/0.06)] hover:border-primary/50 hover:bg-primary/5 hover:text-primary aria-expanded:border-primary/50 aria-expanded:bg-primary/5 aria-expanded:text-primary dark:border-input dark:bg-input/30 dark:hover:bg-input/50 h-10 gap-1.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 px-4 pointer-events-none opacity-40"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-left" aria-hidden="true"><path d="m12 19-7-7 7-7"></path><path d="M19 12H5"></path></svg>Newer</span><span class="text-muted-foreground tabular-nums">Page <!-- -->1<!-- --> of <!-- -->3</span><a rel="next" class="group/button inline-flex shrink-0 items-center justify-center rounded-md border bg-clip-padding font-heading text-sm font-semibold whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'
1])]:size-4 border-foreground/15 bg-card text-foreground shadow-[0_1px_2px_rgb(20_21_49/0.06)] hover:border-primary/50 hover:bg-primary/5 hover:text-primary aria-expanded:border-primary/50 aria-expanded:bg-primary/5 aria-expanded:text-primary dark:border-input dark:bg-input/30 dark:hover:bg-input/50 h-10 gap-1.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 px-4" href="/blog?page=2">Older<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-right" aria-hidden="true"><path d="M5 12h14"></path><path d="m12 5 7 7-7 7"></path></svg></a></nav><section class="reveal relative mt-16 overflow-hidden rounded-3xl bg-ink p-8 text-ink-foreground sm:p-10"><div aria-hidden="true" class="absolute inset-0 bg-[radial-gradient(rgb(255_255_255/0.07)_1px,transparent_1px)] [background-size:18px_18px]"></div><div aria-hidden="true" class="absolute -top-20 -right-20 size-64 rounded-full bg-primary/40 blur-3xl"></div><div class="relative grid gap-6 md:grid-cols-[1fr_1.1fr] md:items-center"><div class="flex gap-4"><span class="grid size-12 shrink-0 place-items-center rounded-xl bg-ink-foreground/10 text-accent"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-mail size-6" aria-hidden="true"><path d="m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7"></path><rect x="2" y="4" width="20" height="16" rx="2"></rect></svg></span><div><h2 class="font-heading text-2xl font-bold">Get new posts in your inbox</h2><p class="mt-1 text-ink-foreground/70">Tutorials and product updates. No spam, unsubscribe any time.</p></div></div><template id="P:e"></template></div></section></div></div>
1<script>$RS=function(a,b){a=document.getElementById(a);b=document.getElementById(b);for(a.parentNode.removeChild(a);a.firstChild;)b.parentNode.insertBefore(a.firstChild,b);b.parentNode.removeChild(b)};$RS("S:1","P:1")</script>
1<script>self.__next_f.push([1,"4f:[\"$\",\"p\",null,{\"className\":\"mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground\",\"children\":\"Google unveils Gemini 3.1 Pro with a massive leap in core reasoning. Discover new features like native SVG animation generation, âVibe-Coding,â and specialized agentic workflows for complex engineering.\"}]\n50:[\"$\",\"span\",null,{\"className\":\"mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary\",\"children\":[\"Read article\",[\"$\",\"$L18\",null,{\"ref\":\"$undefined\",\"icon\":\"$4c:props:children:props:children:0:props:children:1:props:children:3:props:children:1:props:icon\",\"className\":\"size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none\",\"aria-hidden\":true}]]}]\n51:[\"$\",\"article\",\"8986\",{\"className\":\"reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"relative aspect-[16/9] overflow-hidden bg-muted\",\"children\":[[\"$\",\"$L19\",null,{\"src\":\"https://i0.wp.com/tcmhack0.wpcomstaging.com/wp-content/uploads/2026/02/Gemini_Generated_Image_5tyx55tyx55tyx55-1.webp?fit=1024%2C1024\u0026ssl=1\",\"alt\":\"\",\"fill\":true,\"priority\":true,\"sizes\":\"(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw\",\"className\":\"object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none\"}],[\"$\",\"$L8\",null,{\"href\":\"/blog/category/how-to\",\"className\":\"relative z-10 m-3 inl
1ine-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground\",\"children\":\"How To\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-1 flex-col p-5\",\"children\":[[\"$\",\"time\",null,{\"dateTime\":\"2026-02-05T16:16:27\",\"className\":\"text-xs text-muted-foreground\",\"children\":\"Feb 5, 2026\"}],[\"$\",\"h3\",null,{\"className\":\"mt-2 font-heading text-lg leading-snug font-semibold\",\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/how-to-debug-mobile-websites-on-desktop-the-essential-guide\",\"className\":\"link-underline-group after:absolute after:inset-0\",\"children\":\"How to Debug Mobile Websites on Desktop (The Essential Guide)\"}]}],[\"$\",\"p\",null,{\"className\":\"mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground\",\"children\":\"Stop struggling with physical devices. Learn how to use Chrome DevTools to simulate mobile viewports, throttle CPU/Network speeds, and emulate sensors like Geolocation directly from your desktop. Perfect for responsive web design in 2026.\"}],[\"$\",\"span\",null,{\"className\":\"mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary\",\"children\":[\"Read article\",[\"$\",\"$L18\",null,{\"ref\":\"$undefined\",\"icon\":\"$4c:props:children:props:children:0:props:children:1:props:children:3:props:children:1:props:icon\",\"className\":\"size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none\",\"aria-hidden\":true}]]}]]}]]}]\n52:[\"$\",\"article\",\"8965\",{\"className\":\"reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"relative aspect-[16/9] overflow-hidden bg-muted\",\"children\":[[\"$\",\"$L19\",null,{\"src\":\"https://i0.wp.com/tcmhack0.wpcomstaging.com/wp-content/uploads/2026/02/Gemini_Generated_Image_9k49ms9k49ms9k49-1.png?fit=1024%2C1024\u0026ssl=1\",\"alt\":\"\",\"fill\":true,\"priority\":false,\"sizes\":\"(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw\",\"className\":\"object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none\"}],[\"$\",\"$L8\",null,{\"href\":\"/blog/category/ai-devtools\",\"className\":\"relative z-10 m-3 inl
1ine-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground\",\"children\":\"AI \u0026 DevTools\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-1 flex-col p-5\",\"children\":[[\"$\",\"time\",null,{\"dateTime\":\"2026-02-04T14:30:09\",\"className\":\"text-xs text-muted-foreground\",\"children\":\"Feb 4, 2026\"}],[\"$\",\"h3\",null,{\"className\":\"mt-2 font-heading text-lg leading-snug font-semibold\",\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/building-ai-agents-a-practical-github-copilot-sdk-tutorial-for-node-js\",\"className\":\"link-underline-group after:absolute after:inset-0\",\"children\":\"Building AI Agents: A Practical GitHub Copilot SDK Tutorial for Node.js\"}]}],[\"$\",\"p\",null,{\"className\":\"mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground\",\"children\":\"Move beyond simple prompts. Learn how to use the new GitHub Copilot SDK to build autonomous AI agents in Node.js. This step-by-step guide covers environment setup, agentic sessions, and custom Skill files for 2026.\"}],[\"$\",\"span\",null,{\"className\":\"mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary\",\"children\":[\"Read article\",[\"$\",\"$L18\",null,{\"ref\":\"$undefined\",\"icon\":\"$4c:props:children:props:children:0:props:children:1:props:children:3:props:children:1:props:icon\",\"className\":\"size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none\",\"aria-hidden\":true}]]}]]}]]}]\n53:[\"$\",\"article\",\"8958\",{\"className\":\"reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"relative aspect-[16/9] overflow-hidden bg-muted\",\"children\":[[\"$\",\"$L19\",null,{\"src\":\"https://i0.wp.com/tcmhack0.wpcomstaging.com/wp-content/uploads/2026/02/Gemini_Generated_Image_oqqwvyoqqwvyoqqw-1.webp?fit=1024%2C1024\u0026ssl=1\",\"alt\":\"\",\"fill\":true,\"priority\":false,\"sizes\":\"(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw\",\"className\":\"object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none\"}],[\"$\",\"$L8\",null,{\"href\":\"/blog/category/ai-devtools\",\"className\":\"relative z-10 m-3 inl
1ine-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground\",\"children\":\"AI \u0026 DevTools\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-1 flex-col p-5\",\"children\":[[\"$\",\"time\",null,{\"dateTime\":\"2026-02-04T14:11:38\",\"className\":\"text-xs text-muted-foreground\",\"children\":\"Feb 4, 2026\"}],[\"$\",\"h3\",null,{\"className\":\"mt-2 font-heading text-lg leading-snug font-semibold\",\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/github-copilot-sdk-building-the-next-generation-of-ai-agents\",\"className\":\"link-underline-group after:absolute after:inset-0\",\"children\":\"GitHub Copilot SDK: Building the Next Generation of AI Agents\"}]}],[\"$\",\"p\",null,{\"className\":\"mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground\",\"children\":\"Discover the programmable core of GitHub Copilot. From MCP integration to custom Skill files, here is how the new SDK is redefining AI-native software.\"}],[\"$\",\"span\",null,{\"className\":\"mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary\",\"children\":[\"Read article\",[\"$\",\"$L18\",null,{\"ref\":\"$undefined\",\"icon\":\"$4c:props:children:props:children:0:props:children:1:props:children:3:props:children:1:props:icon\",\"className\":\"size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none\",\"aria-hidden\":true}]]}]]}]]}]\n54:[\"$\",\"article\",\"8946\",{\"className\":\"reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"relative aspect-[16/9] overflow-hidden bg-muted\",\"children\":[[\"$\",\"$L19\",null,{\"src\":\"https://i0.wp.com/tcmhack0.wpcomstaging.com/wp-content/uploads/2026/01/Gemini_Generated_Image_t6siv5t6siv5t6si-1.webp?fit=1024%2C1024\u0026ssl=1\",\"alt\":\"\",\"fill\":true,\"priority\":false,\"sizes\":\"(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw\",\"className\":\"object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none\"}],[\"$\",\"$L8\",null,{\"href\":\"/blog/category/bun\",\"className\":\"relative z-10 m-3 inl
1ine-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground\",\"children\":\"Bun\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-1 flex-col p-5\",\"children\":[[\"$\",\"time\",null,{\"dateTime\":\"2026-01-31T18:51:04\",\"className\":\"text-xs text-muted-foreground\",\"children\":\"Jan 31, 2026\"}],[\"$\",\"h3\",null,{\"className\":\"mt-2 font-heading text-lg leading-snug font-semibold\",\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/bun-vs-node-js-a-comprehensive-comparison-for-modern-developers\",\"className\":\"link-underline-group after:absolute after:inset-0\",\"children\":\"âBun vs. Node.js: A Comprehensive Comparison for Modern Developers\"}]}],[\"$\",\"p\",null,{\"className\":\"mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground\",\"children\":\"Bun vs Node.js in 2026: Is it time to ditch node_modules? We compare performance, tooling, and ecosystem to help you choose the right runtime.\"}],[\"$\",\"span\",null,{\"className\":\"mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary\",\"children\":[\"Read article\",[\"$\",\"$L18\",null,{\"ref\":\"$undefined\",\"icon\":\"$4c:props:children:props:children:0:props:children:1:props:children:3:props:children:1:props:icon\",\"className\":\"size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none\",\"aria-hidden\":true}]]}]]}]]}]\n55:[\"$\",\"article\",\"8941\",{\"className\":\"reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"relative aspect-[16/9] overflow-hidden bg-muted\",\"children\":[[\"$\",\"$L19\",null,{\"src\":\"https://i0.wp.com/tcmhack0.wpcomstaging.com/wp-content/uploads/2026/01/Gemini_Generated_Image_rewptarewptarewp-1.webp?fit=1024%2C1024\u0026ssl=1\",\"alt\":\"\",\"fill\":true,\"priority\":false,\"sizes\":\"(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw\",\"className\":\"object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none\"}],[\"$\",\"$L8\",null,{\"href\":\"/blog/category/javascript\",\"className\":\"relative z-10 m-3 inl
1ine-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground\",\"children\":\"JavaScript\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-1 flex-col p-5\",\"children\":[[\"$\",\"time\",null,{\"dateTime\":\"2026-01-28T19:10:25\",\"className\":\"text-xs text-muted-foreground\",\"children\":\"Jan 28, 2026\"}],[\"$\",\"h3\",null,{\"className\":\"mt-2 font-heading text-lg leading-snug font-semibold\",\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/react-19-next-js-15-the-no-memo-future\",\"className\":\"link-underline-group after:absolute after:inset-0\",\"children\":\"React 19 + Next.js 15: The âNo-Memoâ Future\"}]}],[\"$\",\"p\",null,{\"className\":\"mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground\",\"children\":\"React 19 and Next.js 15 are here. Discover how the React Compiler is making useMemo and useCallback obsolete for a cleaner, faster developer experience.\"}],[\"$\",\"span\",null,{\"className\":\"mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary\",\"children\":[\"Read article\",[\"$\",\"$L18\",null,{\"ref\":\"$undefined\",\"icon\":\"$4c:props:children:props:children:0:props:children:1:props:children:3:props:children:1:props:icon\",\"className\":\"size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none\",\"aria-hidden\":true}]]}]]}]]}]\n56:[\"$\",\"article\",\"8914\",{\"className\":\"reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"relative aspect-[16/9] overflow-hidden bg-muted\",\"children\":[[\"$\",\"$L19\",null,{\"src\":\"https://i0.wp.com/tcmhack0.wpcomstaging.com/wp-content/uploads/2026/01/Gemini_Generated_Image_7v7m6a7v7m6a7v7m-1.webp?fit=1024%2C1024\u0026ssl=1\",\"alt\":\"\",\"fill\":true,\"priority\":false,\"sizes\":\"(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw\",\"className\":\"object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none\"}],[\"$\",\"$L8\",null,{\"href\":\"/blog/category/javascript\",\"className\":\"relative z-10 m-3 inl
1ine-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground\",\"children\":\"JavaScript\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-1 flex-col p-5\",\"children\":[[\"$\",\"time\",null,{\"dateTime\":\"2026-01-25T17:42:14\",\"className\":\"text-xs text-muted-foreground\",\"children\":\"Jan 25, 2026\"}],[\"$\",\"h3\",null,{\"className\":\"mt-2 font-heading text-lg leading-snug font-semibold\",\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/javascript-globalthis-the-easy-guide-to-accessing-the-global-object\",\"className\":\"link-underline-group after:absolute after:inset-0\",\"children\":\"JavaScript globalThis: The Easy Guide to Accessing the Global Object\"}]}],[\"$\",\"p\",null,{\"className\":\"mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground\",\"children\":\"No more window vs. global! Learn how globalThis provides a unified way to access the global object across all JavaScript environments.\"}],[\"$\",\"span\",null,{\"className\":\"mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary\",\"children\":[\"Read article\",[\"$\",\"$L18\",null,{\"ref\":\"$undefined\",\"icon\":\"$4c:props:children:props:children:0:props:children:1:props:children:3:props:children:1:props:icon\",\"className\":\"size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none\",\"aria-hidden\":true}]]}]]}]]}]\n57:[\"$\",\"article\",\"8888\",{\"className\":\"reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"relative aspect-[16/9] overflow-hidden bg-muted\",\"children\":[[\"$\",\"$L19\",null,{\"src\":\"https://i0.wp.com/tcmhack0.wpcomstaging.com/wp-content/uploads/2026/01/Gemini_Generated_Image_3joobi3joobi3joo-1.webp?fit=1024%2C1024\u0026ssl=1\",\"alt\":\"\",\"fill\":true,\"priority\":false,\"sizes\":\"(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw\",\"className\":\"object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none\"}],[\"$\",\"$L8\",null,{\"href\":\"/blog/category/browser-extensions\",\"className\":\"relative z-10 m-3 inl
1ine-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground\",\"children\":\"Browser Extensions\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-1 flex-col p-5\",\"children\":[[\"$\",\"time\",null,{\"dateTime\":\"2026-01-24T11:39:20\",\"className\":\"text-xs text-muted-foreground\",\"children\":\"Jan 24, 2026\"}],[\"$\",\"h3\",null,{\"className\":\"mt-2 font-heading text-lg leading-snug font-semibold\",\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/mastering-content-scripts-giving-your-extension-eyes-and-hands\",\"className\":\"link-underline-group after:absolute after:inset-0\",\"children\":\"Mastering Content Scripts: Giving Your Extension âEyesâ and âHandsâ\"}]}],[\"$\",\"p\",null,{\"className\":\"mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground\",\"children\":\"Take control of the web! Learn how Content Scripts work in Manifest V3 to read and modify any websiteâs DOM.\"}],[\"$\",\"span\",null,{\"className\":\"mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary\",\"children\":[\"Read article\",[\"$\",\"$L18\",null,{\"ref\":\"$undefined\",\"icon\":\"$4c:props:children:props:children:0:props:children:1:props:children:3:props:children:1:props:icon\",\"className\":\"size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none\",\"aria-hidden\":true}]]}]]}]]}]\n58:[\"$\",\"article\",\"8883\",{\"className\":\"reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"relative aspect-[16/9] overflow-hidden bg-muted\",\"children\":[[\"$\",\"$L19\",null,{\"src\":\"https://i0.wp.com/tcmhack0.wpcomstaging.com/wp-content/uploads/2026/01/Gemini_Generated_Image_yh2nvryh2nvryh2n-1.png?fit=1024%2C1024\u0026ssl=1\",\"alt\":\"\",\"fill\":true,\"priority\":false,\"sizes\":\"(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw\",\"className\":\"object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none\"}],[\"$\",\"$L8\",null,{\"href\":\"/blog/category/browser-extensions\",\"className\":\"relative z-10 m-3 inl
1ine-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground\",\"children\":\"Browser Extensions\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-1 flex-col p-5\",\"children\":[[\"$\",\"time\",null,{\"dateTime\":\"2026-01-24T11:27:21\",\"className\":\"text-xs text-muted-foreground\",\"children\":\"Jan 24, 2026\"}],[\"$\",\"h3\",null,{\"className\":\"mt-2 font-heading text-lg leading-snug font-semibold\",\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/mastering-the-manifest-a-deep-dive-into-chrome-extension-manifest-json-v3\",\"className\":\"link-underline-group after:absolute after:inset-0\",\"children\":\"Mastering the Manifest: A Deep Dive into Chrome Extension manifest.json (V3)\"}]}],[\"$\",\"p\",null,{\"className\":\"mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground\",\"children\":\"A comprehensive guide to the manifest.json file for Chrome Extensions (Manifest V3). Learn what each key does, from name and version to permissions and content_scripts.\"}],[\"$\",\"span\",null,{\"className\":\"mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary\",\"children\":[\"Read article\",[\"$\",\"$L18\",null,{\"ref\":\"$undefined\",\"icon\":\"$4c:props:children:props:children:0:props:children:1:props:children:3:props:children:1:props:icon\",\"className\":\"size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none\",\"aria-hidden\":true}]]}]]}]]}]\n59:[\"$\",\"article\",\"8876\",{\"className\":\"reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"relative aspect-[16/9] overflow-hidden bg-muted\",\"children\":[[\"$\",\"$L19\",null,{\"src\":\"https://i0.wp.com/tcmhack0.wpcomstaging.com/wp-content/uploads/2026/01/Gemini_Generated_Image_sjlulzsjlulzsjlu-1.webp?fit=1024%2C1024\u0026ssl=1\",\"alt\":\"\",\"fill\":true,\"priority\":false,\"sizes\":\"(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw\",\"className\":\"object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none\"}],[\"$\",\"$L8\",null,{\"href\":\"/blog/category/browser-extensions\",\"className\":\"relative z-10 m-3 inl
1ine-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground\",\"children\":\"Browser Extensions\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-1 flex-col p-5\",\"children\":[[\"$\",\"time\",null,{\"dateTime\":\"2026-01-23T23:29:19\",\"className\":\"text-xs text-muted-foreground\",\"children\":\"Jan 23, 2026\"}],[\"$\",\"h3\",null,{\"className\":\"mt-2 font-heading text-lg leading-snug font-semibold\",\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/the-ultimate-guide-to-browser-extensions-from-using-to-building\",\"className\":\"link-underline-group after:absolute after:inset-0\",\"children\":\"The Ultimate Guide to Browser Extensions: From Using to Building\"}]}],[\"$\",\"p\",null,{\"className\":\"mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground\",\"children\":\"Learn the basics of browser extensions, how to use them, and build your own âHello Worldâ extension in minutes using Manifest V3.\"}],[\"$\",\"span\",null,{\"className\":\"mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary\",\"children\":[\"Read article\",[\"$\",\"$L18\",null,{\"ref\":\"$undefined\",\"icon\":\"$4c:props:children:props:children:0:props:children:1:props:children:3:props:children:1:props:icon\",\"className\":\"size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none\",\"aria-hidden\":true}]]}]]}]]}]\n5a:[\"$\",\"article\",\"8864\",{\"className\":\"reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]\",\"children\":[[\"$\",\"div\",null,{\"className\":\"relative aspect-[16/9] overflow-hidden bg-muted\",\"children\":[[\"$\",\"$L19\",null,{\"src\":\"https://i0.wp.com/tcmhack0.wpcomstaging.com/wp-content/uploads/2026/01/Gemini_Generated_Image_pvnyu3pvnyu3pvny-1.png?fit=1024%2C1024\u0026ssl=1\",\"alt\":\"\",\"fill\":true,\"priority\":false,\"sizes\":\"(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw\",\"className\":\"object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none\"}],[\"$\",\"$L8\",null,{\"href\":\"/blog/category/php\",\"className\":\"relative z-10 m-3 inl
1ine-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground\",\"children\":\"PHP\"}]]}],[\"$\",\"div\",null,{\"className\":\"flex flex-1 flex-col p-5\",\"children\":[[\"$\",\"time\",null,{\"dateTime\":\"2026-01-20T21:43:13\",\"className\":\"text-xs text-muted-foreground\",\"children\":\"Jan 20, 2026\"}],[\"$\",\"h3\",null,{\"className\":\"mt-2 font-heading text-lg leading-snug font-semibold\",\"children\":[\"$\",\"$L8\",null,{\"href\":\"/blog/how-to-install-php-7-2-on-macos-intel-and-apple-silicon-m1-m2-m3\",\"className\":\"link-underline-group after:absolute after:inset-0\",\"children\":\"How to Install PHP 7.2 on macOS (Intel and Apple Silicon M1/M2/M3)\"}]}],[\"$\",\"p\",null,{\"className\":\"mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground\",\"children\":\"Need to run a legacy project? Learn how to install PHP 7.2 on modern macOS (Intel \u0026 Apple Silicon) using Homebrew and the Shivam Mathur PHP tap.\"}],[\"$\",\"span\",null,{\"className\":\"mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary\",\"children\":[\"Read article\",[\"$\",\"$L18\",null,{\"ref\":\"$undefined\",\"icon\":\"$4c:props:children:props:children:0:props:children:1:props:children:3:props:children:1:props:icon\",\"className\":\"size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none\",\"aria-hidden\":true}]]}]]}]]}]\n"])</script>
1<link rel="preload" as="image" imageSrcSet="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_5tyx55tyx55tyx55-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_5tyx55tyx55tyx55-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_5tyx55tyx55tyx55-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_5tyx55tyx55tyx55-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_5tyx55tyx55tyx55-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_5tyx55tyx55tyx55-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_5tyx55tyx55tyx55-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_5tyx55tyx55tyx55-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_5tyx55tyx55tyx55-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75 3840w" imageSizes="(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw"/><div hidden id="S:e"><form class="text-sm [&_input]:border-ink-foreground/20 [&_input]:bg-ink-foreground/10 [&_input]:text-ink-foreground [&_input]:placeholder:text-ink-foreground/50 [&_button]:bg-accent [&_button]:text-accent-foreground [&_[role=alert]]:text-accent" action="" encType="multipart/form-data" method="POST"><input type="hidden" name="$ACTION_REF_3"/><input type="hidden" name="$ACTION_3:0" value="{"id":"60c512beeb2534fec88c0d6de935abf1b576c081cd","bound":"$@1"}"/><input type="hidden" name="$ACTION_3:1" value="[null]"/><input type="hidden" name="$ACTION_KEY" value="k6b3920a128b2215bf18b51d270bf7dee"/><div class="flex flex-col gap-2 sm:flex-row"><label for="newsletter-email" class="sr-only">Email address</label><input id="newsletter-email" type="email" data-slot="input" required="" autoComplete="email" placeholder="[email protected]" class="w-full min-w-0 rounded-md border border-input bg-transparent px-2.5 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 md:text-sm dark:bg-input/30 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 h-10" name="email"/><button type="submit" tabindex="0" data-slot="button" class="group/button inline-flex shrink-0 items-center justify-center rounded-md border border-transparent bg-clip-padding font-heading text-sm font-semibold whitespace-nowrap transition-all outline-none select-none focus-visible:border-ring focus-visible:ring-3 focus-visible:ring-ring/50 active:not-aria-[haspopup]:translate-y-px disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-destructive aria-invalid:ring-3 aria-invalid:ring-destructive/20 dark:aria-invalid:border-destructive/50 dark:aria-invalid:ring-destructive/40 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='
1size-'])]:size-4 bg-primary-button text-primary-button-foreground hover:bg-primary-button/85 h-10 gap-1.5 has-data-[icon=inline-end]:pr-2 has-data-[icon=inline-start]:pl-2 px-4">Subscribe</button></div></form></div>
1<script>$RS("S:e","P:e")</script>
1<div hidden id="S:2"><p class="mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground">Google unveils Gemini 3.1 Pro with a massive leap in core reasoning. Discover new features like native SVG animation generation, âVibe-Coding,â and specialized agentic workflows for complex engineering.</p></div>
1<script>$RS("S:2","P:2")</script>
1<div hidden id="S:3"><span class="mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary">Read article<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-up-right size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none" aria-hidden="true"><path d="M7 7h10v10"></path><path d="M7 17 17 7"></path></svg></span></div>
1<script>$RS("S:3","P:3")</script>
1<div hidden id="S:4"><article class="reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]"><div class="relative aspect-[16/9] overflow-hidden bg-muted"><img alt="" decoding="async" data-nimg="fill" class="object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw" srcSet="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_5tyx55tyx55tyx55-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_5tyx55tyx55tyx55-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_5tyx55tyx55tyx55-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_5tyx55tyx55tyx55-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_5tyx55tyx55tyx55-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_5tyx55tyx55tyx55-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_5tyx55tyx55tyx55-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_5tyx55tyx55tyx55-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_5tyx55tyx55tyx55-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75 3840w" src="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_5tyx55tyx55tyx55-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75"/>
1<a class="relative z-10 m-3 inline-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground" href="/blog/category/how-to">How To</a></div><div class="flex flex-1 flex-col p-5"><time dateTime="2026-02-05T16:16:27" class="text-xs text-muted-foreground">Feb 5, 2026</time><h3 class="mt-2 font-heading text-lg leading-snug font-semibold"><a class="link-underline-group after:absolute after:inset-0" href="/blog/how-to-debug-mobile-websites-on-desktop-the-essential-guide">How to Debug Mobile Websites on Desktop (The Essential Guide)</a></h3><p class="mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground">Stop struggling with physical devices. Learn how to use Chrome DevTools to simulate mobile viewports, throttle CPU/Network speeds, and emulate sensors like Geolocation directly from your desktop. Perfect for responsive web design in 2026.</p><span class="mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary">Read article<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-up-right size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none" aria-hidden="true"><path d="M7 7h10v10"></path><path d="M7 17 17 7"></path></svg></span></div></article></div>
1<script>$RS("S:4","P:4")</script>
1<div hidden id="S:5"><article class="reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]"><div class="relative aspect-[16/9] overflow-hidden bg-muted"><img alt="" loading="lazy" decoding="async" data-nimg="fill" class="object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw" srcSet="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_9k49ms9k49ms9k49-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_9k49ms9k49ms9k49-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_9k49ms9k49ms9k49-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_9k49ms9k49ms9k49-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_9k49ms9k49ms9k49-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_9k49ms9k49ms9k49-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_9k49ms9k49ms9k49-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_9k49ms9k49ms9k49-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_9k49ms9k49ms9k49-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75 3840w" src="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_9k49ms9k49ms9k49-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75"/>
1<a class="relative z-10 m-3 inline-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground" href="/blog/category/ai-devtools">AI & DevTools</a></div><div class="flex flex-1 flex-col p-5"><time dateTime="2026-02-04T14:30:09" class="text-xs text-muted-foreground">Feb 4, 2026</time><h3 class="mt-2 font-heading text-lg leading-snug font-semibold"><a class="link-underline-group after:absolute after:inset-0" href="/blog/building-ai-agents-a-practical-github-copilot-sdk-tutorial-for-node-js">Building AI Agents: A Practical GitHub Copilot SDK Tutorial for Node.js</a></h3><p class="mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground">Move beyond simple prompts. Learn how to use the new GitHub Copilot SDK to build autonomous AI agents in Node.js. This step-by-step guide covers environment setup, agentic sessions, and custom Skill files for 2026.</p><span class="mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary">Read article<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-up-right size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none" aria-hidden="true"><path d="M7 7h10v10"></path><path d="M7 17 17 7"></path></svg></span></div></article></div>
1<script>$RS("S:5","P:5")</script>
1<div hidden id="S:6"><article class="reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]"><div class="relative aspect-[16/9] overflow-hidden bg-muted"><img alt="" loading="lazy" decoding="async" data-nimg="fill" class="object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw" srcSet="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_oqqwvyoqqwvyoqqw-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_oqqwvyoqqwvyoqqw-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_oqqwvyoqqwvyoqqw-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_oqqwvyoqqwvyoqqw-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_oqqwvyoqqwvyoqqw-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_oqqwvyoqqwvyoqqw-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_oqqwvyoqqwvyoqqw-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_oqqwvyoqqwvyoqqw-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_oqqwvyoqqwvyoqqw-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75 3840w" src="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F02%2FGemini_Generated_Image_oqqwvyoqqwvyoqqw-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75"/>
1<a class="relative z-10 m-3 inline-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground" href="/blog/category/ai-devtools">AI & DevTools</a></div><div class="flex flex-1 flex-col p-5"><time dateTime="2026-02-04T14:11:38" class="text-xs text-muted-foreground">Feb 4, 2026</time><h3 class="mt-2 font-heading text-lg leading-snug font-semibold"><a class="link-underline-group after:absolute after:inset-0" href="/blog/github-copilot-sdk-building-the-next-generation-of-ai-agents">GitHub Copilot SDK: Building the Next Generation of AI Agents</a></h3><p class="mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground">Discover the programmable core of GitHub Copilot. From MCP integration to custom Skill files, here is how the new SDK is redefining AI-native software.</p><span class="mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary">Read article<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-up-right size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none" aria-hidden="true"><path d="M7 7h10v10"></path><path d="M7 17 17 7"></path></svg></span></div></article></div>
1<script>$RS("S:6","P:6")</script>
1<div hidden id="S:7"><article class="reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]"><div class="relative aspect-[16/9] overflow-hidden bg-muted"><img alt="" loading="lazy" decoding="async" data-nimg="fill" class="object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw" srcSet="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_t6siv5t6siv5t6si-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_t6siv5t6siv5t6si-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_t6siv5t6siv5t6si-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_t6siv5t6siv5t6si-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_t6siv5t6siv5t6si-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_t6siv5t6siv5t6si-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_t6siv5t6siv5t6si-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_t6siv5t6siv5t6si-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_t6siv5t6siv5t6si-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75 3840w" src="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_t6siv5t6siv5t6si-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75"/>
1<a class="relative z-10 m-3 inline-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground" href="/blog/category/bun">Bun</a></div><div class="flex flex-1 flex-col p-5"><time dateTime="2026-01-31T18:51:04" class="text-xs text-muted-foreground">Jan 31, 2026</time><h3 class="mt-2 font-heading text-lg leading-snug font-semibold"><a class="link-underline-group after:absolute after:inset-0" href="/blog/bun-vs-node-js-a-comprehensive-comparison-for-modern-developers">âBun vs. Node.js: A Comprehensive Comparison for Modern Developers</a></h3><p class="mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground">Bun vs Node.js in 2026: Is it time to ditch node_modules? We compare performance, tooling, and ecosystem to help you choose the right runtime.</p><span class="mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary">Read article<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-up-right size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none" aria-hidden="true"><path d="M7 7h10v10"></path><path d="M7 17 17 7"></path></svg></span></div></article></div>
1<script>$RS("S:7","P:7")</script>
1<div hidden id="S:8"><article class="reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]"><div class="relative aspect-[16/9] overflow-hidden bg-muted"><img alt="" loading="lazy" decoding="async" data-nimg="fill" class="object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw" srcSet="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_rewptarewptarewp-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_rewptarewptarewp-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_rewptarewptarewp-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_rewptarewptarewp-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_rewptarewptarewp-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_rewptarewptarewp-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_rewptarewptarewp-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_rewptarewptarewp-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_rewptarewptarewp-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75 3840w" src="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_rewptarewptarewp-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75"/>
1<a class="relative z-10 m-3 inline-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground" href="/blog/category/javascript">JavaScript</a></div><div class="flex flex-1 flex-col p-5"><time dateTime="2026-01-28T19:10:25" class="text-xs text-muted-foreground">Jan 28, 2026</time><h3 class="mt-2 font-heading text-lg leading-snug font-semibold"><a class="link-underline-group after:absolute after:inset-0" href="/blog/react-19-next-js-15-the-no-memo-future">React 19 + Next.js 15: The âNo-Memoâ Future</a></h3><p class="mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground">React 19 and Next.js 15 are here. Discover how the React Compiler is making useMemo and useCallback obsolete for a cleaner, faster developer experience.</p><span class="mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary">Read article<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-up-right size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none" aria-hidden="true"><path d="M7 7h10v10"></path><path d="M7 17 17 7"></path></svg></span></div></article></div>
1<script>$RS("S:8","P:8")</script>
1<div hidden id="S:9"><article class="reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]"><div class="relative aspect-[16/9] overflow-hidden bg-muted"><img alt="" loading="lazy" decoding="async" data-nimg="fill" class="object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw" srcSet="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_7v7m6a7v7m6a7v7m-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_7v7m6a7v7m6a7v7m-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_7v7m6a7v7m6a7v7m-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_7v7m6a7v7m6a7v7m-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_7v7m6a7v7m6a7v7m-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_7v7m6a7v7m6a7v7m-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_7v7m6a7v7m6a7v7m-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_7v7m6a7v7m6a7v7m-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_7v7m6a7v7m6a7v7m-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75 3840w" src="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_7v7m6a7v7m6a7v7m-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75"/>
1<a class="relative z-10 m-3 inline-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground" href="/blog/category/javascript">JavaScript</a></div><div class="flex flex-1 flex-col p-5"><time dateTime="2026-01-25T17:42:14" class="text-xs text-muted-foreground">Jan 25, 2026</time><h3 class="mt-2 font-heading text-lg leading-snug font-semibold"><a class="link-underline-group after:absolute after:inset-0" href="/blog/javascript-globalthis-the-easy-guide-to-accessing-the-global-object">JavaScript globalThis: The Easy Guide to Accessing the Global Object</a></h3><p class="mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground">No more window vs. global! Learn how globalThis provides a unified way to access the global object across all JavaScript environments.</p><span class="mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary">Read article<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-up-right size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none" aria-hidden="true"><path d="M7 7h10v10"></path><path d="M7 17 17 7"></path></svg></span></div></article></div>
1<script>$RS("S:9","P:9")</script>
1<div hidden id="S:a"><article class="reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]"><div class="relative aspect-[16/9] overflow-hidden bg-muted"><img alt="" loading="lazy" decoding="async" data-nimg="fill" class="object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw" srcSet="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_3joobi3joobi3joo-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_3joobi3joobi3joo-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_3joobi3joobi3joo-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_3joobi3joobi3joo-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_3joobi3joobi3joo-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_3joobi3joobi3joo-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_3joobi3joobi3joo-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_3joobi3joobi3joo-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_3joobi3joobi3joo-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75 3840w" src="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_3joobi3joobi3joo-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75"/>
1<a class="relative z-10 m-3 inline-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground" href="/blog/category/browser-extensions">Browser Extensions</a></div><div class="flex flex-1 flex-col p-5"><time dateTime="2026-01-24T11:39:20" class="text-xs text-muted-foreground">Jan 24, 2026</time><h3 class="mt-2 font-heading text-lg leading-snug font-semibold"><a class="link-underline-group after:absolute after:inset-0" href="/blog/mastering-content-scripts-giving-your-extension-eyes-and-hands">Mastering Content Scripts: Giving Your Extension âEyesâ and âHandsâ</a></h3><p class="mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground">Take control of the web! Learn how Content Scripts work in Manifest V3 to read and modify any websiteâs DOM.</p><span class="mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary">Read article<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-up-right size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none" aria-hidden="true"><path d="M7 7h10v10"></path><path d="M7 17 17 7"></path></svg></span></div></article></div>
1<script>$RS("S:a","P:a")</script>
1<div hidden id="S:b"><article class="reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]"><div class="relative aspect-[16/9] overflow-hidden bg-muted"><img alt="" loading="lazy" decoding="async" data-nimg="fill" class="object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw" srcSet="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_yh2nvryh2nvryh2n-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_yh2nvryh2nvryh2n-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_yh2nvryh2nvryh2n-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_yh2nvryh2nvryh2n-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_yh2nvryh2nvryh2n-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_yh2nvryh2nvryh2n-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_yh2nvryh2nvryh2n-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_yh2nvryh2nvryh2n-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_yh2nvryh2nvryh2n-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75 3840w" src="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_yh2nvryh2nvryh2n-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75"/>
1<a class="relative z-10 m-3 inline-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground" href="/blog/category/browser-extensions">Browser Extensions</a></div><div class="flex flex-1 flex-col p-5"><time dateTime="2026-01-24T11:27:21" class="text-xs text-muted-foreground">Jan 24, 2026</time><h3 class="mt-2 font-heading text-lg leading-snug font-semibold"><a class="link-underline-group after:absolute after:inset-0" href="/blog/mastering-the-manifest-a-deep-dive-into-chrome-extension-manifest-json-v3">Mastering the Manifest: A Deep Dive into Chrome Extension manifest.json (V3)</a></h3><p class="mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground">A comprehensive guide to the manifest.json file for Chrome Extensions (Manifest V3). Learn what each key does, from name and version to permissions and content_scripts.</p><span class="mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary">Read article<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-up-right size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none" aria-hidden="true"><path d="M7 7h10v10"></path><path d="M7 17 17 7"></path></svg></span></div></article></div>
1<script>$RS("S:b","P:b")</script>
1<div hidden id="S:c"><article class="reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]"><div class="relative aspect-[16/9] overflow-hidden bg-muted"><img alt="" loading="lazy" decoding="async" data-nimg="fill" class="object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw" srcSet="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_sjlulzsjlulzsjlu-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_sjlulzsjlulzsjlu-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_sjlulzsjlulzsjlu-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_sjlulzsjlulzsjlu-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_sjlulzsjlulzsjlu-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_sjlulzsjlulzsjlu-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_sjlulzsjlulzsjlu-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_sjlulzsjlulzsjlu-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_sjlulzsjlulzsjlu-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75 3840w" src="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_sjlulzsjlulzsjlu-1.webp%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75"/>
1<a class="relative z-10 m-3 inline-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground" href="/blog/category/browser-extensions">Browser Extensions</a></div><div class="flex flex-1 flex-col p-5"><time dateTime="2026-01-23T23:29:19" class="text-xs text-muted-foreground">Jan 23, 2026</time><h3 class="mt-2 font-heading text-lg leading-snug font-semibold"><a class="link-underline-group after:absolute after:inset-0" href="/blog/the-ultimate-guide-to-browser-extensions-from-using-to-building">The Ultimate Guide to Browser Extensions: From Using to Building</a></h3><p class="mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground">Learn the basics of browser extensions, how to use them, and build your own âHello Worldâ extension in minutes using Manifest V3.</p><span class="mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary">Read article<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-up-right size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none" aria-hidden="true"><path d="M7 7h10v10"></path><path d="M7 17 17 7"></path></svg></span></div></article></div>
1<script>$RS("S:c","P:c")</script>
1<div hidden id="S:d"><article class="reveal hover-lift group relative flex flex-col overflow-hidden rounded-2xl border bg-card transition-shadow hover:shadow-[0_18px_40px_-18px_rgb(20_21_49/0.35)]"><div class="relative aspect-[16/9] overflow-hidden bg-muted"><img alt="" loading="lazy" decoding="async" data-nimg="fill" class="object-cover transition-transform duration-500 group-hover:scale-105 motion-reduce:transition-none" style="position:absolute;height:100%;width:100%;left:0;top:0;right:0;bottom:0;color:transparent" sizes="(min-width: 1024px) 360px, (min-width: 640px) 50vw, 100vw" srcSet="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_pvnyu3pvnyu3pvny-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=384&q=75 384w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_pvnyu3pvnyu3pvny-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=640&q=75 640w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_pvnyu3pvnyu3pvny-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=750&q=75 750w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_pvnyu3pvnyu3pvny-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=828&q=75 828w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_pvnyu3pvnyu3pvny-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=1080&q=75 1080w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_pvnyu3pvnyu3pvny-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=1200&q=75 1200w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_pvnyu3pvnyu3pvny-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=1920&q=75 1920w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_pvnyu3pvnyu3pvny-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=2048&q=75 2048w, /_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_pvnyu3pvnyu3pvny-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75 3840w" src="/_next/image?url=https%3A%2F%2Fi0.wp.com%2Ftcmhack0.wpcomstaging.com%2Fwp-content%2Fuploads%2F2026%2F01%2FGemini_Generated_Image_pvnyu3pvnyu3pvny-1.png%3Ffit%3D1024%252C1024%26ssl%3D1&w=3840&q=75"/>
1<a class="relative z-10 m-3 inline-block rounded-full bg-card/95 px-2.5 py-1 text-xs font-semibold shadow-sm backdrop-blur transition-colors hover:bg-primary-button hover:text-primary-button-foreground" href="/blog/category/php">PHP</a></div><div class="flex flex-1 flex-col p-5"><time dateTime="2026-01-20T21:43:13" class="text-xs text-muted-foreground">Jan 20, 2026</time><h3 class="mt-2 font-heading text-lg leading-snug font-semibold"><a class="link-underline-group after:absolute after:inset-0" href="/blog/how-to-install-php-7-2-on-macos-intel-and-apple-silicon-m1-m2-m3">How to Install PHP 7.2 on macOS (Intel and Apple Silicon M1/M2/M3)</a></h3><p class="mt-2 line-clamp-3 flex-1 text-sm text-muted-foreground">Need to run a legacy project? Learn how to install PHP 7.2 on modern macOS (Intel & Apple Silicon) using Homebrew and the Shivam Mathur PHP tap.</p><span class="mt-4 inline-flex items-center gap-1 text-sm font-semibold text-primary">Read article<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-arrow-up-right size-4 -translate-x-1 opacity-0 transition duration-300 group-hover:translate-x-0 group-hover:opacity-100 motion-reduce:transition-none" aria-hidden="true"><path d="M7 7h10v10"></path><path d="M7 17 17 7"></path></svg></span></div></article></div>
1<script>$RS("S:d","P:d")</script>
1<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}; 2$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>
2</body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.