<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Gagan Deep Singh</title>
    <link>https://thegdsks.com</link>
    <description>Software Architect at Marriott International. Founder of GLINCKER. I architect distributed systems at scale and build open-source tools that developers actually use.</description>
    <language>en-us</language>
    <lastBuildDate>Fri, 03 Apr 2026 21:05:58 GMT</lastBuildDate>
    <atom:link href="https://thegdsks.com/feed.xml" rel="self" type="application/rss+xml" />
    <item>
      <title><![CDATA[Building Glin-Profanity: A Multilingual Profanity Filter for 24+ Languages]]></title>
      <link>https://thegdsks.com/blog/building-glin-profanity</link>
      <guid isPermaLink="true">https://thegdsks.com/blog/building-glin-profanity</guid>
      <description><![CDATA[How I built glin-profanity, a fast profanity detection library supporting 24+ languages with context-aware filtering, severity scoring, and MCP server integration.]]></description>
      <pubDate>Fri, 13 Mar 2026 00:00:00 GMT</pubDate>
      <category><![CDATA[TypeScript]]></category>
      <category><![CDATA[NLP]]></category>
      <category><![CDATA[Open Source]]></category>
      <category><![CDATA[npm]]></category>
      <category><![CDATA[MCP]]></category>
    </item>
    <item>
      <title><![CDATA[Publishing 15+ npm Packages as a Solo Developer: What I Learned]]></title>
      <link>https://thegdsks.com/blog/npm-packages-solo-dev</link>
      <guid isPermaLink="true">https://thegdsks.com/blog/npm-packages-solo-dev</guid>
      <description><![CDATA[Hard-won lessons from publishing across three npm scopes: monorepo trade-offs, versioning, CI/CD, MCP servers, and the download numbers that surprised me.]]></description>
      <pubDate>Fri, 13 Mar 2026 00:00:00 GMT</pubDate>
      <category><![CDATA[npm]]></category>
      <category><![CDATA[Open Source]]></category>
      <category><![CDATA[TypeScript]]></category>
      <category><![CDATA[Developer Tools]]></category>
      <category><![CDATA[MCP]]></category>
    </item>
    <item>
      <title><![CDATA[Building profClaw: An AI Agent Engine from Scratch]]></title>
      <link>https://thegdsks.com/blog/building-profclaw-engine</link>
      <guid isPermaLink="true">https://thegdsks.com/blog/building-profclaw-engine</guid>
      <description><![CDATA[Why I built profClaw, a local-first AI agent engine that runs on Docker, VPS, or your laptop. Architecture decisions, deployment modes, and what I learned about agentic AI.]]></description>
      <pubDate>Thu, 12 Mar 2026 00:00:00 GMT</pubDate>
      <category><![CDATA[AI]]></category>
      <category><![CDATA[TypeScript]]></category>
      <category><![CDATA[Agent]]></category>
      <category><![CDATA[profClaw]]></category>
      <category><![CDATA[Open Source]]></category>
    </item>
    <item>
      <title><![CDATA[Generative Engine Optimization: Auditing Websites for AI-Readiness]]></title>
      <link>https://thegdsks.com/blog/generative-engine-optimization</link>
      <guid isPermaLink="true">https://thegdsks.com/blog/generative-engine-optimization</guid>
      <description><![CDATA[What GEO is, why it matters for the AI search era, and how I built GeoKit to audit any website's AI-readiness with a 0-100 score.]]></description>
      <pubDate>Tue, 10 Mar 2026 00:00:00 GMT</pubDate>
      <category><![CDATA[SEO]]></category>
      <category><![CDATA[AI]]></category>
      <category><![CDATA[GEO]]></category>
      <category><![CDATA[TypeScript]]></category>
      <category><![CDATA[Developer Tools]]></category>
    </item>
    <item>
      <title><![CDATA[Launching theSVG: The Open SVG Brand Library]]></title>
      <link>https://thegdsks.com/blog/launching-thesvg</link>
      <guid isPermaLink="true">https://thegdsks.com/blog/launching-thesvg</guid>
      <description><![CDATA[Why I built theSVG.org, a free library of 4,000+ brand SVGs with variants, an npm ecosystem, and an MCP server for AI assistants.]]></description>
      <pubDate>Sun, 08 Mar 2026 00:00:00 GMT</pubDate>
      <category><![CDATA[Open Source]]></category>
      <category><![CDATA[SVG]]></category>
      <category><![CDATA[TypeScript]]></category>
      <category><![CDATA[Next.js]]></category>
      <category><![CDATA[Developer Tools]]></category>
    </item>
    <item>
      <title><![CDATA[Building FeaturedDrop: Feature Announcements That Don't Suck]]></title>
      <link>https://thegdsks.com/blog/building-featuredrop</link>
      <guid isPermaLink="true">https://thegdsks.com/blog/building-featuredrop</guid>
      <description><![CDATA[Why I built FeaturedDrop, a lightweight library for in-app feature announcements and changelog drops.]]></description>
      <pubDate>Thu, 05 Mar 2026 00:00:00 GMT</pubDate>
      <category><![CDATA[Open Source]]></category>
      <category><![CDATA[TypeScript]]></category>
      <category><![CDATA[React]]></category>
      <category><![CDATA[npm]]></category>
    </item>
    <item>
      <title><![CDATA[Building Type-Safe APIs with Next.js and Zod]]></title>
      <link>https://thegdsks.com/blog/building-type-safe-apis</link>
      <guid isPermaLink="true">https://thegdsks.com/blog/building-type-safe-apis</guid>
      <description><![CDATA[How I structure full-stack TypeScript APIs with runtime validation, type inference, and zero duplication between client and server.]]></description>
      <pubDate>Mon, 16 Feb 2026 00:00:00 GMT</pubDate>
      <category><![CDATA[TypeScript]]></category>
      <category><![CDATA[Next.js]]></category>
      <category><![CDATA[Zod]]></category>
      <category><![CDATA[API Design]]></category>
    </item>
    <item>
      <title><![CDATA[Rebuilding My Portfolio in 2026]]></title>
      <link>https://thegdsks.com/blog/hello-world</link>
      <guid isPermaLink="true">https://thegdsks.com/blog/hello-world</guid>
      <description><![CDATA[Why I rebuilt my portfolio from scratch with Next.js 15, and lessons learned from shipping a modern developer portfolio.]]></description>
      <pubDate>Mon, 16 Feb 2026 00:00:00 GMT</pubDate>
      <category><![CDATA[Next.js]]></category>
      <category><![CDATA[Portfolio]]></category>
      <category><![CDATA[Web Development]]></category>
    </item>
    <item>
      <title><![CDATA[AI in Production: Building AskVerdict from Zero to Launch]]></title>
      <link>https://thegdsks.com/blog/ai-in-production-askverdict</link>
      <guid isPermaLink="true">https://thegdsks.com/blog/ai-in-production-askverdict</guid>
      <description><![CDATA[How I went from idea to shipping an AI-powered verdict engine: model selection, prompt engineering, hallucination handling, and the cost lessons that humbled me.]]></description>
      <pubDate>Tue, 20 Jan 2026 00:00:00 GMT</pubDate>
      <category><![CDATA[AI]]></category>
      <category><![CDATA[AskVerdict]]></category>
      <category><![CDATA[LLM]]></category>
      <category><![CDATA[Production]]></category>
    </item>
    <item>
      <title><![CDATA[Microservices Migration: What Nobody Tells You]]></title>
      <link>https://thegdsks.com/blog/microservices-lessons</link>
      <guid isPermaLink="true">https://thegdsks.com/blog/microservices-lessons</guid>
      <description><![CDATA[Real-world lessons from migrating a monolith to microservices: the wins, the pain points, and what I'd do differently.]]></description>
      <pubDate>Mon, 03 Nov 2025 00:00:00 GMT</pubDate>
      <category><![CDATA[Microservices]]></category>
      <category><![CDATA[Architecture]]></category>
      <category><![CDATA[DevOps]]></category>
      <category><![CDATA[Spring Boot]]></category>
    </item>
    <item>
      <title><![CDATA[Scaling GLINCKER: Architecture Decisions That Shaped Our Platform]]></title>
      <link>https://thegdsks.com/blog/scaling-glincker-architecture</link>
      <guid isPermaLink="true">https://thegdsks.com/blog/scaling-glincker-architecture</guid>
      <description><![CDATA[A case study in building a social platform from scratch: the stack choices, real-time trade-offs, moderation pipeline, and what I'd change if I started over.]]></description>
      <pubDate>Mon, 15 Sep 2025 00:00:00 GMT</pubDate>
      <category><![CDATA[Architecture]]></category>
      <category><![CDATA[GLINCKER]]></category>
      <category><![CDATA[Spring Boot]]></category>
      <category><![CDATA[Scaling]]></category>
    </item>
    <item>
      <title><![CDATA[My Open Source Journey: From Side Projects to 10+ npm Packages]]></title>
      <link>https://thegdsks.com/blog/open-source-journey</link>
      <guid isPermaLink="true">https://thegdsks.com/blog/open-source-journey</guid>
      <description><![CDATA[How building open-source tools at GLINCKER taught me more about software engineering than any job ever could.]]></description>
      <pubDate>Tue, 12 Aug 2025 00:00:00 GMT</pubDate>
      <category><![CDATA[Open Source]]></category>
      <category><![CDATA[npm]]></category>
      <category><![CDATA[TypeScript]]></category>
      <category><![CDATA[GLINCKER]]></category>
    </item>
    <item>
      <title><![CDATA[Enterprise to Startup: Lessons from Building at Both Scales]]></title>
      <link>https://thegdsks.com/blog/enterprise-to-startup</link>
      <guid isPermaLink="true">https://thegdsks.com/blog/enterprise-to-startup</guid>
      <description><![CDATA[What I learned switching between enterprise systems at Ameriprise and building a startup from scratch with GLINCKER.]]></description>
      <pubDate>Tue, 20 May 2025 00:00:00 GMT</pubDate>
      <category><![CDATA[Architecture]]></category>
      <category><![CDATA[Startup]]></category>
      <category><![CDATA[Enterprise]]></category>
      <category><![CDATA[Career]]></category>
    </item>
  </channel>
</rss>