From 8f678db66902d90862f4e0d097c0e47eddaa01d0 Mon Sep 17 00:00:00 2001 From: Christopher Gill Date: Mon, 27 Oct 2025 16:47:47 -0400 Subject: [PATCH 1/8] feat: add global language selector and remove per-page selectors Replace individual page-level language selectors with a centralized GlobalLanguageSelector component. This refactoring consolidates language switching functionality into a single global component that integrates with the existing UnifiedPageManager, providing a more consistent user experience across all documentation pages. --- src/components/GlobalLanguageSelector.astro | 121 +++++++++++++++++ src/components/sidebar.astro | 3 + src/content/custom/head.astro | 27 ++++ src/content/docs/docs/agentic-patterns.mdx | 4 +- src/content/docs/docs/api-references.mdx | 4 +- src/content/docs/docs/api-stability.mdx | 4 +- src/content/docs/docs/chat.mdx | 4 +- src/content/docs/docs/context.mdx | 4 +- .../docs/docs/deployment/any-platform.mdx | 4 +- .../docs/docs/deployment/authorization.mdx | 4 +- .../docs/docs/deployment/cloud-run.mdx | 4 +- src/content/docs/docs/deployment/firebase.mdx | 4 +- src/content/docs/docs/develop-with-ai.mdx | 4 +- src/content/docs/docs/devtools.mdx | 4 +- src/content/docs/docs/dotprompt.mdx | 4 +- src/content/docs/docs/error-types.mdx | 4 +- src/content/docs/docs/evaluation.mdx | 4 +- src/content/docs/docs/feedback.mdx | 4 +- src/content/docs/docs/flows.mdx | 4 +- src/content/docs/docs/frameworks/angular.mdx | 4 +- src/content/docs/docs/frameworks/express.mdx | 4 +- src/content/docs/docs/frameworks/flask.mdx | 4 +- src/content/docs/docs/frameworks/nextjs.mdx | 4 +- src/content/docs/docs/get-started.mdx | 4 +- .../docs/docs/integrations/alloydb.mdx | 4 +- .../docs/docs/integrations/anthropic.mdx | 4 +- .../docs/docs/integrations/astra-db.mdx | 4 +- src/content/docs/docs/integrations/auth0.mdx | 4 +- src/content/docs/docs/integrations/chroma.mdx | 4 +- .../docs/integrations/cloud-firestore.mdx | 4 +- .../integrations/cloud-sql-postgresql.mdx | 4 +- .../docs/docs/integrations/deepseek.mdx | 4 +- .../integrations/dev-local-vectorstore.mdx | 4 +- .../docs/docs/integrations/google-cloud.mdx | 4 +- .../docs/docs/integrations/google-genai.mdx | 4 +- .../docs/docs/integrations/lancedb.mdx | 4 +- src/content/docs/docs/integrations/neo4j.mdx | 4 +- src/content/docs/docs/integrations/ollama.mdx | 4 +- .../docs/integrations/openai-compatible.mdx | 4 +- src/content/docs/docs/integrations/openai.mdx | 4 +- .../docs/docs/integrations/pgvector.mdx | 4 +- .../docs/docs/integrations/pinecone.mdx | 4 +- .../docs/docs/integrations/toolbox.mdx | 4 +- .../integrations/vectorsearch-bigquery.mdx | 4 +- .../integrations/vectorsearch-firestore.mdx | 4 +- .../docs/docs/integrations/vertex-ai.mdx | 4 +- src/content/docs/docs/integrations/xai.mdx | 4 +- src/content/docs/docs/interrupts.mdx | 4 +- src/content/docs/docs/local-observability.mdx | 4 +- src/content/docs/docs/mcp-server.mdx | 1 - .../docs/docs/model-context-protocol.mdx | 4 +- src/content/docs/docs/models.mdx | 4 +- src/content/docs/docs/multi-agent.mdx | 4 +- .../observability/advanced-configuration.mdx | 4 +- .../docs/observability/authentication.mdx | 4 +- .../docs/observability/getting-started.mdx | 4 +- .../observability/telemetry-collection.mdx | 4 +- .../docs/observability/troubleshooting.mdx | 4 +- .../docs/docs/plugin-authoring/evaluators.mdx | 4 +- .../docs/docs/plugin-authoring/overview.mdx | 4 +- src/content/docs/docs/rag.mdx | 4 +- src/content/docs/docs/tool-calling.mdx | 4 +- .../docs/docs/tutorials/chat-with-pdf.mdx | 4 +- .../tutorials/summarize-youtube-videos.mdx | 4 +- src/content/docs/index.mdx | 4 +- src/sidebar.ts | 122 +++++++++--------- 66 files changed, 273 insertions(+), 245 deletions(-) create mode 100644 src/components/GlobalLanguageSelector.astro diff --git a/src/components/GlobalLanguageSelector.astro b/src/components/GlobalLanguageSelector.astro new file mode 100644 index 00000000..07cde0e1 --- /dev/null +++ b/src/components/GlobalLanguageSelector.astro @@ -0,0 +1,121 @@ +--- +// Get current language from URL or default +const currentLang = Astro.url.searchParams.get('lang') || 'js'; + +const languageOptions = [ + { value: 'js', label: 'JavaScript', icon: '📜' }, + { value: 'go', label: 'Go', icon: '🔷' }, + { value: 'python', label: 'Python (Preview)', icon: '🐍' }, +]; +--- + +
+ + +
+ + + + \ No newline at end of file diff --git a/src/components/sidebar.astro b/src/components/sidebar.astro index ff76a838..90044d30 100644 --- a/src/components/sidebar.astro +++ b/src/components/sidebar.astro @@ -1,4 +1,5 @@ --- +import GlobalLanguageSelector from './GlobalLanguageSelector.astro'; import MobileMenuFooter from '@astrojs/starlight/components/MobileMenuFooter.astro'; import SidebarPersister from '@astrojs/starlight/components/SidebarPersister.astro'; import SidebarSublist from '@astrojs/starlight/components/SidebarSublist.astro'; @@ -6,6 +7,8 @@ import SidebarSublist from '@astrojs/starlight/components/SidebarSublist.astro'; const { sidebar } = Astro.locals.starlightRoute; --- + + diff --git a/src/content/custom/head.astro b/src/content/custom/head.astro index 205a913e..eb27dc6c 100644 --- a/src/content/custom/head.astro +++ b/src/content/custom/head.astro @@ -279,4 +279,31 @@ html[data-genkit-lang="python"] .lang-content[data-lang~="python"] { visibility: visible !important; } +/* ============================================ + SIDEBAR NAVIGATION FILTERING + ============================================ */ + +/* Hide all sidebar items with language restrictions by default */ +.sidebar-content a[data-lang] { + display: none !important; +} + +/* Show sidebar items that support the current language */ +html[data-genkit-lang="js"] .sidebar-content a[data-lang~="js"] { + display: block !important; +} + +html[data-genkit-lang="go"] .sidebar-content a[data-lang~="go"] { + display: block !important; +} + +html[data-genkit-lang="python"] .sidebar-content a[data-lang~="python"] { + display: block !important; +} + +/* Smooth transitions for sidebar filtering */ +.sidebar-content a[data-lang] { + transition: opacity 0.2s ease-out; +} + diff --git a/src/content/docs/docs/agentic-patterns.mdx b/src/content/docs/docs/agentic-patterns.mdx index b5097026..423d38a1 100644 --- a/src/content/docs/docs/agentic-patterns.mdx +++ b/src/content/docs/docs/agentic-patterns.mdx @@ -3,13 +3,11 @@ title: Implementing Agentic Patterns description: Learn to build powerful AI systems by understanding the trade-offs between reliable workflows and flexible agents, and implementing key agentic patterns with Genkit. --- -import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; import { Tabs, TabItem } from '@astrojs/starlight/components'; -
- +
diff --git a/src/content/docs/docs/api-references.mdx b/src/content/docs/docs/api-references.mdx index 52581fca..a2c9a5ef 100644 --- a/src/content/docs/docs/api-references.mdx +++ b/src/content/docs/docs/api-references.mdx @@ -4,12 +4,10 @@ description: Complete API documentation for Genkit across JavaScript, Go, and Py --- import { LinkButton } from '@astrojs/starlight/components'; -import LanguageSelector from '../../../components/LanguageSelector.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; -
- +
diff --git a/src/content/docs/docs/api-stability.mdx b/src/content/docs/docs/api-stability.mdx index b27d4ae2..221b9117 100644 --- a/src/content/docs/docs/api-stability.mdx +++ b/src/content/docs/docs/api-stability.mdx @@ -3,12 +3,10 @@ title: API Stability Channels description: This document explains the API stability channels in Genkit, including stable and beta versions, and how to use them. --- import { LinkButton } from '@astrojs/starlight/components'; -import LanguageSelector from '../../../components/LanguageSelector.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; -
- +
diff --git a/src/content/docs/docs/chat.mdx b/src/content/docs/docs/chat.mdx index 1e6892be..e2db8957 100644 --- a/src/content/docs/docs/chat.mdx +++ b/src/content/docs/docs/chat.mdx @@ -3,13 +3,11 @@ title: Creating persistent chat sessions description: Learn how to create persistent chat sessions in Genkit, including session basics, stateful sessions, multi-thread sessions, and session persistence across different languages. --- -import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; import ExampleLink from '@/components/ExampleLink.astro'; -
- +
diff --git a/src/content/docs/docs/context.mdx b/src/content/docs/docs/context.mdx index 2803e8a4..ecbeb8ab 100644 --- a/src/content/docs/docs/context.mdx +++ b/src/content/docs/docs/context.mdx @@ -3,14 +3,12 @@ title: Passing information through context description: Learn how Genkit's context object propagates generation and execution information throughout your application, making it available to flows, tools, and prompts across different languages. --- -import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; import ExampleLink from '@/components/ExampleLink.astro'; import { Tabs, TabItem } from '@astrojs/starlight/components'; -
- +
diff --git a/src/content/docs/docs/deployment/any-platform.mdx b/src/content/docs/docs/deployment/any-platform.mdx index eade839b..20ff63b6 100644 --- a/src/content/docs/docs/deployment/any-platform.mdx +++ b/src/content/docs/docs/deployment/any-platform.mdx @@ -3,12 +3,10 @@ title: Deploy to Any Platform description: Learn how to deploy Genkit flows to any Node.js, Go, or Python hosting platform with maximum flexibility and control. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/deployment/authorization.mdx b/src/content/docs/docs/deployment/authorization.mdx index 523af52f..20f2f020 100644 --- a/src/content/docs/docs/deployment/authorization.mdx +++ b/src/content/docs/docs/deployment/authorization.mdx @@ -3,12 +3,10 @@ title: Authorization and integrity description: This document explains how to manage authorization and integrity in Genkit applications, covering Firebase and non-Firebase HTTP authorization. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/deployment/cloud-run.mdx b/src/content/docs/docs/deployment/cloud-run.mdx index 3d5e2b59..40cb8756 100644 --- a/src/content/docs/docs/deployment/cloud-run.mdx +++ b/src/content/docs/docs/deployment/cloud-run.mdx @@ -3,12 +3,10 @@ title: Deploy with Cloud Run description: Learn how to deploy Genkit flows to Google Cloud Run across JavaScript, Go, and Python with automatic scaling and containerization. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/deployment/firebase.mdx b/src/content/docs/docs/deployment/firebase.mdx index 0ddbd4cf..fdf32e30 100644 --- a/src/content/docs/docs/deployment/firebase.mdx +++ b/src/content/docs/docs/deployment/firebase.mdx @@ -3,12 +3,10 @@ title: Deploy with Firebase description: Learn how to deploy Genkit flows as Cloud Functions for Firebase with built-in authentication and authorization. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/develop-with-ai.mdx b/src/content/docs/docs/develop-with-ai.mdx index 8676028c..6d26c86b 100644 --- a/src/content/docs/docs/develop-with-ai.mdx +++ b/src/content/docs/docs/develop-with-ai.mdx @@ -4,12 +4,10 @@ description: 'Configure AI tools and IDEs to work with Genkit for enhanced code --- import { Aside } from '@astrojs/starlight/components'; -import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/devtools.mdx b/src/content/docs/docs/devtools.mdx index f479e1dd..90a3b8b3 100644 --- a/src/content/docs/docs/devtools.mdx +++ b/src/content/docs/docs/devtools.mdx @@ -4,12 +4,10 @@ description: Explore Genkit's developer tools, including the CLI for command-lin --- import { Tabs, TabItem } from '@astrojs/starlight/components'; -import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/dotprompt.mdx b/src/content/docs/docs/dotprompt.mdx index 7c509ae7..4fa44aa5 100644 --- a/src/content/docs/docs/dotprompt.mdx +++ b/src/content/docs/docs/dotprompt.mdx @@ -3,12 +3,10 @@ title: Managing prompts with Dotprompt description: Learn how to use Dotprompt to manage prompts, models, and parameters for generative AI models across JavaScript and Go, with a streamlined approach to prompt engineering and iteration. --- -import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/error-types.mdx b/src/content/docs/docs/error-types.mdx index d4cdafbe..9d5cca0e 100644 --- a/src/content/docs/docs/error-types.mdx +++ b/src/content/docs/docs/error-types.mdx @@ -3,12 +3,10 @@ title: Error Types description: Learn about Genkit's specialized error types, GenkitError and UserFacingError, and how they are used to differentiate between internal and user-facing issues. --- -import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/evaluation.mdx b/src/content/docs/docs/evaluation.mdx index e202ff8e..c0c9803f 100644 --- a/src/content/docs/docs/evaluation.mdx +++ b/src/content/docs/docs/evaluation.mdx @@ -3,13 +3,11 @@ title: Evaluation description: Learn about Genkit's evaluation capabilities across JavaScript and Go, including inference-based and raw evaluation, dataset creation, and how to use the Developer UI and CLI for testing and analysis. --- -import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; import ThemeImage from '../../../components/ThemeImage.astro'; -
- +
diff --git a/src/content/docs/docs/feedback.mdx b/src/content/docs/docs/feedback.mdx index 710b8863..9e070daa 100644 --- a/src/content/docs/docs/feedback.mdx +++ b/src/content/docs/docs/feedback.mdx @@ -3,11 +3,9 @@ title: Connect with us description: Learn how to connect with the Genkit community and provide feedback on your experience across JavaScript, Go, and Python, including Discord and GitHub resources. --- -import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; -
- +
diff --git a/src/content/docs/docs/flows.mdx b/src/content/docs/docs/flows.mdx index 2bdc3b92..7a5c22a6 100644 --- a/src/content/docs/docs/flows.mdx +++ b/src/content/docs/docs/flows.mdx @@ -3,12 +3,10 @@ title: Defining AI workflows description: Learn how to define and manage AI workflows in Genkit using flows across JavaScript, Go, and Python, which provide type safety, integration with the developer UI, and simplified deployment. --- -import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/frameworks/angular.mdx b/src/content/docs/docs/frameworks/angular.mdx index dd255482..4f7c79ed 100644 --- a/src/content/docs/docs/frameworks/angular.mdx +++ b/src/content/docs/docs/frameworks/angular.mdx @@ -3,12 +3,10 @@ title: Use Genkit in an Angular app description: Learn how to use Genkit flows in Angular applications --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/frameworks/express.mdx b/src/content/docs/docs/frameworks/express.mdx index 03d2f8ce..5a6a7b6b 100644 --- a/src/content/docs/docs/frameworks/express.mdx +++ b/src/content/docs/docs/frameworks/express.mdx @@ -3,12 +3,10 @@ title: Express plugin description: The Genkit Express plugin provides utilities for conveniently exposing Genkit flows and actions via an Express HTTP server as REST APIs. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/frameworks/flask.mdx b/src/content/docs/docs/frameworks/flask.mdx index af913a06..0f493432 100644 --- a/src/content/docs/docs/frameworks/flask.mdx +++ b/src/content/docs/docs/frameworks/flask.mdx @@ -3,12 +3,10 @@ title: Flask Integration description: Learn how to integrate Genkit with Flask applications for Python, including REST API endpoints, authentication, streaming responses, and deployment strategies. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/frameworks/nextjs.mdx b/src/content/docs/docs/frameworks/nextjs.mdx index b6fb40e3..a541f315 100644 --- a/src/content/docs/docs/frameworks/nextjs.mdx +++ b/src/content/docs/docs/frameworks/nextjs.mdx @@ -3,12 +3,10 @@ title: Next.js Integration description: Learn how to integrate Genkit with Next.js applications across JavaScript, Go, and Python, including API routes, client-side calls, streaming, and deployment strategies. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/get-started.mdx b/src/content/docs/docs/get-started.mdx index b8ed658d..4cd56f56 100644 --- a/src/content/docs/docs/get-started.mdx +++ b/src/content/docs/docs/get-started.mdx @@ -4,12 +4,10 @@ description: Learn how to get started with Genkit across JavaScript, Go, and Pyt --- import { LinkButton } from '@astrojs/starlight/components'; -import LanguageSelector from '../../../components/LanguageSelector.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/alloydb.mdx b/src/content/docs/docs/integrations/alloydb.mdx index 2eca2344..08ccfa02 100644 --- a/src/content/docs/docs/integrations/alloydb.mdx +++ b/src/content/docs/docs/integrations/alloydb.mdx @@ -3,12 +3,10 @@ title: AlloyDB for PostgreSQL description: Learn how to use AlloyDB for PostgreSQL with pgvector extension as a vector database for semantic search and RAG applications in Go. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/anthropic.mdx b/src/content/docs/docs/integrations/anthropic.mdx index d02b83b6..ab5ba627 100644 --- a/src/content/docs/docs/integrations/anthropic.mdx +++ b/src/content/docs/docs/integrations/anthropic.mdx @@ -3,12 +3,10 @@ title: Anthropic Plugin description: Learn how to configure and use Genkit Anthropic plugin to access Claude models in Go. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/astra-db.mdx b/src/content/docs/docs/integrations/astra-db.mdx index 48667fd7..97d2cf66 100644 --- a/src/content/docs/docs/integrations/astra-db.mdx +++ b/src/content/docs/docs/integrations/astra-db.mdx @@ -3,12 +3,10 @@ title: Astra DB Vector Database description: Learn how to use DataStax Astra DB with Genkit for serverless vector storage, semantic search, and RAG applications. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/auth0.mdx b/src/content/docs/docs/integrations/auth0.mdx index 81827041..38790395 100644 --- a/src/content/docs/docs/integrations/auth0.mdx +++ b/src/content/docs/docs/integrations/auth0.mdx @@ -3,12 +3,10 @@ title: Auth0 AI Plugin description: Learn how to use the Auth0 AI plugin for Genkit to build secure AI-powered applications with authentication, authorization, and fine-grained access control using Auth0 and Okta FGA. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/chroma.mdx b/src/content/docs/docs/integrations/chroma.mdx index a2b78b0d..c479d449 100644 --- a/src/content/docs/docs/integrations/chroma.mdx +++ b/src/content/docs/docs/integrations/chroma.mdx @@ -3,12 +3,10 @@ title: Chroma Vector Database description: Learn how to use Chroma with Genkit for vector storage, semantic search, and RAG applications. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/cloud-firestore.mdx b/src/content/docs/docs/integrations/cloud-firestore.mdx index 8ea95134..b04c87e0 100644 --- a/src/content/docs/docs/integrations/cloud-firestore.mdx +++ b/src/content/docs/docs/integrations/cloud-firestore.mdx @@ -3,12 +3,10 @@ title: Cloud Firestore Vector Search description: Learn how to use Google Cloud Firestore as a vector database for RAG applications across JavaScript, Go, and Python with Genkit. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/cloud-sql-postgresql.mdx b/src/content/docs/docs/integrations/cloud-sql-postgresql.mdx index fab2d63d..4ae3a354 100644 --- a/src/content/docs/docs/integrations/cloud-sql-postgresql.mdx +++ b/src/content/docs/docs/integrations/cloud-sql-postgresql.mdx @@ -3,12 +3,10 @@ title: Cloud SQL for PostgreSQL Vector Database description: Learn how to use Google Cloud SQL for PostgreSQL with pgvector extension and Genkit for managed vector storage and semantic search. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/deepseek.mdx b/src/content/docs/docs/integrations/deepseek.mdx index 1de5e628..462a744a 100644 --- a/src/content/docs/docs/integrations/deepseek.mdx +++ b/src/content/docs/docs/integrations/deepseek.mdx @@ -3,12 +3,10 @@ title: DeepSeek Plugin description: Learn how to configure and use Genkit DeepSeek plugin to access DeepSeek models in JavaScript. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/dev-local-vectorstore.mdx b/src/content/docs/docs/integrations/dev-local-vectorstore.mdx index 5a7f85b6..c6496073 100644 --- a/src/content/docs/docs/integrations/dev-local-vectorstore.mdx +++ b/src/content/docs/docs/integrations/dev-local-vectorstore.mdx @@ -3,12 +3,10 @@ title: Dev Local Vector Store description: Learn how to use the Dev Local Vector Store for local development and testing across JavaScript, Go, and Python with Genkit. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/google-cloud.mdx b/src/content/docs/docs/integrations/google-cloud.mdx index fa33982e..e54cddec 100644 --- a/src/content/docs/docs/integrations/google-cloud.mdx +++ b/src/content/docs/docs/integrations/google-cloud.mdx @@ -3,12 +3,10 @@ title: Google Cloud telemetry and logging plugin description: Learn how to configure the Genkit Google Cloud plugin to export telemetry and logs to Cloud's operations suite for Go applications. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/google-genai.mdx b/src/content/docs/docs/integrations/google-genai.mdx index e02daf26..21c24a0c 100644 --- a/src/content/docs/docs/integrations/google-genai.mdx +++ b/src/content/docs/docs/integrations/google-genai.mdx @@ -3,12 +3,10 @@ title: Google AI plugin description: Learn how to use Google's Gemini models with Genkit across JavaScript, Go, and Python through the Google AI Studio API, including text generation, embeddings, image generation, video generation, and text-to-speech. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/lancedb.mdx b/src/content/docs/docs/integrations/lancedb.mdx index 7ee36945..f943f3e0 100644 --- a/src/content/docs/docs/integrations/lancedb.mdx +++ b/src/content/docs/docs/integrations/lancedb.mdx @@ -3,12 +3,10 @@ title: LanceDB Vector Database description: Learn how to use LanceDB with Genkit for embedded vector storage, semantic search, and RAG applications. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/neo4j.mdx b/src/content/docs/docs/integrations/neo4j.mdx index 92b4d427..ece0fda9 100644 --- a/src/content/docs/docs/integrations/neo4j.mdx +++ b/src/content/docs/docs/integrations/neo4j.mdx @@ -3,12 +3,10 @@ title: Neo4j Graph Vector Database description: Learn how to use Neo4j with Genkit for graph-based vector storage, semantic search, and knowledge graph applications. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/ollama.mdx b/src/content/docs/docs/integrations/ollama.mdx index 16c13eae..5c26e9ec 100644 --- a/src/content/docs/docs/integrations/ollama.mdx +++ b/src/content/docs/docs/integrations/ollama.mdx @@ -3,12 +3,10 @@ title: Ollama Plugin description: Learn how to configure and use the Ollama plugin for Genkit to interact with local LLMs and embedding models across JavaScript, Go, and Python. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/openai-compatible.mdx b/src/content/docs/docs/integrations/openai-compatible.mdx index c1e51b23..2177427d 100644 --- a/src/content/docs/docs/integrations/openai-compatible.mdx +++ b/src/content/docs/docs/integrations/openai-compatible.mdx @@ -3,12 +3,10 @@ title: OpenAI-Compatible Plugin description: Learn how to configure and use Genkit OpenAI-compatible plugin to access models through any OpenAI-compatible API across JavaScript and Go. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/openai.mdx b/src/content/docs/docs/integrations/openai.mdx index 8b4e4620..b6c659ce 100644 --- a/src/content/docs/docs/integrations/openai.mdx +++ b/src/content/docs/docs/integrations/openai.mdx @@ -3,12 +3,10 @@ title: OpenAI Plugin description: Learn how to configure and use Genkit OpenAI plugin to access various models and embedders from OpenAI across JavaScript and Go. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/pgvector.mdx b/src/content/docs/docs/integrations/pgvector.mdx index 87d2b729..c82db277 100644 --- a/src/content/docs/docs/integrations/pgvector.mdx +++ b/src/content/docs/docs/integrations/pgvector.mdx @@ -3,12 +3,10 @@ title: pgvector (PostgreSQL Vector Extension) description: Learn how to use pgvector with Genkit for vector storage, semantic search, and RAG applications using PostgreSQL. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/pinecone.mdx b/src/content/docs/docs/integrations/pinecone.mdx index a6161d0f..c2535cda 100644 --- a/src/content/docs/docs/integrations/pinecone.mdx +++ b/src/content/docs/docs/integrations/pinecone.mdx @@ -3,12 +3,10 @@ title: Pinecone Vector Database description: Learn how to use Pinecone with Genkit for cloud vector storage, semantic search, and RAG applications. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/toolbox.mdx b/src/content/docs/docs/integrations/toolbox.mdx index 79ef65ea..9bc9baa2 100644 --- a/src/content/docs/docs/integrations/toolbox.mdx +++ b/src/content/docs/docs/integrations/toolbox.mdx @@ -3,12 +3,10 @@ title: MCP Toolbox for Databases description: Learn how to use the MCP Toolbox for Databases with Genkit to build enterprise-grade database tools with connection pooling, authentication, and security features. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/vectorsearch-bigquery.mdx b/src/content/docs/docs/integrations/vectorsearch-bigquery.mdx index 7d434e20..057e11b2 100644 --- a/src/content/docs/docs/integrations/vectorsearch-bigquery.mdx +++ b/src/content/docs/docs/integrations/vectorsearch-bigquery.mdx @@ -3,12 +3,10 @@ title: Vector Search using Bigquery description: Learn how to use the GCP Vector search using Bigquery with Genkit. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/vectorsearch-firestore.mdx b/src/content/docs/docs/integrations/vectorsearch-firestore.mdx index c0fa5133..52947c36 100644 --- a/src/content/docs/docs/integrations/vectorsearch-firestore.mdx +++ b/src/content/docs/docs/integrations/vectorsearch-firestore.mdx @@ -3,12 +3,10 @@ title: Vector Search using Firestore description: Learn how to use the GCP Vector search using Firestore with Genkit. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/vertex-ai.mdx b/src/content/docs/docs/integrations/vertex-ai.mdx index 5170df75..dbbba481 100644 --- a/src/content/docs/docs/integrations/vertex-ai.mdx +++ b/src/content/docs/docs/integrations/vertex-ai.mdx @@ -3,12 +3,10 @@ title: Vertex AI plugin description: Learn how to use Google Cloud Vertex AI with Genkit across JavaScript, Go, and Python, including enterprise features like grounding, Vector Search, Model Garden, and evaluation metrics. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/integrations/xai.mdx b/src/content/docs/docs/integrations/xai.mdx index d88ed390..493691ee 100644 --- a/src/content/docs/docs/integrations/xai.mdx +++ b/src/content/docs/docs/integrations/xai.mdx @@ -3,12 +3,10 @@ title: xAI Plugin description: Learn how to configure and use Genkit xAI plugin to access xAI (Grok) models in JavaScript. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/interrupts.mdx b/src/content/docs/docs/interrupts.mdx index 97f126fb..b708cfc1 100644 --- a/src/content/docs/docs/interrupts.mdx +++ b/src/content/docs/docs/interrupts.mdx @@ -4,13 +4,11 @@ description: Learn how to use interrupts in Genkit to pause and resume LLM gener --- import ExampleLink from '@/components/ExampleLink.astro'; -import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; import { Tabs, TabItem } from '@astrojs/starlight/components'; -
- +
diff --git a/src/content/docs/docs/local-observability.mdx b/src/content/docs/docs/local-observability.mdx index 0954a1e3..e6134d54 100644 --- a/src/content/docs/docs/local-observability.mdx +++ b/src/content/docs/docs/local-observability.mdx @@ -3,12 +3,10 @@ title: Local observability and metrics description: Learn about Genkit's local observability features, including tracing, metrics collection, and logging, powered by OpenTelemetry and integrated with the Genkit Developer UI across JavaScript, Go, and Python. --- -import LanguageSelector from '../../../components/LanguageSelector.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; -
- +
diff --git a/src/content/docs/docs/mcp-server.mdx b/src/content/docs/docs/mcp-server.mdx index a4692c61..947fd6bd 100644 --- a/src/content/docs/docs/mcp-server.mdx +++ b/src/content/docs/docs/mcp-server.mdx @@ -3,7 +3,6 @@ title: 'Genkit MCP Server' description: 'Integrate Genkit with MCP-aware IDEs and tools.' --- -import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; import { Tabs, TabItem } from '@astrojs/starlight/components'; diff --git a/src/content/docs/docs/model-context-protocol.mdx b/src/content/docs/docs/model-context-protocol.mdx index 97dd9e90..924a665a 100644 --- a/src/content/docs/docs/model-context-protocol.mdx +++ b/src/content/docs/docs/model-context-protocol.mdx @@ -3,12 +3,10 @@ title: Model Context Protocol (MCP) description: Learn how to extend Genkit's capabilities using the Model Context Protocol to connect with external tools, resources, and data sources across JavaScript and Go. --- -import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/models.mdx b/src/content/docs/docs/models.mdx index 9cf8955d..5f90ca39 100644 --- a/src/content/docs/docs/models.mdx +++ b/src/content/docs/docs/models.mdx @@ -5,12 +5,10 @@ description: Learn how to generate content with AI models using Genkit's unified import LLMSummary from '@/components/llm-summary.astro'; import ExampleLink from '@/components/ExampleLink.astro'; -import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/multi-agent.mdx b/src/content/docs/docs/multi-agent.mdx index 64264beb..5b7974b4 100644 --- a/src/content/docs/docs/multi-agent.mdx +++ b/src/content/docs/docs/multi-agent.mdx @@ -3,12 +3,10 @@ title: Building multi-agent systems description: Learn how to build multi-agent systems in Genkit by delegating tasks to specialized agents, addressing challenges of complex agentic workflows. --- -import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/observability/advanced-configuration.mdx b/src/content/docs/docs/observability/advanced-configuration.mdx index 9d9eeb9c..eff1eee2 100644 --- a/src/content/docs/docs/observability/advanced-configuration.mdx +++ b/src/content/docs/docs/observability/advanced-configuration.mdx @@ -3,12 +3,10 @@ title: Advanced Configuration description: This guide covers advanced configuration options for Genkit's Firebase telemetry plugin, including fine-tuning telemetry collection, export settings, and disabling specific data types. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/observability/authentication.mdx b/src/content/docs/docs/observability/authentication.mdx index 2d34c988..523ecbe0 100644 --- a/src/content/docs/docs/observability/authentication.mdx +++ b/src/content/docs/docs/observability/authentication.mdx @@ -3,12 +3,10 @@ title: Authentication and authorization description: Learn how to authenticate and authorize the Firebase telemetry plugin for Genkit, covering API enablement, user authentication, and deployment to Google Cloud or other environments. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/observability/getting-started.mdx b/src/content/docs/docs/observability/getting-started.mdx index 60f6d255..10110cc9 100644 --- a/src/content/docs/docs/observability/getting-started.mdx +++ b/src/content/docs/docs/observability/getting-started.mdx @@ -3,12 +3,10 @@ title: Get started with Genkit Monitoring description: This quickstart guide explains how to set up Genkit Monitoring for your deployed Genkit features to collect and view real-time telemetry data, including metrics, traces, and production trace exports for evaluations. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/observability/telemetry-collection.mdx b/src/content/docs/docs/observability/telemetry-collection.mdx index a32e1ed8..1e7fce76 100644 --- a/src/content/docs/docs/observability/telemetry-collection.mdx +++ b/src/content/docs/docs/observability/telemetry-collection.mdx @@ -3,12 +3,10 @@ title: Telemetry Collection description: This document details the metrics, trace attributes, and logs collected by the Firebase telemetry plugin for Genkit, along with information on latency, quotas, and cost. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/observability/troubleshooting.mdx b/src/content/docs/docs/observability/troubleshooting.mdx index 04c8b425..f7d8ef69 100644 --- a/src/content/docs/docs/observability/troubleshooting.mdx +++ b/src/content/docs/docs/observability/troubleshooting.mdx @@ -3,12 +3,10 @@ title: Genkit Monitoring - Troubleshooting description: This guide provides solutions to common issues encountered when using Genkit Monitoring, including problems with traces, metrics, and telemetry export. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/plugin-authoring/evaluators.mdx b/src/content/docs/docs/plugin-authoring/evaluators.mdx index d5fbef30..ed52c9ac 100644 --- a/src/content/docs/docs/plugin-authoring/evaluators.mdx +++ b/src/content/docs/docs/plugin-authoring/evaluators.mdx @@ -3,12 +3,10 @@ title: Writing a Genkit Evaluator description: Learn how to write custom Genkit evaluators for heuristic and LLM-based assessments, including defining prompts, scoring functions, and evaluator actions. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/plugin-authoring/overview.mdx b/src/content/docs/docs/plugin-authoring/overview.mdx index e2d4030c..2d25c5b4 100644 --- a/src/content/docs/docs/plugin-authoring/overview.mdx +++ b/src/content/docs/docs/plugin-authoring/overview.mdx @@ -3,12 +3,10 @@ title: Creating Genkit Plugins description: Learn how to extend Genkit's capabilities by writing custom plugins, covering plugin creation, options, and implementing new model providers. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/rag.mdx b/src/content/docs/docs/rag.mdx index 765064b2..2e7c0a7e 100644 --- a/src/content/docs/docs/rag.mdx +++ b/src/content/docs/docs/rag.mdx @@ -3,12 +3,10 @@ title: Retrieval-augmented generation (RAG) description: Learn how Genkit simplifies retrieval-augmented generation (RAG) by providing abstractions and plugins for indexers, embedders, and retrievers to incorporate external data into LLM responses. --- -import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/tool-calling.mdx b/src/content/docs/docs/tool-calling.mdx index 43f2a237..b1c06ce0 100644 --- a/src/content/docs/docs/tool-calling.mdx +++ b/src/content/docs/docs/tool-calling.mdx @@ -4,12 +4,10 @@ description: Learn how to enable LLMs to interact with external applications and --- import ExampleLink from '@/components/ExampleLink.astro'; -import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; -
- +
diff --git a/src/content/docs/docs/tutorials/chat-with-pdf.mdx b/src/content/docs/docs/tutorials/chat-with-pdf.mdx index dcf430da..c3f61b1c 100644 --- a/src/content/docs/docs/tutorials/chat-with-pdf.mdx +++ b/src/content/docs/docs/tutorials/chat-with-pdf.mdx @@ -3,12 +3,10 @@ title: Chat with a PDF file description: Learn how to build a conversational application that allows users to extract information from PDF documents using natural language across JavaScript, Go, and Python. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; -
- +
diff --git a/src/content/docs/docs/tutorials/summarize-youtube-videos.mdx b/src/content/docs/docs/tutorials/summarize-youtube-videos.mdx index aa039679..4ce01a80 100644 --- a/src/content/docs/docs/tutorials/summarize-youtube-videos.mdx +++ b/src/content/docs/docs/tutorials/summarize-youtube-videos.mdx @@ -3,12 +3,10 @@ title: Summarize YouTube videos description: Learn how to build a conversational application that allows users to summarize YouTube videos and chat about their contents using natural language across JavaScript, Go, and Python. --- -import LanguageSelector from '../../../../components/LanguageSelector.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; -
- +
diff --git a/src/content/docs/index.mdx b/src/content/docs/index.mdx index 05f36202..addbbced 100644 --- a/src/content/docs/index.mdx +++ b/src/content/docs/index.mdx @@ -22,7 +22,6 @@ hero: --- import { Tabs, TabItem } from '@astrojs/starlight/components'; -import LanguageSelector from '../../components/LanguageSelector.astro'; import LanguageContent from '../../components/LanguageContent.astro'; import { Aside } from '@astrojs/starlight/components'; @@ -36,8 +35,7 @@ It offers a unified interface for integrating AI models from many model provider Get started with just a few lines of code: -
- +
diff --git a/src/sidebar.ts b/src/sidebar.ts index 4af2f786..03f1c637 100644 --- a/src/sidebar.ts +++ b/src/sidebar.ts @@ -2,122 +2,122 @@ const DOCS_SIDEBAR = [ { label: "Get started", items: [ - { label: "Get started", slug: "docs/get-started" }, - { label: "Developer tools", slug: "docs/devtools" }, + { label: "Get started", slug: "docs/get-started", attrs: { 'data-lang': 'js go python' } }, + { label: "Developer tools", slug: "docs/devtools", attrs: { 'data-lang': 'js go python' } }, ], }, { label: "Build with AI", items: [ - { label: "Genkit MCP Server", slug: "docs/mcp-server" }, - { label: "AI-Assisted Development", slug: "docs/develop-with-ai" }, + { label: "Genkit MCP Server", slug: "docs/mcp-server", attrs: { 'data-lang': 'js go python' } }, + { label: "AI-Assisted Development", slug: "docs/develop-with-ai", attrs: { 'data-lang': 'js go python' } }, ], }, { label: "Building AI workflows", items: [ - { label: "Generating content", slug: "docs/models" }, - { label: "Passing information through context", slug: "docs/context" }, - { label: "Creating flows", slug: "docs/flows" }, - { label: "Implementing Agentic Patterns", slug: "docs/agentic-patterns" }, - { label: "Managing prompts with Dotprompt", slug: "docs/dotprompt" }, - { label: "Creating persistent chat sessions", slug: "docs/chat" }, - { label: "Tool calling", slug: "docs/tool-calling" }, - { label: "Model Context Protocol (MCP)", slug: "docs/model-context-protocol" }, - { label: "Pause generation using interrupts", slug: "docs/interrupts" }, - { label: "Retrieval-augmented generation (RAG)", slug: "docs/rag" }, - { label: "Building multi-agent systems", slug: "docs/multi-agent" }, - { label: "Error types", slug: "docs/error-types" }, - { label: "Evaluation", slug: "docs/evaluation" }, - { label: "Local observability and metrics", slug: "docs/local-observability" }, + { label: "Generating content", slug: "docs/models", attrs: { 'data-lang': 'js go python' } }, + { label: "Passing information through context", slug: "docs/context", attrs: { 'data-lang': 'js' } }, + { label: "Creating flows", slug: "docs/flows", attrs: { 'data-lang': 'js go python' } }, + { label: "Implementing Agentic Patterns", slug: "docs/agentic-patterns", attrs: { 'data-lang': 'js go' } }, + { label: "Managing prompts with Dotprompt", slug: "docs/dotprompt", attrs: { 'data-lang': 'js go' } }, + { label: "Creating persistent chat sessions", slug: "docs/chat", attrs: { 'data-lang': 'js' } }, + { label: "Tool calling", slug: "docs/tool-calling", attrs: { 'data-lang': 'js go python' } }, + { label: "Model Context Protocol (MCP)", slug: "docs/model-context-protocol", attrs: { 'data-lang': 'js go' } }, + { label: "Pause generation using interrupts", slug: "docs/interrupts", attrs: { 'data-lang': 'js go python' } }, + { label: "Retrieval-augmented generation (RAG)", slug: "docs/rag", attrs: { 'data-lang': 'js go python' } }, + { label: "Building multi-agent systems", slug: "docs/multi-agent", attrs: { 'data-lang': 'js' } }, + { label: "Error types", slug: "docs/error-types", attrs: { 'data-lang': 'js go python' } }, + { label: "Evaluation", slug: "docs/evaluation", attrs: { 'data-lang': 'js go' } }, + { label: "Local observability and metrics", slug: "docs/local-observability", attrs: { 'data-lang': 'js go python' } }, ], }, { label: "Tutorials", items: [ - { label: "Chat with a PDF", slug: "docs/tutorials/chat-with-pdf" }, - { label: "Summarize YouTube videos", slug: "docs/tutorials/summarize-youtube-videos" }, + { label: "Chat with a PDF", slug: "docs/tutorials/chat-with-pdf", attrs: { 'data-lang': 'js' } }, + { label: "Summarize YouTube videos", slug: "docs/tutorials/summarize-youtube-videos", attrs: { 'data-lang': 'js' } }, ], }, { label: "Model Providers", items: [ - { label: "Google Generative AI", slug: "docs/integrations/google-genai" }, - { label: "Google Vertex AI", slug: "docs/integrations/vertex-ai" }, - { label: "OpenAI", slug: "docs/integrations/openai" }, - { label: "OpenAI-Compatible APIs", slug: "docs/integrations/openai-compatible" }, - { label: "Anthropic (Claude)", slug: "docs/integrations/anthropic" }, - { label: "xAI (Grok)", slug: "docs/integrations/xai" }, - { label: "DeepSeek", slug: "docs/integrations/deepseek" }, - { label: "Ollama", slug: "docs/integrations/ollama" }, + { label: "Google Generative AI", slug: "docs/integrations/google-genai", attrs: { 'data-lang': 'js go python' } }, + { label: "Google Vertex AI", slug: "docs/integrations/vertex-ai", attrs: { 'data-lang': 'js go python' } }, + { label: "OpenAI", slug: "docs/integrations/openai", attrs: { 'data-lang': 'js go python' } }, + { label: "OpenAI-Compatible APIs", slug: "docs/integrations/openai-compatible", attrs: { 'data-lang': 'js go' } }, + { label: "Anthropic (Claude)", slug: "docs/integrations/anthropic", attrs: { 'data-lang': 'go' } }, + { label: "xAI (Grok)", slug: "docs/integrations/xai", attrs: { 'data-lang': 'js' } }, + { label: "DeepSeek", slug: "docs/integrations/deepseek", attrs: { 'data-lang': 'js' } }, + { label: "Ollama", slug: "docs/integrations/ollama", attrs: { 'data-lang': 'js go python' } }, ], }, { label: "Database Providers", items: [ - { label: "MCP Toolbox for Databases", slug: "docs/integrations/toolbox" }, - { label: "Dev Local Vector Store", slug: "docs/integrations/dev-local-vectorstore" }, - { label: "Pinecone", slug: "docs/integrations/pinecone" }, - { label: "Chroma", slug: "docs/integrations/chroma" }, - { label: "pgvector", slug: "docs/integrations/pgvector" }, - { label: "LanceDB", slug: "docs/integrations/lancedb" }, - { label: "Astra DB", slug: "docs/integrations/astra-db" }, - { label: "Neo4j", slug: "docs/integrations/neo4j" }, - { label: "AlloyDB for PostgreSQL", slug: "docs/integrations/alloydb" }, - { label: "Cloud SQL PostgreSQL", slug: "docs/integrations/cloud-sql-postgresql" }, - { label: "Cloud Firestore", slug: "docs/integrations/cloud-firestore" }, - { label: "Vertex AI Vectosearch with Bigquery", slug: "docs/integrations/vectorsearch-bigquery" }, - { label: "Vertex AI Vectosearch with Firestore", slug: "docs/integrations/vectorsearch-firestore" }, + { label: "MCP Toolbox for Databases", slug: "docs/integrations/toolbox", attrs: { 'data-lang': 'js go' } }, + { label: "Dev Local Vector Store", slug: "docs/integrations/dev-local-vectorstore", attrs: { 'data-lang': 'js go python' } }, + { label: "Pinecone", slug: "docs/integrations/pinecone", attrs: { 'data-lang': 'js go python' } }, + { label: "Chroma", slug: "docs/integrations/chroma", attrs: { 'data-lang': 'js' } }, + { label: "pgvector", slug: "docs/integrations/pgvector", attrs: { 'data-lang': 'js go python' } }, + { label: "LanceDB", slug: "docs/integrations/lancedb", attrs: { 'data-lang': 'js go python' } }, + { label: "Astra DB", slug: "docs/integrations/astra-db", attrs: { 'data-lang': 'js go python' } }, + { label: "Neo4j", slug: "docs/integrations/neo4j", attrs: { 'data-lang': 'js go python' } }, + { label: "AlloyDB for PostgreSQL", slug: "docs/integrations/alloydb", attrs: { 'data-lang': 'go' } }, + { label: "Cloud SQL PostgreSQL", slug: "docs/integrations/cloud-sql-postgresql", attrs: { 'data-lang': 'js go python' } }, + { label: "Cloud Firestore", slug: "docs/integrations/cloud-firestore", attrs: { 'data-lang': 'js go python' } }, + { label: "Vertex AI Vectosearch with Bigquery", slug: "docs/integrations/vectorsearch-bigquery", attrs: { 'data-lang': 'js go python' } }, + { label: "Vertex AI Vectosearch with Firestore", slug: "docs/integrations/vectorsearch-firestore", attrs: { 'data-lang': 'js go python' } }, ], }, { label: "Web Framework Integrations", items: [ - { label: "Express.js", slug: "docs/frameworks/express" }, - { label: "Next.js", slug: "docs/frameworks/nextjs" }, - { label: "Angular", slug: "docs/frameworks/angular" }, - { label: "Flask", slug: "docs/frameworks/flask" }, + { label: "Express.js", slug: "docs/frameworks/express", attrs: { 'data-lang': 'js' } }, + { label: "Next.js", slug: "docs/frameworks/nextjs", attrs: { 'data-lang': 'js' } }, + { label: "Angular", slug: "docs/frameworks/angular", attrs: { 'data-lang': 'js' } }, + { label: "Flask", slug: "docs/frameworks/flask", attrs: { 'data-lang': 'python' } }, ], }, { label: "Deployment", items: [ - { label: "Firebase", slug: "docs/deployment/firebase" }, - { label: "Cloud Run", slug: "docs/deployment/cloud-run" }, - { label: "Any Platform", slug: "docs/deployment/any-platform" }, - { label: "Client App Integration", slug: "docs/client" }, + { label: "Firebase", slug: "docs/deployment/firebase", attrs: { 'data-lang': 'js' } }, + { label: "Cloud Run", slug: "docs/deployment/cloud-run", attrs: { 'data-lang': 'js go python' } }, + { label: "Any Platform", slug: "docs/deployment/any-platform", attrs: { 'data-lang': 'js go python' } }, + { label: "Client App Integration", slug: "docs/client", attrs: { 'data-lang': 'js go python' } }, ], }, { label: "Authorization", items: [ - { label: "Authorization & Integrity", slug: "docs/deployment/authorization" }, - { label: "Auth0 AI", slug: "docs/integrations/auth0" }, + { label: "Authorization & Integrity", slug: "docs/deployment/authorization", attrs: { 'data-lang': 'js' } }, + { label: "Auth0 AI", slug: "docs/integrations/auth0", attrs: { 'data-lang': 'js' } }, ], }, { label: "Writing Plugins", items: [ - { label: "Overview", slug: "docs/plugin-authoring/overview" }, - { label: "Writing Genkit Evaluators", slug: "docs/plugin-authoring/evaluators" }, + { label: "Overview", slug: "docs/plugin-authoring/overview", attrs: { 'data-lang': 'js go' } }, + { label: "Writing Genkit Evaluators", slug: "docs/plugin-authoring/evaluators", attrs: { 'data-lang': 'js' } }, ], }, { label: "Observability and Monitoring", items: [ - { label: "Getting started", slug: "docs/observability/getting-started" }, - { label: "Authentication", slug: "docs/observability/authentication" }, - { label: "Telemetry Collection", slug: "docs/observability/telemetry-collection" }, - { label: "Advanced Configuration", slug: "docs/observability/advanced-configuration" }, - { label: "Troubleshooting", slug: "docs/observability/troubleshooting" }, + { label: "Getting started", slug: "docs/observability/getting-started", attrs: { 'data-lang': 'js go' } }, + { label: "Authentication", slug: "docs/observability/authentication", attrs: { 'data-lang': 'js go' } }, + { label: "Telemetry Collection", slug: "docs/observability/telemetry-collection", attrs: { 'data-lang': 'js go' } }, + { label: "Advanced Configuration", slug: "docs/observability/advanced-configuration", attrs: { 'data-lang': 'js go' } }, + { label: "Troubleshooting", slug: "docs/observability/troubleshooting", attrs: { 'data-lang': 'js go' } }, ], }, { label: "Reference", items: [ - { label: "API References", slug: "docs/api-references" }, - { label: "API Stability", slug: "docs/api-stability" }, - { label: "Feedback", slug: "docs/feedback" }, + { label: "API References", slug: "docs/api-references", attrs: { 'data-lang': 'js go python' } }, + { label: "API Stability", slug: "docs/api-stability", attrs: { 'data-lang': 'js go python' } }, + { label: "Feedback", slug: "docs/feedback", attrs: { 'data-lang': 'js go python' } }, ], }, ]; From e8b9165582181425086ab18c48aa08fa3875be6c Mon Sep 17 00:00:00 2001 From: Christopher Gill Date: Mon, 27 Oct 2025 17:01:55 -0400 Subject: [PATCH 2/8] Rolled back changes --- src/components/GlobalLanguageSelector.astro | 121 ----------------- src/components/sidebar.astro | 3 - src/content/custom/head.astro | 27 ---- src/content/docs/docs/agentic-patterns.mdx | 4 +- src/content/docs/docs/api-references.mdx | 4 +- src/content/docs/docs/api-stability.mdx | 4 +- src/content/docs/docs/chat.mdx | 4 +- src/content/docs/docs/context.mdx | 4 +- .../docs/docs/deployment/any-platform.mdx | 4 +- .../docs/docs/deployment/authorization.mdx | 4 +- .../docs/docs/deployment/cloud-run.mdx | 4 +- src/content/docs/docs/deployment/firebase.mdx | 4 +- src/content/docs/docs/develop-with-ai.mdx | 4 +- src/content/docs/docs/devtools.mdx | 4 +- src/content/docs/docs/dotprompt.mdx | 4 +- src/content/docs/docs/error-types.mdx | 4 +- src/content/docs/docs/evaluation.mdx | 4 +- src/content/docs/docs/feedback.mdx | 4 +- src/content/docs/docs/flows.mdx | 4 +- src/content/docs/docs/frameworks/angular.mdx | 4 +- src/content/docs/docs/frameworks/express.mdx | 4 +- src/content/docs/docs/frameworks/flask.mdx | 4 +- src/content/docs/docs/frameworks/nextjs.mdx | 4 +- src/content/docs/docs/get-started.mdx | 4 +- .../docs/docs/integrations/alloydb.mdx | 4 +- .../docs/docs/integrations/anthropic.mdx | 4 +- .../docs/docs/integrations/astra-db.mdx | 4 +- src/content/docs/docs/integrations/auth0.mdx | 4 +- src/content/docs/docs/integrations/chroma.mdx | 4 +- .../docs/integrations/cloud-firestore.mdx | 4 +- .../integrations/cloud-sql-postgresql.mdx | 4 +- .../docs/docs/integrations/deepseek.mdx | 4 +- .../integrations/dev-local-vectorstore.mdx | 4 +- .../docs/docs/integrations/google-cloud.mdx | 4 +- .../docs/docs/integrations/google-genai.mdx | 4 +- .../docs/docs/integrations/lancedb.mdx | 4 +- src/content/docs/docs/integrations/neo4j.mdx | 4 +- src/content/docs/docs/integrations/ollama.mdx | 4 +- .../docs/integrations/openai-compatible.mdx | 4 +- src/content/docs/docs/integrations/openai.mdx | 4 +- .../docs/docs/integrations/pgvector.mdx | 4 +- .../docs/docs/integrations/pinecone.mdx | 4 +- .../docs/docs/integrations/toolbox.mdx | 4 +- .../integrations/vectorsearch-bigquery.mdx | 4 +- .../integrations/vectorsearch-firestore.mdx | 4 +- .../docs/docs/integrations/vertex-ai.mdx | 4 +- src/content/docs/docs/integrations/xai.mdx | 4 +- src/content/docs/docs/interrupts.mdx | 4 +- src/content/docs/docs/local-observability.mdx | 4 +- src/content/docs/docs/mcp-server.mdx | 1 + .../docs/docs/model-context-protocol.mdx | 4 +- src/content/docs/docs/models.mdx | 4 +- src/content/docs/docs/multi-agent.mdx | 4 +- .../observability/advanced-configuration.mdx | 4 +- .../docs/observability/authentication.mdx | 4 +- .../docs/observability/getting-started.mdx | 4 +- .../observability/telemetry-collection.mdx | 4 +- .../docs/observability/troubleshooting.mdx | 4 +- .../docs/docs/plugin-authoring/evaluators.mdx | 4 +- .../docs/docs/plugin-authoring/overview.mdx | 4 +- src/content/docs/docs/rag.mdx | 4 +- src/content/docs/docs/tool-calling.mdx | 4 +- .../docs/docs/tutorials/chat-with-pdf.mdx | 4 +- .../tutorials/summarize-youtube-videos.mdx | 4 +- src/content/docs/index.mdx | 4 +- src/sidebar.ts | 122 +++++++++--------- 66 files changed, 245 insertions(+), 273 deletions(-) delete mode 100644 src/components/GlobalLanguageSelector.astro diff --git a/src/components/GlobalLanguageSelector.astro b/src/components/GlobalLanguageSelector.astro deleted file mode 100644 index 07cde0e1..00000000 --- a/src/components/GlobalLanguageSelector.astro +++ /dev/null @@ -1,121 +0,0 @@ ---- -// Get current language from URL or default -const currentLang = Astro.url.searchParams.get('lang') || 'js'; - -const languageOptions = [ - { value: 'js', label: 'JavaScript', icon: '📜' }, - { value: 'go', label: 'Go', icon: '🔷' }, - { value: 'python', label: 'Python (Preview)', icon: '🐍' }, -]; ---- - -
- - -
- - - - \ No newline at end of file diff --git a/src/components/sidebar.astro b/src/components/sidebar.astro index 90044d30..ff76a838 100644 --- a/src/components/sidebar.astro +++ b/src/components/sidebar.astro @@ -1,5 +1,4 @@ --- -import GlobalLanguageSelector from './GlobalLanguageSelector.astro'; import MobileMenuFooter from '@astrojs/starlight/components/MobileMenuFooter.astro'; import SidebarPersister from '@astrojs/starlight/components/SidebarPersister.astro'; import SidebarSublist from '@astrojs/starlight/components/SidebarSublist.astro'; @@ -7,8 +6,6 @@ import SidebarSublist from '@astrojs/starlight/components/SidebarSublist.astro'; const { sidebar } = Astro.locals.starlightRoute; --- - - diff --git a/src/content/custom/head.astro b/src/content/custom/head.astro index eb27dc6c..205a913e 100644 --- a/src/content/custom/head.astro +++ b/src/content/custom/head.astro @@ -279,31 +279,4 @@ html[data-genkit-lang="python"] .lang-content[data-lang~="python"] { visibility: visible !important; } -/* ============================================ - SIDEBAR NAVIGATION FILTERING - ============================================ */ - -/* Hide all sidebar items with language restrictions by default */ -.sidebar-content a[data-lang] { - display: none !important; -} - -/* Show sidebar items that support the current language */ -html[data-genkit-lang="js"] .sidebar-content a[data-lang~="js"] { - display: block !important; -} - -html[data-genkit-lang="go"] .sidebar-content a[data-lang~="go"] { - display: block !important; -} - -html[data-genkit-lang="python"] .sidebar-content a[data-lang~="python"] { - display: block !important; -} - -/* Smooth transitions for sidebar filtering */ -.sidebar-content a[data-lang] { - transition: opacity 0.2s ease-out; -} - diff --git a/src/content/docs/docs/agentic-patterns.mdx b/src/content/docs/docs/agentic-patterns.mdx index 423d38a1..b5097026 100644 --- a/src/content/docs/docs/agentic-patterns.mdx +++ b/src/content/docs/docs/agentic-patterns.mdx @@ -3,11 +3,13 @@ title: Implementing Agentic Patterns description: Learn to build powerful AI systems by understanding the trade-offs between reliable workflows and flexible agents, and implementing key agentic patterns with Genkit. --- +import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; import { Tabs, TabItem } from '@astrojs/starlight/components'; -
+
+
diff --git a/src/content/docs/docs/api-references.mdx b/src/content/docs/docs/api-references.mdx index a2c9a5ef..52581fca 100644 --- a/src/content/docs/docs/api-references.mdx +++ b/src/content/docs/docs/api-references.mdx @@ -4,10 +4,12 @@ description: Complete API documentation for Genkit across JavaScript, Go, and Py --- import { LinkButton } from '@astrojs/starlight/components'; +import LanguageSelector from '../../../components/LanguageSelector.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; -
+
+
diff --git a/src/content/docs/docs/api-stability.mdx b/src/content/docs/docs/api-stability.mdx index 221b9117..b27d4ae2 100644 --- a/src/content/docs/docs/api-stability.mdx +++ b/src/content/docs/docs/api-stability.mdx @@ -3,10 +3,12 @@ title: API Stability Channels description: This document explains the API stability channels in Genkit, including stable and beta versions, and how to use them. --- import { LinkButton } from '@astrojs/starlight/components'; +import LanguageSelector from '../../../components/LanguageSelector.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; -
+
+
diff --git a/src/content/docs/docs/chat.mdx b/src/content/docs/docs/chat.mdx index e2db8957..1e6892be 100644 --- a/src/content/docs/docs/chat.mdx +++ b/src/content/docs/docs/chat.mdx @@ -3,11 +3,13 @@ title: Creating persistent chat sessions description: Learn how to create persistent chat sessions in Genkit, including session basics, stateful sessions, multi-thread sessions, and session persistence across different languages. --- +import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; import ExampleLink from '@/components/ExampleLink.astro'; -
+
+
diff --git a/src/content/docs/docs/context.mdx b/src/content/docs/docs/context.mdx index ecbeb8ab..2803e8a4 100644 --- a/src/content/docs/docs/context.mdx +++ b/src/content/docs/docs/context.mdx @@ -3,12 +3,14 @@ title: Passing information through context description: Learn how Genkit's context object propagates generation and execution information throughout your application, making it available to flows, tools, and prompts across different languages. --- +import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; import ExampleLink from '@/components/ExampleLink.astro'; import { Tabs, TabItem } from '@astrojs/starlight/components'; -
+
+
diff --git a/src/content/docs/docs/deployment/any-platform.mdx b/src/content/docs/docs/deployment/any-platform.mdx index 20ff63b6..eade839b 100644 --- a/src/content/docs/docs/deployment/any-platform.mdx +++ b/src/content/docs/docs/deployment/any-platform.mdx @@ -3,10 +3,12 @@ title: Deploy to Any Platform description: Learn how to deploy Genkit flows to any Node.js, Go, or Python hosting platform with maximum flexibility and control. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/deployment/authorization.mdx b/src/content/docs/docs/deployment/authorization.mdx index 20f2f020..523af52f 100644 --- a/src/content/docs/docs/deployment/authorization.mdx +++ b/src/content/docs/docs/deployment/authorization.mdx @@ -3,10 +3,12 @@ title: Authorization and integrity description: This document explains how to manage authorization and integrity in Genkit applications, covering Firebase and non-Firebase HTTP authorization. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/deployment/cloud-run.mdx b/src/content/docs/docs/deployment/cloud-run.mdx index 40cb8756..3d5e2b59 100644 --- a/src/content/docs/docs/deployment/cloud-run.mdx +++ b/src/content/docs/docs/deployment/cloud-run.mdx @@ -3,10 +3,12 @@ title: Deploy with Cloud Run description: Learn how to deploy Genkit flows to Google Cloud Run across JavaScript, Go, and Python with automatic scaling and containerization. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/deployment/firebase.mdx b/src/content/docs/docs/deployment/firebase.mdx index fdf32e30..0ddbd4cf 100644 --- a/src/content/docs/docs/deployment/firebase.mdx +++ b/src/content/docs/docs/deployment/firebase.mdx @@ -3,10 +3,12 @@ title: Deploy with Firebase description: Learn how to deploy Genkit flows as Cloud Functions for Firebase with built-in authentication and authorization. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/develop-with-ai.mdx b/src/content/docs/docs/develop-with-ai.mdx index 6d26c86b..8676028c 100644 --- a/src/content/docs/docs/develop-with-ai.mdx +++ b/src/content/docs/docs/develop-with-ai.mdx @@ -4,10 +4,12 @@ description: 'Configure AI tools and IDEs to work with Genkit for enhanced code --- import { Aside } from '@astrojs/starlight/components'; +import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/devtools.mdx b/src/content/docs/docs/devtools.mdx index 90a3b8b3..f479e1dd 100644 --- a/src/content/docs/docs/devtools.mdx +++ b/src/content/docs/docs/devtools.mdx @@ -4,10 +4,12 @@ description: Explore Genkit's developer tools, including the CLI for command-lin --- import { Tabs, TabItem } from '@astrojs/starlight/components'; +import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/dotprompt.mdx b/src/content/docs/docs/dotprompt.mdx index 4fa44aa5..7c509ae7 100644 --- a/src/content/docs/docs/dotprompt.mdx +++ b/src/content/docs/docs/dotprompt.mdx @@ -3,10 +3,12 @@ title: Managing prompts with Dotprompt description: Learn how to use Dotprompt to manage prompts, models, and parameters for generative AI models across JavaScript and Go, with a streamlined approach to prompt engineering and iteration. --- +import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/error-types.mdx b/src/content/docs/docs/error-types.mdx index 9d5cca0e..d4cdafbe 100644 --- a/src/content/docs/docs/error-types.mdx +++ b/src/content/docs/docs/error-types.mdx @@ -3,10 +3,12 @@ title: Error Types description: Learn about Genkit's specialized error types, GenkitError and UserFacingError, and how they are used to differentiate between internal and user-facing issues. --- +import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/evaluation.mdx b/src/content/docs/docs/evaluation.mdx index c0c9803f..e202ff8e 100644 --- a/src/content/docs/docs/evaluation.mdx +++ b/src/content/docs/docs/evaluation.mdx @@ -3,11 +3,13 @@ title: Evaluation description: Learn about Genkit's evaluation capabilities across JavaScript and Go, including inference-based and raw evaluation, dataset creation, and how to use the Developer UI and CLI for testing and analysis. --- +import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; import ThemeImage from '../../../components/ThemeImage.astro'; -
+
+
diff --git a/src/content/docs/docs/feedback.mdx b/src/content/docs/docs/feedback.mdx index 9e070daa..710b8863 100644 --- a/src/content/docs/docs/feedback.mdx +++ b/src/content/docs/docs/feedback.mdx @@ -3,9 +3,11 @@ title: Connect with us description: Learn how to connect with the Genkit community and provide feedback on your experience across JavaScript, Go, and Python, including Discord and GitHub resources. --- +import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; -
+
+
diff --git a/src/content/docs/docs/flows.mdx b/src/content/docs/docs/flows.mdx index 7a5c22a6..2bdc3b92 100644 --- a/src/content/docs/docs/flows.mdx +++ b/src/content/docs/docs/flows.mdx @@ -3,10 +3,12 @@ title: Defining AI workflows description: Learn how to define and manage AI workflows in Genkit using flows across JavaScript, Go, and Python, which provide type safety, integration with the developer UI, and simplified deployment. --- +import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/frameworks/angular.mdx b/src/content/docs/docs/frameworks/angular.mdx index 4f7c79ed..dd255482 100644 --- a/src/content/docs/docs/frameworks/angular.mdx +++ b/src/content/docs/docs/frameworks/angular.mdx @@ -3,10 +3,12 @@ title: Use Genkit in an Angular app description: Learn how to use Genkit flows in Angular applications --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/frameworks/express.mdx b/src/content/docs/docs/frameworks/express.mdx index 5a6a7b6b..03d2f8ce 100644 --- a/src/content/docs/docs/frameworks/express.mdx +++ b/src/content/docs/docs/frameworks/express.mdx @@ -3,10 +3,12 @@ title: Express plugin description: The Genkit Express plugin provides utilities for conveniently exposing Genkit flows and actions via an Express HTTP server as REST APIs. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/frameworks/flask.mdx b/src/content/docs/docs/frameworks/flask.mdx index 0f493432..af913a06 100644 --- a/src/content/docs/docs/frameworks/flask.mdx +++ b/src/content/docs/docs/frameworks/flask.mdx @@ -3,10 +3,12 @@ title: Flask Integration description: Learn how to integrate Genkit with Flask applications for Python, including REST API endpoints, authentication, streaming responses, and deployment strategies. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/frameworks/nextjs.mdx b/src/content/docs/docs/frameworks/nextjs.mdx index a541f315..b6fb40e3 100644 --- a/src/content/docs/docs/frameworks/nextjs.mdx +++ b/src/content/docs/docs/frameworks/nextjs.mdx @@ -3,10 +3,12 @@ title: Next.js Integration description: Learn how to integrate Genkit with Next.js applications across JavaScript, Go, and Python, including API routes, client-side calls, streaming, and deployment strategies. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/get-started.mdx b/src/content/docs/docs/get-started.mdx index 4cd56f56..b8ed658d 100644 --- a/src/content/docs/docs/get-started.mdx +++ b/src/content/docs/docs/get-started.mdx @@ -4,10 +4,12 @@ description: Learn how to get started with Genkit across JavaScript, Go, and Pyt --- import { LinkButton } from '@astrojs/starlight/components'; +import LanguageSelector from '../../../components/LanguageSelector.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/alloydb.mdx b/src/content/docs/docs/integrations/alloydb.mdx index 08ccfa02..2eca2344 100644 --- a/src/content/docs/docs/integrations/alloydb.mdx +++ b/src/content/docs/docs/integrations/alloydb.mdx @@ -3,10 +3,12 @@ title: AlloyDB for PostgreSQL description: Learn how to use AlloyDB for PostgreSQL with pgvector extension as a vector database for semantic search and RAG applications in Go. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/anthropic.mdx b/src/content/docs/docs/integrations/anthropic.mdx index ab5ba627..d02b83b6 100644 --- a/src/content/docs/docs/integrations/anthropic.mdx +++ b/src/content/docs/docs/integrations/anthropic.mdx @@ -3,10 +3,12 @@ title: Anthropic Plugin description: Learn how to configure and use Genkit Anthropic plugin to access Claude models in Go. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/astra-db.mdx b/src/content/docs/docs/integrations/astra-db.mdx index 97d2cf66..48667fd7 100644 --- a/src/content/docs/docs/integrations/astra-db.mdx +++ b/src/content/docs/docs/integrations/astra-db.mdx @@ -3,10 +3,12 @@ title: Astra DB Vector Database description: Learn how to use DataStax Astra DB with Genkit for serverless vector storage, semantic search, and RAG applications. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/auth0.mdx b/src/content/docs/docs/integrations/auth0.mdx index 38790395..81827041 100644 --- a/src/content/docs/docs/integrations/auth0.mdx +++ b/src/content/docs/docs/integrations/auth0.mdx @@ -3,10 +3,12 @@ title: Auth0 AI Plugin description: Learn how to use the Auth0 AI plugin for Genkit to build secure AI-powered applications with authentication, authorization, and fine-grained access control using Auth0 and Okta FGA. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/chroma.mdx b/src/content/docs/docs/integrations/chroma.mdx index c479d449..a2b78b0d 100644 --- a/src/content/docs/docs/integrations/chroma.mdx +++ b/src/content/docs/docs/integrations/chroma.mdx @@ -3,10 +3,12 @@ title: Chroma Vector Database description: Learn how to use Chroma with Genkit for vector storage, semantic search, and RAG applications. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/cloud-firestore.mdx b/src/content/docs/docs/integrations/cloud-firestore.mdx index b04c87e0..8ea95134 100644 --- a/src/content/docs/docs/integrations/cloud-firestore.mdx +++ b/src/content/docs/docs/integrations/cloud-firestore.mdx @@ -3,10 +3,12 @@ title: Cloud Firestore Vector Search description: Learn how to use Google Cloud Firestore as a vector database for RAG applications across JavaScript, Go, and Python with Genkit. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/cloud-sql-postgresql.mdx b/src/content/docs/docs/integrations/cloud-sql-postgresql.mdx index 4ae3a354..fab2d63d 100644 --- a/src/content/docs/docs/integrations/cloud-sql-postgresql.mdx +++ b/src/content/docs/docs/integrations/cloud-sql-postgresql.mdx @@ -3,10 +3,12 @@ title: Cloud SQL for PostgreSQL Vector Database description: Learn how to use Google Cloud SQL for PostgreSQL with pgvector extension and Genkit for managed vector storage and semantic search. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/deepseek.mdx b/src/content/docs/docs/integrations/deepseek.mdx index 462a744a..1de5e628 100644 --- a/src/content/docs/docs/integrations/deepseek.mdx +++ b/src/content/docs/docs/integrations/deepseek.mdx @@ -3,10 +3,12 @@ title: DeepSeek Plugin description: Learn how to configure and use Genkit DeepSeek plugin to access DeepSeek models in JavaScript. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/dev-local-vectorstore.mdx b/src/content/docs/docs/integrations/dev-local-vectorstore.mdx index c6496073..5a7f85b6 100644 --- a/src/content/docs/docs/integrations/dev-local-vectorstore.mdx +++ b/src/content/docs/docs/integrations/dev-local-vectorstore.mdx @@ -3,10 +3,12 @@ title: Dev Local Vector Store description: Learn how to use the Dev Local Vector Store for local development and testing across JavaScript, Go, and Python with Genkit. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/google-cloud.mdx b/src/content/docs/docs/integrations/google-cloud.mdx index e54cddec..fa33982e 100644 --- a/src/content/docs/docs/integrations/google-cloud.mdx +++ b/src/content/docs/docs/integrations/google-cloud.mdx @@ -3,10 +3,12 @@ title: Google Cloud telemetry and logging plugin description: Learn how to configure the Genkit Google Cloud plugin to export telemetry and logs to Cloud's operations suite for Go applications. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/google-genai.mdx b/src/content/docs/docs/integrations/google-genai.mdx index 21c24a0c..e02daf26 100644 --- a/src/content/docs/docs/integrations/google-genai.mdx +++ b/src/content/docs/docs/integrations/google-genai.mdx @@ -3,10 +3,12 @@ title: Google AI plugin description: Learn how to use Google's Gemini models with Genkit across JavaScript, Go, and Python through the Google AI Studio API, including text generation, embeddings, image generation, video generation, and text-to-speech. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/lancedb.mdx b/src/content/docs/docs/integrations/lancedb.mdx index f943f3e0..7ee36945 100644 --- a/src/content/docs/docs/integrations/lancedb.mdx +++ b/src/content/docs/docs/integrations/lancedb.mdx @@ -3,10 +3,12 @@ title: LanceDB Vector Database description: Learn how to use LanceDB with Genkit for embedded vector storage, semantic search, and RAG applications. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/neo4j.mdx b/src/content/docs/docs/integrations/neo4j.mdx index ece0fda9..92b4d427 100644 --- a/src/content/docs/docs/integrations/neo4j.mdx +++ b/src/content/docs/docs/integrations/neo4j.mdx @@ -3,10 +3,12 @@ title: Neo4j Graph Vector Database description: Learn how to use Neo4j with Genkit for graph-based vector storage, semantic search, and knowledge graph applications. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/ollama.mdx b/src/content/docs/docs/integrations/ollama.mdx index 5c26e9ec..16c13eae 100644 --- a/src/content/docs/docs/integrations/ollama.mdx +++ b/src/content/docs/docs/integrations/ollama.mdx @@ -3,10 +3,12 @@ title: Ollama Plugin description: Learn how to configure and use the Ollama plugin for Genkit to interact with local LLMs and embedding models across JavaScript, Go, and Python. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/openai-compatible.mdx b/src/content/docs/docs/integrations/openai-compatible.mdx index 2177427d..c1e51b23 100644 --- a/src/content/docs/docs/integrations/openai-compatible.mdx +++ b/src/content/docs/docs/integrations/openai-compatible.mdx @@ -3,10 +3,12 @@ title: OpenAI-Compatible Plugin description: Learn how to configure and use Genkit OpenAI-compatible plugin to access models through any OpenAI-compatible API across JavaScript and Go. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/openai.mdx b/src/content/docs/docs/integrations/openai.mdx index b6c659ce..8b4e4620 100644 --- a/src/content/docs/docs/integrations/openai.mdx +++ b/src/content/docs/docs/integrations/openai.mdx @@ -3,10 +3,12 @@ title: OpenAI Plugin description: Learn how to configure and use Genkit OpenAI plugin to access various models and embedders from OpenAI across JavaScript and Go. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/pgvector.mdx b/src/content/docs/docs/integrations/pgvector.mdx index c82db277..87d2b729 100644 --- a/src/content/docs/docs/integrations/pgvector.mdx +++ b/src/content/docs/docs/integrations/pgvector.mdx @@ -3,10 +3,12 @@ title: pgvector (PostgreSQL Vector Extension) description: Learn how to use pgvector with Genkit for vector storage, semantic search, and RAG applications using PostgreSQL. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/pinecone.mdx b/src/content/docs/docs/integrations/pinecone.mdx index c2535cda..a6161d0f 100644 --- a/src/content/docs/docs/integrations/pinecone.mdx +++ b/src/content/docs/docs/integrations/pinecone.mdx @@ -3,10 +3,12 @@ title: Pinecone Vector Database description: Learn how to use Pinecone with Genkit for cloud vector storage, semantic search, and RAG applications. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/toolbox.mdx b/src/content/docs/docs/integrations/toolbox.mdx index 9bc9baa2..79ef65ea 100644 --- a/src/content/docs/docs/integrations/toolbox.mdx +++ b/src/content/docs/docs/integrations/toolbox.mdx @@ -3,10 +3,12 @@ title: MCP Toolbox for Databases description: Learn how to use the MCP Toolbox for Databases with Genkit to build enterprise-grade database tools with connection pooling, authentication, and security features. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/vectorsearch-bigquery.mdx b/src/content/docs/docs/integrations/vectorsearch-bigquery.mdx index 057e11b2..7d434e20 100644 --- a/src/content/docs/docs/integrations/vectorsearch-bigquery.mdx +++ b/src/content/docs/docs/integrations/vectorsearch-bigquery.mdx @@ -3,10 +3,12 @@ title: Vector Search using Bigquery description: Learn how to use the GCP Vector search using Bigquery with Genkit. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/vectorsearch-firestore.mdx b/src/content/docs/docs/integrations/vectorsearch-firestore.mdx index 52947c36..c0fa5133 100644 --- a/src/content/docs/docs/integrations/vectorsearch-firestore.mdx +++ b/src/content/docs/docs/integrations/vectorsearch-firestore.mdx @@ -3,10 +3,12 @@ title: Vector Search using Firestore description: Learn how to use the GCP Vector search using Firestore with Genkit. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/vertex-ai.mdx b/src/content/docs/docs/integrations/vertex-ai.mdx index dbbba481..5170df75 100644 --- a/src/content/docs/docs/integrations/vertex-ai.mdx +++ b/src/content/docs/docs/integrations/vertex-ai.mdx @@ -3,10 +3,12 @@ title: Vertex AI plugin description: Learn how to use Google Cloud Vertex AI with Genkit across JavaScript, Go, and Python, including enterprise features like grounding, Vector Search, Model Garden, and evaluation metrics. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/integrations/xai.mdx b/src/content/docs/docs/integrations/xai.mdx index 493691ee..d88ed390 100644 --- a/src/content/docs/docs/integrations/xai.mdx +++ b/src/content/docs/docs/integrations/xai.mdx @@ -3,10 +3,12 @@ title: xAI Plugin description: Learn how to configure and use Genkit xAI plugin to access xAI (Grok) models in JavaScript. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/interrupts.mdx b/src/content/docs/docs/interrupts.mdx index b708cfc1..97f126fb 100644 --- a/src/content/docs/docs/interrupts.mdx +++ b/src/content/docs/docs/interrupts.mdx @@ -4,11 +4,13 @@ description: Learn how to use interrupts in Genkit to pause and resume LLM gener --- import ExampleLink from '@/components/ExampleLink.astro'; +import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; import { Tabs, TabItem } from '@astrojs/starlight/components'; -
+
+
diff --git a/src/content/docs/docs/local-observability.mdx b/src/content/docs/docs/local-observability.mdx index e6134d54..0954a1e3 100644 --- a/src/content/docs/docs/local-observability.mdx +++ b/src/content/docs/docs/local-observability.mdx @@ -3,10 +3,12 @@ title: Local observability and metrics description: Learn about Genkit's local observability features, including tracing, metrics collection, and logging, powered by OpenTelemetry and integrated with the Genkit Developer UI across JavaScript, Go, and Python. --- +import LanguageSelector from '../../../components/LanguageSelector.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; -
+
+
diff --git a/src/content/docs/docs/mcp-server.mdx b/src/content/docs/docs/mcp-server.mdx index 947fd6bd..a4692c61 100644 --- a/src/content/docs/docs/mcp-server.mdx +++ b/src/content/docs/docs/mcp-server.mdx @@ -3,6 +3,7 @@ title: 'Genkit MCP Server' description: 'Integrate Genkit with MCP-aware IDEs and tools.' --- +import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; import { Tabs, TabItem } from '@astrojs/starlight/components'; diff --git a/src/content/docs/docs/model-context-protocol.mdx b/src/content/docs/docs/model-context-protocol.mdx index 924a665a..97dd9e90 100644 --- a/src/content/docs/docs/model-context-protocol.mdx +++ b/src/content/docs/docs/model-context-protocol.mdx @@ -3,10 +3,12 @@ title: Model Context Protocol (MCP) description: Learn how to extend Genkit's capabilities using the Model Context Protocol to connect with external tools, resources, and data sources across JavaScript and Go. --- +import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/models.mdx b/src/content/docs/docs/models.mdx index 5f90ca39..9cf8955d 100644 --- a/src/content/docs/docs/models.mdx +++ b/src/content/docs/docs/models.mdx @@ -5,10 +5,12 @@ description: Learn how to generate content with AI models using Genkit's unified import LLMSummary from '@/components/llm-summary.astro'; import ExampleLink from '@/components/ExampleLink.astro'; +import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/multi-agent.mdx b/src/content/docs/docs/multi-agent.mdx index 5b7974b4..64264beb 100644 --- a/src/content/docs/docs/multi-agent.mdx +++ b/src/content/docs/docs/multi-agent.mdx @@ -3,10 +3,12 @@ title: Building multi-agent systems description: Learn how to build multi-agent systems in Genkit by delegating tasks to specialized agents, addressing challenges of complex agentic workflows. --- +import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/observability/advanced-configuration.mdx b/src/content/docs/docs/observability/advanced-configuration.mdx index eff1eee2..9d9eeb9c 100644 --- a/src/content/docs/docs/observability/advanced-configuration.mdx +++ b/src/content/docs/docs/observability/advanced-configuration.mdx @@ -3,10 +3,12 @@ title: Advanced Configuration description: This guide covers advanced configuration options for Genkit's Firebase telemetry plugin, including fine-tuning telemetry collection, export settings, and disabling specific data types. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/observability/authentication.mdx b/src/content/docs/docs/observability/authentication.mdx index 523ecbe0..2d34c988 100644 --- a/src/content/docs/docs/observability/authentication.mdx +++ b/src/content/docs/docs/observability/authentication.mdx @@ -3,10 +3,12 @@ title: Authentication and authorization description: Learn how to authenticate and authorize the Firebase telemetry plugin for Genkit, covering API enablement, user authentication, and deployment to Google Cloud or other environments. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/observability/getting-started.mdx b/src/content/docs/docs/observability/getting-started.mdx index 10110cc9..60f6d255 100644 --- a/src/content/docs/docs/observability/getting-started.mdx +++ b/src/content/docs/docs/observability/getting-started.mdx @@ -3,10 +3,12 @@ title: Get started with Genkit Monitoring description: This quickstart guide explains how to set up Genkit Monitoring for your deployed Genkit features to collect and view real-time telemetry data, including metrics, traces, and production trace exports for evaluations. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/observability/telemetry-collection.mdx b/src/content/docs/docs/observability/telemetry-collection.mdx index 1e7fce76..a32e1ed8 100644 --- a/src/content/docs/docs/observability/telemetry-collection.mdx +++ b/src/content/docs/docs/observability/telemetry-collection.mdx @@ -3,10 +3,12 @@ title: Telemetry Collection description: This document details the metrics, trace attributes, and logs collected by the Firebase telemetry plugin for Genkit, along with information on latency, quotas, and cost. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/observability/troubleshooting.mdx b/src/content/docs/docs/observability/troubleshooting.mdx index f7d8ef69..04c8b425 100644 --- a/src/content/docs/docs/observability/troubleshooting.mdx +++ b/src/content/docs/docs/observability/troubleshooting.mdx @@ -3,10 +3,12 @@ title: Genkit Monitoring - Troubleshooting description: This guide provides solutions to common issues encountered when using Genkit Monitoring, including problems with traces, metrics, and telemetry export. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/plugin-authoring/evaluators.mdx b/src/content/docs/docs/plugin-authoring/evaluators.mdx index ed52c9ac..d5fbef30 100644 --- a/src/content/docs/docs/plugin-authoring/evaluators.mdx +++ b/src/content/docs/docs/plugin-authoring/evaluators.mdx @@ -3,10 +3,12 @@ title: Writing a Genkit Evaluator description: Learn how to write custom Genkit evaluators for heuristic and LLM-based assessments, including defining prompts, scoring functions, and evaluator actions. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/plugin-authoring/overview.mdx b/src/content/docs/docs/plugin-authoring/overview.mdx index 2d25c5b4..e2d4030c 100644 --- a/src/content/docs/docs/plugin-authoring/overview.mdx +++ b/src/content/docs/docs/plugin-authoring/overview.mdx @@ -3,10 +3,12 @@ title: Creating Genkit Plugins description: Learn how to extend Genkit's capabilities by writing custom plugins, covering plugin creation, options, and implementing new model providers. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/rag.mdx b/src/content/docs/docs/rag.mdx index 2e7c0a7e..765064b2 100644 --- a/src/content/docs/docs/rag.mdx +++ b/src/content/docs/docs/rag.mdx @@ -3,10 +3,12 @@ title: Retrieval-augmented generation (RAG) description: Learn how Genkit simplifies retrieval-augmented generation (RAG) by providing abstractions and plugins for indexers, embedders, and retrievers to incorporate external data into LLM responses. --- +import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/tool-calling.mdx b/src/content/docs/docs/tool-calling.mdx index b1c06ce0..43f2a237 100644 --- a/src/content/docs/docs/tool-calling.mdx +++ b/src/content/docs/docs/tool-calling.mdx @@ -4,10 +4,12 @@ description: Learn how to enable LLMs to interact with external applications and --- import ExampleLink from '@/components/ExampleLink.astro'; +import LanguageSelector from '../../../components/LanguageSelector.astro'; import CopyMarkdownButton from '../../../components/CopyMarkdownButton.astro'; import LanguageContent from '../../../components/LanguageContent.astro'; -
+
+
diff --git a/src/content/docs/docs/tutorials/chat-with-pdf.mdx b/src/content/docs/docs/tutorials/chat-with-pdf.mdx index c3f61b1c..dcf430da 100644 --- a/src/content/docs/docs/tutorials/chat-with-pdf.mdx +++ b/src/content/docs/docs/tutorials/chat-with-pdf.mdx @@ -3,10 +3,12 @@ title: Chat with a PDF file description: Learn how to build a conversational application that allows users to extract information from PDF documents using natural language across JavaScript, Go, and Python. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; -
+
+
diff --git a/src/content/docs/docs/tutorials/summarize-youtube-videos.mdx b/src/content/docs/docs/tutorials/summarize-youtube-videos.mdx index 4ce01a80..aa039679 100644 --- a/src/content/docs/docs/tutorials/summarize-youtube-videos.mdx +++ b/src/content/docs/docs/tutorials/summarize-youtube-videos.mdx @@ -3,10 +3,12 @@ title: Summarize YouTube videos description: Learn how to build a conversational application that allows users to summarize YouTube videos and chat about their contents using natural language across JavaScript, Go, and Python. --- +import LanguageSelector from '../../../../components/LanguageSelector.astro'; import LanguageContent from '../../../../components/LanguageContent.astro'; import CopyMarkdownButton from '../../../../components/CopyMarkdownButton.astro'; -
+
+
diff --git a/src/content/docs/index.mdx b/src/content/docs/index.mdx index addbbced..05f36202 100644 --- a/src/content/docs/index.mdx +++ b/src/content/docs/index.mdx @@ -22,6 +22,7 @@ hero: --- import { Tabs, TabItem } from '@astrojs/starlight/components'; +import LanguageSelector from '../../components/LanguageSelector.astro'; import LanguageContent from '../../components/LanguageContent.astro'; import { Aside } from '@astrojs/starlight/components'; @@ -35,7 +36,8 @@ It offers a unified interface for integrating AI models from many model provider Get started with just a few lines of code: -
+
+
diff --git a/src/sidebar.ts b/src/sidebar.ts index 03f1c637..4af2f786 100644 --- a/src/sidebar.ts +++ b/src/sidebar.ts @@ -2,122 +2,122 @@ const DOCS_SIDEBAR = [ { label: "Get started", items: [ - { label: "Get started", slug: "docs/get-started", attrs: { 'data-lang': 'js go python' } }, - { label: "Developer tools", slug: "docs/devtools", attrs: { 'data-lang': 'js go python' } }, + { label: "Get started", slug: "docs/get-started" }, + { label: "Developer tools", slug: "docs/devtools" }, ], }, { label: "Build with AI", items: [ - { label: "Genkit MCP Server", slug: "docs/mcp-server", attrs: { 'data-lang': 'js go python' } }, - { label: "AI-Assisted Development", slug: "docs/develop-with-ai", attrs: { 'data-lang': 'js go python' } }, + { label: "Genkit MCP Server", slug: "docs/mcp-server" }, + { label: "AI-Assisted Development", slug: "docs/develop-with-ai" }, ], }, { label: "Building AI workflows", items: [ - { label: "Generating content", slug: "docs/models", attrs: { 'data-lang': 'js go python' } }, - { label: "Passing information through context", slug: "docs/context", attrs: { 'data-lang': 'js' } }, - { label: "Creating flows", slug: "docs/flows", attrs: { 'data-lang': 'js go python' } }, - { label: "Implementing Agentic Patterns", slug: "docs/agentic-patterns", attrs: { 'data-lang': 'js go' } }, - { label: "Managing prompts with Dotprompt", slug: "docs/dotprompt", attrs: { 'data-lang': 'js go' } }, - { label: "Creating persistent chat sessions", slug: "docs/chat", attrs: { 'data-lang': 'js' } }, - { label: "Tool calling", slug: "docs/tool-calling", attrs: { 'data-lang': 'js go python' } }, - { label: "Model Context Protocol (MCP)", slug: "docs/model-context-protocol", attrs: { 'data-lang': 'js go' } }, - { label: "Pause generation using interrupts", slug: "docs/interrupts", attrs: { 'data-lang': 'js go python' } }, - { label: "Retrieval-augmented generation (RAG)", slug: "docs/rag", attrs: { 'data-lang': 'js go python' } }, - { label: "Building multi-agent systems", slug: "docs/multi-agent", attrs: { 'data-lang': 'js' } }, - { label: "Error types", slug: "docs/error-types", attrs: { 'data-lang': 'js go python' } }, - { label: "Evaluation", slug: "docs/evaluation", attrs: { 'data-lang': 'js go' } }, - { label: "Local observability and metrics", slug: "docs/local-observability", attrs: { 'data-lang': 'js go python' } }, + { label: "Generating content", slug: "docs/models" }, + { label: "Passing information through context", slug: "docs/context" }, + { label: "Creating flows", slug: "docs/flows" }, + { label: "Implementing Agentic Patterns", slug: "docs/agentic-patterns" }, + { label: "Managing prompts with Dotprompt", slug: "docs/dotprompt" }, + { label: "Creating persistent chat sessions", slug: "docs/chat" }, + { label: "Tool calling", slug: "docs/tool-calling" }, + { label: "Model Context Protocol (MCP)", slug: "docs/model-context-protocol" }, + { label: "Pause generation using interrupts", slug: "docs/interrupts" }, + { label: "Retrieval-augmented generation (RAG)", slug: "docs/rag" }, + { label: "Building multi-agent systems", slug: "docs/multi-agent" }, + { label: "Error types", slug: "docs/error-types" }, + { label: "Evaluation", slug: "docs/evaluation" }, + { label: "Local observability and metrics", slug: "docs/local-observability" }, ], }, { label: "Tutorials", items: [ - { label: "Chat with a PDF", slug: "docs/tutorials/chat-with-pdf", attrs: { 'data-lang': 'js' } }, - { label: "Summarize YouTube videos", slug: "docs/tutorials/summarize-youtube-videos", attrs: { 'data-lang': 'js' } }, + { label: "Chat with a PDF", slug: "docs/tutorials/chat-with-pdf" }, + { label: "Summarize YouTube videos", slug: "docs/tutorials/summarize-youtube-videos" }, ], }, { label: "Model Providers", items: [ - { label: "Google Generative AI", slug: "docs/integrations/google-genai", attrs: { 'data-lang': 'js go python' } }, - { label: "Google Vertex AI", slug: "docs/integrations/vertex-ai", attrs: { 'data-lang': 'js go python' } }, - { label: "OpenAI", slug: "docs/integrations/openai", attrs: { 'data-lang': 'js go python' } }, - { label: "OpenAI-Compatible APIs", slug: "docs/integrations/openai-compatible", attrs: { 'data-lang': 'js go' } }, - { label: "Anthropic (Claude)", slug: "docs/integrations/anthropic", attrs: { 'data-lang': 'go' } }, - { label: "xAI (Grok)", slug: "docs/integrations/xai", attrs: { 'data-lang': 'js' } }, - { label: "DeepSeek", slug: "docs/integrations/deepseek", attrs: { 'data-lang': 'js' } }, - { label: "Ollama", slug: "docs/integrations/ollama", attrs: { 'data-lang': 'js go python' } }, + { label: "Google Generative AI", slug: "docs/integrations/google-genai" }, + { label: "Google Vertex AI", slug: "docs/integrations/vertex-ai" }, + { label: "OpenAI", slug: "docs/integrations/openai" }, + { label: "OpenAI-Compatible APIs", slug: "docs/integrations/openai-compatible" }, + { label: "Anthropic (Claude)", slug: "docs/integrations/anthropic" }, + { label: "xAI (Grok)", slug: "docs/integrations/xai" }, + { label: "DeepSeek", slug: "docs/integrations/deepseek" }, + { label: "Ollama", slug: "docs/integrations/ollama" }, ], }, { label: "Database Providers", items: [ - { label: "MCP Toolbox for Databases", slug: "docs/integrations/toolbox", attrs: { 'data-lang': 'js go' } }, - { label: "Dev Local Vector Store", slug: "docs/integrations/dev-local-vectorstore", attrs: { 'data-lang': 'js go python' } }, - { label: "Pinecone", slug: "docs/integrations/pinecone", attrs: { 'data-lang': 'js go python' } }, - { label: "Chroma", slug: "docs/integrations/chroma", attrs: { 'data-lang': 'js' } }, - { label: "pgvector", slug: "docs/integrations/pgvector", attrs: { 'data-lang': 'js go python' } }, - { label: "LanceDB", slug: "docs/integrations/lancedb", attrs: { 'data-lang': 'js go python' } }, - { label: "Astra DB", slug: "docs/integrations/astra-db", attrs: { 'data-lang': 'js go python' } }, - { label: "Neo4j", slug: "docs/integrations/neo4j", attrs: { 'data-lang': 'js go python' } }, - { label: "AlloyDB for PostgreSQL", slug: "docs/integrations/alloydb", attrs: { 'data-lang': 'go' } }, - { label: "Cloud SQL PostgreSQL", slug: "docs/integrations/cloud-sql-postgresql", attrs: { 'data-lang': 'js go python' } }, - { label: "Cloud Firestore", slug: "docs/integrations/cloud-firestore", attrs: { 'data-lang': 'js go python' } }, - { label: "Vertex AI Vectosearch with Bigquery", slug: "docs/integrations/vectorsearch-bigquery", attrs: { 'data-lang': 'js go python' } }, - { label: "Vertex AI Vectosearch with Firestore", slug: "docs/integrations/vectorsearch-firestore", attrs: { 'data-lang': 'js go python' } }, + { label: "MCP Toolbox for Databases", slug: "docs/integrations/toolbox" }, + { label: "Dev Local Vector Store", slug: "docs/integrations/dev-local-vectorstore" }, + { label: "Pinecone", slug: "docs/integrations/pinecone" }, + { label: "Chroma", slug: "docs/integrations/chroma" }, + { label: "pgvector", slug: "docs/integrations/pgvector" }, + { label: "LanceDB", slug: "docs/integrations/lancedb" }, + { label: "Astra DB", slug: "docs/integrations/astra-db" }, + { label: "Neo4j", slug: "docs/integrations/neo4j" }, + { label: "AlloyDB for PostgreSQL", slug: "docs/integrations/alloydb" }, + { label: "Cloud SQL PostgreSQL", slug: "docs/integrations/cloud-sql-postgresql" }, + { label: "Cloud Firestore", slug: "docs/integrations/cloud-firestore" }, + { label: "Vertex AI Vectosearch with Bigquery", slug: "docs/integrations/vectorsearch-bigquery" }, + { label: "Vertex AI Vectosearch with Firestore", slug: "docs/integrations/vectorsearch-firestore" }, ], }, { label: "Web Framework Integrations", items: [ - { label: "Express.js", slug: "docs/frameworks/express", attrs: { 'data-lang': 'js' } }, - { label: "Next.js", slug: "docs/frameworks/nextjs", attrs: { 'data-lang': 'js' } }, - { label: "Angular", slug: "docs/frameworks/angular", attrs: { 'data-lang': 'js' } }, - { label: "Flask", slug: "docs/frameworks/flask", attrs: { 'data-lang': 'python' } }, + { label: "Express.js", slug: "docs/frameworks/express" }, + { label: "Next.js", slug: "docs/frameworks/nextjs" }, + { label: "Angular", slug: "docs/frameworks/angular" }, + { label: "Flask", slug: "docs/frameworks/flask" }, ], }, { label: "Deployment", items: [ - { label: "Firebase", slug: "docs/deployment/firebase", attrs: { 'data-lang': 'js' } }, - { label: "Cloud Run", slug: "docs/deployment/cloud-run", attrs: { 'data-lang': 'js go python' } }, - { label: "Any Platform", slug: "docs/deployment/any-platform", attrs: { 'data-lang': 'js go python' } }, - { label: "Client App Integration", slug: "docs/client", attrs: { 'data-lang': 'js go python' } }, + { label: "Firebase", slug: "docs/deployment/firebase" }, + { label: "Cloud Run", slug: "docs/deployment/cloud-run" }, + { label: "Any Platform", slug: "docs/deployment/any-platform" }, + { label: "Client App Integration", slug: "docs/client" }, ], }, { label: "Authorization", items: [ - { label: "Authorization & Integrity", slug: "docs/deployment/authorization", attrs: { 'data-lang': 'js' } }, - { label: "Auth0 AI", slug: "docs/integrations/auth0", attrs: { 'data-lang': 'js' } }, + { label: "Authorization & Integrity", slug: "docs/deployment/authorization" }, + { label: "Auth0 AI", slug: "docs/integrations/auth0" }, ], }, { label: "Writing Plugins", items: [ - { label: "Overview", slug: "docs/plugin-authoring/overview", attrs: { 'data-lang': 'js go' } }, - { label: "Writing Genkit Evaluators", slug: "docs/plugin-authoring/evaluators", attrs: { 'data-lang': 'js' } }, + { label: "Overview", slug: "docs/plugin-authoring/overview" }, + { label: "Writing Genkit Evaluators", slug: "docs/plugin-authoring/evaluators" }, ], }, { label: "Observability and Monitoring", items: [ - { label: "Getting started", slug: "docs/observability/getting-started", attrs: { 'data-lang': 'js go' } }, - { label: "Authentication", slug: "docs/observability/authentication", attrs: { 'data-lang': 'js go' } }, - { label: "Telemetry Collection", slug: "docs/observability/telemetry-collection", attrs: { 'data-lang': 'js go' } }, - { label: "Advanced Configuration", slug: "docs/observability/advanced-configuration", attrs: { 'data-lang': 'js go' } }, - { label: "Troubleshooting", slug: "docs/observability/troubleshooting", attrs: { 'data-lang': 'js go' } }, + { label: "Getting started", slug: "docs/observability/getting-started" }, + { label: "Authentication", slug: "docs/observability/authentication" }, + { label: "Telemetry Collection", slug: "docs/observability/telemetry-collection" }, + { label: "Advanced Configuration", slug: "docs/observability/advanced-configuration" }, + { label: "Troubleshooting", slug: "docs/observability/troubleshooting" }, ], }, { label: "Reference", items: [ - { label: "API References", slug: "docs/api-references", attrs: { 'data-lang': 'js go python' } }, - { label: "API Stability", slug: "docs/api-stability", attrs: { 'data-lang': 'js go python' } }, - { label: "Feedback", slug: "docs/feedback", attrs: { 'data-lang': 'js go python' } }, + { label: "API References", slug: "docs/api-references" }, + { label: "API Stability", slug: "docs/api-stability" }, + { label: "Feedback", slug: "docs/feedback" }, ], }, ]; From 66319dff053ffd82aef1ac15a19632d43003b6dd Mon Sep 17 00:00:00 2001 From: Christopher Gill Date: Mon, 27 Oct 2025 17:25:00 -0400 Subject: [PATCH 3/8] feat: add global language selector component for multi-language docs Add GlobalLanguageSelector.astro component that provides a unified language switcher for JavaScript, Go, and Python code examples. Features include: - CSS-controlled display to prevent flicker during language switches - Integration with UnifiedPageManager for cross-page synchronization - Accessible design with ARIA labels and screen reader support - Mobile-responsive styling with hover and focus states - MutationObserver for real-time sync with data-genkit-lang attribute --- src/components/GlobalLanguageSelector.astro | 185 ++++++++++++++++++++ src/components/LanguageSelector.astro | 8 +- src/components/sidebar.astro | 3 + src/content/custom/head.astro | 27 +++ src/sidebar.ts | 122 ++++++------- 5 files changed, 280 insertions(+), 65 deletions(-) create mode 100644 src/components/GlobalLanguageSelector.astro diff --git a/src/components/GlobalLanguageSelector.astro b/src/components/GlobalLanguageSelector.astro new file mode 100644 index 00000000..805084b3 --- /dev/null +++ b/src/components/GlobalLanguageSelector.astro @@ -0,0 +1,185 @@ +--- +const languageOptions = [ + { value: 'js', label: 'JavaScript' }, + { value: 'go', label: 'Go' }, + { value: 'python', label: 'Python (Preview)' }, +]; +--- + +
+ + + +
+ JavaScript + Go + Python (Preview) + + + +
+ + + +
+ + + + \ No newline at end of file diff --git a/src/components/LanguageSelector.astro b/src/components/LanguageSelector.astro index b7bba58f..6135c00b 100644 --- a/src/components/LanguageSelector.astro +++ b/src/components/LanguageSelector.astro @@ -6,8 +6,6 @@ export interface Props { const { languages = ['js', 'go', 'python'], supportedLanguages = ['js', 'go', 'python'] } = Astro.props; -const currentLang = Astro.url.searchParams.get('lang') || 'js'; - const languageLabels: Record = { js: 'JavaScript', go: 'Go', @@ -34,7 +32,6 @@ const hasLimitedSupport = displayLanguages.length < allLanguages.length;