# Yours, Theo — robots policy # # Marketing surface (home, legal pages, /app/themes) is open for crawl. # Funnel + per-session pages (studio, render polling, order/share/thank # you) are blocked: they're either authenticated, transient, or per- # session and have no SEO value. # # Sitemap below points crawlers at the canonical list of indexable URLs # generated at build time by @astrojs/sitemap. User-agent: * Allow: / # Funnel + transactional surfaces — no SEO value, often per-session. Disallow: /photobook Disallow: /app/studio Disallow: /app/studio/ Disallow: /generating/ Disallow: /order/ Disallow: /thank-you Disallow: /my-orders Disallow: /email # Internal tooling — visible to the team via the URL, not for crawlers. Disallow: /design-system # Internal Astro / Cloudflare endpoints — no need to advertise. The # built scripts and stylesheets under /_astro/ stay open: search engines # render pages with them, and the portrait catalogues are drawn by them. Disallow: /_image Disallow: /_clerk/ Disallow: /_actions/ # Legacy mdposter / staging sub-domain previews shouldn't index either, # but that's enforced via a separate noindex meta header on those hosts; # this file applies to ytheo.com itself. Sitemap: https://ytheo.com/sitemap-index.xml # The journal is SSR, so it's invisible to the build-time @astrojs/sitemap # index above. This dynamic sitemap lists /blog, every category hub, and # every published post, refreshing within ~5 min of a publish. Sitemap: https://ytheo.com/blog-sitemap.xml