<?xml version="1.0" encoding="UTF-8"?>
<!--
  2026-09-06: hand-maintained, deliberately. A generated sitemap would be
  better if the app had many crawlable URLs, but it doesn't — see below.

  Only routes that (a) a logged-out visitor can actually reach and (b) have
  their own URL are listed. The three gates in App.tsx (showLandingAtRoot /
  showAuthGateAtRoot / showShoppingChoiceAtRoot) are all scoped to
  pathname === "/", so /about, /faq and /browse are open. All catalogue GETs
  in backend/src/routes/catalogue.ts are public — no requireAuth — so a
  rendering crawler gets real data on /browse.

  2026-09-06 (later the same day): the twenty-one /shop/<slug> URLs below are
  new. Catalogues had no URLs at all until Catalog.slug was added — see that
  field's comment in schema.prisma. They are also now linked from the brand
  name on /browse as real anchors, so crawling reaches them independently of
  this file.

  NOT LISTED, and why:
  - /shop/miscellaneous. It exists and works, but "Miscellaneous" is a
    junk-drawer name nobody searches, and a weak page in a sitemap dilutes
    the ones that matter. Chitra: "would anyone just go checking
    miscelleneous? do we need to do it?" — no.
  - /shop/green-pharmacy-ayurvedic. Merged into /shop/green-pharmacy on
    2026-09-06 (migration 20260906140000_merge_green_pharmacy) — one brand
    with two ranges was two competing URLs. The catalogue is hidden, not
    deleted, so the slug still exists but must not be advertised.
  (The Body Shop was removed from the catalogue list entirely on 2026-09-06
  and has no slug — Chitra: "i removed body shop and i do not need it.")
  - Seasonal edits (/browse/diwali, /browse/navaratri, /browse/ganapati,
    /browse/raksha-bandhan). Still not listed, but the reasoning changed
    twice on 2026-09-06 and the current reason is the only one that stands:

    Originally excluded because nothing linked to them and three of the four
    held invented seed data. Both of those are now fixed — the Seasonal chip
    row is back on Home as real <a href> anchors, so Google can reach them by
    crawling, and the sixteen seed products are deleted (migration
    20260906120000_remove_seed_products).

    They stay out because their CONTENT is ops-controlled and turns over
    every festival. A sitemap entry is a promise that a URL is worth
    indexing; an edit that is full in October and empty in February is not.
    Crawling will find them from Home whenever they have something in them,
    which is the behaviour we actually want — no hand-maintenance here every
    season, and no dead festival URLs left advertised in the off-season.

    Revisit only if a specific edit becomes permanent and stays full.

  2026-09-06 (Step 3): the eight guide pages below are hand-written HTML in
  public/, not React routes. They are the only pages on the site that are
  fully readable WITHOUT JavaScript — the app renders client-side, so these
  are what a first-pass crawler, an AI answer engine or a link preview can
  actually read. Priority 0.8, above the catalogue pages, because they are
  the pages written to rank.


  lastmod is the date the page's content last changed, not the date of this
  file — bumping every entry on every deploy trains crawlers to ignore it.
-->
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

  <url>
    <loc>https://bazaar-buddy.com/</loc>
    <lastmod>2026-09-04</lastmod>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
  </url>

  <url>
    <loc>https://bazaar-buddy.com/browse</loc>
    <lastmod>2026-09-04</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.9</priority>
  </url>

  <url>
    <loc>https://bazaar-buddy.com/about</loc>
    <lastmod>2026-08-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>

  <url>
    <loc>https://bazaar-buddy.com/faq</loc>
    <lastmod>2026-08-16</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <!-- 2026-09-06: the founder page. Priority 0.8, level with /about and the
       guide pages, because "who actually is this company" is a question
       every first-time visitor asks and no page on the site answered until
       today. It is static HTML in public/, so unlike /about it is readable
       without JavaScript — which is why it exists separately at all rather
       than only as the section inside /about. -->
  <url>
    <loc>https://bazaar-buddy.com/about-bazaarbuddy-founder/</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>

  <url>
    <loc>https://bazaar-buddy.com/shop/chitale-bandhu</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/shop/hawkins</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/shop/haldirams</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/shop/vinod-cookware</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/shop/nazakat</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/shop/indian-musical-instruments</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/shop/indian-sports-gear</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/shop/baidyanath-ayurvedic</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/shop/athavales</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/shop/mtr-foods</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/shop/green-pharmacy</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/shop/gits</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/shop/pethe-foods</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/shop/sakas-foods</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/shop/pallavi-masale</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/shop/pumpky</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/shop/kanchans-creation</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/shop/budhani-bros-waferwala</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/shop/ganapati-special</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/shop/agraj-food-processors</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/shop/ganesh-bhel</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>

  <url>
    <loc>https://bazaar-buddy.com/personal-shopper-in-india/</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/shipping-from-india-to-usa-cost/</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/diwali-gifts-from-india-to-usa/</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/indian-sweets-shipped-to-usa/</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/buy-indian-musical-instruments-usa/</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/bulk-return-gifts-from-india/</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/indian-clothes-stitched-to-measure/</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/cricket-bats-sports-gear-from-india/</loc>
    <lastmod>2026-09-06</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.8</priority>
  </url>


  <!-- 2026-09-07: the three legal pages. Low priority deliberately — they
       exist because Meta requires a privacy policy URL for an ad account,
       Stripe expects terms and a refund policy on a live account, and UK
       customers bring UK GDPR. Nobody searches for them, so they must not
       compete with the guide pages for crawl attention; they just need to be
       findable and linked. -->
  <url>
    <loc>https://bazaar-buddy.com/terms/</loc>
    <lastmod>2026-09-07</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/privacy/</loc>
    <lastmod>2026-09-07</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://bazaar-buddy.com/refund-policy/</loc>
    <lastmod>2026-09-07</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.4</priority>
  </url>
</urlset>
