<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: suraj silwal</title>
    <description>The latest articles on DEV Community by suraj silwal (@gowithsuraj).</description>
    <link>https://dev.to/gowithsuraj</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F2095548%2F4724ded8-3c6e-4252-a36d-bc66730573f9.jpeg</url>
      <title>DEV Community: suraj silwal</title>
      <link>https://dev.to/gowithsuraj</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/gowithsuraj"/>
    <language>en</language>
    <item>
      <title>Ever wondered how apps keep you logged in without asking you to sign in again?</title>
      <dc:creator>suraj silwal</dc:creator>
      <pubDate>Thu, 26 Feb 2026 08:17:24 +0000</pubDate>
      <link>https://dev.to/gowithsuraj/ever-wondered-how-apps-keep-you-logged-in-without-asking-you-to-sign-in-again-ain</link>
      <guid>https://dev.to/gowithsuraj/ever-wondered-how-apps-keep-you-logged-in-without-asking-you-to-sign-in-again-ain</guid>
      <description>&lt;p&gt;Ever wondered how apps keep you logged in without asking you to sign in again?&lt;/p&gt;

&lt;p&gt;It’s Access Tokens + Refresh Tokens + Token Rotation.&lt;/p&gt;

&lt;p&gt;I broke down:&lt;/p&gt;

&lt;p&gt;How interceptors catch 401&lt;/p&gt;

&lt;p&gt;How /refresh-token works&lt;/p&gt;

&lt;p&gt;Why rotation prevents token theft&lt;/p&gt;

&lt;p&gt;Read here 👇&lt;br&gt;
[&lt;a href="https://srjsilwal.hashnode.dev/access-token-vs-refresh-token-how-jwt-authentication-and-token-rotation-work" rel="noopener noreferrer"&gt;https://srjsilwal.hashnode.dev/access-token-vs-refresh-token-how-jwt-authentication-and-token-rotation-work&lt;/a&gt;]&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Just documented my TypeScript APIs with Swagger using zod-to-openapi!</title>
      <dc:creator>suraj silwal</dc:creator>
      <pubDate>Tue, 24 Feb 2026 07:39:50 +0000</pubDate>
      <link>https://dev.to/gowithsuraj/just-documented-my-typescript-apis-with-swagger-using-zod-to-openapi-3748</link>
      <guid>https://dev.to/gowithsuraj/just-documented-my-typescript-apis-with-swagger-using-zod-to-openapi-3748</guid>
      <description>&lt;p&gt;Zod schemas → OpenAPI docs&lt;br&gt;
 Auto-generated openapi.json&lt;br&gt;
 Interactive Swagger UI for easy testing &amp;amp; maintenance&lt;/p&gt;

&lt;p&gt;Full guide: [&lt;a href="https://srjsilwal.hashnode.dev/documenting-apis-with-swagger-in-my-workspace" rel="noopener noreferrer"&gt;https://srjsilwal.hashnode.dev/documenting-apis-with-swagger-in-my-workspace&lt;/a&gt;]&lt;/p&gt;

&lt;h1&gt;
  
  
  TypeScript #Swagger #NodeJS #Zod #API #BackendDev
&lt;/h1&gt;

</description>
      <category>api</category>
      <category>backend</category>
      <category>tutorial</category>
      <category>typescript</category>
    </item>
    <item>
      <title>Today I debugged a monorepo issue while working with Nx and Turborepo</title>
      <dc:creator>suraj silwal</dc:creator>
      <pubDate>Sun, 22 Feb 2026 02:15:34 +0000</pubDate>
      <link>https://dev.to/gowithsuraj/today-i-debugged-a-monorepo-issue-while-working-with-nx-and-turborepo-20ll</link>
      <guid>https://dev.to/gowithsuraj/today-i-debugged-a-monorepo-issue-while-working-with-nx-and-turborepo-20ll</guid>
      <description>&lt;p&gt;Today I debugged a monorepo issue while working with Nx and Turborepo.&lt;/p&gt;

&lt;p&gt;Lesson:&lt;br&gt;
Setting up a shared TypeScript package correctly (exports + workspace linking) matters more than the tool you pick.&lt;/p&gt;

&lt;p&gt;[&lt;a href="https://srjsilwal.hashnode.dev/switching-from-nx-to-turborepo-for-easier-shared-package-setup" rel="noopener noreferrer"&gt;https://srjsilwal.hashnode.dev/switching-from-nx-to-turborepo-for-easier-shared-package-setup&lt;/a&gt;]&lt;/p&gt;

&lt;h1&gt;
  
  
  Turborepo #Nx #Monorepo #TypeScript #NodeJS #BackendDev
&lt;/h1&gt;

</description>
      <category>architecture</category>
      <category>javascript</category>
      <category>tooling</category>
      <category>typescript</category>
    </item>
    <item>
      <title>title: What I Learned Today: Microservices, Nx Monorepo, and Custom Error Handling in Becodemy Ecommerce

canonicalUrl: https://srjsilwal.hashnode.dev/what-i-learned-today-microservices-nx-monorepo-and-custom-error-handling</title>
      <dc:creator>suraj silwal</dc:creator>
      <pubDate>Sat, 14 Feb 2026 04:41:44 +0000</pubDate>
      <link>https://dev.to/gowithsuraj/title-what-i-learned-today-microservices-nx-monorepo-and-custom-error-handling-in-becodemy-1poh</link>
      <guid>https://dev.to/gowithsuraj/title-what-i-learned-today-microservices-nx-monorepo-and-custom-error-handling-in-becodemy-1poh</guid>
      <description>&lt;div class="crayons-card c-embed text-styles text-styles--secondary"&gt;
    &lt;div class="c-embed__content"&gt;
      &lt;div class="c-embed__body flex items-center justify-between"&gt;
        &lt;a href="https://srjsilwal.hashnode.dev/what-i-learned-today-microservices-nx-monorepo-and-custom-error-handling" rel="noopener noreferrer" class="c-link fw-bold flex items-center"&gt;
          &lt;span class="mr-2"&gt;srjsilwal.hashnode.dev&lt;/span&gt;
          

        &lt;/a&gt;
      &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;


</description>
    </item>
  </channel>
</rss>
