<?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-08-16T13:12:48.395Z</lastmod>
    <changefreq>always</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/i-got-tired-of-not-understanding-ai-jargon-here-s-what-actually-happens-when-you-hit-enter</loc>
    <lastmod>2026-06-30T23:00:12.792Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</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:08.918Z</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:08.067Z</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:07.382Z</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:35.282Z</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:25.925Z</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:51.510Z</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-07T17:54:17.683Z</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-24T13:59:47.530Z</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-21T13:15:40.865Z</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-25T19:35:14.269Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/map-set</loc>
    <lastmod>2026-03-26T05:39:24.928Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/async-javascript</loc>
    <lastmod>2026-03-25T20:30:32.399Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/string-methods</loc>
    <lastmod>2026-03-25T18:39:54.187Z</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-25T15:45:49.348Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/the-this-keyword</loc>
    <lastmod>2026-03-25T15:40:50.818Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/spread-rest</loc>
    <lastmod>2026-03-26T06:59:20.318Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/async-await</loc>
    <lastmod>2026-03-26T06:08:25.607Z</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-18T10:45:25.178Z</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:46:09.472Z</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-18T10:38:19.817Z</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-03-18T10:27:10.054Z</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-14T07:17:08.667Z</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/series/simply-js</loc>
    <lastmod>2026-08-16T13:12:48.395Z</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/archive</loc>
    <lastmod>2026-08-16T13:12:48.395Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://blog.saumyagrawal.in/recommendations</loc>
    <lastmod>2026-08-16T13:12:48.395Z</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.4</priority>
  </url>
</urlset>