<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://blog.ashish.pro</loc>
    <lastmod>2026-09-21T00:09:29.023Z</lastmod>
    <changefreq>always</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/how-whatsapp-works-without-internet-offline-messaging-sync</loc>
    <lastmod>2026-05-31T11:19:06.946Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/how-instagram-stores-reels-photos-drafts-behind-the-scenes</loc>
    <lastmod>2026-05-31T11:41:17.078Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/expo-router-vs-react-navigation-2026-setup-dx-scale</loc>
    <lastmod>2026-05-22T23:51:56.427Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/expo-router-architecture-large-apps-feeds-realtime-offline</loc>
    <lastmod>2026-05-22T23:52:49.871Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/jwt-authentication-nodejs-explained</loc>
    <lastmod>2026-05-10T11:48:07.955Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/sessions-jwt-cookies-authentication-nodejs</loc>
    <lastmod>2026-05-10T11:44:06.404Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/rest-api-design-expressjs</loc>
    <lastmod>2026-05-10T11:42:16.685Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/handling-file-uploads-express-multer</loc>
    <lastmod>2026-05-10T11:40:42.608Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/storing-uploading-serving-files-express</loc>
    <lastmod>2026-05-10T11:39:16.776Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/url-parameters-vs-query-strings-expressjs</loc>
    <lastmod>2026-05-10T11:36:58.296Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/what-is-middleware-expressjs</loc>
    <lastmod>2026-05-10T11:35:15.622Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/creating-routes-handling-requests-express</loc>
    <lastmod>2026-05-10T11:33:39.191Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/why-nodejs-is-perfect-fast-web-apps</loc>
    <lastmod>2026-05-10T11:31:47.062Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/linux-filesystem-deep-dive-under-the-hood</loc>
    <lastmod>2026-05-10T12:02:06.790Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/async-code-nodejs-callbacks-promises</loc>
    <lastmod>2026-05-10T11:30:06.837Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/blocking-vs-non-blocking-code-nodejs</loc>
    <lastmod>2026-05-10T11:28:20.083Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/how-nodejs-handles-multiple-requests-single-thread</loc>
    <lastmod>2026-05-10T11:27:00.552Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/nodejs-event-loop-explained</loc>
    <lastmod>2026-05-10T11:23:33.436Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/setup-first-nodejs-app-step-by-step</loc>
    <lastmod>2026-05-10T11:20:20.099Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/what-is-nodejs-javascript-server-explained</loc>
    <lastmod>2026-05-10T11:17:47.397Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/javascript-error-handling-try-catch-finally</loc>
    <lastmod>2026-03-26T15:52:17.655Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/javascript-string-methods-polyfills</loc>
    <lastmod>2026-03-26T15:51:37.936Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/how-to-flatten-an-array-in-javascript-multiple-methods-explained</loc>
    <lastmod>2026-03-26T15:50:32.338Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/map-and-set-in-javascript</loc>
    <lastmod>2026-03-26T15:49:36.269Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/javascript-modules-explained-import-and-export-made-simple</loc>
    <lastmod>2026-03-26T15:46:54.653Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/javascript-destructuring-explained</loc>
    <lastmod>2026-03-26T15:43:44.714Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/spread-vs-rest-operators-in-javascript</loc>
    <lastmod>2026-03-26T15:45:39.377Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/template-literals-in-javascript-the-modern-way-to-work-with-strings</loc>
    <lastmod>2026-03-26T15:40:30.595Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/javascript-new-keyword-explained</loc>
    <lastmod>2026-03-26T15:39:11.504Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/javascript-this-keyword-explained</loc>
    <lastmod>2026-03-26T15:37:28.413Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/javascript-promises-explained</loc>
    <lastmod>2026-03-26T15:35:10.464Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/async-await-javascript-guide</loc>
    <lastmod>2026-03-26T15:36:27.125Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/synchronous-vs-asynchronous-javascript</loc>
    <lastmod>2026-03-26T15:30:13.578Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/javascript-callbacks-explained</loc>
    <lastmod>2026-03-26T15:33:19.640Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/understanding-object-oriented-programming-in-javascript</loc>
    <lastmod>2026-03-13T14:56:49.478Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/this-call-apply-and-bind-in-javascript</loc>
    <lastmod>2026-03-13T14:56:30.533Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/understanding-objects-in-javascript</loc>
    <lastmod>2026-03-13T14:55:41.437Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/array-methods-you-must-know</loc>
    <lastmod>2026-03-13T14:08:27.482Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/javascript-arrays-101</loc>
    <lastmod>2026-03-13T14:54:25.260Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/arrow-functions-in-javascript-a-simpler-way-to-write-functions</loc>
    <lastmod>2026-03-13T14:53:49.560Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/function-declaration-vs-function-expression-difference</loc>
    <lastmod>2026-03-13T14:53:26.810Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/control-flow-in-javascript-if-else-and-switch-explained</loc>
    <lastmod>2026-03-13T14:53:11.670Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/javascript-operators-the-basics-you-need-to-know</loc>
    <lastmod>2026-03-13T14:52:56.639Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/understanding-variables-and-data-types-in-javascript</loc>
    <lastmod>2026-03-13T14:52:33.875Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/css-selectors-101-targeting-elements-with-precision</loc>
    <lastmod>2026-01-30T21:07:24.761Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/how-browser-works</loc>
    <lastmod>2026-01-25T18:30:00.000Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/html-tags-and-elements</loc>
    <lastmod>2026-01-30T20:59:29.075Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/emmet-for-html-beginner-guide</loc>
    <lastmod>2026-01-30T20:58:15.351Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/tcp-three-way-handshake</loc>
    <lastmod>2026-01-21T18:30:00.000Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/tcp-vs-udp-explained</loc>
    <lastmod>2026-01-20T18:30:00.000Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/series/js</loc>
    <lastmod>2026-09-21T00:09:29.023Z</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/archive</loc>
    <lastmod>2026-09-21T00:09:29.023Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://blog.ashish.pro/recommendations</loc>
    <lastmod>2026-09-21T00:09:29.023Z</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.4</priority>
  </url>
</urlset>