<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://michaels.bio/</loc>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>https://michaels.bio/projects</loc>
    <changefreq>weekly</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://michaels.bio/packages</loc>
    <changefreq>monthly</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://michaels.bio/about</loc>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://michaels.bio/blog</loc>
    <changefreq>weekly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://michaels.bio/rss.xml</loc>
    <changefreq>weekly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://michaels.bio/contact</loc>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
  </url>
  <url>
    <loc>https://michaels.bio/ai-assistant</loc>
    <changefreq>monthly</changefreq>
    <priority>0.5</priority>
  </url>
  <url>
    <loc>https://michaels.bio/legal</loc>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
  <!--
    Dynamic project and blog post URLs are generated at runtime from the database:
      /projects/{slug}  — e.g. /projects/taskflow-ai-project-manager
      /blog/{slug}      — e.g. /blog/fullstack-saas-supabase-zai-2025

    For a fully dynamic sitemap, deploy the Edge Function below to Supabase.
    It queries portfolio_projects (WHERE status='published') and blog_posts
    (WHERE published=true), then returns XML with all slug URLs.

    EDGE FUNCTION: supabase/functions/sitemap-dynamic/index.ts

    Add to supabase/config.toml:
      [functions.sitemap-dynamic]
      schedule = "0 6 * * *"  # Regenerate daily at 6 AM UTC

    Then point your sitemap index to: https://YOUR_PROJECT.supabase.co/functions/v1/sitemap-dynamic
  -->
</urlset>
