Skip to content

docs: add Tenstorrent theme, search/AI modal, and OpenSearch indexing#5484

Open
ctr-fmamedov-crypto wants to merge 6 commits into
mainfrom
docs/theme-search-opensearch
Open

docs: add Tenstorrent theme, search/AI modal, and OpenSearch indexing#5484
ctr-fmamedov-crypto wants to merge 6 commits into
mainfrom
docs/theme-search-opensearch

Conversation

@ctr-fmamedov-crypto

Copy link
Copy Markdown
Collaborator

Summary

Migrates the TT-XLA docs to the shared Tenstorrent docs theme and adds OpenSearch-backed search. This is a re-submission of #5419 opened directly from the upstream branch to enable full CI runs.

  • docs/source/_templates/layout.html: Replace minimal RTD template with full Tenstorrent layout — top navbar with cross-docs navigation (Get Started / Software / Hardware / Tools / Resources), Search / Ask AI modal (Kapa.ai), sidebar-scroll.js and tt-search.js loaded from CDN (docs.tenstorrent.com/_static/)
  • docs/source/conf.py: Add sphinx_sitemap extension, html_theme_options, search_site_base_url in html_context — consistent with other Tenstorrent docs sites
  • scripts/index_remote_search.py + .github/workflows/call-build-and-deploy-docs.yml: HTML crawler that batches pages and POSTs to the OpenSearch ingest API; triggered after each docs deploy via DOCS_SEARCH_INGEST_API_KEY_DOCS_TENSTORRENT secret (continue-on-error: true so missing key never blocks deploys)
  • docs/requirements-docs.txt: Add sphinx-sitemap==2.6.0

Closes #5419

Test plan

  • Run pip install -r docs/requirements-docs.txt && sphinx-build docs/source docs/build/html — should complete without errors
  • Verify sitemap.xml is generated in docs/build/html/
  • Check top navbar renders correctly in the built HTML
  • Confirm Search / Ask AI modal opens with ⌘K
  • Set DOCS_SEARCH_INGEST_API_KEY_DOCS_TENSTORRENT secret in repo settings to enable OpenSearch indexing on deploy

🤖 Generated with Claude Code

@codecov-commenter

codecov-commenter commented Jul 1, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 33.81%. Comparing base (b621dab) to head (ea420d7).

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #5484      +/-   ##
==========================================
- Coverage   33.85%   33.81%   -0.05%     
==========================================
  Files          37       37              
  Lines        4989     4989              
==========================================
- Hits         1689     1687       -2     
- Misses       3300     3302       +2     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

ctr-fmamedov-crypto and others added 6 commits July 1, 2026 17:58
  html_theme_options: collapse_navigation=False, titles_only=True,
    navigation_depth=2

  extensions: add sphinx_sitemap with sitemap_locales=[None] and
    sitemap_url_scheme="{link}" — consistent with other Tenstorrent docs

  html_context: add search_site_base_url for Search / Ask AI modal

  html_css_files with docs.tenstorrent.com CDN URL is preserved as-is
    (already correct in production)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
  layout.html: replace minimal sidebar-only template with full Tenstorrent
    Figma layout — top navbar (cross-docs navigation), Search / Ask AI modal
    (Kapa.ai, id c37e0bab-...), simplified sidebartitle, versions block
    suppressed, footer loads sidebar-scroll.js + tt-search.js from CDN
    (docs.tenstorrent.com/_static/ — shared scripts not in this repo's _static/)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
  call-build-and-deploy-docs.yml: add environment: github-pages to build
    job, add OpenSearch env vars (DOC_SITE_BASE_URL = docs.tenstorrent.com/
    tt-xla, DOCS_SEARCH_INGEST_API_KEY secret), add warn + index steps with
    continue-on-error: true so failures never block page deploys

  scripts/index_remote_search.py: generic HTML crawler that batches pages
    and POSTs to the OpenSearch ingest API; all config from env vars

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
sphinx_sitemap was added to conf.py extensions but the package was
missing from requirements, causing sphinx-build to fail immediately.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- call-build-and-deploy-docs.yml: wrap run: value in block scalar (|)
  to avoid YAML parser treating "indexing: ..." as a mapping key
- index_remote_search.py: apply isort/black line-length formatting
  (re.sub/re.search calls, _build_documents signature, blank line)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@ctr-fmamedov-crypto ctr-fmamedov-crypto force-pushed the docs/theme-search-opensearch branch from 5bfce97 to ea420d7 Compare July 1, 2026 13:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants