<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>https://shahriyar.dev</loc>
<lastmod>2026-06-27T10:59:25.365Z</lastmod>
<changefreq>monthly</changefreq>
<priority>1</priority>
</url>
<url>
<loc>https://shahriyar.dev/blog</loc>
<lastmod>2026-06-27T10:59:25.365Z</lastmod>
<changefreq>weekly</changefreq>
<priority>0.9</priority>
</url>
<url>
<loc>https://shahriyar.dev/blog/the-hidden-power-of-useeffect-s-return-function</loc>
<lastmod>2026-06-26T08:07:23.281Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://shahriyar.dev/blog/implement-a-manual-dark-mode-toggle-in-your-tailwind-css-site-with-a-custom-react-hook</loc>
<lastmod>2026-06-27T01:24:53.391Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://shahriyar.dev/blog/the-hidden-danger-in-your-react-components-why-every-useeffect-needs-a-cleanup-function</loc>
<lastmod>2026-06-26T10:24:44.823Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://shahriyar.dev/blog/building-a-dynamic-star-rating-component-in-react-with-tailwind-css-and-react-icons</loc>
<lastmod>2026-06-27T07:16:17.659Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://shahriyar.dev/blog/the-two-line-nginx-fix-that-brings-your-websocket-backend-online</loc>
<lastmod>2026-06-26T08:47:35.616Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://shahriyar.dev/blog/deploy-like-a-developer-zero-config-deployment-from-your-terminal-with-vercel-cli</loc>
<lastmod>2026-06-25T15:29:09.863Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://shahriyar.dev/blog/from-localhost-to-production-your-complete-node-js-express-deployment-checklist</loc>
<lastmod>2026-06-27T00:03:42.795Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://shahriyar.dev/blog/automate-secure-cookie-handling-across-environments-using-node-env</loc>
<lastmod>2026-06-27T08:00:50.887Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://shahriyar.dev/blog/persist-react-state-like-a-pro-building-a-reusable-uselocalstate-hook</loc>
<lastmod>2026-06-26T12:35:58.292Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://shahriyar.dev/blog/using-deepseek-as-a-backend-for-claude-code</loc>
<lastmod>2026-06-26T09:35:28.725Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://shahriyar.dev/blog/css-flexbox-vs-grid-when-to-use-which-with-visuals</loc>
<lastmod>2026-06-26T04:25:55.744Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://shahriyar.dev/blog/multi-stage-dockerfile-for-bun-next-js-prisma</loc>
<lastmod>2026-06-27T06:19:34.318Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://shahriyar.dev/blog/better-auth-jwks-jwt-verification-a-complete-guide</loc>
<lastmod>2026-06-26T23:00:19.450Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://shahriyar.dev/blog/10-beginner-friendly-javascript-coding-problem-and-solution-code</loc>
<lastmod>2026-06-27T04:45:21.873Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://shahriyar.dev/blog/setting-up-better-auth-with-mongodb-in-your-next-js-application</loc>
<lastmod>2026-06-27T02:37:06.267Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://shahriyar.dev/blog/best-open-source-alternatives-to-popular-saas-tools</loc>
<lastmod>2026-06-27T10:14:40.904Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://shahriyar.dev/blog/how-to-fix-a-broken-rollup-build-with-a-simple-package-json-override</loc>
<lastmod>2026-06-26T09:58:26.114Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://shahriyar.dev/blog/how-to-remove-node-modules-from-a-github-repository-a-complete-guide</loc>
<lastmod>2026-06-27T10:28:43.879Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://shahriyar.dev/blog/artificial-intelligence-in-content-creation</loc>
<lastmod>2026-06-27T07:21:45.459Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>https://shahriyar.dev/blog/server-components-vs-client-components-when-to-actually-use-each</loc>
<lastmod>2026-06-27T07:47:51.657Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.8</priority>
</url>
</urlset>
