<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://ultimatetools.hashnode.dev</loc>
    <lastmod>2026-09-21T14:08:42.465Z</lastmod>
    <changefreq>always</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/multi-region-tax-logic-in-typescript-gst-india-hst-by-province-canada-vat-uk-and-eu-reverse-charge-in-one-invoice-engine</loc>
    <lastmod>2026-05-12T04:55:50.307Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/reading-and-writing-pdf-metadata-with-pdf-lib-docinfo-fields-date-parsing-and-the-keywords-array</loc>
    <lastmod>2026-05-12T04:36:52.027Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/client-side-pdf-to-jpeg-with-pdfjs-canvas-render-loop-scale-factor-and-dynamic-import</loc>
    <lastmod>2026-05-12T04:34:55.666Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/removing-pages-from-a-pdf-with-pdf-lib-index-mapping-copypages-and-client-side-state-management</loc>
    <lastmod>2026-05-12T04:33:04.379Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-browser-image-format-converter-canvas-todataurl-mime-routing-and-transparent-background-handling</loc>
    <lastmod>2026-05-12T04:30:37.437Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-jpg-to-pdf-converter-in-the-browser-multi-file-upload-a4-page-fitting-and-pdf-lib-image-embedding</loc>
    <lastmod>2026-05-12T04:28:37.263Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-client-side-image-resizer-canvas-drawimage-scaling-pixel-accurate-output-and-aspect-ratio-lock</loc>
    <lastmod>2026-05-12T04:08:39.143Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-qr-code-scanner-in-the-browser-barcodedetector-api-camera-stream-and-image-upload-fallback-1</loc>
    <lastmod>2026-05-12T04:07:35.542Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-bmi-calculator-in-typescript-imperial-and-metric-formulas-who-classification-and-reverse-bmi</loc>
    <lastmod>2026-05-12T04:06:28.307Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-browser-random-number-generator-cryptographic-randomness-ranges-distributions-and-uniqueness-guarantees</loc>
    <lastmod>2026-05-11T10:43:18.815Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-browser-stopwatch-and-countdown-timer-high-resolution-timing-lap-tracking-and-worker-isolation</loc>
    <lastmod>2026-05-11T10:40:52.786Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-browser-base64-encoderdecoder-textencoder-binary-files-data-urls-and-url-safe-variants</loc>
    <lastmod>2026-05-11T10:39:16.378Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-live-markdown-editor-debounced-parsing-xss-sanitization-and-split-pane-layout</loc>
    <lastmod>2026-05-11T10:37:01.451Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-browser-color-picker-hsl-rgb-and-hex-conversion-canvas-gradient-sampling-and-clipboard-api</loc>
    <lastmod>2026-05-11T10:35:23.710Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-browser-snake-game-loop-with-requestanimationframe-collision-detection-and-input-buffering</loc>
    <lastmod>2026-05-11T10:32:25.762Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-browser-code-beautifier-prettier-integration-language-detection-and-diff-preview</loc>
    <lastmod>2026-05-11T10:30:43.236Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-browser-klondike-solitaire-card-data-model-drag-and-drop-move-validation-and-auto-complete-detection</loc>
    <lastmod>2026-05-11T10:28:57.951Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-json-to-csv-converter-flattening-nested-objects-header-extraction-and-rfc-4180-quoting</loc>
    <lastmod>2026-05-11T10:27:15.174Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-browser-hangman-game-word-selection-letter-state-machine-and-svg-scaffold-rendering</loc>
    <lastmod>2026-05-11T10:25:41.599Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-bmi-calculator-metric-and-imperial-formulas-health-category-ranges-and-ideal-weight-calculation</loc>
    <lastmod>2026-05-11T10:23:56.172Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-youtube-thumbnail-downloader-oembed-api-resolution-fallbacks-and-cors-proxy-pattern</loc>
    <lastmod>2026-05-11T10:20:16.534Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-2048-in-react-tile-merge-algorithm-swipe-gestures-and-animated-tile-transitions</loc>
    <lastmod>2026-05-11T10:18:10.372Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-case-converter-unicode-aware-text-transformation-for-camelcase-snakecase-kebab-case-and-title-case</loc>
    <lastmod>2026-05-11T10:16:37.294Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-lorem-ipsum-generator-source-text-word-sampling-and-paragraph-structure-algorithms</loc>
    <lastmod>2026-05-11T10:15:08.505Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-cryptographically-secure-password-generator-in-the-browser-csprng-entropy-bits-and-character-set-design</loc>
    <lastmod>2026-05-11T10:13:16.619Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-unit-converter-in-typescript-conversion-graphs-significant-figures-and-temperature-edge-cases</loc>
    <lastmod>2026-05-11T10:11:30.166Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-browser-based-invoice-generator-dynamic-line-items-tax-calculation-and-pdf-export-with-pdf-lib</loc>
    <lastmod>2026-05-11T10:10:01.417Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-an-emi-calculator-in-react-amortization-math-reverse-emi-and-prepayment-savings</loc>
    <lastmod>2026-05-11T10:07:14.151Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/browser-based-image-cropping-with-the-canvas-api-aspect-ratio-locking-drag-handles-and-client-side-png-export</loc>
    <lastmod>2026-05-10T13:50:58.495Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/client-side-bulk-qr-code-generation-csv-parsing-qr-code-styling-and-zip-downloads-without-a-server</loc>
    <lastmod>2026-05-10T13:50:35.393Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-multiplayer-bingo-in-nextjs-polling-architecture-card-generation-and-server-side-win-verification</loc>
    <lastmod>2026-05-10T10:49:31.775Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-watermark-image-tool-text-and-image-watermarks-opacity-control-and-tiled-layout-with-canvas-api</loc>
    <lastmod>2026-05-09T07:00:52.547Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-blur-image-tool-in-the-browser-css-backdrop-filter-canvas-convolution-and-adjustable-intensity</loc>
    <lastmod>2026-05-09T06:58:41.948Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-json-to-csv-converter-flat-and-nested-object-handling-header-extraction-and-rfc-4180-quoting</loc>
    <lastmod>2026-05-09T06:56:00.211Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-typing-speed-test-and-word-counter-in-react-wpm-calculation-live-diff-highlighting-and-text-metrics</loc>
    <lastmod>2026-05-09T06:54:06.963Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-browser-games-in-react-flappy-bird-game-loop-and-brick-breaker-collision-detection</loc>
    <lastmod>2026-05-09T06:52:31.570Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-bmi-calculator-with-imperial-and-metric-support-formula-category-thresholds-and-adjusted-bmi-for-athletes</loc>
    <lastmod>2026-05-09T06:50:26.824Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-client-side-image-resizer-canvas-drawimage-aspect-ratio-lock-dpi-metadata-and-blob-export</loc>
    <lastmod>2026-05-09T06:47:49.328Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-rotate-pdf-tool-in-the-browser-pdf-lib-page-rotation-degree-normalization-and-blob-download</loc>
    <lastmod>2026-05-09T06:45:09.885Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-qr-code-scanner-in-the-browser-barcodedetector-api-camera-stream-and-image-upload-fallback</loc>
    <lastmod>2026-05-09T06:42:51.337Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-wordle-in-react-daily-word-selection-letter-state-machine-and-keyboard-color-sync</loc>
    <lastmod>2026-05-09T06:37:37.620Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-rotate-and-crop-image-tool-canvas-transform-exif-stripping-aspect-ratio-presets-and-lossless-png-export</loc>
    <lastmod>2026-05-09T06:37:30.392Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-memory-card-matching-game-in-react-fisher-yates-shuffle-flip-state-machine-and-match-detection</loc>
    <lastmod>2026-05-09T06:37:24.071Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-bulk-qr-code-generator-from-csv-in-nextjs-papa-parse-qrcodejs-batch-and-client-side-zip</loc>
    <lastmod>2026-05-09T06:30:21.725Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-multi-language-code-beautifier-in-react-language-specific-option-sets-explicit-trigger-and-error-handling</loc>
    <lastmod>2026-05-07T23:54:40.265Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/google-sign-in-in-next-js-with-nextauth-v4-prismaadapter-jwt-sessions-and-extending-session-user-id</loc>
    <lastmod>2026-05-07T23:52:24.032Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-an-invoice-history-system-with-prisma-and-mariadb-in-next-js-storing-pdf-state-as-json-and-re-download</loc>
    <lastmod>2026-05-07T15:27:42.371Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-drag-to-reorder-list-in-react-without-a-library-html5-drag-api-visual-feedback-and-a-zustand-store</loc>
    <lastmod>2026-05-07T15:25:07.157Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-qr-code-generator-with-14-content-types-in-next-js-wifi-vcard-url-and-event-qr-codes</loc>
    <lastmod>2026-05-07T15:23:10.039Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/building-a-lorem-ipsum-generator-in-react-no-library-custom-word-pool-and-sentence-variation</loc>
    <lastmod>2026-05-07T15:21:00.978Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/archive</loc>
    <lastmod>2026-09-21T14:08:42.465Z</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://ultimatetools.hashnode.dev/recommendations</loc>
    <lastmod>2026-09-21T14:08:42.465Z</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.4</priority>
  </url>
</urlset>