Skip to content

Conversation

@arandito
Copy link

@arandito arandito commented Jan 6, 2026

Description

This PR merges the feat/migrate-sphinx-to-mkdocs feature branch into develop, completing the migration from the existing Sphinx documentation system to Material for Mkdocs

Related PRs in feat/migrate-sphinx-to-mkdocs:

In addition to the documentation migration, this PR:

This PR and the related code generator update will be merged simultaneously.

Testing

  • Ran integration tests and confirmed they succeed for Transcribe Streaming and Bedrock Runtime.
  • Confirmed documentation generates for top-level site and for individual clients.

How to Generate Docs

For top-level client docs, execute these commands in the root level of this repo. For individual client documentation, execute these commands in each client's directory.

# Install docs dependencies
make docs-install

# Build static HTML to site/
make docs

# Serve documentation locally to port 8000
make docs-serve

# Clean up artifacts
make docs-clean

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

@arandito arandito force-pushed the feat/migrate-sphinx-to-mkdocs branch from aebeb75 to 9b384de Compare January 6, 2026 16:15
@arandito arandito marked this pull request as ready for review January 6, 2026 16:19
@arandito arandito requested a review from a team as a code owner January 6, 2026 16:19
@arandito arandito requested a review from jonathan343 January 6, 2026 17:10
Copy link
Contributor

@jonathan343 jonathan343 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good, just had a couple of comments and suggestions. We should also include related changelog entries to each client so they're included in our next release.

}

p:has(span.breadcrumb) {
margin-top: 0;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Super nit / not blocking:

Suggested change
margin-top: 0;
margin-top: 0;

We should indent this for all three clients

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed!

uv venv --python $(PYTHON_VERSION)

docs-install: venv
uv sync --group docs
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These packages don't have lock files. We should be using uv pip instead of uv sync. This also prevents us from generating unwanted uv.lock files.

Suggested change
uv sync --group docs
uv pip install -e . --group docs

Copy link
Author

@arandito arandito Jan 6, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That makes sense. I updates this and added the --no-sync flag to the uv run commands in the individual clients to avoid creating uv.lock files from there as well.

- pymdownx.snippets:
check_paths: true
- pymdownx.superfences
- pymdownx.tabbed:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why is this here and not in the nested clients?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This enables content tabs in the "All Available Clients" page for the top-level documentation site. We don't need this plugin in the individual clients since we don't use content tabs anywhere.

With pymdownx.tabbed:

Screenshot 2026-01-06 at 3 58 04 PM

Without:

Screenshot 2026-01-06 at 3 59 21 PM

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.

2 participants