<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://helloashish.hashnode.dev</loc>
    <lastmod>2026-10-16T08:50:01.854Z</lastmod>
    <changefreq>always</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/how-http-2-made-five-frontend-performance-best-practices-obsolete</loc>
    <lastmod>2026-06-09T00:30:23.212Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/react-lazy-route-code-splitting-explained</loc>
    <lastmod>2026-06-07T00:30:13.773Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/skeleton-screens-vs-spinners-perceived-load-time</loc>
    <lastmod>2026-06-05T00:30:26.780Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/srcset-and-sizes-how-the-browser-picks-images</loc>
    <lastmod>2026-06-03T00:30:08.703Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/what-loading-lazy-does-browser-lazy-loading</loc>
    <lastmod>2026-06-01T00:30:20.919Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/lighthouse-100-and-still-crashes-oom-explained</loc>
    <lastmod>2026-05-30T00:30:37.400Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/how-to-answer-frontend-performance-questions-in-interviews</loc>
    <lastmod>2026-05-28T00:30:11.466Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/frontend-performance-series-hub-and-quick-reference-guide</loc>
    <lastmod>2026-05-26T00:30:24.873Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/react-memory-leaks-closures-and-object-graphs</loc>
    <lastmod>2026-05-24T00:30:08.129Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/javascript-gc-pauses-allocation-rate-frontend-jank</loc>
    <lastmod>2026-05-22T00:30:11.855Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/images-fonts-third-party-scripts-lcp-and-cls</loc>
    <lastmod>2026-05-20T00:30:10.576Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/tree-shaking-and-code-splitting-in-javascript</loc>
    <lastmod>2026-05-18T00:30:16.644Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/web-workers-in-react-heavy-work-off-main-thread</loc>
    <lastmod>2026-05-16T00:30:07.291Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/dom-performance-on-mobile-lab-vs-real-device-reality</loc>
    <lastmod>2026-05-10T00:30:16.813Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/react-re-rendering-when-and-why-component-trees-update</loc>
    <lastmod>2026-05-08T00:30:08.622Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/react-memo-usememo-usecallback-when-they-help-vs-hurt</loc>
    <lastmod>2026-05-06T00:30:07.804Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/react-concurrent-features-urgent-vs-deferred-ui-updates</loc>
    <lastmod>2026-05-04T00:30:16.987Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/react-list-virtualization-pagination-vs-virtual-scroll</loc>
    <lastmod>2026-05-02T00:30:07.342Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/lottie-how-airbnb-replaced-gifs-with-json-animation</loc>
    <lastmod>2026-04-30T00:30:13.531Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/long-tasks-and-main-thread-blocking-breaking-up-the-work</loc>
    <lastmod>2026-04-28T00:30:40.417Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/how-aadhaar-deduplicates-biometrics-at-billion-scale</loc>
    <lastmod>2026-04-26T00:30:18.101Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/building-offline-first-web-apps-with-localstorage-a-practical-guide</loc>
    <lastmod>2026-04-25T13:46:33.238Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/the-wifi-qr-code-format-decoded-build-one-yourself-in-30-lines</loc>
    <lastmod>2026-04-25T13:46:28.655Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/ocr-in-the-browser-how-tesseractjs-makes-pdf-text-extraction-free</loc>
    <lastmod>2026-04-25T13:46:23.749Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/why-client-side-pdf-tools-beat-server-uploads-privacy-speed-and-cost</loc>
    <lastmod>2026-04-25T13:46:18.635Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/a-developers-guide-to-image-formats-jpg-png-webp-avif-and-heic</loc>
    <lastmod>2026-04-25T13:46:14.141Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/building-slugs-that-dont-break-unicode-diacritics-and-edge-cases</loc>
    <lastmod>2026-04-25T13:46:09.113Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/naming-things-when-to-use-camelcase-snakecase-kebab-case-and-pascalcase</loc>
    <lastmod>2026-04-25T13:46:02.793Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/jsonpath-cheat-sheet-querying-nested-json-without-lodash</loc>
    <lastmod>2026-04-25T13:45:57.299Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/whats-actually-inside-a-jwt-a-visual-walk-through</loc>
    <lastmod>2026-04-25T13:29:58.631Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/from-json-to-typescript-five-ways-to-stop-hand-writing-interfaces</loc>
    <lastmod>2026-04-25T13:28:25.638Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/why-rapido-uses-a-static-pin-rapid-otp-trade-offs</loc>
    <lastmod>2026-04-24T00:30:24.664Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/meta-stylex-moving-css-in-js-from-runtime-to-build-time</loc>
    <lastmod>2026-04-22T00:30:16.446Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/jsonstringify-does-some-things-you-probably-dont-expect</loc>
    <lastmod>2026-04-21T17:18:02.987Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/stop-writing-typescript-interfaces-by-hand-for-api-responses</loc>
    <lastmod>2026-04-21T17:17:59.380Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/jsonpath-the-practical-guide-to-querying-nested-json-without-writing-loops</loc>
    <lastmod>2026-04-21T17:17:55.702Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/jsonparse-errors-what-each-message-actually-means</loc>
    <lastmod>2026-04-21T17:17:46.753Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/drm-pip-loophole-how-picture-in-picture-bypasses-drm</loc>
    <lastmod>2026-04-20T00:30:16.599Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/archive</loc>
    <lastmod>2026-10-16T08:50:01.854Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://helloashish.hashnode.dev/recommendations</loc>
    <lastmod>2026-10-16T08:50:01.854Z</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.4</priority>
  </url>
</urlset>