# Content SDK > SitecoreAI documentation for developers, in English, version 2.x. - Product: SitecoreAI - Audience: Developers - Language: English - Version: 2.x - Status: Current - Canonical URL: https://doc.sitecore.com/sai/en/developers/content-sdk/20 ## Overview - [Content SDK for SitecoreAI](https://doc.sitecore.com/sai/en/developers/content-sdk/20/sitecore-content-sdk-for-sitecoreai.md): What the Sitecore Content SDK is, what it is used for, and an overview of its main features. ## Getting started - [Prerequisites](https://doc.sitecore.com/sai/en/developers/content-sdk/20/prerequisites.md) - [Install the Content SDK CLI](https://doc.sitecore.com/sai/en/developers/content-sdk/20/install-the-content-sdk-cli.md): How to install the Content SDK command line interface (CLI) and verify the installation is successful. - [Connect your app to SitecoreAI](https://doc.sitecore.com/sai/en/developers/content-sdk/20/connect-your-content-sdk-app-to-sitecoreai.md) ### Creating a Content SDK app - [Creating a Content SDK app](https://doc.sitecore.com/sai/en/developers/content-sdk/20/creating-a-content-sdk-app.md) - [Create a Content SDK app locally](https://doc.sitecore.com/sai/en/developers/content-sdk/20/create-a-content-sdk-app-locally.md): Create a Content SDK app locally. - [Content SDK initializer parameters](https://doc.sitecore.com/sai/en/developers/content-sdk/20/content-sdk-initializer-parameters.md) ## Concepts - [Architecture overview](https://doc.sitecore.com/sai/en/developers/content-sdk/20/architecture-overview.md): Overview of Sitecore Content SDK architecture. - [Components for rendering Sitecore fields](https://doc.sitecore.com/sai/en/developers/content-sdk/20/components-for-rendering-sitecore-fields.md): Describes Content SDK components for React that help you render Sitecore fields in Next.js applications. - [Route handling and data fetching](https://doc.sitecore.com/sai/en/developers/content-sdk/20/route-handling-and-data-fetching-in-content-sdk-apps.md): Content SDK apps in SitecoreAI resolve routes using the content tree structure and fetch data via GraphQL from the LayoutService. Next.js apps use catch-all routes and custom resolvers to map paths to Sitecore items. - [Multilingual applications](https://doc.sitecore.com/sai/en/developers/content-sdk/20/supporting-multilingual-applications-in-content-sdk.md): Overview of how Content SDK apps handle multilingual content and dictionaries. - [Plugins](https://doc.sitecore.com/sai/en/developers/content-sdk/20/plugins.md): Learn about plugins that extend the Content SDK with specific functionality. - [Adapters](https://doc.sitecore.com/sai/en/developers/content-sdk/20/adapters.md): Learn about adapters that provide environment-specific implementations for plugins. - [Lightweight tracking](https://doc.sitecore.com/sai/en/developers/content-sdk/20/lightweight-tracking.md): How Content SDK identifies bots and supports lightweight tracking. ### Page composition - [Page composition](https://doc.sitecore.com/sai/en/developers/content-sdk/20/page-composition-in-content-sdk-apps-using-sitecoreai-data.md): Understand how Content SDK composes layouts and renders pages defined in SitecoreAI. - [Placeholders](https://doc.sitecore.com/sai/en/developers/content-sdk/20/placeholders-in-content-sdk-apps.md): Placeholders in Content SDK apps, and best practices for naming them. - [React Suspense in placeholders](https://doc.sitecore.com/sai/en/developers/content-sdk/20/react-suspense-in-placeholders.md): How disabling React Suspense by default in placeholders led to reduced JavaScript execution time. - [Dynamic placeholders](https://doc.sitecore.com/sai/en/developers/content-sdk/20/sitecoreai-dynamic-placeholders-and-content-sdk.md): Overview of how Content SDK handles SitecoreAI dynamic placeholders. - [Components](https://doc.sitecore.com/sai/en/developers/content-sdk/20/components-in-content-sdk-apps.md): Describes components in Content SDK apps and the infrastructure that supports them. ### Services and APIs - [Services and APIs](https://doc.sitecore.com/sai/en/developers/content-sdk/20/content-sdk-services-and-apis.md): Overview of the services and APIs available in Sitecore Content SDK packages and applications, with links to information about specific items. - [GraphQL API](https://doc.sitecore.com/sai/en/developers/content-sdk/20/content-sdk-graphql-api.md): The GraphQL API hosts your SitecoreAI data (such as layout and dictionary data) and lets you fetch it using GraphQL queries. - [The SitecoreClient API](https://doc.sitecore.com/sai/en/developers/content-sdk/20/the-sitecoreclient-api.md): Overview of the SitecoreClient API class used to interact with SitecoreAI headless services. - [Customize SitecoreClient](https://doc.sitecore.com/sai/en/developers/content-sdk/20/customize-sitecoreclient.md): The behavior of the SitecoreClient API can be customized in various ways. This includes modifying fetch options, overriding methods, and more. - [Layout data for fields](https://doc.sitecore.com/sai/en/developers/content-sdk/20/sitecoreai-layout-data-for-fields.md): Fetched layout data for SitecoreAI fields contains field values and field metadata to support rendering and editing those fields, respectively. - [Use retry strategies for requests to Experience Edge](https://doc.sitecore.com/sai/en/developers/content-sdk/20/use-retry-strategies-for-requests-to-experience-edge.md): Using a retry strategy can help prevent excessive calls to the rate-limited Experience Edge GraphQL endpoint. - [Media API](https://doc.sitecore.com/sai/en/developers/content-sdk/20/content-sdk-media-api.md): The Media API supports images in Content SDK applications, including media handling for Image and NextImage components. - [Image parameters](https://doc.sitecore.com/sai/en/developers/content-sdk/20/image-parameters-in-content-sdk-apps.md): Use parameters to resize or configure images rendered by Content SDK Image and NextImage components. - [The Image component](https://doc.sitecore.com/sai/en/developers/content-sdk/20/the-content-sdk-image-component.md): How to implement Image components in your Content SDK app. - [The NextImage component](https://doc.sitecore.com/sai/en/developers/content-sdk/20/the-content-sdk-nextimage-component.md): How to implement NextImage components in your Next.js Content SDK app. - [Search API](https://doc.sitecore.com/sai/en/developers/content-sdk/20/search-api.md): Overview of the SearchService class used to search for content in SitecoreAI indexes. - [Search hooks for React and Next.js](https://doc.sitecore.com/sai/en/developers/content-sdk/20/search-hooks-for-react-and-next-js.md): Learn more about the Search hooks available for Content SDK's React and Next.js packages that enable searching with pagination and infinite scrolling. - [useSearch](https://doc.sitecore.com/sai/en/developers/content-sdk/20/usesearch.md): Learn about the useSearch hook that enables searching with pagination. - [useInfiniteSearch](https://doc.sitecore.com/sai/en/developers/content-sdk/20/useinfinitesearch.md): Learn about the useInfiniteSearch hook that enables searching with infinite scrolling. - [useSuggest](https://doc.sitecore.com/sai/en/developers/content-sdk/20/usesuggest.md): Learn about the useSuggest hook that provides typeahead suggestions and preview results. ## Developer guides - [The Sitecore configuration file](https://doc.sitecore.com/sai/en/developers/content-sdk/20/the-sitecore-configuration-file.md): Content SDK apps include a standard config file with various mandatory properties that you can modify as needed. You can also add optional properties to control aspects of your app's behaviour, including how it interacts with services and middleware. - [CLI commands and configuration](https://doc.sitecore.com/sai/en/developers/content-sdk/20/cli-commands-and-configuration.md): Overview of the Content SDK command-line interface (CLI), including supported commands and how you can configure its behaviour. - [Register a component](https://doc.sitecore.com/sai/en/developers/content-sdk/20/register-a-component-in-the-component-map.md): Learn how automatic component map generation works and how to manually register a component in the component map if required. - [Editor integration using metadata](https://doc.sitecore.com/sai/en/developers/content-sdk/20/editor-integration-using-metadata.md): Overview of the architecture and APIs for integrating Content SDK Next.js Pages Router apps with the Page builder using metadata. - [Integrate custom proxy](https://doc.sitecore.com/sai/en/developers/content-sdk/20/integrate-custom-proxy.md) - [Implement GraphQL code generation](https://doc.sitecore.com/sai/en/developers/content-sdk/20/implement-graphql-code-generation.md): Add GraphQL code generation to your Content SDK application using an example based on graphql-codegen. - [Integrated GraphQL](https://doc.sitecore.com/sai/en/developers/content-sdk/20/integrated-graphql-in-content-sdk-apps.md): Modify the Layout service output for a component using GraphQL queries. - [GraphQL best practices](https://doc.sitecore.com/sai/en/developers/content-sdk/20/graphql-best-practices-in-content-sdk-apps.md): Tips and best practices for using GraphQL in front-end apps. - [Example environment variable files](https://doc.sitecore.com/sai/en/developers/content-sdk/20/example-environment-variable-files.md): Content SDK includes example environment variable files to help you configure your application according to whether you will use a remote SitecoreAI instance or a Docker container when running the application locally. - [Debug logging in Content SDK apps](https://doc.sitecore.com/sai/en/developers/content-sdk/20/debug-logging-in-content-sdk-apps.md): Use Content SDK debug logging to enhance your developer experience with production debugging for some or all of your application. - [Generate page metadata and Open Graph tags](https://doc.sitecore.com/sai/en/developers/content-sdk/20/generate-page-metadata-and-open-graph-tags.md): Learn how to generate