'use client'; import { Disclosure, DisclosureButton, DisclosurePanel, Transition, } from '@headlessui/react'; import { ChevronDownIcon } from '@heroicons/react/24/outline'; import { SectionHeading, Strong } from '@nx/nx-dev/ui-common'; import { cx } from '@nx/nx-dev/ui-primitives'; import { FAQPageJsonLd } from 'next-seo'; import Link from 'next/link'; import { ReactElement } from 'react'; export function Faq(): ReactElement { const faqs = [ { question: 'How is a key different than the license?', answerJson: 'Unlike a license, which outlined a commercial relationship between the code consumer and us, the key simply provides a free mechanism for us to gather insights into how our tools are used.', answerUi: (
Unlike a license, which outlined a commercial relationship between the code consumer and us, the key simply provides a free mechanism for us to gather insights into how our tools are used.
), }, { question: 'I was using custom runners or a DIY self-hosted caching solution. What should I do?', answerJson: "It's important to note that not all custom task runner use-cases were caching related. If you want to execute some code before or after tasks are executed, we have a new API for you to leverage which is documented here: https://nx.dev/deprecated/custom-tasks-runner#deprecating-custom-tasks-runner.\n If you were leveraging the custom tasks runners API to facilitate remote caching then you now have the choice between the three remote caching options outlined on this page: Nx Cloud, Self-Hosted via Nx Plugins, and Self-Hosted via your own OpenAPI server.", answerUi: ( <>It's important to note that not all custom task runner use-cases were caching related. If you want to execute some code before or after tasks are executed, we have a new API for you to leverage which is{' '} documented here.
If you were leveraging the custom tasks runners API to facilitate remote caching then you now have the choice between the three remote caching options outlined on this page: Nx Cloud, Self-Hosted via Nx Plugins, and Self-Hosted via your own OpenAPI server.
> ), }, { question: 'How do I implement custom authentication for my self-hosted cache?', answerJson: 'You implement custom authentication by using our OpenAPI solution', answerUi: (We have an OpenAPI spec to implement your own remote caching server, thus giving you the flexibility to adapt it to your custom authentication requirements.{' '} Learn more here.
), }, { question: 'What security measures does Nx Cloud offer beyond the official plugins and third party plugins?', answerJson: 'Nx Cloud includes enterprise-grade security features designed to give organizations more control over access and data protection:\n\n' + '- Access Management: Nx Cloud supports **individual user authentication tied to personal accounts, enabling precise control over who can access cached data. If a user leaves the company or changes roles, their access can be revoked immediately — without impacting others.\n' + '- Personal Access Tokens: Teams can issue and revoke multiple access tokens, allowing fine-grained control over automation and integrations.\n' + '- No Cache Overrides: Nx Cloud prevents unauthorized cache modifications.\n' + '- SOC 2 Compliance: Nx Cloud is SOC 2 certified, demonstrating a high standard for security, availability, and confidentiality.\n' + '- Secure Deployment Options: Nx Cloud though Nx Enterprise, includes single-tenant or on-prem options for teams needing full control over their data storage and access policies.', answerUi: ( <>Nx Cloud includes{' '} enterprise-grade security features designed to give organizations more control over access and data protection.
Can't find the answer you're looking for?