<?xml version="1.0" encoding="UTF-8"?>
<!--
  AI-friendly sitemap. Extends the standard sitemap.xml (loc/changefreq/priority)
  with per-URL title, summary, and type so LLM crawlers and agents can decide
  relevance without fetching every page, plus direct pointers to the
  machine-readable resources (llms.txt, /ai/*.json, JSON-LD).
-->
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
        xmlns:llm="https://getfedo.com/schemas/sitemap-llm/1.0">

  <url>
    <loc>https://getfedo.com/</loc>
    <changefreq>weekly</changefreq>
    <priority>1.0</priority>
    <llm:title>fedo - In-app feedback SDK for iOS, Android &amp; Flutter</llm:title>
    <llm:summary>In-app feedback SDK for mobile apps. One line of code adds a feedback screen with feature request voting, bug reporting, comment threads, and a roadmap dashboard. Android SDK available now; iOS, Flutter, and React Native coming soon.</llm:summary>
    <llm:type>product_landing</llm:type>
    <llm:structured_data>
      <llm:jsonld>https://getfedo.com/#structured-data</llm:jsonld>
      <llm:json>https://getfedo.com/ai/product.json</llm:json>
      <llm:json>https://getfedo.com/ai/pricing.json</llm:json>
      <llm:json>https://getfedo.com/ai/faq.json</llm:json>
    </llm:structured_data>
  </url>

  <url>
    <loc>https://getfedo.com/privacy.html</loc>
    <changefreq>monthly</changefreq>
    <priority>0.3</priority>
    <llm:title>Privacy Policy — fedo</llm:title>
    <llm:summary>fedo privacy policy. Collects only what users explicitly submit as feedback; no passive tracking, fingerprinting, or ad-related data collection.</llm:summary>
    <llm:type>legal</llm:type>
  </url>

  <url>
    <loc>https://getfedo.com/terms.html</loc>
    <changefreq>monthly</changefreq>
    <priority>0.3</priority>
    <llm:title>Terms of Service — fedo</llm:title>
    <llm:summary>fedo terms of service - plain-language terms for using fedo.</llm:summary>
    <llm:type>legal</llm:type>
  </url>

  <url>
    <loc>https://getfedo.com/llms.txt</loc>
    <changefreq>weekly</changefreq>
    <priority>0.5</priority>
    <llm:title>llms.txt</llm:title>
    <llm:summary>Plaintext overview of fedo for LLMs: what it does, integration steps, supported platforms, pricing, and links.</llm:summary>
    <llm:type>ai_context</llm:type>
  </url>

  <url>
    <loc>https://getfedo.com/ai/index.json</loc>
    <changefreq>weekly</changefreq>
    <priority>0.5</priority>
    <llm:title>fedo AI data manifest</llm:title>
    <llm:summary>Manifest listing fedo's structured JSON resources (product, pricing, FAQ) for AI agents.</llm:summary>
    <llm:type>ai_data</llm:type>
  </url>

  <!--
    Blog URLs are hand-maintained alongside src/posts.js: keep them in sync
    with slugs in POSTS that have a matching blog/<slug>.md (same tradeoff
    documented there). Titles/excerpts come from the post frontmatter.
  -->

  <url>
    <loc>https://getfedo.com/blog</loc>
    <changefreq>weekly</changefreq>
    <priority>0.7</priority>
    <llm:title>fedo blog — engineering the feedback SDK</llm:title>
    <llm:summary>Engineering blog for fedo, the in-app feedback SDK: architecture deep dives, SDK release notes, and lessons learned building feature request voting, bug reporting, and roadmaps for mobile apps.</llm:summary>
    <llm:type>blog_index</llm:type>
  </url>

  <url>
    <loc>https://getfedo.com/blog/board-icon</loc>
    <lastmod>2026-08-22</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.6</priority>
    <llm:title>Adding image uploads to a Go backend: validation, resizing, R2, and orphan cleanup</llm:title>
    <llm:summary>Board icons started as one endpoint and ended up touching storage layout, image processing, cleanup jobs, and rate limiting. The architecture, the tradeoffs, and what I'd build the same way again.</llm:summary>
    <llm:type>blog_post</llm:type>
    <llm:structured_data>
      <llm:jsonld>https://getfedo.com/blog/board-icon#structured-data</llm:jsonld>
    </llm:structured_data>
  </url>

</urlset>
