
<?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>https://calme.ai/</loc>
    <lastmod>2025-01-20</lastmod>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
    <xhtml:link rel="alternate" hreflang="en" href="https://calme.ai/" />
    <xhtml:link rel="alternate" hreflang="ar" href="https://calme.ai/" />
  </url>
  <url>
    <loc>https://calme.ai/community</loc>
    <lastmod>2025-01-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
    <xhtml:link rel="alternate" hreflang="en" href="https://calme.ai/community" />
    <xhtml:link rel="alternate" hreflang="ar" href="https://calme.ai/community" />
  </url>
  <url>
    <loc>https://calme.ai/contact</loc>
    <lastmod>2025-01-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <xhtml:link rel="alternate" hreflang="en" href="https://calme.ai/contact" />
    <xhtml:link rel="alternate" hreflang="ar" href="https://calme.ai/contact" />
  </url>
  <url>
    <loc>https://calme.ai/postpartum-depression</loc>
    <lastmod>2025-01-20</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
    <xhtml:link rel="alternate" hreflang="en" href="https://calme.ai/postpartum-depression" />
    <xhtml:link rel="alternate" hreflang="ar" href="https://calme.ai/postpartum-depression" />
  </url>
</urlset>
</tml>

Now let's add react-helmet-async for better SEO management:

<lov-add-dependency>react-helmet-async@latest</lov-add-dependency>

Let's update the main App.tsx to include the HelmetProvider:

<lov-write file_path="src/App.tsx">
import { Toaster } from "@/components/ui/toaster";
import { Toaster as Sonner } from "@/components/ui/sonner";
import { TooltipProvider } from "@/components/ui/tooltip";
import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
import { BrowserRouter, Routes, Route } from "react-router-dom";
import { HelmetProvider } from "react-helmet-async";
import { DirectionProvider } from "@/contexts/DirectionContext";
import ErrorBoundary from "@/components/ErrorBoundary";
import "./i18n/config";
import Index from "./pages/Index";
import Community from "./pages/Community";
import Contact from "./pages/Contact";
import PostpartumDepression from "./pages/PostpartumDepression";
import NotFound from "./pages/NotFound";
import ScrollToTop from "./components/ScrollToTop";

const queryClient = new QueryClient({
  defaultOptions: {
    queries: {
      retry: (failureCount, error) => {
        // Don't retry on 404s
        if (error && 'status' in error && error.status === 404) {
          return false;
        }
        return failureCount < 3;
      },
      staleTime: 5 * 60 * 1000, // 5 minutes
    },
  },
});

const App = () => (
  <HelmetProvider>
    <QueryClientProvider client={queryClient}>
      <DirectionProvider>
        <TooltipProvider>
          <ErrorBoundary>
            <Toaster />
            <Sonner />
            <BrowserRouter>
              <ScrollToTop />
              <Routes>
                <Route path="/" element={<Index />} />
                <Route path="/community" element={<Community />} />
                <Route path="/contact" element={<Contact />} />
                <Route path="/postpartum-depression" element={<PostpartumDepression />} />
                {/* ADD ALL CUSTOM ROUTES ABOVE THE CATCH-ALL "*" ROUTE */}
                <Route path="*" element={<NotFound />} />
              </Routes>
            </BrowserRouter>
          </ErrorBoundary>
        </TooltipProvider>
      </DirectionProvider>
    </QueryClientProvider>
  </HelmetProvider>
);

export default App;
