<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://blog.saumyagrawal.in</loc>
    <lastmod>2026-06-08T20:19:34.379Z</lastmod>
    <changefreq>always</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/one-person-one-vote-the-technical-struggle-of-web-poll-integrity</loc>
    <lastmod>2026-05-16T12:25:10.488Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/express-js-i-stopped-fighting-node-s-http-module-and-everything-got-easier</loc>
    <lastmod>2026-05-08T16:17:00.000Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/where-do-uploaded-files-actually-go-a-question-i-should-have-asked-sooner</loc>
    <lastmod>2026-05-08T07:44:00.000Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/express-middleware-the-stuff-that-runs-before-your-route-does-anything</loc>
    <lastmod>2026-05-08T02:03:00.000Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/node-js-how-javascript-escaped-the-browser-and-why-that-matters</loc>
    <lastmod>2026-05-07T19:00:00.000Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/node-js-runs-on-one-thread-here-is-how-it-handles-thousands-of-users-anyway</loc>
    <lastmod>2026-05-07T15:00:00.000Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/url-parameters-and-query-strings-the-two-ways-your-url-talks-to-your-server</loc>
    <lastmod>2026-05-07T13:00:00.000Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/node-js-under-the-hood-why-it-is-fast-and-when-it-is-not</loc>
    <lastmod>2026-05-07T10:46:47.565Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/file-uploads-in-express-why-they-do-not-just-work-out-of-the-box</loc>
    <lastmod>2026-05-06T16:05:52.793Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/jwt-authentication-i-locked-myself-out-of-my-own-api-and-learned-how-tokens-work</loc>
    <lastmod>2026-05-06T15:57:51.588Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/i-installed-node-js-and-accidentally-became-a-backend-developer</loc>
    <lastmod>2026-05-06T00:25:53.464Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/i-tried-to-read-three-files-at-once-and-my-code-became-a-staircase</loc>
    <lastmod>2026-05-06T00:14:55.954Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/rest-apis-what-your-frontend-is-actually-saying-to-your-backend</loc>
    <lastmod>2026-05-05T14:09:35.217Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/my-server-was-freezing-and-i-did-not-know-why-then-i-learned-what-blocking-means</loc>
    <lastmod>2026-05-05T13:13:06.514Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/sessions-cookies-and-jwts-how-i-stopped-confusing-authentication-with-identity</loc>
    <lastmod>2026-05-04T23:48:08.988Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/the-event-loop-why-your-node-js-code-doesn-t-just-run-top-to-bottom</loc>
    <lastmod>2026-05-04T23:21:55.219Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/mongodb-is-great-mongoose-makes-it-better</loc>
    <lastmod>2026-04-24T05:00:00.000Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/the-everything-is-a-file-tour-of-linux</loc>
    <lastmod>2026-04-21T12:40:00.000Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/error-handling</loc>
    <lastmod>2026-03-26T07:18:50.991Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/callback-functions</loc>
    <lastmod>2026-03-25T16:44:00.219Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/the-new-keyword</loc>
    <lastmod>2026-03-25T16:11:48.568Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/destructuring-in-js</loc>
    <lastmod>2026-03-25T06:36:00.000Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/map-set</loc>
    <lastmod>2026-03-24T20:32:00.000Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/async-javascript</loc>
    <lastmod>2026-03-23T19:52:00.000Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/string-methods</loc>
    <lastmod>2026-03-23T17:00:00.000Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/javascript-modules</loc>
    <lastmod>2026-03-22T19:57:03.095Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/the-developer-s-guide-to-flattening-arrays-in-javascript</loc>
    <lastmod>2026-03-22T18:05:29.915Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/template-literals</loc>
    <lastmod>2026-03-22T06:00:00.000Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/the-this-keyword</loc>
    <lastmod>2026-03-21T05:00:00.000Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/spread-rest</loc>
    <lastmod>2026-03-19T14:36:00.000Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/async-await</loc>
    <lastmod>2026-03-17T13:15:00.000Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/from-variables-to-objects-understanding-oop-in-javascript</loc>
    <lastmod>2026-03-13T08:36:45.196Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/mastering-the-context-a-guide-to-this-call-apply-and-bind</loc>
    <lastmod>2026-03-12T19:24:55.851Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/cutting-the-boilerplate-with-arrow-functions</loc>
    <lastmod>2026-03-12T09:04:18.104Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/js-functions-demystified-declarations-vs-expressions</loc>
    <lastmod>2026-03-12T07:44:44.369Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/under-the-hood-how-node-js-actually-runs-your-code</loc>
    <lastmod>2026-03-11T10:57:09.145Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/stop-using-100-variables-how-javascript-objects-save-your-sanity</loc>
    <lastmod>2026-03-10T14:11:30.219Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/beyond-window-understanding-global-and-globalthis-in-javascript</loc>
    <lastmod>2026-03-10T09:31:52.465Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/level-up-your-javascript-a-practical-guide-to-array-manipulation</loc>
    <lastmod>2026-03-09T17:12:01.757Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/the-ultimate-guide-to-javascript-arrays-for-beginners</loc>
    <lastmod>2026-03-09T08:59:22.733Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/javascript-control-flow-if-else-switch-and-ternary-operators-explained</loc>
    <lastmod>2026-03-07T12:23:44.042Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/js-operators-the-hidden-mechanics-of-every-web-app</loc>
    <lastmod>2026-03-07T07:57:19.359Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/javascript-variable-and-data-types</loc>
    <lastmod>2026-03-06T19:03:20.078Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/javascript-promises-explained-through-a-guy-trying-to-go-viral</loc>
    <lastmod>2026-03-01T11:36:33.209Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/javascript-polyfills-writing-array-methods-from-scratch</loc>
    <lastmod>2026-02-23T12:49:15.125Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/understanding-network-hardware</loc>
    <lastmod>2026-02-14T10:49:40.088Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/the-browser-blueprint</loc>
    <lastmod>2026-02-13T19:16:16.087Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/dns-demystified-using-dig-to-trace-the-internets-phonebook</loc>
    <lastmod>2026-02-13T15:10:35.071Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/never-lose-a-byte-a-deep-dive-into-tcp-working</loc>
    <lastmod>2026-02-13T11:10:39.984Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/fast-or-flawless-choosing-between-tcp-and-udp</loc>
    <lastmod>2026-02-13T07:50:50.090Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/speaking-css-learning-the-language-of-element-selection</loc>
    <lastmod>2026-02-10T13:31:57.734Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/under-the-hood-the-elegant-geometry-of-git-internals</loc>
    <lastmod>2026-02-10T09:55:52.648Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/master-emmet-the-essential-guide-to-high-speed-web-development</loc>
    <lastmod>2026-02-08T09:57:18.776Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/html-the-lego-bricks-of-the-internet</loc>
    <lastmod>2026-02-02T20:17:27.344Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/why-version-control-is-not-optional</loc>
    <lastmod>2026-01-31T14:48:51.108Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/curling-your-brain</loc>
    <lastmod>2026-01-30T12:07:41.066Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/making-peace-with-git</loc>
    <lastmod>2026-01-29T17:58:05.479Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/dns-records-the-invisible-infrastructure-behind-every-website-visit</loc>
    <lastmod>2026-01-29T13:29:12.769Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/series/simply-js</loc>
    <lastmod>2026-06-08T20:19:34.379Z</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/archive</loc>
    <lastmod>2026-06-08T20:19:34.379Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/recommendations</loc>
    <lastmod>2026-06-08T20:19:34.379Z</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.4</priority>
  </url>
</urlset>