<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml">
<url>
<loc>http://localhost:3000</loc>
<xhtml:link rel="alternate" hreflang="en" href="http://localhost:3000" />
<xhtml:link rel="alternate" hreflang="fa" href="http://localhost:3000/fa" />
<changefreq>monthly</changefreq>
<priority>1</priority>
</url>
<url>
<loc>http://localhost:3000/blog</loc>
<xhtml:link rel="alternate" hreflang="en" href="http://localhost:3000/blog" />
<xhtml:link rel="alternate" hreflang="fa" href="http://localhost:3000/fa/blog" />
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>http://localhost:3000/blog/framer-motion-orchestration-over-animation</loc>
<xhtml:link rel="alternate" hreflang="en" href="http://localhost:3000/blog/framer-motion-orchestration-over-animation" />
<xhtml:link rel="alternate" hreflang="fa" href="http://localhost:3000/fa/blog/framer-motion-orchestration-over-animation" />
<lastmod>2026-06-08T12:10:20.723Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>http://localhost:3000/blog/shipping-a-cybersecurity-saas-dashboard-under-load</loc>
<xhtml:link rel="alternate" hreflang="en" href="http://localhost:3000/blog/shipping-a-cybersecurity-saas-dashboard-under-load" />
<xhtml:link rel="alternate" hreflang="fa" href="http://localhost:3000/fa/blog/shipping-a-cybersecurity-saas-dashboard-under-load" />
<lastmod>2026-06-08T12:10:10.975Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>http://localhost:3000/blog/react-native-gestures-that-actually-feel-native</loc>
<xhtml:link rel="alternate" hreflang="en" href="http://localhost:3000/blog/react-native-gestures-that-actually-feel-native" />
<xhtml:link rel="alternate" hreflang="fa" href="http://localhost:3000/fa/blog/react-native-gestures-that-actually-feel-native" />
<lastmod>2026-06-08T12:09:50.395Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>http://localhost:3000/blog/state-without-tears-when-zustand-beats-redux</loc>
<xhtml:link rel="alternate" hreflang="en" href="http://localhost:3000/blog/state-without-tears-when-zustand-beats-redux" />
<xhtml:link rel="alternate" hreflang="fa" href="http://localhost:3000/fa/blog/state-without-tears-when-zustand-beats-redux" />
<lastmod>2026-06-08T12:09:40.309Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>http://localhost:3000/blog/headless-at-scale-strapi-and-payload-patterns</loc>
<xhtml:link rel="alternate" hreflang="en" href="http://localhost:3000/blog/headless-at-scale-strapi-and-payload-patterns" />
<xhtml:link rel="alternate" hreflang="fa" href="http://localhost:3000/fa/blog/headless-at-scale-strapi-and-payload-patterns" />
<lastmod>2026-06-08T12:09:22.704Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>http://localhost:3000/blog/taming-webgl-a-threejs-hero-that-doesnt-tank-your-lcp</loc>
<xhtml:link rel="alternate" hreflang="en" href="http://localhost:3000/blog/taming-webgl-a-threejs-hero-that-doesnt-tank-your-lcp" />
<xhtml:link rel="alternate" hreflang="fa" href="http://localhost:3000/fa/blog/taming-webgl-a-threejs-hero-that-doesnt-tank-your-lcp" />
<lastmod>2026-06-08T12:09:12.243Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>http://localhost:3000/blog/architecting-a-real-time-crypto-exchange-frontend</loc>
<xhtml:link rel="alternate" hreflang="en" href="http://localhost:3000/blog/architecting-a-real-time-crypto-exchange-frontend" />
<xhtml:link rel="alternate" hreflang="fa" href="http://localhost:3000/fa/blog/architecting-a-real-time-crypto-exchange-frontend" />
<lastmod>2026-06-08T12:09:06.199Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>http://localhost:3000/fa</loc>
<xhtml:link rel="alternate" hreflang="en" href="http://localhost:3000" />
<xhtml:link rel="alternate" hreflang="fa" href="http://localhost:3000/fa" />
<changefreq>monthly</changefreq>
<priority>1</priority>
</url>
<url>
<loc>http://localhost:3000/fa/blog</loc>
<xhtml:link rel="alternate" hreflang="en" href="http://localhost:3000/blog" />
<xhtml:link rel="alternate" hreflang="fa" href="http://localhost:3000/fa/blog" />
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<url>
<loc>http://localhost:3000/fa/blog/framer-motion-orchestration-over-animation</loc>
<xhtml:link rel="alternate" hreflang="en" href="http://localhost:3000/blog/framer-motion-orchestration-over-animation" />
<xhtml:link rel="alternate" hreflang="fa" href="http://localhost:3000/fa/blog/framer-motion-orchestration-over-animation" />
<lastmod>2026-06-08T12:10:20.723Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>http://localhost:3000/fa/blog/shipping-a-cybersecurity-saas-dashboard-under-load</loc>
<xhtml:link rel="alternate" hreflang="en" href="http://localhost:3000/blog/shipping-a-cybersecurity-saas-dashboard-under-load" />
<xhtml:link rel="alternate" hreflang="fa" href="http://localhost:3000/fa/blog/shipping-a-cybersecurity-saas-dashboard-under-load" />
<lastmod>2026-06-08T12:10:10.975Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>http://localhost:3000/fa/blog/react-native-gestures-that-actually-feel-native</loc>
<xhtml:link rel="alternate" hreflang="en" href="http://localhost:3000/blog/react-native-gestures-that-actually-feel-native" />
<xhtml:link rel="alternate" hreflang="fa" href="http://localhost:3000/fa/blog/react-native-gestures-that-actually-feel-native" />
<lastmod>2026-06-08T12:09:50.395Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>http://localhost:3000/fa/blog/state-without-tears-when-zustand-beats-redux</loc>
<xhtml:link rel="alternate" hreflang="en" href="http://localhost:3000/blog/state-without-tears-when-zustand-beats-redux" />
<xhtml:link rel="alternate" hreflang="fa" href="http://localhost:3000/fa/blog/state-without-tears-when-zustand-beats-redux" />
<lastmod>2026-06-08T12:09:40.309Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>http://localhost:3000/fa/blog/headless-at-scale-strapi-and-payload-patterns</loc>
<xhtml:link rel="alternate" hreflang="en" href="http://localhost:3000/blog/headless-at-scale-strapi-and-payload-patterns" />
<xhtml:link rel="alternate" hreflang="fa" href="http://localhost:3000/fa/blog/headless-at-scale-strapi-and-payload-patterns" />
<lastmod>2026-06-08T12:09:22.704Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>http://localhost:3000/fa/blog/taming-webgl-a-threejs-hero-that-doesnt-tank-your-lcp</loc>
<xhtml:link rel="alternate" hreflang="en" href="http://localhost:3000/blog/taming-webgl-a-threejs-hero-that-doesnt-tank-your-lcp" />
<xhtml:link rel="alternate" hreflang="fa" href="http://localhost:3000/fa/blog/taming-webgl-a-threejs-hero-that-doesnt-tank-your-lcp" />
<lastmod>2026-06-08T12:09:12.243Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<url>
<loc>http://localhost:3000/fa/blog/architecting-a-real-time-crypto-exchange-frontend</loc>
<xhtml:link rel="alternate" hreflang="en" href="http://localhost:3000/blog/architecting-a-real-time-crypto-exchange-frontend" />
<xhtml:link rel="alternate" hreflang="fa" href="http://localhost:3000/fa/blog/architecting-a-real-time-crypto-exchange-frontend" />
<lastmod>2026-06-08T12:09:06.199Z</lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
</urlset>
