# Sitecore Headless Development > XP documentation for developers, in English, version 21.x. - Product: XP - Audience: Developers - Language: English - Version: 21.x - Status: Previous version - Canonical URL: https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development ## Overview - [Overview of headless development with Sitecore](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/overview-of-headless-development-with-sitecore.md): A short overview of the Sitecore tooling and products for headless development. - [Content authoring concepts for developers new to Sitecore](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/content-authoring-concepts-for-developers-new-to-sitecore.md): Terms and concepts related to content authoring in Sitecore. - [Sitecore Headless Development FAQ](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sitecore-headless-development-faq.md): Answers to some of the most frequently asked questions about Sitecore Headless Development. ## Sitecore Headless Services - [Sitecore Headless Services](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sitecore-headless-services.md): Fetch JSON-formatted Sitecore data for headless front-end applications. - [Upgrade Sitecore Headless Services to version 21.0.0](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/upgrade-sitecore-headless-services-to-version-21-0-0.md): How to upgrade Sitecore Headless Services to version 21.0.0. - [Use Sitecore Headless Services without a Sitecore SDK](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/use-sitecore-headless-services-without-a-sitecore-sdk.md): Consume Sitecore layout data from any platform that understands JSON. ### Installing Headless Services - [Installing Headless Services](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/installing-headless-services.md): Installation prerequisites and methods for the Headless Services module. - [Install Headless Services using the package .zip file](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/install-headless-services-using-the-package--zip-file.md): Install Sitecore Headless Services on standalone or Content Management Sitecore instances. - [Install Headless Services as a Web Deploy Package on Azure](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/install-headless-services-as-a-web-deploy-package-on-azure.md): Install Sitecore Headless Services on your Azure Sitecore instance. - [Install Headless Services in containers](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/install-headless-services-in-containers.md): Add the Sitecore Headless Services module to your Sitecore containers with the help of Dockerfiles. ### Services and APIs - [Services and APIs](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/services-and-apis.md): Headless Services components overview. - [App Configuration API](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/app-configuration-api.md): Overview of adding Sitecore configuration patches for your JSS application. - [Layout Service](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/layout-service.md): Get JSON-formatted Sitecore layout and content data for decoupled front-end applications. - [Configuration options for the Layout Service](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/configuration-options-for-the-layout-service.md): Change the maximum depth for serialization, include or exclude paths, and more. - [Implementing output caching for the Layout Service](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/implementing-output-caching-for-the-layout-service.md): An overview of output caching configuration for the Layout Service. - [Configure placeholders](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/configure-placeholders.md): Configure placeholders and learn about dynamic and simple placeholder resolvers. - [Populate the placeholders field for layouts](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/populate-the-placeholders-field-for-layouts.md): Exposing placeholders to the Layout Service. - [Configure the Sitecore Layout Service to output HTML for MVC renderings](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/configure-the-sitecore-layout-service-to-output-html-for-mvc-renderings.md): Render MVC components to HTML for static generation of MVC apps with JSS. - [Extending the Layout Service](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/extending-the-layout-service.md): Overview of the options for customizing the data returned by the Layout Service. - [Extending context data returned by the Layout Service](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/extending-context-data-returned-by-the-layout-service.md): Options for customizing the Sitecore context data. - [Extend the getLayoutServiceContext pipeline](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/extend-the-getlayoutservicecontext-pipeline.md): Add your own data to the Sitecore context object. - [Customizing the Layout Service rendering output](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/customizing-the-layout-service-rendering-output.md): Using GraphQL queries or Rendering Contents Resolver to tweak the Layout Service output. - [Customize the serialization of a Sitecore field](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/customize-the-serialization-of-a-sitecore-field.md): Customize the data returned by the Layout Service by serializing a field. - [Dictionary Service](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/dictionary-service.md): Fetch Sitecore Dictionary data in headless front-end applications. - [Media Handler](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/media-handler.md): Use Sitecore server-side media resizing and control resizing requests. - [GraphQL](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/graphql.md): GraphQL options provided by Sitecore Headless Services. - [Sitecore GraphQL API](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sitecore-graphql-api.md): Describes how to set up and start using GraphQL with Sitecore. - [Start using Sitecore GraphQL API](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/start-using-sitecore-graphql-api.md): Describes how to set up and start using GraphQL with Sitecore. - [Create GraphQL schemas](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/create-graphql-schemas.md): Describes how you implement GraphQL schema providers. - [GraphQL security](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/graphql-security.md): Describes the specific security concerns of GraphQL. - [Performance and diagnostics](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/performance-and-diagnostics.md): Describes performance and diagnostics tools for Sitecore GraphQL. - [The GraphQL content schema](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/the-graphql-content-schema.md): Describes the GraphQL standard schema provider for querying Sitecore content items. - [Sitecore GraphQL best practices](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sitecore-graphql-best-practices.md): Recommended best practices when using Sitecore GraphQL, including how to improve performance. - [Troubleshooting the Sitecore GraphQL API](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/troubleshooting-the-sitecore-graphql-api.md): Describes some scenarios you must be aware of when using Sitecore GraphQL API. - [Sitecore Experience Edge for XM Preview GraphQL endpoint](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sitecore-experience-edge-for-xm-preview-graphql-endpoint.md): Introducing the Edge Preview GraphQL endpoint. - [Limitations and restrictions for Headless Services with the Edge preview](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/limitations-and-restrictions-for-headless-services-with-the-edge-preview.md): The limitations, restrictions, and limits of working with Experience Edge Preview and Headless services in . - [Tracking Service](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/tracking-service.md): Track Events, Goals, Outcomes, Campaigns, and Page/Route Views in headless front-end applications. - [Forms Service](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/forms-service.md): Integrate Sitecore Forms in headless front-end applications. - [Import Service](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/import-service.md): Imports code-first JSS apps into Sitecore using a JSS Manifest package. - [Rendering engines](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/rendering-engines.md): Use rendering engines to server-side render headless applications. - [HTTP rendering engine](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/http-rendering-engine.md): Server-side render JSS and ASP.NET applications with a rendering engine controlled by you. - [Configure URL rewriting](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/configure-url-rewriting.md): Customize URL rewriting when integrating a rendering host with Sitecore editors. - [Node.js rendering engine](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/node-js-rendering-engine.md): Server-side render React, Angular, and Vue JSS apps with a rendering engine controlled by Sitecore. ## Sitecore Experience Edge for XM - [Sitecore Experience Edge for XM](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sitecore-experience-edge-for-xm.md): This topic gives you an overview of what Sitecore Experience Edge for XM is and what you use it for. - [The architecture of Sitecore Experience Edge for XM](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/the-architecture-of-sitecore-experience-edge-for-xm.md): Learn more about the infrastructure design of Sitecore Experience Edge for XM. - [Limitations and restrictions of Experience Edge for XM](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/limitations-and-restrictions-of-experience-edge-for-xm.md): Unsupported features, limitations, restrictions when working with Experience Edge for XM. - [Request a JWT for Experience Edge XM using OAuth](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/request-a-jwt-for-experience-edge-xm-using-oauth.md): Create the access token that you need to call the protected APIs. - [Create the API key](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/create-the-api-key.md): Learn how to create the Experience Edge for XM authentication key. - [The Experience Edge schema](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/the-experience-edge-schema.md): Learn more about entry points, endpoints, and template definitions. - [Experience Edge for XM best practices](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/experience-edge-for-xm-best-practices.md): Recommendations to work more efficiently with Experience Edge for XM. ### Test your queries - [Test your queries](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/test-your-queries.md): Learn how to use the Delivery API IDE and the GraphQL testing UI for testing your queries. - [Query examples for the Delivery API](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/query-examples-for-the-delivery-api.md): Example queries for the GraphQL Delivery API for Experience Edge for XM and XM Cloud. ### Experience Edge APIs - [Experience Edge APIs](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/experience-edge-apis.md): Lists the APIs that are available for Experience Edge. - [Delivery API](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/delivery-api.md): Describes the Delivery API that provides access to your published content when using Experience Edge for XM. - [Token API](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/token-api.md): Describes the Token API for Experience Edge. - [Admin API](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/admin-api.md): Describes the Admin REST API for administering your Experience Edge environment. ### The Experience Edge Connector - [The Experience Edge Connector](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/the-experience-edge-connector.md): A conceptual overview of the Experience Edge Connector. - [Install and configure the Experience Edge Connector](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/install-and-configure-the-experience-edge-connector.md): Describes how to install and configure the Experience Edge Connector module. - [Install Experience Edge Connector using SIF](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/install-experience-edge-connector-using-sif.md): Shows how to use SIF as an alternative way to install the Experience Edge Connector module. - [Publishing to Experience Edge](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/publishing-to-experience-edge.md): Understand the publishing pipeline, content selection, and dependency calculation when you publish to Experience Edge from Sitecore XM and XM Cloud. - [The publishing process](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/the-publishing-process.md): The publishing manifest is calculated by Sitecore as part of the Experience Edge publishing process. - [Language fallback and publishing](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/language-fallback-and-publishing.md): Learn the rules according to which Sitecore Experience Edge Connector supports language fallback dependencies when you publish items to a delivery platform. - [Enable publishing language fallback](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/enable-publishing-language-fallback.md): How to enable language fallback when you publish to Experience Edge. - [Configure publishing targets](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/configure-publishing-targets.md): Describes how to configure publishing targets. - [Configuring publishing performance](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/configuring-publishing-performance.md): Describes how you control performance when you publish to Experience Edge. - [Configure API fault handling](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/configure-api-fault-handling.md): Describes how to configure API fault handling for Experience Edge. - [Webhook objects](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/webhook-objects.md): The webhook JSON objects that interact with the Edge Admin API endpoint, for integrating XM and XM Cloud publishing flows. - [The webhook execution modes](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/the-webhook-execution-modes.md): Edge for XM webhook execution modes OnEnd and OnUpdate. ## Sitecore JavaScript Services SDK (JSS) - [Sitecore JavaScript Services SDK (JSS)](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sitecore-javascript-services-sdk--jss-.md): Introducing Sitecore JSS. - [Identify the correct version of JSS for your Sitecore version](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/identify-the-correct-version-of-jss-for-your-sitecore-version.md): Find out which JSS version to use with your version of Sitecore. - [The JSS app initializer](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/the-jss-app-initializer.md): Describes using the initializer to create a JSS app with guided prompts. - [Create a JSS project for the latest versions of JSS and Sitecore](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/create-a-jss-project-for-the-latest-versions-of-jss-and-sitecore.md): Describes creating a JSS app for the latest version of JSS and Sitecore. - [Create a JSS app for an older version of Sitecore](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/create-a-jss-app-for-an-older-version-of-sitecore.md): Use an older template version when creating your JSS project. - [Best practices when working with JSS](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/best-practices-when-working-with-jss.md): Best practices to follow when developing and deploying JSS apps and for developing applications compatible with server-side rendering. ### Introducing Sitecore JavaScript Services SDK - [Introducing Sitecore JavaScript Services SDK](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/introducing-sitecore-javascript-services-sdk.md): Describes the benefits of Sitecore JavaScript Services SDK (JSS). - [Features and capabilities of JSS](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/features-and-capabilities-of-jss.md): Sitecore JavaScript Rendering SDK (JSS) features and capabilities. - [Application templates and samples](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/application-templates-and-samples.md): Scaffold new JSS project with application templates. ### Architecture overview - [Architecture overview](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/architecture-overview.md): Overview of Sitecore JavaScript Rendering SDK (JSS) architecture. - [JavaScript frameworks and JSS](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/javascript-frameworks-and-jss.md): Differences between working with regular JS framework apps and JSS apps. - [Application modes](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/application-modes.md): Describes the Sitecore JavaScript Rendering SDK application modes. - [Start a JSS app in disconnected mode](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/start-a-jss-app-in-disconnected-mode.md): Develop Sitecore JSS applications without a Sitecore instance. - [Start a JSS app in connected mode](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/start-a-jss-app-in-connected-mode.md): Develop locally against a running Sitecore instance. - [Start a JSS app in integrated mode](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/start-a-jss-app-in-integrated-mode.md): Manage content and presentation with Sitecore editors when server-side rendering the JSS app. - [Headless server-side rendering mode](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/headless-server-side-rendering-mode.md): Decouple the rendering of JSS applications from Sitecore. - [Sitecore editors and content management](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sitecore-editors-and-content-management.md): Overview of the JSS support for integrating advanced Sitecore content and layout editors. - [Page composition in JSS apps using Sitecore data](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/page-composition-in-jss-apps-using-sitecore-data.md): Understand how JSS composes layouts and renders pages defined in Sitecore. - [Sitecore dynamic placeholders and JSS](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sitecore-dynamic-placeholders-and-jss.md): Overview of how JSS addresses the challenges of Sitecore dynamic placeholders. - [Introducing placeholders in JSS apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/introducing-placeholders-in-jss-apps.md): Describes placeholders in JSS apps and naming best practices. - [Components in JSS apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/components-in-jss-apps.md): Describes components in JSS apps and the infrastructure supporting components. - [Scaffolding components in JSS apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/scaffolding-components-in-jss-apps.md): Create new components in JSS sample apps using the scaffolding script. - [The Component Factory](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/the-component-factory.md): Introducing the JSS Component Factory. - [Manually maintain the Component Factory](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/manually-maintain-the-component-factory.md): Register new components manually. - [Route handling and data fetching in JSS apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/route-handling-and-data-fetching-in-jss-apps.md): How JSS handles route changes and data fetching from Sitecore. - [Supporting multilingual applications in JSS](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/supporting-multilingual-applications-in-jss.md): Overview of how JSS apps handle multilingual content and dictionaries. - [Language routing in JSS apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/language-routing-in-jss-apps.md): Routing in multilingual JSS applications. - [Tracking, analytics, and personalization with JSS](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/tracking-analytics-and-personalization-with-jss.md): Overview of tracking and personalization in JSS apps. - [JSS topologies](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/jss-topologies.md): Description of topologies used with JSS applications. - [JSS and Sitecore Experience Edge for Experience Manager (XM)](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/jss-and-sitecore-experience-edge-for-experience-manager--xm-.md): Describes integrating JSS apps with Sitecore Experience Edge for XM. - [Rendering engines and JSS](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/rendering-engines-and-jss.md): Describes the engines behind the server-side rendering of JSS apps. - [Sitecore JavaScript Rendering SDK NPM packages](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sitecore-javascript-rendering-sdk-npm-packages.md): Summary of JSS NPM packages. ### JSS services and APIs - [JSS services and APIs](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/jss-services-and-apis.md): Introducing the services and APIs available in JSS packages and applications. - [JSS App Configuration API](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/jss-app-configuration-api.md): Configure JSS apps for import to Sitecore, integrated server-side rendering or integration with Sitecore editors. - [JSS Layout API](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/jss-layout-api.md): Overview of the JSS API that helps you fetch layout information for Sitecore items. - [Customizing Layout Service output](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/customizing-layout-service-output.md): Overview of the methods you can use to customize the data returned by the Layout Service. - [Customize layout data with Integrated GraphQL queries in code-first JSS apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/customize-layout-data-with-integrated-graphql-queries-in-code-first-jss-apps.md): Example for defining Integrated GraphQL queries using the JSS manifest. - [Fetching layout data with the JSS Layout API](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/fetching-layout-data-with-the-jss-layout-api.md): Learn how to use the JSS Layout API through examples. - [Fetch layout data with the JSS GraphQL Layout Service](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/fetch-layout-data-with-the-jss-graphql-layout-service.md): Example of how to fetch Sitecore layout data with the JSS GraphQL Layout Service. - [Fetch layout data with the JSS REST Layout Service](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/fetch-layout-data-with-the-jss-rest-layout-service.md): Example of how to fetch Sitecore layout data with the JSS REST Layout Service. - [Fetch layout data using a custom REST data fetcher](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/fetch-layout-data-using-a-custom-rest-data-fetcher.md): Example of how to fetch Sitecore layout data with the JSS Layout API and custom REST data fetchers. - [Field values in JSS layout data](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/field-values-in-jss-layout-data.md): Sitecore field values in layout data consumed by JSS apps. - [Using a custom Layout Service configuration with JSS](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/using-a-custom-layout-service-configuration-with-jss.md): How to use a custom Layout Service configuration in JSS apps. - [JSS Dictionary API](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/jss-dictionary-api.md): Introduction to the JSS API for fetching dictionaries from Sitecore. - [Fetching dictionary data with the JSS Dictionary API](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/fetching-dictionary-data-with-the-jss-dictionary-api.md): Learn how to use the JSS Dictionary API through examples. - [Fetch dictionary data with the JSS GraphQL Dictionary Service](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/fetch-dictionary-data-with-the-jss-graphql-dictionary-service.md): Example of how to fetch Sitecore dictionary data with the JSS GraphQL Dictionary Service. - [Fetch dictionary data with the JSS REST Dictionary Service](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/fetch-dictionary-data-with-the-jss-rest-dictionary-service.md): Example of how to fetch Sitecore dictionary data with the JSS REST Dictionary Service. - [Fetch dictionary data using a custom REST data fetcher](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/fetch-dictionary-data-using-a-custom-rest-data-fetcher.md): Example of how to fetch Sitecore dictionary data with the JSS Dictionary API and custom REST data fetchers. - [JSS App Import API](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/jss-app-import-api.md): Introduction to the JSS API for importing code-first applications in Sitecore. - [Characteristics of the JSS code-first import process](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/characteristics-of-the-jss-code-first-import-process.md): Important things to know about the JSS code-first/disconnected import process. - [Datasource location strategies for the JSS import process](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/datasource-location-strategies-for-the-jss-import-process.md): Available data source location strategies for JSS code-first import. - [Pipelines used in the JSS code-first import process](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/pipelines-used-in-the-jss-code-first-import-process.md): Description of pipelines and processors used in the JSS code-first import process. - [Extend the import pipeline](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/extend-the-import-pipeline.md): Example of how to modify the import pipeline behavior using a custom processor. - [JSS Manifest API](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/jss-manifest-api.md): Describes creating item definitions and preparing your JSS app for Sitecore import with the JSS Manifest API. - [Types of JSS Manifest data](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/types-of-jss-manifest-data.md): Mock Sitecore data for disconnected JSS applications using Manifest data. - [Adding Manifest definitions in code-first JSS apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/adding-manifest-definitions-in-code-first-jss-apps.md): Add items to the Manifest with Manifest API instance methods. - [Generating a JSS app manifest file](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/generating-a-jss-app-manifest-file.md): Overview of how JSS generates the manifest file. - [JSS GraphQL API](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/jss-graphql-api.md): Learn about the infrastructure for using Sitecore GraphQL endpoints from JSS apps. - [Best practices and recommendations for using GraphQL in JSS apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/best-practices-and-recommendations-for-using-graphql-in-jss-apps.md): Tips and best practices for using GraphQL in front-end apps. - [Connected GraphQL in JSS apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/connected-graphql-in-jss-apps.md): Query GraphQL endpoints asynchronously and use GraphQL mutations and subscriptions. - [Use connected GraphQL in a JSS app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/use-connected-graphql-in-a-jss-app.md): How to query GraphQL endpoints using connected GraphQL in JSS apps. - [Troubleshooting connected GraphQL in JSS apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/troubleshooting-connected-graphql-in-jss-apps.md): Handle common issues when using connected GraphQL. - [Integrated GraphQL in JSS apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/integrated-graphql-in-jss-apps.md): Modify the Layout Service output for a component using GraphQL queries. - [Use integrated GraphQL in a JSS app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/use-integrated-graphql-in-a-jss-app.md): Use integrated GraphQL queries to customize layout data. - [Customize layout data with Integrated GraphQL queries in code-first JSS apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/customize-layout-data-with-integrated-graphql-queries-in-code-first-jss-apps-1078263.md): Example for defining Integrated GraphQL queries using the JSS manifest. - [JSS Forms API](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/jss-forms-api.md): Describes Sitecore Forms integration in JSS apps using JSS Forms. - [Walkthrough: Using a Sitecore form in JSS applications](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--using-a-sitecore-form-in-jss-applications.md): Use Sitecore Forms in Next.js and React applications. - [JSS Tracking API](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/jss-tracking-api.md): Overview of the client-side implementation of the Sitecore Headless Services Tracker. - [Track events in JSS apps using the Tracking API](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/track-events-in-jss-apps-using-the-tracking-api.md): Using the JSS Tracking API in your pages and components. - [JSS Media API](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/jss-media-api.md): Introduction to JSS image handling. - [Use images in JSS applications](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/use-images-in-jss-applications.md): Overview of how to use images in JSS apps. - [The image size parameters](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/the-image-size-parameters.md): Reference documentation for image size parameters you can use for responsive images. ### Developing JSS applications - [Developing JSS applications](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/developing-jss-applications.md): Overview of how to get started with JSS development. - [Sitecore JavaScript Rendering SDK CLI Tools](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sitecore-javascript-rendering-sdk-cli-tools.md): Introduction to the JavaScript SDKs CLI. - [Install the JSS CLI globally](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/install-the-jss-cli-globally.md): Procedure for installing JSS CLI Tools. - [Env file support](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/env-file-support.md): Description of the JSS CLI support for .env files. - [Sitecore JavaScript Rendering SDK CLI Tools API reference](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sitecore-javascript-rendering-sdk-cli-tools-api-reference.md): JSS CLI commands and scripts. - [Development workflows](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/development-workflows.md): Overview of JSS development workflows. - [Code-first development workflow](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/code-first-development-workflow.md): Overview of code-first development, item ownership, and JSS app deployment. - [Working disconnected in JSS](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/working-disconnected-in-jss.md): Defining route data and customizing data in JSS code-first, disconnected development. - [Add additional root placeholders in a code-first JSS sample app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/add-additional-root-placeholders-in-a-code-first-jss-sample-app.md): How to add multiple root placeholders when working code-first. - [Create a route type with fields in JSS code-first development](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/create-a-route-type-with-fields-in-jss-code-first-development.md): Creating new route types/route data templates with route-level fields. - [Sitecore-first development workflow](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sitecore-first-development-workflow.md): Overview of JSS Sitecore-first development. - [Add additional root placeholders in a Sitecore-first JSS sample app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/add-additional-root-placeholders-in-a-sitecore-first-jss-sample-app.md): How to add multiple root placeholders when developing Sitecore-first. - [Create a new component in a Sitecore-first JSS app running in connected mode](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/create-a-new-component-in-a-sitecore-first-jss-app-running-in-connected-mode.md): Create and deploy a new component in a JSS app connected to Sitecore. - [Transitioning from code-first to Sitecore-first](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/transitioning-from-code-first-to-sitecore-first.md): When to switch to Sitecore-first and how to clean the JSS app of code-first artifacts. - [Remove code-first artifacts from a JSS app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/remove-code-first-artifacts-from-a-jss-app.md): Clean up your JSS app after switching to Sitecore-first development. - [Theming and styling JSS apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/theming-and-styling-jss-apps.md): Where and how to style JSS applications. - [Debug logging in JSS apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/debug-logging-in-jss-apps.md): Use JSS debug logging for enhanced developer experience and production debugging. - [Create a Sitecore services client API key](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/create-a-sitecore-services-client-api-key.md): Authorize a JSS app to use Sitecore Headless Services with a Sitecore services client API key. - [Walkthrough: Configuring Sitecore CA certificates for Node.js](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--configuring-sitecore-ca-certificates-for-node-js.md): Avoid/fix Node.js errors caused by privately signed SSL certificates. - [Authenticating users from JSS apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/authenticating-users-from-jss-apps.md): Leverage Sitecore security and authentication capabilities in JSS applications. - [Walkthrough: Creating a user and page for testing Sitecore authentication](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--creating-a-user-and-page-for-testing-sitecore-authentication.md): Invoke the Sitecore Authentication Service to authenticate from JSS apps. - [Enable Sitecore-integrated federated authentication](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/enable-sitecore-integrated-federated-authentication.md): Use federated authentication in integrated JSS apps. - [Optimizing the performance of JSS apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/optimizing-the-performance-of-jss-apps.md): General recommendations for performance optimization. - [Caching to optimize JSS](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/caching-to-optimize-jss.md): Sitecore caching techniques to optimize JSS applications performance. - [Caching in headless server-side rendering mode](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/caching-in-headless-server-side-rendering-mode.md): Optimization recommendations for JSS applications in headless server-side rendering mode. - [Caching in integrated mode](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/caching-in-integrated-mode.md): Limitations of output caching in JSS integrated mode. ### Upgrade guides - [Upgrade JSS 21.5 Next.js apps to version 21.6](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/upgrade-jss-21-5-next-js-apps-to-version-21-6.md): JSS 21.6 consolidates client management for all GraphQL-based services. - [Upgrade JSS 21.6.4 Next.js apps to version 21.7](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/upgrade-jss-21-6-4-next-js-apps-to-version-21-7.md): Upgrade your JavaScript Rendering SDKs to version 21.7 to take advantage of Next.js 14 and improved GraphQL request retries. - [Upgrade JSS 21.7 Next.js apps to version 21.10](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/upgrade-jss-21-7-next-js-apps-to-version-21-10.md): How to upgrade your JSS 21.7 Next.js apps to version 21.10 to take advantage of React 19 and Next.js 15. - [Upgrade JSS apps to JSS 21.6](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/upgrade-jss-apps-to-jss-21-6.md): Follow this guide to upgrade your JSS apps to JSS 21.6. For Angular apps, you will upgrade to Angular 16. For Next.js apps, you will use the new GraphQL request client factory. - [Upgrade JSS apps to JSS 21.7](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/upgrade-jss-apps-to-jss-21-7.md): Follow this guide to upgrade your JSS apps to JSS 21.7. For Next.js apps, you will upgrade to Next.js 14. For React, you will replace some dependencies. In the Node headless SSR proxy, there is a small update to the Layout service query params. - [Upgrade JSS apps to JSS 21.8](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/upgrade-jss-apps-to-jss-21-8.md): How to upgrade your JavaScript Rendering SDKs to version 21.8 to take advantage of Angular 17. - [Upgrade JSS apps to JSS 21.10](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/upgrade-jss-apps-to-jss-21-10.md): How to upgrade your JavaScript Rendering SDKs to version 21.10 to benefit from the latest improvements. For React apps, this includes updating to React 19. - [Upgrade JSS apps to JSS 21.11](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/upgrade-jss-apps-to-jss-21-11.md): How to upgrade your JavaScript Rendering SDKs to version 21.11 to benefit from the latest improvements, including the update to Angular 20. ### Sitecore JavaScript Rendering SDK (JSS) for Next.js - [Sitecore JavaScript Rendering SDK (JSS) for Next.js](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sitecore-javascript-rendering-sdk--jss--for-next-js.md): Overview of JSS for Next.js features and improvements compared to JSS for React, Angular, and Vue.js. - [Sitecore JSS for Next.js differences from JSS for React, Angular, and Vue.js](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sitecore-jss-for-next-js-differences-from-jss-for-react-angular-and-vue-js.md): How JSS for Next.js is different from JSS for React, Angular, and Vue.js. - [Add-ons for Next.js applications](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/add-ons-for-next-js-applications.md): Add-ons provide additional functionality examples for your Next.js JSS app with add-ons. - [The Next.js Multisite add-on](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/the-next-js-multisite-add-on.md): The Next.js Multisite add-on includes an example setup for hosting multiple sites from a single Next.js application. - [Manually configure the sites in a multisite application](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/manually-configure-the-sites-in-a-multisite-application.md): Configure the Multisite add-on to statically generate a subset of sites or override the site configuration for all your sites. - [Troubleshooting the Next.js Multisite add-on](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/troubleshooting-the-next-js-multisite-add-on.md): Investigate and resolve issues in Next.js apps with the Multisite add-on. - [Getting started with JSS for Next.js development](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/getting-started-with-jss-for-next-js-development.md): Choose a path for developing JSS for Next.js apps based on your role, workflow, and operating system. - [The Sitecore Containers template for JSS Next.js apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/the-sitecore-containers-template-for-jss-next-js-apps.md): Overview of the Docker containers template for scaffolding Sitecore-first JSS Next.js apps. - [Walkthrough: Setting up a development environment with the Sitecore Containers template for Next.js](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--setting-up-a-development-environment-with-the-sitecore-containers-template-for-next-js.md): Get started with full-stack Sitecore JSS and Next.js development. - [Walkthrough: Creating a JSS Next.js application with the JSS initializer](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--creating-a-jss-next-js-application-with-the-jss-initializer.md): Get started with developing code-first JSS Next.js apps. - [Walkthrough: Connecting a code-first JSS Next.js application to Sitecore](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--connecting-a-code-first-jss-next-js-application-to-sitecore.md): Connect a JSS Next.js app created with the JSS initializer to Sitecore and perform an initial deployment of code-first artifacts. - [Disable Next.js telemetry](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/disable-next-js-telemetry.md): How to disable the collection of telemetry data by Next.js. - [Architecture and APIs for integrating JSS Next.js apps with Sitecore editors](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/architecture-and-apis-for-integrating-jss-next-js-apps-with-sitecore-editors.md): Overview of the architecture and APIs for integrating JSS Next.js with Sitecore Experience Editor. - [Walkthrough: Connecting a Next.js JSS app to Sitecore editors](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--connecting-a-next-js-jss-app-to-sitecore-editors.md): How to connect a Next.js JSS application to the Sitecore Experience Editor. - [Override default protocols using the EditingRenderMiddleware in Next.js JSS apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/override-default-protocols-using-the-editingrendermiddleware-in-next-js-jss-apps.md): Fix protocol mismatch issues when deploying the application on platforms other than Vercel. - [Override the default directory used by the disk-based editing cache implementation](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/override-the-default-directory-used-by-the-disk-based-editing-cache-implementation.md): Change the temporary directory used by the EditingDataDiskCache. - [Prerendering methods and data fetching strategies in JSS Next.js apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/prerendering-methods-and-data-fetching-strategies-in-jss-next-js-apps.md): The relation between prerendering and data-fetching in JSS Next.js apps,. - [Preparing the list of pages for static generation or export in JSS Next.js apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/preparing-the-list-of-pages-for-static-generation-or-export-in-jss-next-js-apps.md): Description of the JSS Next.js GetStaticPaths, the sitemap fetcher, and the GraphQL Sitemap Service. - [Customize build-time static paths in JSS Next.js apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/customize-build-time-static-paths-in-jss-next-js-apps.md): Control the static paths returned for statically generated dynamic routes with custom sitemap fetchers. - [Component-level data fetching in JSS Next.js apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/component-level-data-fetching-in-jss-next-js-apps.md): Overview of how JSS Next.js apps retrieve component-level data and how it can be accessed. - [Switch the pre-rendering method in a JSS Next.js app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/switch-the-pre-rendering-method-in-a-jss-next-js-app.md): Change the pre-rendering method for the catch-all route. - [Switch between REST and GraphQL in Next.js JSS apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/switch-between-rest-and-graphql-in-next-js-jss-apps.md): Change the services and APIs used by the JSS app to fetch Layout and Dictionary data. - [Routing and page composition in JSS Next.js apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/routing-and-page-composition-in-jss-next-js-apps.md): Overview of routing in multilingual JSS Next.js apps. - [Error pages in the JSS Next.js sample app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/error-pages-in-the-jss-next-js-sample-app.md): Handling errors in the Next.js app with custom error page implementations. - [Secure cookies and local JSS app development](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/secure-cookies-and-local-jss-app-development.md): Dealing with rejected cookies when developing locally against a secure Sitecore installation. - [Using GraphQL in JSS Next.js apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/using-graphql-in-jss-next-js-apps.md): Overview of using GraphQL in JSS Next.js apps, including how to choose GraphQL for data fetching. - [Introspecting the GraphQL schema in JSS Next.js apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/introspecting-the-graphql-schema-in-jss-next-js-apps.md): Understanding and using the GraphQL schema in a JSS Next.js application. - [Use GraphQL to fetch component-level data in JSS Next.js apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/use-graphql-to-fetch-component-level-data-in-jss-next-js-apps.md): How to use two different GraphQL methods (connected or integrated) to fetch data with components. - [Use retry strategies for requests to Experience Edge](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/use-retry-strategies-for-requests-to-experience-edge.md): Use retry strategies to help reduce build errors for large sites caused by the Experience Edge GraphQL endpoint rate limits. - [Working with placeholders in a JSS Next.js app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/working-with-placeholders-in-a-jss-next-js-app.md): Placeholder techniques for Next.js JSS applications. - [Components provided by JSS for Next.js](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/components-provided-by-jss-for-next-js.md): Describes components provided by JSS for Next.js to assist with rendering Sitecore data. - [JSS components for rendering Sitecore fields in Next.js applications](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/jss-components-for-rendering-sitecore-fields-in-next-js-applications.md): Describes JSS components for Next.js that help you render Sitecore fields. - [The JSS NextImage component](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/the-jss-nextimage-component.md): Serve optimized images to improve page performance metrics. - [Configuring the JSS NextImage component](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/configuring-the-jss-nextimage-component.md): Reference documentation for the JSS NextImage component. - [Creating components in JSS Next.js apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/creating-components-in-jss-next-js-apps.md): Create components code-first or Sitecore-first and fetch data at the component level. - [Create a new component in a JSS Next.js app using the code-first development workflow](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/create-a-new-component-in-a-jss-next-js-app-using-the-code-first-development-workflow.md): Leverage component scaffolding functionality to quickly define new components. - [Walkthrough: Create a new component in a JSS Next.js app using the Sitecore-first development workflow](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--create-a-new-component-in-a-jss-next-js-app-using-the-sitecore-first-development-workflow.md): Create a Next.js component to match a Sitecore JSON rendering. - [Implement a Sitecore form in a JSS Next.js app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/implement-a-sitecore-form-in-a-jss-next-js-app.md): Implement the front-end component for a Sitecore form in a Next.js JSS application. - [Internationalization in the JSS sample app for Next.js](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/internationalization-in-the-jss-sample-app-for-next-js.md): How the Next.js JSS app enables internationalization. - [Internationalized routing in JSS Next.js apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/internationalized-routing-in-jss-next-js-apps.md): Overview of routing in multilingual JSS Next.js apps. - [Remove content translation functionality from the JSS Next.js app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/remove-content-translation-functionality-from-the-jss-next-js-app.md): Remove and modify files to clean up unneeded translation features. - [Add or import languages in a Sitecore-first JSS Next.js app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/add-or-import-languages-in-a-sitecore-first-jss-next-js-app.md): How to add and import languages in Next.js JSS applications set up with the Sitecore Containers template. - [Tracking and analytics integration in JSS Next.js apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/tracking-and-analytics-integration-in-jss-next-js-apps.md): A conceptual overview of Sitecore web tracking integration in JSS Next.js apps. - [Enable Sitecore tracking and analytics in a JSS Next.js app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/enable-sitecore-tracking-and-analytics-in-a-jss-next-js-app.md): How to enable Sitecore Web tracking for Next.js JSS apps. - [Deployment options for JSS Next.js apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/deployment-options-for-jss-next-js-apps.md): An overview of hosting options for JSS Next.js apps. - [Walkthrough: Deploying JSS Next.js apps to Netlify](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--deploying-jss-next-js-apps-to-netlify.md): Deploy a JSS Next.js app to Netlify and configure webhooks for automatic redeployments. - [Walkthrough: Deploying JSS Next.js apps to Vercel](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--deploying-jss-next-js-apps-to-vercel.md): Deploy a JSS Next.js app to Vercel and configure webhooks for automatic redeployments. - [Use the Vercel Deployment Protection feature with JSS apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/use-the-vercel-deployment-protection-feature-with-jss-apps.md): Learn how to use Deployment Protection on the Vercel cloud platform for your Next.js JSS app. - [Walkthrough: Exporting a JSS Next.js app to static HTML files with next export](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--exporting-a-jss-next-js-app-to-static-html-files-with-next-export.md): Make the JSS Next.js app compatible with static file export and generate pages as HTML files. - [Use an out-of-process editing data cache with Vercel deployments](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/use-an-out-of-process-editing-data-cache-with-vercel-deployments.md): How to use an out-of-process editing cache implementation for EditingDataMiddleware middleware/handler in a Vercel deployment used as an editing host for Sitecore. - [API reference](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/api-reference.md): Reference for the sitecore-jss-nextjs npm package. - [Troubleshooting JSS Next.js apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/troubleshooting-jss-next-js-apps.md): Describes how to avoid errors and gives some workarounds. ### SDKs for React, Angular, Vue, and React Native - [SDKs for React, Angular, Vue, and React Native](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sdks-for-react-angular-vue-and-react-native.md): Introduction to React, Angular, Vue.js, and React Native SDKs. - [Sitecore JavaScript Rendering SDK (JSS) for React](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sitecore-javascript-rendering-sdk--jss--for-react.md): Overview of Sitecore JavaScript Rendering SDK (JSS) for React. - [Walkthrough: Getting started with JSS for React](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--getting-started-with-jss-for-react.md): How to create and run an application with JSS for React. - [Overview of the JSS React sample application](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/overview-of-the-jss-react-sample-application.md): Overview of the JSS sample application for React. - [Disconnected mode support in the JSS React app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/disconnected-mode-support-in-the-jss-react-app.md): Description of how JSS React apps support disconnected mode. - [Routing and state management in the JSS React app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/routing-and-state-management-in-the-jss-react-app.md): Overview of client-side and server-side routing and state management flow. - [GraphQL support in the JSS React sample app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/graphql-support-in-the-jss-react-sample-app.md): Description of GraphQL support and limitation in JSS React applications. - [The application building system in the JSS React sample app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/the-application-building-system-in-the-jss-react-sample-app.md): Describes tools you can use when building React applications with JSS. - [Accessing the Sitecore Context data in a React component](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/accessing-the-sitecore-context-data-in-a-react-component.md): Using the higher-order component withSitecoreContext to access Sitecore Context data in components. - [UI Components in the JSS React sample app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/ui-components-in-the-jss-react-sample-app.md): Quick overview on UI components in React apps built with JSS. - [Code-splitting in JSS React sample apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/code-splitting-in-jss-react-sample-apps.md): Describes support for code-splitting using JSS and React. - [Working with placeholders in a JSS React sample app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/working-with-placeholders-in-a-jss-react-sample-app.md): Placeholder techniques for React JSS applications. - [JSS components for rendering Sitecore fields in React applications](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/jss-components-for-rendering-sitecore-fields-in-react-applications.md): Describes JSS components for React that help you render Sitecore fields. - [JSS Forms for React](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/jss-forms-for-react.md): Overview of working with the Sitecore JavaScript Rendering SDK Forms for React. - [Install the JSS Forms for React package in a React or Next.js JSS app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/install-the-jss-forms-for-react-package-in-a-react-or-next-js-jss-app.md): How to install the packages JSS Forms and JSS Forms for React to render Sitecore forms in Sitecore JSS React applications. - [Implement a Sitecore form in a JSS React app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/implement-a-sitecore-form-in-a-jss-react-app.md): Implement a Sitecore form in a React JSS application. - [Sitecore JavaScript Rendering SDK (JSS) for Angular](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sitecore-javascript-rendering-sdk--jss--for-angular.md): Overview of Sitecore JavaScript Rendering SDK (JSS) for Angular. - [Walkthrough: Getting started with JSS for Angular](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--getting-started-with-jss-for-angular.md): How to create and run your first JSS for Angular application. - [Overview of the Angular JSS sample application](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/overview-of-the-angular-jss-sample-application.md): Describes the JSS sample application for Angular. - [Routing and state management in the JSS Angular sample app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/routing-and-state-management-in-the-jss-angular-sample-app.md): Client-side and server-side routing and state management flow in the JSS Angular sample app. - [Routing transfer to placeholders in the JSS Angular sample app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/routing-transfer-to-placeholders-in-the-jss-angular-sample-app.md): Describes how the root placeholder handles rendering route data from the router. - [The application building system in the JSS Angular sample app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/the-application-building-system-in-the-jss-angular-sample-app.md): Describes tools you can use when building Angular applications with JSS. - [Disconnected mode support in JSS for Angular](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/disconnected-mode-support-in-jss-for-angular.md): Description of how JSS Angular apps support disconnected mode. - [GraphQL support in the JSS Angular app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/graphql-support-in-the-jss-angular-app.md): Description of GraphQL support and limitation in JSS Angular applications. - [Translation and languages in the JSS Angular sample app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/translation-and-languages-in-the-jss-angular-sample-app.md): Adding new languages, using ngx-translate and translation loaders. - [Working with placeholders in a JSS Angular app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/working-with-placeholders-in-a-jss-angular-app.md): How placeholder components work in JSS Angular applications and techniques for using them. - [Tips for working with JSS for Angular](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/tips-for-working-with-jss-for-angular.md): The base tag, lazy-loading components, and Experience Editor compatibility. - [JSS for Angular API reference](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/jss-for-angular-api-reference.md): Overview of components and utilities you can use in JSS Angular apps. - [JSS Angular Schematics](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/jss-angular-schematics.md): Describes the JSS Angular Schematics module provided as a part of Sitecore JSS. - [Sitecore JavaScript Rendering SDK (JSS) for Vue.js](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sitecore-javascript-rendering-sdk--jss--for-vue-js.md): Overview of Sitecore JavaScript Rendering SDK (JSS) for Vue.js. - [Walkthrough: Getting started with JSS for Vue.js](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--getting-started-with-jss-for-vue-js.md): How to create and run an application with JSS for Vue.js. - [Overview of the Vue.js JSS sample application](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/overview-of-the-vue-js-jss-sample-application.md): Describes the JSS sample application for Vue.js. - [Routing and state management in the JSS Vue.js sample app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/routing-and-state-management-in-the-jss-vue-js-sample-app.md): Overview of client-side and server-side routing and state management flow. - [The Sitecore Context and route-level data in the JSS Vue.js sample app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/the-sitecore-context-and-route-level-data-in-the-jss-vue-js-sample-app.md): Use a plugin to access Sitecore Context and route data. - [The application building system in the JSS Vue.js sample app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/the-application-building-system-in-the-jss-vue-js-sample-app.md): Tools you can use when building Vue.js applications with JSS. - [GraphQL support in the JSS Vue.js sample app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/graphql-support-in-the-jss-vue-js-sample-app.md): Description of GraphQL support and limitation in JSS Vue.js applications. - [UI components in the JSS Vue.js sample app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/ui-components-in-the-jss-vue-js-sample-app.md): Describes how components work in Vue.js applications built with JSS. - [Field helper components provided by JSS for Vue.js](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/field-helper-components-provided-by-jss-for-vue-js.md): Describes components provided by JSS for Vue.js to assist with rendering Sitecore data. - [Working with placeholders in a JSS Vue.js sample app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/working-with-placeholders-in-a-jss-vue-js-sample-app.md): Overview of the techniques for using placeholders in JSS Vue applications. - [Sitecore JavaScript Rendering SDK (JSS) for React Native](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sitecore-javascript-rendering-sdk--jss--for-react-native.md): Overview of Sitecore JavaScript Rendering SDK (JSS) for React Native. - [Walkthrough: Getting started with JSS for React Native](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--getting-started-with-jss-for-react-native.md): How to create and run an application with JSS React Native. - [Overview of the React Native JSS sample application](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/overview-of-the-react-native-jss-sample-application.md): Describes the JSS sample application for React Native. - [Application modes in JSS React Native](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/application-modes-in-jss-react-native.md): An overview of development scripts to use for native app development in JSS React Native apps. - [Run a JSS for React Native app in disconnected mode](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/run-a-jss-for-react-native-app-in-disconnected-mode.md): Run your React Native application without a connection to Sitecore. - [Run a JSS for React Native app in connected mode](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/run-a-jss-for-react-native-app-in-connected-mode.md): Run a React Native application connected to a publicly available Sitecore instance. - [Run a JSS React Native app in connected tunnel mode](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/run-a-jss-react-native-app-in-connected-tunnel-mode.md): Run a React Native application connected to a publicly unavailable Sitecore instance. - [Customizations to the build process of JSS React Native apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/customizations-to-the-build-process-of-jss-react-native-apps.md): Customizations to the build process invocation for JSS React Native apps. - [Routing and state management in React Native JSS apps](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/routing-and-state-management-in-react-native-jss-apps.md): Overview of how React Native apps built with JSS handle routing and state management. - [UI Components in the JSS React Native sample app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/ui-components-in-the-jss-react-native-sample-app.md): Quick overview of UI components and how to handle Sitecore fields. - [Handling assets in the JSS React Native sample app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/handling-assets-in-the-jss-react-native-sample-app.md): Overview of how JSS React Native handles assets. - [Limitations with JSS for React Native](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/limitations-with-jss-for-react-native.md): Describes limitations for macOS when working with JSS for React Native. - [Working with placeholders in a JSS React Native app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/working-with-placeholders-in-a-jss-react-native-app.md): Placeholder techniques for React Native JSS applications. - [Walkthrough: Connecting a JSS application to Sitecore](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--connecting-a-jss-application-to-sitecore.md): Connect a React, Angular, or Vue.js JSS app to Sitecore and perform an initial deployment of code-first artifacts. - [Server-side rendering JSS applications](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/server-side-rendering-jss-applications.md): Improve SEO and enable integrations with Sitecore editors. - [Walkthrough: Configuring the HTTP rendering engine for your JSS app](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--configuring-the-http-rendering-engine-for-your-jss-app.md): Set up the HTTP rendering engine for your JSS app. - [Configuring and debugging the Node.js rendering engine](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/configuring-and-debugging-the-node-js-rendering-engine.md): Overview of configuration methods and options for integrated SSR of JSS apps. - [Server-side rendering JSS apps in integrated mode](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/server-side-rendering-jss-apps-in-integrated-mode.md): Run JSS applications using the Sitecore-hosted Node.js rendering engine. - [Add data to server-side rendering view bag](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/add-data-to-server-side-rendering-view-bag.md): Customize the rendering engine view bag pipeline to get additional data in the JSS application. - [Server-side render JSS apps headlessly using a Sitecore Experience Edge endpoint](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/server-side-render-jss-apps-headlessly-using-a-sitecore-experience-edge-endpoint.md): Quickly set up SSR with a Sitecore Experience Edge endpoint for your JSS React, Angular, or Vue.js apps powered by GraphQL. - [Walkthrough: Rendering a JSS app server-side using the headless JSS proxy](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--rendering-a-jss-app-server-side-using-the-headless-jss-proxy.md): How to use the node-headless-ssr-proxy sample app for headless SSR of JSS React, Angular, or Vue.js apps. - [Walkthrough: Deploying a JSS application to Azure](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--deploying-a-jss-application-to-azure.md): Simplified process for deploying JSS applications to a Sitecore instance on Azure. ## Sitecore ASP.NET Rendering SDK (legacy) - [Sitecore ASP.NET Rendering SDK (legacy)](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sitecore-asp-net-rendering-sdk--legacy-.md): Overview of the Sitecore ASP.NET Rendering SDK for building rendering hosts. - [Headless development with the ASP.NET Rendering SDK](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/headless-development-with-the-asp-net-rendering-sdk.md): Overview of how Sitecore Headless Development makes Sitecore solutions easy to develop, maintain, scale, and upgrade. - [Sitecore Layout Service](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sitecore-layout-service.md): Overview of the Sitecore Layout Service request and response models, the Layout Service Client configuration, and request operations. - [ASP.NET Core Rendering Engine](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/asp-net-core-rendering-engine.md): Overview of the Sitecore Rendering Engine services and middleware registration procedures. - [Sitecore ASP.NET Rendering SDK API (legacy)](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/sitecore-asp-net-rendering-sdk-api--legacy-.md): Introduction to the Sitecore ASP.NET Rendering SDK API. - [Layout and site requirements for ASP.NET Core rendering](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/layout-and-site-requirements-for-asp-net-core-rendering.md): Overview of site and layout requirements for site definitions, Experience Editor support, JSON renderings, and dynamic placeholder keys for ASP.NET Core rendering. - [Enable rendering host tracking, analytics, and personalization](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/enable-rendering-host-tracking-analytics-and-personalization.md): How to enable rendering host tracking, analytics, and personalization. - [Troubleshooting applications created with the ASP.NET Rendering SDK](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/troubleshooting-applications-created-with-the-asp-net-rendering-sdk.md): Investigate and resolve issues in your ASP.NET rendering hosts. ### View types - [View types](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/view-types.md): Overview of the Sitecore ASP.NET Rendering SDK view types. - [Model binding](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/model-binding.md): Overview of the Sitecore ASP.NET Rendering SDK model binding functionality. - [Model-bound views](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/model-bound-views.md): Overview of the Sitecore ASP.NET Rendering SDK model bound views configuration and content access functionality. - [View components](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/view-components.md): Learn about the Sitecore ASP.NET Rendering SDK view components configuration and content access functionality. - [Partial views](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/partial-views.md): Overview of the Sitecore ASP.NET Rendering SDK partial views configuration and content access functionality. - [Tag helpers](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/tag-helpers.md): Overview of the Sitecore ASP.NET Rendering SDK tag helpers. ### Walkthrough: Using the Getting Started template - [Walkthrough: Using the Getting Started template](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--using-the-getting-started-template.md): How to use the Getting Started template to quickly set up Sitecore containers and a rendering host for your first Sitecore Headless Development experience. - [Publish, run, and test the Getting Started template projects](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/publish-run-and-test-the-getting-started-template-projects.md): How to publish, run, and test the sitecore Getting Started template projects. ### Development walkthroughs - [Development walkthroughs](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/development-walkthroughs.md) - [Walkthrough: Creating a simple rendering with a data source](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--creating-a-simple-rendering-with-a-data-source.md): How to create a simple rendering with a data source using headless development and the ASP.NET Core Rendering SDK. - [Walkthrough: Creating a model-bound view that renders a contents resolver](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--creating-a-model-bound-view-that-renders-a-contents-resolver.md): How to create a Sitecore model-bound view that renders the output of a contents resolver. - [Walkthrough: Creating a view component with custom logic](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--creating-a-view-component-with-custom-logic.md): How to create a Sitecore view component with custom logic. - [Walkthrough: Configuring localization and content translation](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--configuring-localization-and-content-translation.md): Guide to configuring localization and content translation for a rendering engine. - [Walkthrough: Creating a language switcher component](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--creating-a-language-switcher-component.md): How to create a language switcher component in a rendering host so users can select the language to display. - [Walkthrough: Using the Getting Started template with SXA](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--using-the-getting-started-template-with-sxa.md): How to use the headless Getting Started template with Sitecore Experience Accelerator (SXA). ## Converting existing Sitecore MVC applications to the Jamstack architecture with Headless Rendering - [Converting existing Sitecore MVC applications to the Jamstack architecture with Headless Rendering](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/converting-existing-sitecore-mvc-applications-to-the-jamstack-architecture-with-headless-rendering.md): Statically render MVC applications with Headless Services and JSS and gradually convert your MVC solution to JavaScript. - [Walkthrough: Statically generating an MVC application](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/walkthrough--statically-generating-an-mvc-application.md): Render MVC layouts and renderings using Headless Services and a Next.js JSS app. - [Limitations and workarounds for static generation of MVC apps with JSS](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/limitations-and-workarounds-for-static-generation-of-mvc-apps-with-jss.md): Limitations and workarounds for statically generating MVC applications with JSS and Headless Services. - [Convert components from MVC (C#/Razor) to Next.js (JavaScript/React) incrementally](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/convert-components-from-mvc--c--razor--to-next-js--javascript-react--incrementally.md): Convert components of statically generated MVC apps to JSS Next.js/React components. ## Optional - [Full publication as Markdown](https://doc.sitecore.com/xp/en/developers/hd/21/sitecore-headless-development/llms-full.txt): Every article in this publication in a single file. - [Version 23.x](https://doc.sitecore.com/xp/en/developers/hd/23/sitecore-headless-development/llms.txt): Current. - [Version 22.x](https://doc.sitecore.com/xp/en/developers/hd/22/sitecore-headless-development/llms.txt): Previous version. - [Version 20.x](https://doc.sitecore.com/xp/en/developers/hd/20/sitecore-headless-development/llms.txt): Previous version. - [Version 19.x](https://doc.sitecore.com/xp/en/developers/hd/19/sitecore-headless-development/llms.txt): Previous version.