<?xml version="1.0" encoding="UTF-8"?>
<!--
  The hand-maintained half of the sitemap: pages that exist because we wrote
  them, not because a row exists. Everything data-driven (works, authors,
  publishers — 1,195 URLs and growing) is generated by the API and served at
  /sitemaps/index.xml. Both are declared in robots.txt.

  Two rules this file has to keep.

  1. LIST FINAL URLS, NEVER REDIRECTS. It used to list /privacy.html and
     /terms.html; Cloudflare Pages 308s those to the extensionless form, so
     every crawl produced a "Page with redirect" in Search Console — the
     sitemap pointing at the wrong URL for the two pages the app stores
     require to be reachable.

  2. ONLY INDEXABLE PAGES. /browse and /search are noindex by design (faceted
     browse explodes combinatorially), so listing them would ask Google to
     index pages that tell it not to. The genre hubs are omitted for a
     different reason: not one work carries a genre yet, so they are real
     pages over an empty set. They go in when the classification work lands.

  lastmod is when the page's content last changed, not when this file was
  edited — a sitemap claiming everything changed today teaches crawlers to
  ignore the field.
-->
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://kitabi.in/</loc>
    <lastmod>2026-08-04</lastmod>
    <changefreq>daily</changefreq>
    <priority>1.0</priority>
  </url>

  <!-- Directories. Each lists real things and is the parent of a large set of
       generated URLs — the hub a crawler should meet before walking the 1,195
       in the generated sitemaps. -->
  <url>
    <loc>https://kitabi.in/lists</loc>
    <lastmod>2026-08-04</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://kitabi.in/languages</loc>
    <lastmod>2026-08-04</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://kitabi.in/translations</loc>
    <lastmod>2026-08-04</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://kitabi.in/authors</loc>
    <lastmod>2026-08-04</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://kitabi.in/publishers</loc>
    <lastmod>2026-08-04</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.7</priority>
  </url>

  <!-- The fourteen language hubs. A fixed set that changes only when the
       catalogue gains a language, so hand-listing them is honest, not lazy. -->
  <url><loc>https://kitabi.in/language/malayalam</loc><lastmod>2026-08-04</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url>
  <url><loc>https://kitabi.in/language/hindi</loc><lastmod>2026-08-04</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url>
  <url><loc>https://kitabi.in/language/tamil</loc><lastmod>2026-08-04</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url>
  <url><loc>https://kitabi.in/language/bengali</loc><lastmod>2026-08-04</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url>
  <url><loc>https://kitabi.in/language/marathi</loc><lastmod>2026-08-04</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url>
  <url><loc>https://kitabi.in/language/telugu</loc><lastmod>2026-08-04</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url>
  <url><loc>https://kitabi.in/language/kannada</loc><lastmod>2026-08-04</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url>
  <url><loc>https://kitabi.in/language/gujarati</loc><lastmod>2026-08-04</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url>
  <url><loc>https://kitabi.in/language/urdu</loc><lastmod>2026-08-04</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url>
  <url><loc>https://kitabi.in/language/odia</loc><lastmod>2026-08-04</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url>
  <url><loc>https://kitabi.in/language/punjabi</loc><lastmod>2026-08-04</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url>
  <url><loc>https://kitabi.in/language/assamese</loc><lastmod>2026-08-04</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url>
  <url><loc>https://kitabi.in/language/sanskrit</loc><lastmod>2026-08-04</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url>
  <url><loc>https://kitabi.in/language/english</loc><lastmod>2026-08-04</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url>

  <!-- Store-required pages. Extensionless: the .html forms 308 here. -->
  <url>
    <loc>https://kitabi.in/privacy</loc>
    <lastmod>2026-07-22</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
  <url>
    <loc>https://kitabi.in/terms</loc>
    <lastmod>2026-07-22</lastmod>
    <changefreq>yearly</changefreq>
    <priority>0.3</priority>
  </url>
</urlset>
