docusaurus/assets/js/3c0a97de.f4bc0b86.js
2025-03-28 16:24:01 +00:00

1 line
No EOL
1.7 MiB

"use strict";(self.webpackChunkwebsite=self.webpackChunkwebsite||[]).push([["97914"],{46257:function(e){e.exports=JSON.parse('{"allContent":{"docusaurus-plugin-content-docs":{"default":{"loadedVersions":[{"versionName":"current","label":"Canary \uD83D\uDEA7","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","path":"/docs","tagsPath":"/docs/tags","isLast":true,"routePriority":-1,"sidebarFilePath":"/home/runner/work/docusaurus/docusaurus/website/sidebars.ts","contentPath":"/home/runner/work/docusaurus/docusaurus/website/docs","contentPathLocalized":"/home/runner/work/docusaurus/docusaurus/website/i18n/en/docusaurus-plugin-content-docs/current","docs":[{"id":"advanced/architecture","title":"Architecture","description":"How Docusaurus works to build your app","source":"@site/docs/advanced/architecture.mdx","sourceDirName":"advanced","slug":"/advanced/architecture","permalink":"/docs/advanced/architecture","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/advanced/architecture.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"description":"How Docusaurus works to build your app"},"sidebar":"docs","previous":{"title":"Advanced Tutorials","permalink":"/docs/advanced/"},"next":{"title":"Plugins","permalink":"/docs/advanced/plugins"}},{"id":"advanced/client","title":"Client architecture","description":"How the Docusaurus client is structured","source":"@site/docs/advanced/client.mdx","sourceDirName":"advanced","slug":"/advanced/client","permalink":"/docs/advanced/client","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/advanced/client.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"description":"How the Docusaurus client is structured"},"sidebar":"docs","previous":{"title":"Static site generation","permalink":"/docs/advanced/ssg"},"next":{"title":"Upgrading Docusaurus","permalink":"/docs/migration"}},{"id":"advanced/index","title":"Advanced Tutorials","description":"This section is not going to be very structured, but we will cover the following topics:","source":"@site/docs/advanced/index.mdx","sourceDirName":"advanced","slug":"/advanced/","permalink":"/docs/advanced/","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/advanced/index.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"docs","previous":{"title":"What\'s next?","permalink":"/docs/guides/whats-next"},"next":{"title":"Architecture","permalink":"/docs/advanced/architecture"}},{"id":"advanced/plugins","title":"Plugins","description":"Plugins are the building blocks of features in a Docusaurus site. Each plugin handles its own individual feature. Plugins may work and be distributed as part of a bundle via presets.","source":"@site/docs/advanced/plugins.mdx","sourceDirName":"advanced","slug":"/advanced/plugins","permalink":"/docs/advanced/plugins","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/advanced/plugins.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"docs","previous":{"title":"Architecture","permalink":"/docs/advanced/architecture"},"next":{"title":"Routing","permalink":"/docs/advanced/routing"}},{"id":"advanced/routing","title":"Routing","description":"Docusaurus\' routing system follows single-page application conventions: one route, one component.","source":"@site/docs/advanced/routing.mdx","sourceDirName":"advanced","slug":"/advanced/routing","permalink":"/docs/advanced/routing","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/advanced/routing.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"description":"Docusaurus\' routing system follows single-page application conventions: one route, one component."},"sidebar":"docs","previous":{"title":"Plugins","permalink":"/docs/advanced/plugins"},"next":{"title":"Static site generation","permalink":"/docs/advanced/ssg"}},{"id":"advanced/ssg","title":"Static site generation (SSG)","description":"Docusaurus statically renders your React code into HTML, allowing faster load speed and better SEO.","source":"@site/docs/advanced/ssg.mdx","sourceDirName":"advanced","slug":"/advanced/ssg","permalink":"/docs/advanced/ssg","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/advanced/ssg.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"sidebar_label":"Static site generation","description":"Docusaurus statically renders your React code into HTML, allowing faster load speed and better SEO."},"sidebar":"docs","previous":{"title":"Routing","permalink":"/docs/advanced/routing"},"next":{"title":"Client architecture","permalink":"/docs/advanced/client"}},{"id":"api/docusaurus.config.js","title":"docusaurus.config.js","description":"API reference for Docusaurus configuration file.","source":"@site/docs/api/docusaurus.config.js.mdx","sourceDirName":"api","slug":"/api/docusaurus-config","permalink":"/docs/api/docusaurus-config","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/docusaurus.config.js.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":0,"frontMatter":{"sidebar_position":0,"description":"API reference for Docusaurus configuration file.","slug":"/api/docusaurus-config"},"sidebar":"api","previous":{"title":"Client API","permalink":"/docs/docusaurus-core"},"next":{"title":"Plugin Method References","permalink":"/docs/api/plugin-methods/"}},{"id":"api/misc/create-docusaurus","title":"\uD83D\uDCE6 create-docusaurus","description":"A scaffolding utility to help you instantly set up a functional Docusaurus app.","source":"@site/docs/api/misc/create-docusaurus.mdx","sourceDirName":"api/misc","slug":"/api/misc/create-docusaurus","permalink":"/docs/api/misc/create-docusaurus","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/misc/create-docusaurus.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":0,"frontMatter":{"sidebar_position":0,"slug":"/api/misc/create-docusaurus"},"sidebar":"api","previous":{"title":"\uD83D\uDCE6 theme-mermaid","permalink":"/docs/api/themes/@docusaurus/theme-mermaid"},"next":{"title":"\uD83D\uDCE6 eslint-plugin","permalink":"/docs/api/misc/@docusaurus/eslint-plugin"}},{"id":"api/misc/eslint-plugin/no-html-links","title":"no-html-links","description":"Ensure that the Docusaurus ` component is used instead of ` tags.","source":"@site/docs/api/misc/eslint-plugin/no-html-links.mdx","sourceDirName":"api/misc/eslint-plugin","slug":"/api/misc/@docusaurus/eslint-plugin/no-html-links","permalink":"/docs/api/misc/@docusaurus/eslint-plugin/no-html-links","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/misc/eslint-plugin/no-html-links.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"slug":"/api/misc/@docusaurus/eslint-plugin/no-html-links"},"sidebar":"api","previous":{"title":"\uD83D\uDCE6 eslint-plugin","permalink":"/docs/api/misc/@docusaurus/eslint-plugin"},"next":{"title":"no-untranslated-text","permalink":"/docs/api/misc/@docusaurus/eslint-plugin/no-untranslated-text"}},{"id":"api/misc/eslint-plugin/no-untranslated-text","title":"no-untranslated-text","description":"Enforce text labels in JSX to be wrapped by translate calls.","source":"@site/docs/api/misc/eslint-plugin/no-untranslated-text.mdx","sourceDirName":"api/misc/eslint-plugin","slug":"/api/misc/@docusaurus/eslint-plugin/no-untranslated-text","permalink":"/docs/api/misc/@docusaurus/eslint-plugin/no-untranslated-text","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/misc/eslint-plugin/no-untranslated-text.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"slug":"/api/misc/@docusaurus/eslint-plugin/no-untranslated-text"},"sidebar":"api","previous":{"title":"no-html-links","permalink":"/docs/api/misc/@docusaurus/eslint-plugin/no-html-links"},"next":{"title":"prefer-docusaurus-heading","permalink":"/docs/api/misc/@docusaurus/eslint-plugin/prefer-docusaurus-heading"}},{"id":"api/misc/eslint-plugin/prefer-docusaurus-heading","title":"prefer-docusaurus-heading","description":"Ensures that the @theme/Heading theme component provided by Docusaurus theme-classic is used instead of `` tags for headings.","source":"@site/docs/api/misc/eslint-plugin/prefer-docusaurus-heading.mdx","sourceDirName":"api/misc/eslint-plugin","slug":"/api/misc/@docusaurus/eslint-plugin/prefer-docusaurus-heading","permalink":"/docs/api/misc/@docusaurus/eslint-plugin/prefer-docusaurus-heading","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/misc/eslint-plugin/prefer-docusaurus-heading.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"slug":"/api/misc/@docusaurus/eslint-plugin/prefer-docusaurus-heading"},"sidebar":"api","previous":{"title":"no-untranslated-text","permalink":"/docs/api/misc/@docusaurus/eslint-plugin/no-untranslated-text"},"next":{"title":"string-literal-i18n-messages","permalink":"/docs/api/misc/@docusaurus/eslint-plugin/string-literal-i18n-messages"}},{"id":"api/misc/eslint-plugin/README","title":"\uD83D\uDCE6 eslint-plugin","description":"ESLint is a tool that statically analyzes your code and reports problems or suggests best practices through editor hints and command line. Docusaurus provides an ESLint plugin to enforce best Docusaurus practices.","source":"@site/docs/api/misc/eslint-plugin/README.mdx","sourceDirName":"api/misc/eslint-plugin","slug":"/api/misc/@docusaurus/eslint-plugin","permalink":"/docs/api/misc/@docusaurus/eslint-plugin","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/misc/eslint-plugin/README.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":1,"frontMatter":{"sidebar_position":1,"slug":"/api/misc/@docusaurus/eslint-plugin"},"sidebar":"api","previous":{"title":"\uD83D\uDCE6 create-docusaurus","permalink":"/docs/api/misc/create-docusaurus"},"next":{"title":"no-html-links","permalink":"/docs/api/misc/@docusaurus/eslint-plugin/no-html-links"}},{"id":"api/misc/eslint-plugin/string-literal-i18n-messages","title":"string-literal-i18n-messages","description":"Enforce translate APIs to be called on plain text labels.","source":"@site/docs/api/misc/eslint-plugin/string-literal-i18n-messages.mdx","sourceDirName":"api/misc/eslint-plugin","slug":"/api/misc/@docusaurus/eslint-plugin/string-literal-i18n-messages","permalink":"/docs/api/misc/@docusaurus/eslint-plugin/string-literal-i18n-messages","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/misc/eslint-plugin/string-literal-i18n-messages.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"slug":"/api/misc/@docusaurus/eslint-plugin/string-literal-i18n-messages"},"sidebar":"api","previous":{"title":"prefer-docusaurus-heading","permalink":"/docs/api/misc/@docusaurus/eslint-plugin/prefer-docusaurus-heading"},"next":{"title":"\uD83D\uDCE6 logger","permalink":"/docs/api/misc/@docusaurus/logger"}},{"id":"api/misc/logger/logger","title":"\uD83D\uDCE6 logger","description":"An encapsulated logger for semantically formatting console messages.","source":"@site/docs/api/misc/logger/logger.mdx","sourceDirName":"api/misc/logger","slug":"/api/misc/@docusaurus/logger","permalink":"/docs/api/misc/@docusaurus/logger","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/misc/logger/logger.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":2,"frontMatter":{"sidebar_position":2,"slug":"/api/misc/@docusaurus/logger"},"sidebar":"api","previous":{"title":"string-literal-i18n-messages","permalink":"/docs/api/misc/@docusaurus/eslint-plugin/string-literal-i18n-messages"}},{"id":"api/plugin-methods/extend-infrastructure","title":"Extending infrastructure","description":"Docusaurus has some infrastructure like hot reloading, CLI, and swizzling, that can be extended by external plugins.","source":"@site/docs/api/plugin-methods/extend-infrastructure.mdx","sourceDirName":"api/plugin-methods","slug":"/api/plugin-methods/extend-infrastructure","permalink":"/docs/api/plugin-methods/extend-infrastructure","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/plugin-methods/extend-infrastructure.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":2,"frontMatter":{"sidebar_position":2},"sidebar":"api","previous":{"title":"Lifecycle APIs","permalink":"/docs/api/plugin-methods/lifecycle-apis"},"next":{"title":"I18n lifecycles","permalink":"/docs/api/plugin-methods/i18n-lifecycles"}},{"id":"api/plugin-methods/i18n-lifecycles","title":"I18n lifecycles","description":"Plugins use these lifecycles to load i18n-related data.","source":"@site/docs/api/plugin-methods/i18n-lifecycles.mdx","sourceDirName":"api/plugin-methods","slug":"/api/plugin-methods/i18n-lifecycles","permalink":"/docs/api/plugin-methods/i18n-lifecycles","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/plugin-methods/i18n-lifecycles.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":3,"frontMatter":{"sidebar_position":3},"sidebar":"api","previous":{"title":"Extending infrastructure","permalink":"/docs/api/plugin-methods/extend-infrastructure"},"next":{"title":"Static methods","permalink":"/docs/api/plugin-methods/static-methods"}},{"id":"api/plugin-methods/lifecycle-apis","title":"Lifecycle APIs","description":"During the build, plugins are loaded in parallel to fetch their own contents and render them to routes. Plugins may also configure webpack or post-process the generated files.","source":"@site/docs/api/plugin-methods/lifecycle-apis.mdx","sourceDirName":"api/plugin-methods","slug":"/api/plugin-methods/lifecycle-apis","permalink":"/docs/api/plugin-methods/lifecycle-apis","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/plugin-methods/lifecycle-apis.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":1,"frontMatter":{"sidebar_position":1,"toc_max_heading_level":4},"sidebar":"api","previous":{"title":"Plugin Method References","permalink":"/docs/api/plugin-methods/"},"next":{"title":"Extending infrastructure","permalink":"/docs/api/plugin-methods/extend-infrastructure"}},{"id":"api/plugin-methods/README","title":"Plugin Method References","description":"This section is a work in progress. Anchor links or even URLs are not guaranteed to be stable.","source":"@site/docs/api/plugin-methods/README.mdx","sourceDirName":"api/plugin-methods","slug":"/api/plugin-methods/","permalink":"/docs/api/plugin-methods/","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/plugin-methods/README.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"api","previous":{"title":"docusaurus.config.js","permalink":"/docs/api/docusaurus-config"},"next":{"title":"Lifecycle APIs","permalink":"/docs/api/plugin-methods/lifecycle-apis"}},{"id":"api/plugin-methods/static-methods","title":"Static methods","description":"Static methods are not part of the plugin instance\u2014they are attached to the constructor function. These methods are used to validate and normalize the plugin options and theme config, which are then used as constructor parameters to initialize the plugin instance.","source":"@site/docs/api/plugin-methods/static-methods.mdx","sourceDirName":"api/plugin-methods","slug":"/api/plugin-methods/static-methods","permalink":"/docs/api/plugin-methods/static-methods","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/plugin-methods/static-methods.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":4,"frontMatter":{"sidebar_position":4},"sidebar":"api","previous":{"title":"I18n lifecycles","permalink":"/docs/api/plugin-methods/i18n-lifecycles"},"next":{"title":"Plugins overview","permalink":"/docs/api/plugins"}},{"id":"api/plugins/plugin-client-redirects","title":"\uD83D\uDCE6 plugin-client-redirects","description":"Docusaurus Plugin to generate client-side redirects.","source":"@site/docs/api/plugins/plugin-client-redirects.mdx","sourceDirName":"api/plugins","slug":"/api/plugins/@docusaurus/plugin-client-redirects","permalink":"/docs/api/plugins/@docusaurus/plugin-client-redirects","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/plugins/plugin-client-redirects.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":4,"frontMatter":{"sidebar_position":4,"slug":"/api/plugins/@docusaurus/plugin-client-redirects"},"sidebar":"api","previous":{"title":"\uD83D\uDCE6 plugin-content-pages","permalink":"/docs/api/plugins/@docusaurus/plugin-content-pages"},"next":{"title":"\uD83D\uDCE6 plugin-debug","permalink":"/docs/api/plugins/@docusaurus/plugin-debug"}},{"id":"api/plugins/plugin-content-blog","title":"\uD83D\uDCE6 plugin-content-blog","description":"Provides the Blog feature and is the default blog plugin for Docusaurus.","source":"@site/docs/api/plugins/plugin-content-blog.mdx","sourceDirName":"api/plugins","slug":"/api/plugins/@docusaurus/plugin-content-blog","permalink":"/docs/api/plugins/@docusaurus/plugin-content-blog","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/plugins/plugin-content-blog.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":2,"frontMatter":{"sidebar_position":2,"slug":"/api/plugins/@docusaurus/plugin-content-blog"},"sidebar":"api","previous":{"title":"\uD83D\uDCE6 plugin-content-docs","permalink":"/docs/api/plugins/@docusaurus/plugin-content-docs"},"next":{"title":"\uD83D\uDCE6 plugin-content-pages","permalink":"/docs/api/plugins/@docusaurus/plugin-content-pages"}},{"id":"api/plugins/plugin-content-docs","title":"\uD83D\uDCE6 plugin-content-docs","description":"Provides the Docs functionality and is the default docs plugin for Docusaurus.","source":"@site/docs/api/plugins/plugin-content-docs.mdx","sourceDirName":"api/plugins","slug":"/api/plugins/@docusaurus/plugin-content-docs","permalink":"/docs/api/plugins/@docusaurus/plugin-content-docs","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/plugins/plugin-content-docs.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":1,"frontMatter":{"sidebar_position":1,"slug":"/api/plugins/@docusaurus/plugin-content-docs"},"sidebar":"api","previous":{"title":"Plugins overview","permalink":"/docs/api/plugins"},"next":{"title":"\uD83D\uDCE6 plugin-content-blog","permalink":"/docs/api/plugins/@docusaurus/plugin-content-blog"}},{"id":"api/plugins/plugin-content-pages","title":"\uD83D\uDCE6 plugin-content-pages","description":"The default pages plugin for Docusaurus. The classic template ships with this plugin with default configurations. This plugin provides creating pages functionality.","source":"@site/docs/api/plugins/plugin-content-pages.mdx","sourceDirName":"api/plugins","slug":"/api/plugins/@docusaurus/plugin-content-pages","permalink":"/docs/api/plugins/@docusaurus/plugin-content-pages","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/plugins/plugin-content-pages.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":3,"frontMatter":{"sidebar_position":3,"slug":"/api/plugins/@docusaurus/plugin-content-pages"},"sidebar":"api","previous":{"title":"\uD83D\uDCE6 plugin-content-blog","permalink":"/docs/api/plugins/@docusaurus/plugin-content-blog"},"next":{"title":"\uD83D\uDCE6 plugin-client-redirects","permalink":"/docs/api/plugins/@docusaurus/plugin-client-redirects"}},{"id":"api/plugins/plugin-debug","title":"\uD83D\uDCE6 plugin-debug","description":"The debug plugin will display useful debug information at http3000/docusaurus/debug.","source":"@site/docs/api/plugins/plugin-debug.mdx","sourceDirName":"api/plugins","slug":"/api/plugins/@docusaurus/plugin-debug","permalink":"/docs/api/plugins/@docusaurus/plugin-debug","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/plugins/plugin-debug.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":5,"frontMatter":{"sidebar_position":5,"slug":"/api/plugins/@docusaurus/plugin-debug"},"sidebar":"api","previous":{"title":"\uD83D\uDCE6 plugin-client-redirects","permalink":"/docs/api/plugins/@docusaurus/plugin-client-redirects"},"next":{"title":"\uD83D\uDCE6 plugin-google-analytics","permalink":"/docs/api/plugins/@docusaurus/plugin-google-analytics"}},{"id":"api/plugins/plugin-google-analytics","title":"\uD83D\uDCE6 plugin-google-analytics","description":"The default Google Analytics plugin. It is a JavaScript library for measuring how users interact with your website in the production build. If you are using Google Analytics 4 you might need to consider using plugin-google-gtag instead.","source":"@site/docs/api/plugins/plugin-google-analytics.mdx","sourceDirName":"api/plugins","slug":"/api/plugins/@docusaurus/plugin-google-analytics","permalink":"/docs/api/plugins/@docusaurus/plugin-google-analytics","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/plugins/plugin-google-analytics.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":6,"frontMatter":{"sidebar_position":6,"slug":"/api/plugins/@docusaurus/plugin-google-analytics"},"sidebar":"api","previous":{"title":"\uD83D\uDCE6 plugin-debug","permalink":"/docs/api/plugins/@docusaurus/plugin-debug"},"next":{"title":"\uD83D\uDCE6 plugin-google-gtag","permalink":"/docs/api/plugins/@docusaurus/plugin-google-gtag"}},{"id":"api/plugins/plugin-google-gtag","title":"\uD83D\uDCE6 plugin-google-gtag","description":"The default Global Site Tag (gtag.js) plugin. It is a JavaScript tagging framework and API that allows you to send event data to Google Analytics, Google Ads, and Google Marketing Platform. This section describes how to configure a Docusaurus site to enable global site tag for Google Analytics.","source":"@site/docs/api/plugins/plugin-google-gtag.mdx","sourceDirName":"api/plugins","slug":"/api/plugins/@docusaurus/plugin-google-gtag","permalink":"/docs/api/plugins/@docusaurus/plugin-google-gtag","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/plugins/plugin-google-gtag.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":7,"frontMatter":{"sidebar_position":7,"slug":"/api/plugins/@docusaurus/plugin-google-gtag"},"sidebar":"api","previous":{"title":"\uD83D\uDCE6 plugin-google-analytics","permalink":"/docs/api/plugins/@docusaurus/plugin-google-analytics"},"next":{"title":"\uD83D\uDCE6 plugin-rsdoctor","permalink":"/docs/api/plugins/@docusaurus/plugin-rsdoctor"}},{"id":"api/plugins/plugin-google-tag-manager","title":"\uD83D\uDCE6 plugin-google-tag-manager","description":"A plugin for adding Google Tag Manager (gtm.js) to a Docusaurus site. Use this plugin in conjunction with the standard gtag plugin for in-depth analysis of how users are using your site.","source":"@site/docs/api/plugins/plugin-google-tag-manager.mdx","sourceDirName":"api/plugins","slug":"/api/plugins/@docusaurus/plugin-google-tag-manager","permalink":"/docs/api/plugins/@docusaurus/plugin-google-tag-manager","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/plugins/plugin-google-tag-manager.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":8,"frontMatter":{"sidebar_position":8,"slug":"/api/plugins/@docusaurus/plugin-google-tag-manager"},"sidebar":"api","previous":{"title":"\uD83D\uDCE6 plugin-svgr","permalink":"/docs/api/plugins/@docusaurus/plugin-svgr"},"next":{"title":"\uD83D\uDCE6 plugin-ideal-image","permalink":"/docs/api/plugins/@docusaurus/plugin-ideal-image"}},{"id":"api/plugins/plugin-ideal-image","title":"\uD83D\uDCE6 plugin-ideal-image","description":"Docusaurus Plugin to generate an almost ideal image (responsive, lazy-loading, and low quality placeholder).","source":"@site/docs/api/plugins/plugin-ideal-image.mdx","sourceDirName":"api/plugins","slug":"/api/plugins/@docusaurus/plugin-ideal-image","permalink":"/docs/api/plugins/@docusaurus/plugin-ideal-image","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/plugins/plugin-ideal-image.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":8,"frontMatter":{"sidebar_position":8,"slug":"/api/plugins/@docusaurus/plugin-ideal-image"},"sidebar":"api","previous":{"title":"\uD83D\uDCE6 plugin-google-tag-manager","permalink":"/docs/api/plugins/@docusaurus/plugin-google-tag-manager"},"next":{"title":"\uD83D\uDCE6 plugin-pwa","permalink":"/docs/api/plugins/@docusaurus/plugin-pwa"}},{"id":"api/plugins/plugin-pwa","title":"\uD83D\uDCE6 plugin-pwa","description":"Docusaurus Plugin to add PWA support using Workbox. This plugin generates a Service Worker in production build only, and allows you to create fully PWA-compliant documentation site with offline and installation support.","source":"@site/docs/api/plugins/plugin-pwa.mdx","sourceDirName":"api/plugins","slug":"/api/plugins/@docusaurus/plugin-pwa","permalink":"/docs/api/plugins/@docusaurus/plugin-pwa","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/plugins/plugin-pwa.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":9,"frontMatter":{"sidebar_position":9,"slug":"/api/plugins/@docusaurus/plugin-pwa"},"sidebar":"api","previous":{"title":"\uD83D\uDCE6 plugin-ideal-image","permalink":"/docs/api/plugins/@docusaurus/plugin-ideal-image"},"next":{"title":"\uD83D\uDCE6 plugin-sitemap","permalink":"/docs/api/plugins/@docusaurus/plugin-sitemap"}},{"id":"api/plugins/plugin-rsdoctor","title":"\uD83D\uDCE6 plugin-rsdoctor","description":"A Rsdoctor plugin can help you troubleshoot the bundling phase of your Docusaurus site, supporting both Webpack and Rspack.","source":"@site/docs/api/plugins/plugin-rsdoctor.mdx","sourceDirName":"api/plugins","slug":"/api/plugins/@docusaurus/plugin-rsdoctor","permalink":"/docs/api/plugins/@docusaurus/plugin-rsdoctor","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/plugins/plugin-rsdoctor.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":7,"frontMatter":{"sidebar_position":7,"slug":"/api/plugins/@docusaurus/plugin-rsdoctor"},"sidebar":"api","previous":{"title":"\uD83D\uDCE6 plugin-google-gtag","permalink":"/docs/api/plugins/@docusaurus/plugin-google-gtag"},"next":{"title":"\uD83D\uDCE6 plugin-svgr","permalink":"/docs/api/plugins/@docusaurus/plugin-svgr"}},{"id":"api/plugins/plugin-sitemap","title":"\uD83D\uDCE6 plugin-sitemap","description":"This plugin creates sitemaps for your site so that search engine crawlers can crawl your site more accurately.","source":"@site/docs/api/plugins/plugin-sitemap.mdx","sourceDirName":"api/plugins","slug":"/api/plugins/@docusaurus/plugin-sitemap","permalink":"/docs/api/plugins/@docusaurus/plugin-sitemap","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/plugins/plugin-sitemap.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":10,"frontMatter":{"sidebar_position":10,"slug":"/api/plugins/@docusaurus/plugin-sitemap"},"sidebar":"api","previous":{"title":"\uD83D\uDCE6 plugin-pwa","permalink":"/docs/api/plugins/@docusaurus/plugin-pwa"},"next":{"title":"\uD83D\uDCE6 plugin-vercel-analytics","permalink":"/docs/api/plugins/@docusaurus/plugin-vercel-analytics"}},{"id":"api/plugins/plugin-svgr","title":"\uD83D\uDCE6 plugin-svgr","description":"An SVGR plugin to transform SVG files into React components automatically at build time.","source":"@site/docs/api/plugins/plugin-svgr.mdx","sourceDirName":"api/plugins","slug":"/api/plugins/@docusaurus/plugin-svgr","permalink":"/docs/api/plugins/@docusaurus/plugin-svgr","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/plugins/plugin-svgr.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":7,"frontMatter":{"sidebar_position":7,"slug":"/api/plugins/@docusaurus/plugin-svgr"},"sidebar":"api","previous":{"title":"\uD83D\uDCE6 plugin-rsdoctor","permalink":"/docs/api/plugins/@docusaurus/plugin-rsdoctor"},"next":{"title":"\uD83D\uDCE6 plugin-google-tag-manager","permalink":"/docs/api/plugins/@docusaurus/plugin-google-tag-manager"}},{"id":"api/plugins/plugin-vercel-analytics","title":"\uD83D\uDCE6 plugin-vercel-analytics","description":"Vercel Analytics provides comprehensive insights into your website\'s visitors, tracking top pages, referrers, and demographics like location, operating systems, and browser info.","source":"@site/docs/api/plugins/plugin-vercel-analytics.mdx","sourceDirName":"api/plugins","slug":"/api/plugins/@docusaurus/plugin-vercel-analytics","permalink":"/docs/api/plugins/@docusaurus/plugin-vercel-analytics","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/plugins/plugin-vercel-analytics.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":11,"frontMatter":{"sidebar_position":11,"slug":"/api/plugins/@docusaurus/plugin-vercel-analytics"},"sidebar":"api","previous":{"title":"\uD83D\uDCE6 plugin-sitemap","permalink":"/docs/api/plugins/@docusaurus/plugin-sitemap"},"next":{"title":"Themes overview","permalink":"/docs/api/themes"}},{"id":"api/plugins/plugins-overview","title":"Docusaurus plugins","description":"We provide official Docusaurus plugins.","source":"@site/docs/api/plugins/overview.mdx","sourceDirName":"api/plugins","slug":"/api/plugins","permalink":"/docs/api/plugins","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/plugins/overview.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":0,"frontMatter":{"sidebar_position":0,"id":"plugins-overview","sidebar_label":"Plugins overview","slug":"/api/plugins"},"sidebar":"api","previous":{"title":"Static methods","permalink":"/docs/api/plugin-methods/static-methods"},"next":{"title":"\uD83D\uDCE6 plugin-content-docs","permalink":"/docs/api/plugins/@docusaurus/plugin-content-docs"}},{"id":"api/themes/theme-classic","title":"\uD83D\uDCE6 theme-classic","description":"The classic theme for Docusaurus.","source":"@site/docs/api/themes/theme-classic.mdx","sourceDirName":"api/themes","slug":"/api/themes/@docusaurus/theme-classic","permalink":"/docs/api/themes/@docusaurus/theme-classic","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/themes/theme-classic.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":2,"frontMatter":{"sidebar_position":2,"slug":"/api/themes/@docusaurus/theme-classic"},"sidebar":"api","previous":{"title":"Configuration","permalink":"/docs/api/themes/configuration"},"next":{"title":"\uD83D\uDCE6 theme-live-codeblock","permalink":"/docs/api/themes/@docusaurus/theme-live-codeblock"}},{"id":"api/themes/theme-configuration","title":"Theme configuration","description":"This configuration applies to all main themes.","source":"@site/docs/api/themes/theme-configuration.mdx","sourceDirName":"api/themes","slug":"/api/themes/configuration","permalink":"/docs/api/themes/configuration","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/themes/theme-configuration.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":1,"frontMatter":{"sidebar_position":1,"sidebar_label":"Configuration","slug":"/api/themes/configuration","toc_max_heading_level":4},"sidebar":"api","previous":{"title":"Themes overview","permalink":"/docs/api/themes"},"next":{"title":"\uD83D\uDCE6 theme-classic","permalink":"/docs/api/themes/@docusaurus/theme-classic"}},{"id":"api/themes/theme-live-codeblock","title":"\uD83D\uDCE6 theme-live-codeblock","description":"This theme provides a @theme/CodeBlock component that is powered by react-live. You can read more on interactive code editor documentation.","source":"@site/docs/api/themes/theme-live-codeblock.mdx","sourceDirName":"api/themes","slug":"/api/themes/@docusaurus/theme-live-codeblock","permalink":"/docs/api/themes/@docusaurus/theme-live-codeblock","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/themes/theme-live-codeblock.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":3,"frontMatter":{"sidebar_position":3,"slug":"/api/themes/@docusaurus/theme-live-codeblock"},"sidebar":"api","previous":{"title":"\uD83D\uDCE6 theme-classic","permalink":"/docs/api/themes/@docusaurus/theme-classic"},"next":{"title":"\uD83D\uDCE6 theme-search-algolia","permalink":"/docs/api/themes/@docusaurus/theme-search-algolia"}},{"id":"api/themes/theme-mermaid","title":"\uD83D\uDCE6 theme-mermaid","description":"This theme provides a @theme/Mermaid component that is powered by mermaid. You can read more on diagrams documentation.","source":"@site/docs/api/themes/theme-mermaid.mdx","sourceDirName":"api/themes","slug":"/api/themes/@docusaurus/theme-mermaid","permalink":"/docs/api/themes/@docusaurus/theme-mermaid","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/themes/theme-mermaid.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":5,"frontMatter":{"sidebar_position":5,"slug":"/api/themes/@docusaurus/theme-mermaid"},"sidebar":"api","previous":{"title":"\uD83D\uDCE6 theme-search-algolia","permalink":"/docs/api/themes/@docusaurus/theme-search-algolia"},"next":{"title":"\uD83D\uDCE6 create-docusaurus","permalink":"/docs/api/misc/create-docusaurus"}},{"id":"api/themes/theme-search-algolia","title":"\uD83D\uDCE6 theme-search-algolia","description":"This theme provides a @theme/SearchBar component that integrates with Algolia DocSearch easily. Combined with @docusaurus/theme-classic, it provides a very easy search integration. You can read more on search documentation.","source":"@site/docs/api/themes/theme-search-algolia.mdx","sourceDirName":"api/themes","slug":"/api/themes/@docusaurus/theme-search-algolia","permalink":"/docs/api/themes/@docusaurus/theme-search-algolia","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/themes/theme-search-algolia.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":4,"frontMatter":{"sidebar_position":4,"slug":"/api/themes/@docusaurus/theme-search-algolia"},"sidebar":"api","previous":{"title":"\uD83D\uDCE6 theme-live-codeblock","permalink":"/docs/api/themes/@docusaurus/theme-live-codeblock"},"next":{"title":"\uD83D\uDCE6 theme-mermaid","permalink":"/docs/api/themes/@docusaurus/theme-mermaid"}},{"id":"api/themes/themes-overview","title":"Docusaurus themes","description":"We provide official Docusaurus themes.","source":"@site/docs/api/themes/overview.mdx","sourceDirName":"api/themes","slug":"/api/themes","permalink":"/docs/api/themes","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/api/themes/overview.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":0,"frontMatter":{"sidebar_position":0,"id":"themes-overview","sidebar_label":"Themes overview","slug":"/api/themes"},"sidebar":"api","previous":{"title":"\uD83D\uDCE6 plugin-vercel-analytics","permalink":"/docs/api/plugins/@docusaurus/plugin-vercel-analytics"},"next":{"title":"Configuration","permalink":"/docs/api/themes/configuration"}},{"id":"blog","title":"Blog","description":"Deploy a full-featured blog in no time with Docusaurus.","source":"@site/docs/blog.mdx","sourceDirName":".","slug":"/blog","permalink":"/docs/blog","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/blog.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"description":"Deploy a full-featured blog in no time with Docusaurus."},"sidebar":"docs","previous":{"title":"Docs Multi-instance","permalink":"/docs/docs-multi-instance"},"next":{"title":"Markdown Features","permalink":"/docs/markdown-features"}},{"id":"browser-support","title":"Browser support","description":"How to keep a reasonable bundle size while ensuring sufficient browser support.","source":"@site/docs/browser-support.mdx","sourceDirName":".","slug":"/browser-support","permalink":"/docs/browser-support","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/browser-support.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"description":"How to keep a reasonable bundle size while ensuring sufficient browser support."},"sidebar":"docs","previous":{"title":"Search","permalink":"/docs/search"},"next":{"title":"SEO","permalink":"/docs/seo"}},{"id":"cli","title":"CLI","description":"Docusaurus provides a set of scripts to help you generate, serve, and deploy your website.","source":"@site/docs/cli.mdx","sourceDirName":".","slug":"/cli","permalink":"/docs/cli","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/cli.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"description":"Docusaurus provides a set of scripts to help you generate, serve, and deploy your website."},"sidebar":"api","next":{"title":"Client API","permalink":"/docs/docusaurus-core"}},{"id":"configuration","title":"Configuration","description":"Configuring your site\'s behavior through docusaurus.config.js and more.","source":"@site/docs/configuration.mdx","sourceDirName":".","slug":"/configuration","permalink":"/docs/configuration","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/configuration.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"description":"Configuring your site\'s behavior through docusaurus.config.js and more."},"sidebar":"docs","previous":{"title":"Installation","permalink":"/docs/installation"},"next":{"title":"Playground","permalink":"/docs/playground"}},{"id":"deployment","title":"Deployment","description":"Deploy your Docusaurus app for production on a range of static site hosting services.","source":"@site/docs/deployment.mdx","sourceDirName":".","slug":"/deployment","permalink":"/docs/deployment","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/deployment.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"description":"Deploy your Docusaurus app for production on a range of static site hosting services."},"sidebar":"docs","previous":{"title":"Using Plugins","permalink":"/docs/using-plugins"},"next":{"title":"i18n - Introduction","permalink":"/docs/i18n/introduction"}},{"id":"docusaurus-core","title":"Docusaurus Client API","description":"Docusaurus provides some APIs on the clients that can be helpful to you when building your site.","source":"@site/docs/docusaurus-core.mdx","sourceDirName":".","slug":"/docusaurus-core","permalink":"/docs/docusaurus-core","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/docusaurus-core.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"sidebar_label":"Client API"},"sidebar":"api","previous":{"title":"CLI","permalink":"/docs/cli"},"next":{"title":"docusaurus.config.js","permalink":"/docs/api/docusaurus-config"}},{"id":"guides/creating-pages","title":"Creating Pages","description":"In this section, we will learn about creating pages in Docusaurus.","source":"@site/docs/guides/creating-pages.mdx","sourceDirName":"guides","slug":"/creating-pages","permalink":"/docs/creating-pages","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/guides/creating-pages.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"slug":"/creating-pages","sidebar_label":"Pages"},"sidebar":"docs","previous":{"title":"Guides","permalink":"/docs/category/guides"},"next":{"title":"Introduction","permalink":"/docs/docs-introduction"}},{"id":"guides/docs/create-doc","title":"Create a doc","description":"Create a Markdown Document","source":"@site/docs/guides/docs/docs-create-doc.mdx","sourceDirName":"guides/docs","slug":"/create-doc","permalink":"/docs/create-doc","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/guides/docs/docs-create-doc.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"id":"create-doc","description":"Create a Markdown Document","slug":"/create-doc"},"sidebar":"docs","previous":{"title":"Introduction","permalink":"/docs/docs-introduction"},"next":{"title":"Sidebar","permalink":"/docs/sidebar"}},{"id":"guides/docs/introduction","title":"Docs Introduction","description":"The docs feature provides users with a way to organize Markdown files in a hierarchical format.","source":"@site/docs/guides/docs/docs-introduction.mdx","sourceDirName":"guides/docs","slug":"/docs-introduction","permalink":"/docs/docs-introduction","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/guides/docs/docs-introduction.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"id":"introduction","sidebar_label":"Introduction","slug":"/docs-introduction"},"sidebar":"docs","previous":{"title":"Pages","permalink":"/docs/creating-pages"},"next":{"title":"Create a doc","permalink":"/docs/create-doc"}},{"id":"guides/docs/multi-instance","title":"Docs Multi-instance","description":"Use multiple docs plugin instances on a single Docusaurus site.","source":"@site/docs/guides/docs/docs-multi-instance.mdx","sourceDirName":"guides/docs","slug":"/docs-multi-instance","permalink":"/docs/docs-multi-instance","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/guides/docs/docs-multi-instance.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"id":"multi-instance","description":"Use multiple docs plugin instances on a single Docusaurus site.","slug":"/docs-multi-instance"},"sidebar":"docs","previous":{"title":"Versioning","permalink":"/docs/versioning"},"next":{"title":"Blog","permalink":"/docs/blog"}},{"id":"guides/docs/sidebar/autogenerated","title":"Autogenerated","description":"Docusaurus can create a sidebar automatically from your filesystem structure: each folder creates a sidebar category, and each file creates a doc link.","source":"@site/docs/guides/docs/sidebar/autogenerated.mdx","sourceDirName":"guides/docs/sidebar","slug":"/sidebar/autogenerated","permalink":"/docs/sidebar/autogenerated","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/guides/docs/sidebar/autogenerated.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"slug":"/sidebar/autogenerated"},"sidebar":"docs","previous":{"title":"Sidebar items","permalink":"/docs/sidebar/items"},"next":{"title":"Using multiple sidebars","permalink":"/docs/sidebar/multiple-sidebars"}},{"id":"guides/docs/sidebar/index","title":"Sidebar","description":"Creating a sidebar is useful to:","source":"@site/docs/guides/docs/sidebar/index.mdx","sourceDirName":"guides/docs/sidebar","slug":"/sidebar","permalink":"/docs/sidebar","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/guides/docs/sidebar/index.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"slug":"/sidebar"},"sidebar":"docs","previous":{"title":"Create a doc","permalink":"/docs/create-doc"},"next":{"title":"Sidebar items","permalink":"/docs/sidebar/items"}},{"id":"guides/docs/sidebar/items","title":"Sidebar items","description":"We have introduced three types of item types in the example in the previous section autogenerated, which we will explain in detail later.","source":"@site/docs/guides/docs/sidebar/items.mdx","sourceDirName":"guides/docs/sidebar","slug":"/sidebar/items","permalink":"/docs/sidebar/items","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/guides/docs/sidebar/items.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"toc_max_heading_level":4,"slug":"/sidebar/items"},"sidebar":"docs","previous":{"title":"Sidebar","permalink":"/docs/sidebar"},"next":{"title":"Autogenerated","permalink":"/docs/sidebar/autogenerated"}},{"id":"guides/docs/sidebar/multiple-sidebars","title":"Using multiple sidebars","description":"You can create a sidebar for each set of Markdown files that you want to group together.","source":"@site/docs/guides/docs/sidebar/multiple-sidebars.mdx","sourceDirName":"guides/docs/sidebar","slug":"/sidebar/multiple-sidebars","permalink":"/docs/sidebar/multiple-sidebars","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/guides/docs/sidebar/multiple-sidebars.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"slug":"/sidebar/multiple-sidebars"},"sidebar":"docs","previous":{"title":"Autogenerated","permalink":"/docs/sidebar/autogenerated"},"next":{"title":"Versioning","permalink":"/docs/versioning"}},{"id":"guides/docs/versioning","title":"Versioning","description":"You can use the versioning CLI to create a new documentation version based on the latest content in the docs directory. That specific set of documentation will then be preserved and accessible even as the documentation in the docs directory continues to evolve.","source":"@site/docs/guides/docs/versioning.mdx","sourceDirName":"guides/docs","slug":"/versioning","permalink":"/docs/versioning","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/guides/docs/versioning.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"slug":"/versioning"},"sidebar":"docs","previous":{"title":"Using multiple sidebars","permalink":"/docs/sidebar/multiple-sidebars"},"next":{"title":"Docs Multi-instance","permalink":"/docs/docs-multi-instance"}},{"id":"guides/markdown-features/admonitions","title":"Admonitions","description":"Handling admonitions/callouts in Docusaurus Markdown","source":"@site/docs/guides/markdown-features/markdown-features-admonitions.mdx","sourceDirName":"guides/markdown-features","slug":"/markdown-features/admonitions","permalink":"/docs/markdown-features/admonitions","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/guides/markdown-features/markdown-features-admonitions.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"id":"admonitions","description":"Handling admonitions/callouts in Docusaurus Markdown","slug":"/markdown-features/admonitions"},"sidebar":"docs","previous":{"title":"Code blocks","permalink":"/docs/markdown-features/code-blocks"},"next":{"title":"Headings and Table of contents","permalink":"/docs/markdown-features/toc"}},{"id":"guides/markdown-features/assets","title":"Assets","description":"Handling assets in Docusaurus Markdown","source":"@site/docs/guides/markdown-features/markdown-features-assets.mdx","sourceDirName":"guides/markdown-features","slug":"/markdown-features/assets","permalink":"/docs/markdown-features/assets","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/guides/markdown-features/markdown-features-assets.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"id":"assets","description":"Handling assets in Docusaurus Markdown","slug":"/markdown-features/assets"},"sidebar":"docs","previous":{"title":"Headings and Table of contents","permalink":"/docs/markdown-features/toc"},"next":{"title":"Markdown links","permalink":"/docs/markdown-features/links"}},{"id":"guides/markdown-features/code-blocks","title":"Code blocks","description":"Handling code blocks in Docusaurus Markdown","source":"@site/docs/guides/markdown-features/markdown-features-code-blocks.mdx","sourceDirName":"guides/markdown-features","slug":"/markdown-features/code-blocks","permalink":"/docs/markdown-features/code-blocks","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/guides/markdown-features/markdown-features-code-blocks.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"id":"code-blocks","description":"Handling code blocks in Docusaurus Markdown","slug":"/markdown-features/code-blocks"},"sidebar":"docs","previous":{"title":"Tabs","permalink":"/docs/markdown-features/tabs"},"next":{"title":"Admonitions","permalink":"/docs/markdown-features/admonitions"}},{"id":"guides/markdown-features/diagrams","title":"Diagrams","description":"Writing diagrams with Mermaid","source":"@site/docs/guides/markdown-features/markdown-features-diagrams.mdx","sourceDirName":"guides/markdown-features","slug":"/markdown-features/diagrams","permalink":"/docs/markdown-features/diagrams","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/guides/markdown-features/markdown-features-diagrams.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"id":"diagrams","title":"Diagrams","description":"Writing diagrams with Mermaid","slug":"/markdown-features/diagrams"},"sidebar":"docs","previous":{"title":"Math Equations","permalink":"/docs/markdown-features/math-equations"},"next":{"title":"Head metadata","permalink":"/docs/markdown-features/head-metadata"}},{"id":"guides/markdown-features/head-metadata","title":"Head metadata","description":"Declaring page-specific head metadata through MDX","source":"@site/docs/guides/markdown-features/markdown-features-head-metadata.mdx","sourceDirName":"guides/markdown-features","slug":"/markdown-features/head-metadata","permalink":"/docs/markdown-features/head-metadata","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/guides/markdown-features/markdown-features-head-metadata.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"id":"head-metadata","description":"Declaring page-specific head metadata through MDX","slug":"/markdown-features/head-metadata"},"sidebar":"docs","previous":{"title":"Diagrams","permalink":"/docs/markdown-features/diagrams"},"next":{"title":"Styling and Layout","permalink":"/docs/styling-layout"}},{"id":"guides/markdown-features/introduction","title":"Markdown Features","description":"Docusaurus uses MDX. Find out more about Docusaurus-specific features when writing Markdown.","source":"@site/docs/guides/markdown-features/markdown-features-intro.mdx","sourceDirName":"guides/markdown-features","slug":"/markdown-features","permalink":"/docs/markdown-features","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/guides/markdown-features/markdown-features-intro.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"id":"introduction","description":"Docusaurus uses MDX. Find out more about Docusaurus-specific features when writing Markdown.","slug":"/markdown-features"},"sidebar":"docs","previous":{"title":"Blog","permalink":"/docs/blog"},"next":{"title":"MDX and React","permalink":"/docs/markdown-features/react"}},{"id":"guides/markdown-features/links","title":"Markdown links","description":"Links to other pages in Markdown","source":"@site/docs/guides/markdown-features/markdown-features-links.mdx","sourceDirName":"guides/markdown-features","slug":"/markdown-features/links","permalink":"/docs/markdown-features/links","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/guides/markdown-features/markdown-features-links.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"id":"links","description":"Links to other pages in Markdown","slug":"/markdown-features/links"},"sidebar":"docs","previous":{"title":"Assets","permalink":"/docs/markdown-features/assets"},"next":{"title":"MDX Plugins","permalink":"/docs/markdown-features/plugins"}},{"id":"guides/markdown-features/math-equations","title":"Math Equations","description":"Writing LaTeX Math Equations","source":"@site/docs/guides/markdown-features/markdown-features-math-equations.mdx","sourceDirName":"guides/markdown-features","slug":"/markdown-features/math-equations","permalink":"/docs/markdown-features/math-equations","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/guides/markdown-features/markdown-features-math-equations.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"id":"math-equations","description":"Writing LaTeX Math Equations","slug":"/markdown-features/math-equations"},"sidebar":"docs","previous":{"title":"MDX Plugins","permalink":"/docs/markdown-features/plugins"},"next":{"title":"Diagrams","permalink":"/docs/markdown-features/diagrams"}},{"id":"guides/markdown-features/plugins","title":"MDX Plugins","description":"Using MDX plugins to expand Docusaurus Markdown functionalities","source":"@site/docs/guides/markdown-features/markdown-features-plugins.mdx","sourceDirName":"guides/markdown-features","slug":"/markdown-features/plugins","permalink":"/docs/markdown-features/plugins","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/guides/markdown-features/markdown-features-plugins.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"id":"plugins","description":"Using MDX plugins to expand Docusaurus Markdown functionalities","slug":"/markdown-features/plugins"},"sidebar":"docs","previous":{"title":"Markdown links","permalink":"/docs/markdown-features/links"},"next":{"title":"Math Equations","permalink":"/docs/markdown-features/math-equations"}},{"id":"guides/markdown-features/react","title":"MDX and React","description":"Using the power of React in Docusaurus Markdown documents, thanks to MDX","source":"@site/docs/guides/markdown-features/markdown-features-react.mdx","sourceDirName":"guides/markdown-features","slug":"/markdown-features/react","permalink":"/docs/markdown-features/react","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/guides/markdown-features/markdown-features-react.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"id":"react","description":"Using the power of React in Docusaurus Markdown documents, thanks to MDX","slug":"/markdown-features/react"},"sidebar":"docs","previous":{"title":"Markdown Features","permalink":"/docs/markdown-features"},"next":{"title":"Tabs","permalink":"/docs/markdown-features/tabs"}},{"id":"guides/markdown-features/tabs","title":"Tabs","description":"Using tabs inside Docusaurus Markdown","source":"@site/docs/guides/markdown-features/markdown-features-tabs.mdx","sourceDirName":"guides/markdown-features","slug":"/markdown-features/tabs","permalink":"/docs/markdown-features/tabs","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/guides/markdown-features/markdown-features-tabs.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"id":"tabs","description":"Using tabs inside Docusaurus Markdown","slug":"/markdown-features/tabs"},"sidebar":"docs","previous":{"title":"MDX and React","permalink":"/docs/markdown-features/react"},"next":{"title":"Code blocks","permalink":"/docs/markdown-features/code-blocks"}},{"id":"guides/markdown-features/toc","title":"Headings and Table of contents","description":"Customizing headings and table-of-contents in Markdown","source":"@site/docs/guides/markdown-features/markdown-features-toc.mdx","sourceDirName":"guides/markdown-features","slug":"/markdown-features/toc","permalink":"/docs/markdown-features/toc","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/guides/markdown-features/markdown-features-toc.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"id":"toc","description":"Customizing headings and table-of-contents in Markdown","slug":"/markdown-features/toc"},"sidebar":"docs","previous":{"title":"Admonitions","permalink":"/docs/markdown-features/admonitions"},"next":{"title":"Assets","permalink":"/docs/markdown-features/assets"}},{"id":"guides/whats-next","title":"What\'s next?","description":"Congratulations! You have understood most core features of Docusaurus now. You have:","source":"@site/docs/guides/whats-next.mdx","sourceDirName":"guides","slug":"/guides/whats-next","permalink":"/docs/guides/whats-next","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/guides/whats-next.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"docs","previous":{"title":"Using Crowdin","permalink":"/docs/i18n/crowdin"},"next":{"title":"Advanced Tutorials","permalink":"/docs/advanced/"}},{"id":"i18n/crowdin","title":"i18n - Using Crowdin","description":"The i18n system of Docusaurus is decoupled from any translation software.","source":"@site/docs/i18n/i18n-crowdin.mdx","sourceDirName":"i18n","slug":"/i18n/crowdin","permalink":"/docs/i18n/crowdin","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/i18n/i18n-crowdin.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"id":"crowdin","slug":"/i18n/crowdin","toc_max_heading_level":4},"sidebar":"docs","previous":{"title":"Using Git","permalink":"/docs/i18n/git"},"next":{"title":"What\'s next?","permalink":"/docs/guides/whats-next"}},{"id":"i18n/git","title":"i18n - Using git","description":"A possible translation strategy is to version control the translation files with Git (or any other VCS).","source":"@site/docs/i18n/i18n-git.mdx","sourceDirName":"i18n","slug":"/i18n/git","permalink":"/docs/i18n/git","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/i18n/i18n-git.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"id":"git","slug":"/i18n/git"},"sidebar":"docs","previous":{"title":"Tutorial","permalink":"/docs/i18n/tutorial"},"next":{"title":"Using Crowdin","permalink":"/docs/i18n/crowdin"}},{"id":"i18n/introduction","title":"i18n - Introduction","description":"It is easy to translate a Docusaurus website with its internationalization (i18n) support.","source":"@site/docs/i18n/i18n-introduction.mdx","sourceDirName":"i18n","slug":"/i18n/introduction","permalink":"/docs/i18n/introduction","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/i18n/i18n-introduction.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"id":"introduction","slug":"/i18n/introduction"},"sidebar":"docs","previous":{"title":"Deployment","permalink":"/docs/deployment"},"next":{"title":"Tutorial","permalink":"/docs/i18n/tutorial"}},{"id":"i18n/tutorial","title":"i18n - Tutorial","description":"This tutorial will walk you through the basics of the Docusaurus i18n system.","source":"@site/docs/i18n/i18n-tutorial.mdx","sourceDirName":"i18n","slug":"/i18n/tutorial","permalink":"/docs/i18n/tutorial","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/i18n/i18n-tutorial.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"id":"tutorial","description":"This tutorial will walk you through the basics of the Docusaurus i18n system.","slug":"/i18n/tutorial"},"sidebar":"docs","previous":{"title":"i18n - Introduction","permalink":"/docs/i18n/introduction"},"next":{"title":"Using Git","permalink":"/docs/i18n/git"}},{"id":"installation","title":"Installation","description":"How to install Docusaurus locally, and start a Docusaurus site in no time.","source":"@site/docs/installation.mdx","sourceDirName":".","slug":"/installation","permalink":"/docs/installation","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/installation.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"description":"How to install Docusaurus locally, and start a Docusaurus site in no time."},"sidebar":"docs","previous":{"title":"Getting Started","permalink":"/docs/category/getting-started"},"next":{"title":"Configuration","permalink":"/docs/configuration"}},{"id":"introduction","title":"Introduction","description":"Docusaurus was designed from the ground up to be easily installed and used to get your website up and running quickly.","source":"@site/docs/introduction.mdx","sourceDirName":".","slug":"/","permalink":"/docs/","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/introduction.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"description":"Docusaurus was designed from the ground up to be easily installed and used to get your website up and running quickly.","slug":"/"},"sidebar":"docs","next":{"title":"Getting Started","permalink":"/docs/category/getting-started"}},{"id":"migration/index","title":"Upgrading Docusaurus","description":"Docusaurus versioning is based on the major.minor.patch scheme and respects Semantic Versioning.","source":"@site/docs/migration/index.mdx","sourceDirName":"migration","slug":"/migration","permalink":"/docs/migration","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/migration/index.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"slug":"/migration"},"sidebar":"docs","previous":{"title":"Client architecture","permalink":"/docs/advanced/client"},"next":{"title":"To Docusaurus v3","permalink":"/docs/migration/v3"}},{"id":"migration/v2/migration-automated","title":"Automated migration","description":"The migration CLI automatically migrates your v1 website to a v2 website.","source":"@site/docs/migration/v2/migration-automated.mdx","sourceDirName":"migration/v2","slug":"/migration/v2/automated","permalink":"/docs/migration/v2/automated","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/migration/v2/migration-automated.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"slug":"/migration/v2/automated"},"sidebar":"docs","previous":{"title":"Overview","permalink":"/docs/migration/v2"},"next":{"title":"Manual migration","permalink":"/docs/migration/v2/manual"}},{"id":"migration/v2/migration-manual","title":"Manual migration","description":"This manual migration process should be run after the automated migration process, to complete the missing parts, or debug issues in the migration CLI output.","source":"@site/docs/migration/v2/migration-manual.mdx","sourceDirName":"migration/v2","slug":"/migration/v2/manual","permalink":"/docs/migration/v2/manual","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/migration/v2/migration-manual.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"slug":"/migration/v2/manual","toc_max_heading_level":4},"sidebar":"docs","previous":{"title":"Automated migration","permalink":"/docs/migration/v2/automated"},"next":{"title":"Versioned sites","permalink":"/docs/migration/v2/versioned-sites"}},{"id":"migration/v2/migration-overview","title":"Overview","description":"This doc guides you through migrating an existing Docusaurus 1 site to Docusaurus 2.","source":"@site/docs/migration/v2/migration-overview.mdx","sourceDirName":"migration/v2","slug":"/migration/v2","permalink":"/docs/migration/v2","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/migration/v2/migration-overview.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"slug":"/migration/v2"},"sidebar":"docs","previous":{"title":"To Docusaurus v3","permalink":"/docs/migration/v3"},"next":{"title":"Automated migration","permalink":"/docs/migration/v2/automated"}},{"id":"migration/v2/migration-translated-sites","title":"Translated sites","description":"This page explains how migrate a translated Docusaurus v1 site to Docusaurus v2.","source":"@site/docs/migration/v2/migration-translated-sites.mdx","sourceDirName":"migration/v2","slug":"/migration/v2/translated-sites","permalink":"/docs/migration/v2/translated-sites","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/migration/v2/migration-translated-sites.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"slug":"/migration/v2/translated-sites"},"sidebar":"docs","previous":{"title":"Versioned sites","permalink":"/docs/migration/v2/versioned-sites"}},{"id":"migration/v2/migration-versioned-sites","title":"Versioned sites","description":"Read up https://docusaurus.io/blog/2018/09/11/Towards-Docusaurus-2#versioning first for problems in v1\'s approach.","source":"@site/docs/migration/v2/migration-versioned-sites.mdx","sourceDirName":"migration/v2","slug":"/migration/v2/versioned-sites","permalink":"/docs/migration/v2/versioned-sites","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/migration/v2/migration-versioned-sites.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"slug":"/migration/v2/versioned-sites"},"sidebar":"docs","previous":{"title":"Manual migration","permalink":"/docs/migration/v2/manual"},"next":{"title":"Translated sites","permalink":"/docs/migration/v2/translated-sites"}},{"id":"migration/v3","title":"Upgrading to Docusaurus v3","description":"This documentation will help you upgrade your site from Docusaurus v2 to Docusaurus v3.","source":"@site/docs/migration/v3.mdx","sourceDirName":"migration","slug":"/migration/v3","permalink":"/docs/migration/v3","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/migration/v3.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"slug":"/migration/v3","sidebar_label":"To Docusaurus v3"},"sidebar":"docs","previous":{"title":"Upgrading Docusaurus","permalink":"/docs/migration"},"next":{"title":"Overview","permalink":"/docs/migration/v2"}},{"id":"playground","title":"Playground","description":"Playgrounds allow you to run Docusaurus in your browser, without installing anything!","source":"@site/docs/playground.mdx","sourceDirName":".","slug":"/playground","permalink":"/docs/playground","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/playground.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"docs","previous":{"title":"Configuration","permalink":"/docs/configuration"},"next":{"title":"TypeScript Support","permalink":"/docs/typescript-support"}},{"id":"search","title":"Search","description":"There are a few options you can use to add search to your website:","source":"@site/docs/search.mdx","sourceDirName":".","slug":"/search","permalink":"/docs/search","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/search.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"keywords":["algolia","search"]},"sidebar":"docs","previous":{"title":"Static Assets","permalink":"/docs/static-assets"},"next":{"title":"Browser support","permalink":"/docs/browser-support"}},{"id":"seo","title":"Search engine optimization (SEO)","description":"How to make your Docusaurus site maximally search-engine-friendly.","source":"@site/docs/seo.mdx","sourceDirName":".","slug":"/seo","permalink":"/docs/seo","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/seo.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"description":"How to make your Docusaurus site maximally search-engine-friendly.","sidebar_label":"SEO","keywords":["seo","positioning"]},"sidebar":"docs","previous":{"title":"Browser support","permalink":"/docs/browser-support"},"next":{"title":"Using Plugins","permalink":"/docs/using-plugins"}},{"id":"static-assets","title":"Static Assets","description":"Static assets are the non-code files that are directly copied to the build output. Learn about how they are handled and what the best practices of using static assets are.","source":"@site/docs/static-assets.mdx","sourceDirName":".","slug":"/static-assets","permalink":"/docs/static-assets","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/static-assets.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"description":"Static assets are the non-code files that are directly copied to the build output. Learn about how they are handled and what the best practices of using static assets are."},"sidebar":"docs","previous":{"title":"Swizzling","permalink":"/docs/swizzling"},"next":{"title":"Search","permalink":"/docs/search"}},{"id":"styling-layout","title":"Styling and Layout","description":"A Docusaurus site is a pre-rendered single-page React application. You can style it the way you style React apps.","source":"@site/docs/styling-layout.mdx","sourceDirName":".","slug":"/styling-layout","permalink":"/docs/styling-layout","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/styling-layout.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"description":"A Docusaurus site is a pre-rendered single-page React application. You can style it the way you style React apps."},"sidebar":"docs","previous":{"title":"Head metadata","permalink":"/docs/markdown-features/head-metadata"},"next":{"title":"Swizzling","permalink":"/docs/swizzling"}},{"id":"swizzling","title":"Swizzling","description":"Customize your site\'s appearance through creating your own theme components","source":"@site/docs/swizzling.mdx","sourceDirName":".","slug":"/swizzling","permalink":"/docs/swizzling","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/swizzling.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"description":"Customize your site\'s appearance through creating your own theme components"},"sidebar":"docs","previous":{"title":"Styling and Layout","permalink":"/docs/styling-layout"},"next":{"title":"Static Assets","permalink":"/docs/static-assets"}},{"id":"typescript-support","title":"TypeScript Support","description":"Docusaurus is written in TypeScript and provides first-class TypeScript support.","source":"@site/docs/typescript-support.mdx","sourceDirName":".","slug":"/typescript-support","permalink":"/docs/typescript-support","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/typescript-support.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"description":"Docusaurus is written in TypeScript and provides first-class TypeScript support."},"sidebar":"docs","previous":{"title":"Playground","permalink":"/docs/playground"},"next":{"title":"Guides","permalink":"/docs/category/guides"}},{"id":"using-plugins","title":"Using Plugins","description":"The Docusaurus core doesn\'t provide any feature of its own. All features are delegated to individual plugins: the docs feature provided by the docs plugin; the blog feature provided by the blog plugin; or individual pages provided by the pages plugin. If there are no plugins installed, the site won\'t contain any routes.","source":"@site/docs/using-plugins.mdx","sourceDirName":".","slug":"/using-plugins","permalink":"/docs/using-plugins","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/docs/using-plugins.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"docs","previous":{"title":"SEO","permalink":"/docs/seo"},"next":{"title":"Deployment","permalink":"/docs/deployment"}}],"drafts":[],"sidebars":{"docs":[{"type":"doc","id":"introduction"},{"type":"category","label":"Getting Started","link":{"type":"generated-index","slug":"/category/getting-started","permalink":"/docs/category/getting-started"},"collapsed":false,"items":[{"type":"doc","id":"installation"},{"type":"doc","id":"configuration"},{"type":"doc","id":"playground"},{"type":"doc","id":"typescript-support"}],"collapsible":true},{"type":"category","label":"Guides","link":{"type":"generated-index","title":"Docusaurus Guides","description":"Let\'s learn about the most important Docusaurus concepts!","keywords":["guides"],"image":"/img/docusaurus.png","slug":"/category/guides","permalink":"/docs/category/guides"},"items":[{"type":"doc","id":"guides/creating-pages"},{"type":"category","label":"Docs","link":{"type":"doc","id":"guides/docs/introduction"},"items":[{"type":"doc","id":"guides/docs/create-doc"},{"type":"category","label":"Sidebar","link":{"type":"doc","id":"guides/docs/sidebar/index"},"items":[{"type":"doc","id":"guides/docs/sidebar/items"},{"type":"doc","id":"guides/docs/sidebar/autogenerated"},{"type":"doc","id":"guides/docs/sidebar/multiple-sidebars"}],"collapsed":true,"collapsible":true},{"type":"doc","id":"guides/docs/versioning"},{"type":"doc","id":"guides/docs/multi-instance"}],"collapsed":true,"collapsible":true},{"type":"doc","id":"blog"},{"type":"category","label":"Markdown Features","link":{"type":"doc","id":"guides/markdown-features/introduction"},"items":[{"type":"doc","id":"guides/markdown-features/react"},{"type":"doc","id":"guides/markdown-features/tabs"},{"type":"doc","id":"guides/markdown-features/code-blocks"},{"type":"doc","id":"guides/markdown-features/admonitions"},{"type":"doc","id":"guides/markdown-features/toc"},{"type":"doc","id":"guides/markdown-features/assets"},{"type":"doc","id":"guides/markdown-features/links"},{"type":"doc","id":"guides/markdown-features/plugins"},{"type":"doc","id":"guides/markdown-features/math-equations"},{"type":"doc","id":"guides/markdown-features/diagrams"},{"type":"doc","id":"guides/markdown-features/head-metadata"}],"collapsed":true,"collapsible":true},{"type":"doc","id":"styling-layout"},{"type":"doc","id":"swizzling"},{"type":"doc","id":"static-assets"},{"type":"doc","id":"search"},{"type":"doc","id":"browser-support"},{"type":"doc","id":"seo"},{"type":"doc","id":"using-plugins"},{"type":"doc","id":"deployment"},{"type":"category","label":"Internationalization","link":{"type":"doc","id":"i18n/introduction"},"items":[{"type":"doc","id":"i18n/tutorial","label":"Tutorial","translatable":true},{"type":"doc","id":"i18n/git","label":"Using Git","translatable":true},{"type":"doc","id":"i18n/crowdin","label":"Using Crowdin","translatable":true}],"collapsed":true,"collapsible":true},{"type":"doc","id":"guides/whats-next"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Advanced Guides","link":{"type":"doc","id":"advanced/index"},"items":[{"type":"doc","id":"advanced/architecture"},{"type":"doc","id":"advanced/plugins"},{"type":"doc","id":"advanced/routing"},{"type":"doc","id":"advanced/ssg"},{"type":"doc","id":"advanced/client"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Upgrading","link":{"type":"doc","id":"migration/index"},"items":[{"type":"doc","id":"migration/v3"},{"type":"category","label":"To Docusaurus v2","items":[{"type":"doc","id":"migration/v2/migration-overview"},{"type":"doc","id":"migration/v2/migration-automated"},{"type":"doc","id":"migration/v2/migration-manual"},{"type":"doc","id":"migration/v2/migration-versioned-sites"},{"type":"doc","id":"migration/v2/migration-translated-sites"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true}],"api":[{"type":"doc","id":"cli"},{"type":"doc","id":"docusaurus-core"},{"type":"doc","id":"api/docusaurus.config.js"},{"type":"category","label":"Plugin method references","collapsible":true,"collapsed":true,"items":[{"type":"doc","id":"api/plugin-methods/lifecycle-apis"},{"type":"doc","id":"api/plugin-methods/extend-infrastructure"},{"type":"doc","id":"api/plugin-methods/i18n-lifecycles"},{"type":"doc","id":"api/plugin-methods/static-methods"}],"link":{"type":"doc","id":"api/plugin-methods/README"}},{"type":"category","label":"Plugins","collapsible":true,"collapsed":true,"items":[{"type":"doc","id":"api/plugins/plugin-content-docs"},{"type":"doc","id":"api/plugins/plugin-content-blog"},{"type":"doc","id":"api/plugins/plugin-content-pages"},{"type":"doc","id":"api/plugins/plugin-client-redirects"},{"type":"doc","id":"api/plugins/plugin-debug"},{"type":"doc","id":"api/plugins/plugin-google-analytics"},{"type":"doc","id":"api/plugins/plugin-google-gtag"},{"type":"doc","id":"api/plugins/plugin-rsdoctor"},{"type":"doc","id":"api/plugins/plugin-svgr"},{"type":"doc","id":"api/plugins/plugin-google-tag-manager"},{"type":"doc","id":"api/plugins/plugin-ideal-image"},{"type":"doc","id":"api/plugins/plugin-pwa"},{"type":"doc","id":"api/plugins/plugin-sitemap"},{"type":"doc","id":"api/plugins/plugin-vercel-analytics"}],"link":{"type":"doc","id":"api/plugins/plugins-overview"}},{"type":"category","label":"Themes","collapsible":true,"collapsed":true,"items":[{"type":"doc","id":"api/themes/theme-configuration","label":"Configuration"},{"type":"doc","id":"api/themes/theme-classic"},{"type":"doc","id":"api/themes/theme-live-codeblock"},{"type":"doc","id":"api/themes/theme-search-algolia"},{"type":"doc","id":"api/themes/theme-mermaid"}],"link":{"type":"doc","id":"api/themes/themes-overview"}},{"type":"category","label":"Miscellaneous","collapsible":true,"collapsed":true,"items":[{"type":"doc","id":"api/misc/create-docusaurus"},{"type":"category","label":"\uD83D\uDCE6 eslint-plugin","collapsible":true,"collapsed":true,"items":[{"type":"doc","id":"api/misc/eslint-plugin/no-html-links"},{"type":"doc","id":"api/misc/eslint-plugin/no-untranslated-text"},{"type":"doc","id":"api/misc/eslint-plugin/prefer-docusaurus-heading"},{"type":"doc","id":"api/misc/eslint-plugin/string-literal-i18n-messages"}],"link":{"type":"doc","id":"api/misc/eslint-plugin/README"}},{"type":"doc","label":"\uD83D\uDCE6 logger","id":"api/misc/logger/logger"}]}]}}]},"community":{"loadedVersions":[{"versionName":"current","label":"Next","banner":null,"badge":false,"noIndex":false,"className":"docs-version-current","path":"/community","tagsPath":"/community/tags","isLast":true,"routePriority":-1,"sidebarFilePath":"/home/runner/work/docusaurus/docusaurus/website/sidebarsCommunity.js","contentPath":"/home/runner/work/docusaurus/docusaurus/website/community","contentPathLocalized":"/home/runner/work/docusaurus/docusaurus/website/i18n/en/docusaurus-plugin-content-docs-community/current","docs":[{"id":"canary","title":"Canary releases","description":"Docusaurus has a canary releases system.","source":"@site/community/4-canary.mdx","sourceDirName":".","slug":"/canary","permalink":"/community/canary","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/community/4-canary.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":4,"frontMatter":{},"sidebar":"community","previous":{"title":"Contributing","permalink":"/community/contributing"},"next":{"title":"Release process","permalink":"/community/release-process"}},{"id":"contributing","title":"Contributing","description":"","source":"@site/community/3-contributing.mdx","sourceDirName":".","slug":"/contributing","permalink":"/community/contributing","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/community/3-contributing.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":3,"frontMatter":{"title":"Contributing","hide_title":true,"sidebar_label":"Contributing"},"sidebar":"community","previous":{"title":"Awesome Resources","permalink":"/community/resources"},"next":{"title":"Canary releases","permalink":"/community/canary"}},{"id":"release-process","title":"Release process","description":"Let\'s see how Docusaurus handles versioning, releases and breaking changes.","source":"@site/community/5-release-process.mdx","sourceDirName":".","slug":"/release-process","permalink":"/community/release-process","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/community/5-release-process.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":5,"frontMatter":{},"sidebar":"community","previous":{"title":"Canary releases","permalink":"/community/canary"}},{"id":"resources","title":"Awesome Resources","description":"A curated list of interesting Docusaurus community projects.","source":"@site/community/2-resources.mdx","sourceDirName":".","slug":"/resources","permalink":"/community/resources","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/community/2-resources.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":2,"frontMatter":{},"sidebar":"community","previous":{"title":"Team","permalink":"/community/team"},"next":{"title":"Contributing","permalink":"/community/contributing"}},{"id":"support","title":"Support","description":"Docusaurus has a community of thousands of developers.","source":"@site/community/0-support.mdx","sourceDirName":".","slug":"/support","permalink":"/community/support","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/community/0-support.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":0,"frontMatter":{},"sidebar":"community","next":{"title":"Team","permalink":"/community/team"}},{"id":"team","title":"Team","description":"Active Team","source":"@site/community/1-team.mdx","sourceDirName":".","slug":"/team","permalink":"/community/team","draft":false,"unlisted":false,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/community/1-team.mdx","tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"sidebarPosition":1,"frontMatter":{},"sidebar":"community","previous":{"title":"Support","permalink":"/community/support"},"next":{"title":"Awesome Resources","permalink":"/community/resources"}}],"drafts":[],"sidebars":{"community":[{"type":"doc","id":"support"},{"type":"doc","id":"team"},{"type":"doc","id":"resources"},{"type":"doc","id":"contributing","label":"Contributing"},{"type":"doc","id":"canary"},{"type":"doc","id":"release-process"},{"type":"link","href":"/changelog","label":"Changelog"},{"type":"link","href":"/showcase","label":"Showcase"},{"type":"link","href":"/feature-requests","label":"Feature Requests"},{"type":"link","label":"Chat with us on Discord","href":"https://discord.gg/docusaurus"}]}}]},"docs-tests":{"loadedVersions":[{"versionName":"current","label":"Next","banner":null,"badge":false,"noIndex":true,"className":"docs-version-current","path":"/tests/docs","tagsPath":"/tests/docs/tags","isLast":true,"routePriority":-1,"sidebarFilePath":"/home/runner/work/docusaurus/docusaurus/website/_dogfooding/docs-tests-sidebars.js","contentPath":"/home/runner/work/docusaurus/docusaurus/website/_dogfooding/_docs tests","contentPathLocalized":"/home/runner/work/docusaurus/docusaurus/website/i18n/en/docusaurus-plugin-content-docs-docs-tests/current","docs":[{"id":"beginner\'s guide","title":"Beginner\'s guide","description":"#9160","source":"@site/_dogfooding/_docs tests/beginner\'s guide.mdx","sourceDirName":".","slug":"/beginner\'s guide","permalink":"/tests/docs/beginner\'s guide","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{}},{"id":"doc-with-another-sidebar","title":"Doc with another sidebar","description":"My link appears in a sidebar, but I want to display another sidebar...","source":"@site/_dogfooding/_docs tests/doc-with-another-sidebar.mdx","sourceDirName":".","slug":"/doc-with-another-sidebar","permalink":"/tests/docs/doc-with-another-sidebar","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"displayed_sidebar":"anotherSidebar"},"sidebar":"anotherSidebar"},{"id":"doc-with-last-update","title":"Doc With Last Update Front Matter","description":"","source":"@site/_dogfooding/_docs tests/doc-with-last-update.mdx","sourceDirName":".","slug":"/doc-with-last-update","permalink":"/tests/docs/doc-with-last-update","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"custom author","lastUpdatedAt":946684800000,"frontMatter":{"last_update":{"author":"custom author","date":"1/1/2000"}},"sidebar":"sidebar","previous":{"title":"Doc with another sidebar","permalink":"/tests/docs/doc-with-another-sidebar"},"next":{"title":"Tests","permalink":"/tests/docs/category/tests"}},{"id":"doc-without-sidebar","title":"Doc without sidebar","description":"My link appears in a sidebar, but I don\'t want to display that...","source":"@site/_dogfooding/_docs tests/doc-without-sidebar.mdx","sourceDirName":".","slug":"/doc-without-sidebar","permalink":"/tests/docs/doc-without-sidebar","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"displayed_sidebar":null}},{"id":"dummy","title":"Just a dummy page","description":"","source":"@site/_dogfooding/_docs tests/dummy.mdx","sourceDirName":".","slug":"/dummy.html","permalink":"/tests/docs/dummy.html","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"slug":"dummy.html"},"sidebar":"anotherSidebar"},{"id":"folder with space/doc 1","title":"Doc 1","description":"Inside folder with space","source":"@site/_dogfooding/_docs tests/folder with space/doc 1.mdx","sourceDirName":"folder with space","slug":"/folder with space/doc 1","permalink":"/tests/docs/folder with space/doc 1","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{}},{"id":"folder with space/doc 2","title":"Doc 2","description":"Inside folder with space","source":"@site/_dogfooding/_docs tests/folder with space/doc 2.mdx","sourceDirName":"folder with space","slug":"/folder with space/doc 2","permalink":"/tests/docs/folder with space/doc 2","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{}},{"id":"index","title":"Docs tests","description":"This Docusaurus docs plugin instance is meant to test fancy edge-cases that regular unit tests don\'t really cover.","source":"@site/_dogfooding/_docs tests/index.mdx","sourceDirName":".","slug":"/","permalink":"/tests/docs/","draft":false,"unlisted":true,"tags":[{"inline":false,"label":"A","permalink":"/tests/docs/tags/a","description":"Description for tag a"},{"inline":false,"label":"Label for tag b","permalink":"/tests/docs/tags/b"},{"inline":false,"label":"C","permalink":"/tests/docs/tags/permalink-for-tag-c"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"slug":"/","tags":["a","b","c"],"unlisted":true,"id":"index","sidebar_label":"Docs tests"},"sidebar":"sidebar"},{"id":"more-test","title":"Another test page","description":"Test link","source":"@site/_dogfooding/_docs tests/more-test.mdx","sourceDirName":".","slug":"/more-test","permalink":"/tests/docs/more-test","draft":false,"unlisted":false,"tags":[{"inline":false,"label":"A","permalink":"/tests/docs/tags/a","description":"Description for tag a"},{"inline":false,"label":"Label for tag e","permalink":"/tests/docs/tags/permalink-for-tag-e","description":"Description for tag e"},{"inline":false,"label":"Some-tag","permalink":"/tests/docs/tags/some-tag"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"tags":["a","e","some-tag"]},"sidebar":"sidebar","previous":{"title":"Another category with index","permalink":"/tests/docs/category/another-category-with-index"},"next":{"title":"toc-2-2","permalink":"/tests/docs/toc/toc-2-2"}},{"id":"standalone","title":"Standalone doc","description":"This doc is not in any sidebar, on purpose, to measure the build size impact of the huge sidebar","source":"@site/_dogfooding/_docs tests/standalone.mdx","sourceDirName":".","slug":"/standalone","permalink":"/tests/docs/standalone","draft":false,"unlisted":false,"tags":[{"inline":false,"label":"Label for tag b","permalink":"/tests/docs/tags/b"},{"inline":false,"label":"D","permalink":"/tests/docs/tags/d"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"tags":["b","d"]}},{"id":"tests/admonitions","title":"Admonitions tests","description":"Empty content","source":"@site/_dogfooding/_docs tests/tests/admonitions.mdx","sourceDirName":"tests","slug":"/tests/admonitions","permalink":"/tests/docs/tests/admonitions","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"Case-Sensitive doc","permalink":"/tests/docs/tests/Case-Sentitive-Doc"},"next":{"title":"\xe6\xf8\xe5","permalink":"/tests/docs/tests/ascii/folder/\xe6\xf8\xe5"}},{"id":"tests/ascii/\xe6\xf8\xe5/index","title":"index","description":"Dogfood test for https://github.com/facebook/docusaurus/pull/8137","source":"@site/_dogfooding/_docs tests/tests/ascii/\xe6\xf8\xe5/index.mdx","sourceDirName":"tests/ascii/\xe6\xf8\xe5","slug":"/tests/ascii/\xe6\xf8\xe5/","permalink":"/tests/docs/tests/ascii/\xe6\xf8\xe5/","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"\xe6\xf8\xe5","permalink":"/tests/docs/tests/ascii/folder/\xe6\xf8\xe5"},"next":{"title":"Category Links","permalink":"/tests/docs/category-links-generated-index-slug"}},{"id":"tests/ascii/folder/\xe6\xf8\xe5","title":"\xe6\xf8\xe5","description":"Dogfood test for https://github.com/facebook/docusaurus/pull/8137","source":"@site/_dogfooding/_docs tests/tests/ascii/folder/\xe6\xf8\xe5.mdx","sourceDirName":"tests/ascii/folder","slug":"/tests/ascii/folder/\xe6\xf8\xe5","permalink":"/tests/docs/tests/ascii/folder/\xe6\xf8\xe5","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"Admonitions tests","permalink":"/tests/docs/tests/admonitions"},"next":{"title":"index","permalink":"/tests/docs/tests/ascii/\xe6\xf8\xe5/"}},{"id":"tests/Case-Sentitive-Doc","title":"Case-Sensitive doc","description":"This doc has uppercase and lowercase chars in its filename, and thus in its path / slug.","source":"@site/_dogfooding/_docs tests/tests/Case-Sentitive-Doc.mdx","sourceDirName":"tests","slug":"/tests/Case-Sentitive-Doc","permalink":"/tests/docs/tests/Case-Sentitive-Doc","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"Tests","permalink":"/tests/docs/category/tests"},"next":{"title":"Admonitions tests","permalink":"/tests/docs/tests/admonitions"}},{"id":"tests/category-links/custom-index-convention/intro","title":"Introduction","description":"This file is called intro.md. Typically, it won\'t be selected by the convention; however, it is in this case, because we have used a custom one.","source":"@site/_dogfooding/_docs tests/tests/category-links/custom-index-convention/intro.mdx","sourceDirName":"tests/category-links/custom-index-convention","slug":"/tests/category-links/custom-index-convention/intro","permalink":"/tests/docs/tests/category-links/custom-index-convention/intro","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"Category Links","permalink":"/tests/docs/category-links-generated-index-slug"},"next":{"title":"Sample doc","permalink":"/tests/docs/tests/category-links/custom-index-convention/sample-doc"}},{"id":"tests/category-links/custom-index-convention/sample-doc","title":"Sample doc","description":"Lorem Ipsum","source":"@site/_dogfooding/_docs tests/tests/category-links/custom-index-convention/sample-doc.mdx","sourceDirName":"tests/category-links/custom-index-convention","slug":"/tests/category-links/custom-index-convention/sample-doc","permalink":"/tests/docs/tests/category-links/custom-index-convention/sample-doc","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"Introduction","permalink":"/tests/docs/tests/category-links/custom-index-convention/intro"},"next":{"title":"Index","permalink":"/tests/docs/tests/category-links/no-index-doc/"}},{"id":"tests/category-links/no-index-doc/index","title":"Index","description":"This file (index.md) is supposed to be a category index, but it isn\'t because we have set link: null in the category.json.","source":"@site/_dogfooding/_docs tests/tests/category-links/no-index-doc/index.mdx","sourceDirName":"tests/category-links/no-index-doc","slug":"/tests/category-links/no-index-doc/","permalink":"/tests/docs/tests/category-links/no-index-doc/","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"Sample doc","permalink":"/tests/docs/tests/category-links/custom-index-convention/sample-doc"},"next":{"title":"Sample doc","permalink":"/tests/docs/tests/category-links/no-index-doc/sample-doc"}},{"id":"tests/category-links/no-index-doc/sample-doc","title":"Sample doc","description":"Lorem Ipsum","source":"@site/_dogfooding/_docs tests/tests/category-links/no-index-doc/sample-doc.mdx","sourceDirName":"tests/category-links/no-index-doc","slug":"/tests/category-links/no-index-doc/sample-doc","permalink":"/tests/docs/tests/category-links/no-index-doc/sample-doc","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"Index","permalink":"/tests/docs/tests/category-links/no-index-doc/"},"next":{"title":"No sub-docs","permalink":"/tests/docs/tests/category-links/no-subdoc/"}},{"id":"tests/category-links/no-subdoc/index","title":"No sub-docs","description":"The only doc of this category is the index page. It should show up as a regular doc link.","source":"@site/_dogfooding/_docs tests/tests/category-links/no-subdoc/index.mdx","sourceDirName":"tests/category-links/no-subdoc","slug":"/tests/category-links/no-subdoc/","permalink":"/tests/docs/tests/category-links/no-subdoc/","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"Sample doc","permalink":"/tests/docs/tests/category-links/no-index-doc/sample-doc"},"next":{"title":"Readme","permalink":"/tests/docs/tests/category-links/"}},{"id":"tests/category-links/readme","title":"Readme","description":"This readme.md should not be used as the category index due to the category.json link","source":"@site/_dogfooding/_docs tests/tests/category-links/readme.mdx","sourceDirName":"tests/category-links","slug":"/tests/category-links/","permalink":"/tests/docs/tests/category-links/","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"No sub-docs","permalink":"/tests/docs/tests/category-links/no-subdoc/"},"next":{"title":"Sample doc","permalink":"/tests/docs/tests/category-links/regular-category/sample-doc"}},{"id":"tests/category-links/regular-category/sample-doc","title":"Sample doc","description":"Lorem Ipsum","source":"@site/_dogfooding/_docs tests/tests/category-links/regular-category/sample-doc.mdx","sourceDirName":"tests/category-links/regular-category","slug":"/tests/category-links/regular-category/sample-doc","permalink":"/tests/docs/tests/category-links/regular-category/sample-doc","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"Readme","permalink":"/tests/docs/tests/category-links/"},"next":{"title":"Category with a doc of category\'s name","permalink":"/tests/docs/tests/category-links/with-category-name-doc/"}},{"id":"tests/category-links/with-category-name-doc/sample-doc","title":"Sample doc","description":"Lorem Ipsum","source":"@site/_dogfooding/_docs tests/tests/category-links/with-category-name-doc/sample-doc.mdx","sourceDirName":"tests/category-links/with-category-name-doc","slug":"/tests/category-links/with-category-name-doc/sample-doc","permalink":"/tests/docs/tests/category-links/with-category-name-doc/sample-doc","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"Category with a doc of category\'s name","permalink":"/tests/docs/tests/category-links/with-category-name-doc/"},"next":{"title":"Category with index.md doc","permalink":"/tests/docs/tests/category-links/with-index-doc/"}},{"id":"tests/category-links/with-category-name-doc/with-category-name-doc","title":"Category with a doc of category\'s name","description":"You should be able to click on the category and browse this /.md doc","source":"@site/_dogfooding/_docs tests/tests/category-links/with-category-name-doc/with-category-name-doc.mdx","sourceDirName":"tests/category-links/with-category-name-doc","slug":"/tests/category-links/with-category-name-doc/","permalink":"/tests/docs/tests/category-links/with-category-name-doc/","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"Sample doc","permalink":"/tests/docs/tests/category-links/regular-category/sample-doc"},"next":{"title":"Sample doc","permalink":"/tests/docs/tests/category-links/with-category-name-doc/sample-doc"}},{"id":"tests/category-links/with-index-doc/index","title":"Category with index.md doc","description":"You should be able to click on the category and browse this index.md doc","source":"@site/_dogfooding/_docs tests/tests/category-links/with-index-doc/index.mdx","sourceDirName":"tests/category-links/with-index-doc","slug":"/tests/category-links/with-index-doc/","permalink":"/tests/docs/tests/category-links/with-index-doc/","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"Sample doc","permalink":"/tests/docs/tests/category-links/with-category-name-doc/sample-doc"},"next":{"title":"Sample doc","permalink":"/tests/docs/tests/category-links/with-index-doc/sample-doc"}},{"id":"tests/category-links/with-index-doc/sample-doc","title":"Sample doc","description":"Lorem Ipsum","source":"@site/_dogfooding/_docs tests/tests/category-links/with-index-doc/sample-doc.mdx","sourceDirName":"tests/category-links/with-index-doc","slug":"/tests/category-links/with-index-doc/sample-doc","permalink":"/tests/docs/tests/category-links/with-index-doc/sample-doc","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"Category with index.md doc","permalink":"/tests/docs/tests/category-links/with-index-doc/"},"next":{"title":"Category with readme.md doc","permalink":"/tests/docs/tests/category-links/with-readme-doc/"}},{"id":"tests/category-links/with-readme-doc/README","title":"Category with readme.md doc","description":"You should be able to click on the category and browse this readme.md doc","source":"@site/_dogfooding/_docs tests/tests/category-links/with-readme-doc/README.mdx","sourceDirName":"tests/category-links/with-readme-doc","slug":"/tests/category-links/with-readme-doc/","permalink":"/tests/docs/tests/category-links/with-readme-doc/","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"Sample doc","permalink":"/tests/docs/tests/category-links/with-index-doc/sample-doc"},"next":{"title":"Sample doc","permalink":"/tests/docs/tests/category-links/with-readme-doc/sample-doc"}},{"id":"tests/category-links/with-readme-doc/sample-doc","title":"Sample doc","description":"Lorem Ipsum","source":"@site/_dogfooding/_docs tests/tests/category-links/with-readme-doc/sample-doc.mdx","sourceDirName":"tests/category-links/with-readme-doc","slug":"/tests/category-links/with-readme-doc/sample-doc","permalink":"/tests/docs/tests/category-links/with-readme-doc/sample-doc","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"Category with readme.md doc","permalink":"/tests/docs/tests/category-links/with-readme-doc/"},"next":{"title":"Image Tests","permalink":"/tests/docs/tests/images/"}},{"id":"tests/images/index","title":"Image Tests","description":"URL encoded image","source":"@site/_dogfooding/_docs tests/tests/images/index.mdx","sourceDirName":"tests/images","slug":"/tests/images/","permalink":"/tests/docs/tests/images/","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"image":"./img/oss_logo.png"},"sidebar":"sidebar","previous":{"title":"Sample doc","permalink":"/tests/docs/tests/category-links/with-readme-doc/sample-doc"},"next":{"title":"Import Bad Package","permalink":"/tests/docs/tests/import-bad-package"}},{"id":"tests/import-bad-package","title":"Import Bad Package","description":"We are importing MDX content from a file that is in a package that has a bad React version.","source":"@site/_dogfooding/_docs tests/tests/import-bad-package.mdx","sourceDirName":"tests","slug":"/tests/import-bad-package","permalink":"/tests/docs/tests/import-bad-package","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"Image Tests","permalink":"/tests/docs/tests/images/"},"next":{"title":"Broken Anchors tests","permalink":"/tests/docs/tests/links/broken-anchors-tests"}},{"id":"tests/links/broken-anchors-tests","title":"Broken Anchors tests","description":"Markdown link to above anchor","source":"@site/_dogfooding/_docs tests/tests/links/broken-anchors-tests.mdx","sourceDirName":"tests/links","slug":"/tests/links/broken-anchors-tests","permalink":"/tests/docs/tests/links/broken-anchors-tests","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"Import Bad Package","permalink":"/tests/docs/tests/import-bad-package"},"next":{"title":"Target doc","permalink":"/tests/docs/tests/links/target-doc-slug"}},{"id":"tests/links/target","title":"Target doc","description":"This is just a doc meant to be linked to by other docs.","source":"@site/_dogfooding/_docs tests/tests/links/target.mdx","sourceDirName":"tests/links","slug":"/tests/links/target-doc-slug","permalink":"/tests/docs/tests/links/target-doc-slug","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"slug":"target-doc-slug"},"sidebar":"sidebar","previous":{"title":"Broken Anchors tests","permalink":"/tests/docs/tests/links/broken-anchors-tests"},"next":{"title":"Test links","permalink":"/tests/docs/tests/links/test-markdown-links"}},{"id":"tests/links/test-markdown-links","title":"Test links","description":"These are dogfood tests showing that Markdown links with md/mdx file references are resolved correctly.","source":"@site/_dogfooding/_docs tests/tests/links/test-markdown-links.mdx","sourceDirName":"tests/links","slug":"/tests/links/test-markdown-links","permalink":"/tests/docs/tests/links/test-markdown-links","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"Target doc","permalink":"/tests/docs/tests/links/target-doc-slug"},"next":{"title":"Sidebar Front Matter Tests","permalink":"/tests/docs/tests/sidebar-frontmatter/"}},{"id":"tests/sidebar-frontmatter/doc-with-sidebar-className","title":"Doc With Sidebar Class Name","description":"This doc has sidebar_label front matter","source":"@site/_dogfooding/_docs tests/tests/sidebar-frontmatter/doc-with-sidebar-className.mdx","sourceDirName":"tests/sidebar-frontmatter","slug":"/tests/sidebar-frontmatter/doc-with-sidebar-className","permalink":"/tests/docs/tests/sidebar-frontmatter/doc-with-sidebar-className","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"sidebar_class_name":"dogfood_sidebar_class_name_test"},"sidebar":"sidebar","previous":{"title":"Sidebar Front Matter Tests","permalink":"/tests/docs/tests/sidebar-frontmatter/"},"next":{"title":"Doc With Custom Props","permalink":"/tests/docs/tests/sidebar-frontmatter/doc-with-sidebar-custom-props"}},{"id":"tests/sidebar-frontmatter/doc-with-sidebar-custom-props","title":"Doc With Custom Props","description":"This doc has sidebarcustomprops front matter.","source":"@site/_dogfooding/_docs tests/tests/sidebar-frontmatter/doc-with-sidebar-custom-props.mdx","sourceDirName":"tests/sidebar-frontmatter","slug":"/tests/sidebar-frontmatter/doc-with-sidebar-custom-props","permalink":"/tests/docs/tests/sidebar-frontmatter/doc-with-sidebar-custom-props","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"sidebar_custom_props":{"prop":"custom","number":1,"boolean":true}},"sidebar":"sidebar","previous":{"title":"Doc With Sidebar Class Name","permalink":"/tests/docs/tests/sidebar-frontmatter/doc-with-sidebar-className"},"next":{"title":"Doc With Sidebar Label","permalink":"/tests/docs/tests/sidebar-frontmatter/doc-with-sidebar-label"}},{"id":"tests/sidebar-frontmatter/doc-with-sidebar-label","title":"Doc with sidebar_label","description":"This doc has sidebar_label front matter","source":"@site/_dogfooding/_docs tests/tests/sidebar-frontmatter/doc-with-sidebar-label.mdx","sourceDirName":"tests/sidebar-frontmatter","slug":"/tests/sidebar-frontmatter/doc-with-sidebar-label","permalink":"/tests/docs/tests/sidebar-frontmatter/doc-with-sidebar-label","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"sidebar_label":"Doc With Sidebar Label"},"sidebar":"sidebar","previous":{"title":"Doc With Custom Props","permalink":"/tests/docs/tests/sidebar-frontmatter/doc-with-sidebar-custom-props"},"next":{"title":"Doc Without","permalink":"/tests/docs/tests/sidebar-frontmatter/doc-without"}},{"id":"tests/sidebar-frontmatter/doc-without","title":"Doc Without","description":"This doc doesn\'t have any sidebar_ front matter","source":"@site/_dogfooding/_docs tests/tests/sidebar-frontmatter/doc-without.mdx","sourceDirName":"tests/sidebar-frontmatter","slug":"/tests/sidebar-frontmatter/doc-without","permalink":"/tests/docs/tests/sidebar-frontmatter/doc-without","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"Doc With Sidebar Label","permalink":"/tests/docs/tests/sidebar-frontmatter/doc-with-sidebar-label"},"next":{"title":"TOC partial test","permalink":"/tests/docs/tests/toc-partials/"}},{"id":"tests/sidebar-frontmatter/index","title":"Sidebar front matter","description":"","source":"@site/_dogfooding/_docs tests/tests/sidebar-frontmatter/index.mdx","sourceDirName":"tests/sidebar-frontmatter","slug":"/tests/sidebar-frontmatter/","permalink":"/tests/docs/tests/sidebar-frontmatter/","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"sidebar_label":"Sidebar Front Matter Tests","sidebar_class_name":"dogfood_sidebar_class_name_test"},"sidebar":"sidebar","previous":{"title":"Test links","permalink":"/tests/docs/tests/links/test-markdown-links"},"next":{"title":"Doc With Sidebar Class Name","permalink":"/tests/docs/tests/sidebar-frontmatter/doc-with-sidebar-className"}},{"id":"tests/toc-partials/index","title":"TOC partial test","description":"This page tests that MDX-imported content appears correctly in the table-of-contents","source":"@site/_dogfooding/_docs tests/tests/toc-partials/index.mdx","sourceDirName":"tests/toc-partials","slug":"/tests/toc-partials/","permalink":"/tests/docs/tests/toc-partials/","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"Doc Without","permalink":"/tests/docs/tests/sidebar-frontmatter/doc-without"},"next":{"title":"Visibility","permalink":"/tests/docs/tests/visibility/"}},{"id":"tests/visibility/force-unlisted","title":"force_unlisted_parseFrontMatter_test","description":"This doc is hidden despite unlisted: false","source":"@site/_dogfooding/_docs tests/tests/visibility/force-unlisted.mdx","sourceDirName":"tests/visibility","slug":"/tests/visibility/force-unlisted","permalink":"/tests/docs/tests/visibility/force-unlisted","draft":false,"unlisted":true,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"unlisted":true,"force_unlisted_parseFrontMatter_test":true},"sidebar":"sidebar"},{"id":"tests/visibility/index","title":"Visibility","description":"A category to play with draft/unlisted front matter.","source":"@site/_dogfooding/_docs tests/tests/visibility/index.mdx","sourceDirName":"tests/visibility","slug":"/tests/visibility/","permalink":"/tests/docs/tests/visibility/","draft":false,"unlisted":false,"tags":[{"inline":false,"label":"Visibility","permalink":"/tests/docs/tags/visibility"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"tags":["visibility"]},"sidebar":"sidebar","previous":{"title":"TOC partial test","permalink":"/tests/docs/tests/toc-partials/"},"next":{"title":"Some Drafts - Listed 1","permalink":"/tests/docs/tests/visibility/some-drafts/draft-subcategory/listed1"}},{"id":"tests/visibility/only-unlisteds/unlisted-subcategory/index","title":"Only Unlisteds - Subcategory index unlisted","description":"Doc with unlisted front matter","source":"@site/_dogfooding/_docs tests/tests/visibility/only-unlisteds/unlisted-subcategory/index.mdx","sourceDirName":"tests/visibility/only-unlisteds/unlisted-subcategory","slug":"/tests/visibility/only-unlisteds/unlisted-subcategory/","permalink":"/tests/docs/tests/visibility/only-unlisteds/unlisted-subcategory/","draft":false,"unlisted":true,"tags":[{"inline":false,"label":"Visibility","permalink":"/tests/docs/tags/visibility"},{"inline":false,"label":"Unlisted","permalink":"/tests/docs/tags/unlisted"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"unlisted":true,"tags":["visibility","unlisted"]},"sidebar":"sidebar"},{"id":"tests/visibility/only-unlisteds/unlisted-subcategory/unlisted3","title":"Only Unlisteds - Unlisted 3","description":"Doc with unlisted front matter","source":"@site/_dogfooding/_docs tests/tests/visibility/only-unlisteds/unlisted-subcategory/unlisted3.mdx","sourceDirName":"tests/visibility/only-unlisteds/unlisted-subcategory","slug":"/tests/visibility/only-unlisteds/unlisted-subcategory/unlisted3","permalink":"/tests/docs/tests/visibility/only-unlisteds/unlisted-subcategory/unlisted3","draft":false,"unlisted":true,"tags":[{"inline":false,"label":"Visibility","permalink":"/tests/docs/tags/visibility"},{"inline":false,"label":"Unlisted","permalink":"/tests/docs/tags/unlisted"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"unlisted":true,"tags":["visibility","unlisted"]},"sidebar":"sidebar"},{"id":"tests/visibility/only-unlisteds/unlisted1","title":"Only Unlisteds - Unlisted 1","description":"Doc with unlisted front matter","source":"@site/_dogfooding/_docs tests/tests/visibility/only-unlisteds/unlisted1.mdx","sourceDirName":"tests/visibility/only-unlisteds","slug":"/tests/visibility/only-unlisteds/unlisted1","permalink":"/tests/docs/tests/visibility/only-unlisteds/unlisted1","draft":false,"unlisted":true,"tags":[{"inline":false,"label":"Visibility","permalink":"/tests/docs/tags/visibility"},{"inline":false,"label":"Unlisted","permalink":"/tests/docs/tags/unlisted"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"unlisted":true,"tags":["visibility","unlisted"]},"sidebar":"sidebar"},{"id":"tests/visibility/only-unlisteds/unlisted2","title":"Only Unlisteds - Unlisted 2","description":"Doc with unlisted front matter","source":"@site/_dogfooding/_docs tests/tests/visibility/only-unlisteds/unlisted2.mdx","sourceDirName":"tests/visibility/only-unlisteds","slug":"/tests/visibility/only-unlisteds/unlisted2","permalink":"/tests/docs/tests/visibility/only-unlisteds/unlisted2","draft":false,"unlisted":true,"tags":[{"inline":false,"label":"Visibility","permalink":"/tests/docs/tags/visibility"},{"inline":false,"label":"Unlisted","permalink":"/tests/docs/tags/unlisted"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"unlisted":true,"tags":["visibility","unlisted"]},"sidebar":"sidebar"},{"id":"tests/visibility/some-drafts/draft-subcategory/listed1","title":"Some Drafts - Listed 1","description":"Regular doc","source":"@site/_dogfooding/_docs tests/tests/visibility/some-drafts/draft-subcategory/listed1.mdx","sourceDirName":"tests/visibility/some-drafts/draft-subcategory","slug":"/tests/visibility/some-drafts/draft-subcategory/listed1","permalink":"/tests/docs/tests/visibility/some-drafts/draft-subcategory/listed1","draft":false,"unlisted":false,"tags":[{"inline":false,"label":"Visibility","permalink":"/tests/docs/tags/visibility"},{"inline":false,"label":"Listed","permalink":"/tests/docs/tags/listed"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"tags":["visibility","listed"]},"sidebar":"sidebar","previous":{"title":"Visibility","permalink":"/tests/docs/tests/visibility/"},"next":{"title":"Subcategory index listed","permalink":"/tests/docs/tests/visibility/some-unlisteds/subcategory-with-listed-index/"}},{"id":"tests/visibility/some-unlisteds/subcategory-with-listed-index/index","title":"Subcategory index listed","description":"Doc index, listed, but all the other category items are unlisted","source":"@site/_dogfooding/_docs tests/tests/visibility/some-unlisteds/subcategory-with-listed-index/index.mdx","sourceDirName":"tests/visibility/some-unlisteds/subcategory-with-listed-index","slug":"/tests/visibility/some-unlisteds/subcategory-with-listed-index/","permalink":"/tests/docs/tests/visibility/some-unlisteds/subcategory-with-listed-index/","draft":false,"unlisted":false,"tags":[{"inline":false,"label":"Visibility","permalink":"/tests/docs/tags/visibility"},{"inline":false,"label":"Unlisted","permalink":"/tests/docs/tags/unlisted"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"unlisted":false,"tags":["visibility","unlisted"]},"sidebar":"sidebar","previous":{"title":"Some Drafts - Listed 1","permalink":"/tests/docs/tests/visibility/some-drafts/draft-subcategory/listed1"},"next":{"title":"Some Unlisteds - Listed 1","permalink":"/tests/docs/tests/visibility/some-unlisteds/unlisted-subcategory/listed1"}},{"id":"tests/visibility/some-unlisteds/subcategory-with-listed-index/unlisted1","title":"Unlisted 1","description":"Doc with unlisted front matter","source":"@site/_dogfooding/_docs tests/tests/visibility/some-unlisteds/subcategory-with-listed-index/unlisted1.mdx","sourceDirName":"tests/visibility/some-unlisteds/subcategory-with-listed-index","slug":"/tests/visibility/some-unlisteds/subcategory-with-listed-index/unlisted1","permalink":"/tests/docs/tests/visibility/some-unlisteds/subcategory-with-listed-index/unlisted1","draft":false,"unlisted":true,"tags":[{"inline":false,"label":"Visibility","permalink":"/tests/docs/tags/visibility"},{"inline":false,"label":"Unlisted","permalink":"/tests/docs/tags/unlisted"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"unlisted":true,"tags":["visibility","unlisted"]},"sidebar":"sidebar"},{"id":"tests/visibility/some-unlisteds/subcategory-with-listed-index/unlisted2","title":"Unlisted 2","description":"Doc with unlisted front matter","source":"@site/_dogfooding/_docs tests/tests/visibility/some-unlisteds/subcategory-with-listed-index/unlisted2.mdx","sourceDirName":"tests/visibility/some-unlisteds/subcategory-with-listed-index","slug":"/tests/visibility/some-unlisteds/subcategory-with-listed-index/unlisted2","permalink":"/tests/docs/tests/visibility/some-unlisteds/subcategory-with-listed-index/unlisted2","draft":false,"unlisted":true,"tags":[{"inline":false,"label":"Visibility","permalink":"/tests/docs/tags/visibility"},{"inline":false,"label":"Unlisted","permalink":"/tests/docs/tags/unlisted"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"unlisted":true,"tags":["visibility","unlisted"]},"sidebar":"sidebar"},{"id":"tests/visibility/some-unlisteds/unlisted-subcategory/index","title":"Subcategory index unlisted","description":"Doc with unlisted front matter","source":"@site/_dogfooding/_docs tests/tests/visibility/some-unlisteds/unlisted-subcategory/index.mdx","sourceDirName":"tests/visibility/some-unlisteds/unlisted-subcategory","slug":"/tests/visibility/some-unlisteds/unlisted-subcategory/","permalink":"/tests/docs/tests/visibility/some-unlisteds/unlisted-subcategory/","draft":false,"unlisted":true,"tags":[{"inline":false,"label":"Visibility","permalink":"/tests/docs/tags/visibility"},{"inline":false,"label":"Unlisted","permalink":"/tests/docs/tags/unlisted"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"unlisted":true,"tags":["visibility","unlisted"]},"sidebar":"sidebar"},{"id":"tests/visibility/some-unlisteds/unlisted-subcategory/listed1","title":"Some Unlisteds - Listed 1","description":"Regular doc","source":"@site/_dogfooding/_docs tests/tests/visibility/some-unlisteds/unlisted-subcategory/listed1.mdx","sourceDirName":"tests/visibility/some-unlisteds/unlisted-subcategory","slug":"/tests/visibility/some-unlisteds/unlisted-subcategory/listed1","permalink":"/tests/docs/tests/visibility/some-unlisteds/unlisted-subcategory/listed1","draft":false,"unlisted":false,"tags":[{"inline":false,"label":"Visibility","permalink":"/tests/docs/tags/visibility"},{"inline":false,"label":"Listed","permalink":"/tests/docs/tags/listed"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"tags":["visibility","listed"]},"sidebar":"sidebar","previous":{"title":"Subcategory index listed","permalink":"/tests/docs/tests/visibility/some-unlisteds/subcategory-with-listed-index/"},"next":{"title":"Sidebar item description tests","permalink":"/tests/docs/category/sidebar-item-description-tests"}},{"id":"tests/visibility/some-unlisteds/unlisted-subcategory/unlisted3","title":"Some Unlisteds - Unlisted 3","description":"Doc with unlisted front matter","source":"@site/_dogfooding/_docs tests/tests/visibility/some-unlisteds/unlisted-subcategory/unlisted3.mdx","sourceDirName":"tests/visibility/some-unlisteds/unlisted-subcategory","slug":"/tests/visibility/some-unlisteds/unlisted-subcategory/unlisted3","permalink":"/tests/docs/tests/visibility/some-unlisteds/unlisted-subcategory/unlisted3","draft":false,"unlisted":true,"tags":[{"inline":false,"label":"Visibility","permalink":"/tests/docs/tags/visibility"},{"inline":false,"label":"Unlisted","permalink":"/tests/docs/tags/unlisted"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"unlisted":true,"tags":["visibility","unlisted"]},"sidebar":"sidebar"},{"id":"tests/visibility/some-unlisteds/unlisted1","title":"Some Unlisteds - Unlisted 1","description":"Doc with unlisted front matter","source":"@site/_dogfooding/_docs tests/tests/visibility/some-unlisteds/unlisted1.mdx","sourceDirName":"tests/visibility/some-unlisteds","slug":"/tests/visibility/some-unlisteds/unlisted1","permalink":"/tests/docs/tests/visibility/some-unlisteds/unlisted1","draft":false,"unlisted":true,"tags":[{"inline":false,"label":"Visibility","permalink":"/tests/docs/tags/visibility"},{"inline":false,"label":"Unlisted","permalink":"/tests/docs/tags/unlisted"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"unlisted":true,"tags":["visibility","unlisted"]},"sidebar":"sidebar"},{"id":"tests/visibility/some-unlisteds/unlisted2","title":"Some Unlisteds - Unlisted 2","description":"Doc with unlisted front matter","source":"@site/_dogfooding/_docs tests/tests/visibility/some-unlisteds/unlisted2.mdx","sourceDirName":"tests/visibility/some-unlisteds","slug":"/tests/visibility/some-unlisteds/unlisted2","permalink":"/tests/docs/tests/visibility/some-unlisteds/unlisted2","draft":false,"unlisted":true,"tags":[{"inline":false,"label":"Visibility","permalink":"/tests/docs/tags/visibility"},{"inline":false,"label":"Unlisted","permalink":"/tests/docs/tags/unlisted"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"unlisted":true,"tags":["visibility","unlisted"]},"sidebar":"sidebar"},{"id":"toc/toc-_-_","title":"toc-_-_","description":"","source":"@site/_dogfooding/_docs tests/toc/toc-_-_.mdx","sourceDirName":"toc","slug":"/toc/toc-_-_","permalink":"/tests/docs/toc/toc-_-_","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{},"sidebar":"sidebar","previous":{"title":"toc-_-5","permalink":"/tests/docs/toc/toc-_-5"},"next":{"title":"toc-test-bad","permalink":"/tests/docs/toc/toc-test-bad"}},{"id":"toc/toc-_-5","title":"toc-_-5","description":"","source":"@site/_dogfooding/_docs tests/toc/toc-_-5.mdx","sourceDirName":"toc","slug":"/toc/toc-_-5","permalink":"/tests/docs/toc/toc-_-5","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"toc_max_heading_level":5},"sidebar":"sidebar","previous":{"title":"toc-5-5","permalink":"/tests/docs/toc/toc-5-5"},"next":{"title":"toc-_-_","permalink":"/tests/docs/toc/toc-_-_"}},{"id":"toc/toc-2-2","title":"toc-2-2","description":"","source":"@site/_dogfooding/_docs tests/toc/toc-2-2.mdx","sourceDirName":"toc","slug":"/toc/toc-2-2","permalink":"/tests/docs/toc/toc-2-2","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"toc_min_heading_level":2,"toc_max_heading_level":2},"sidebar":"sidebar","previous":{"title":"Another test page","permalink":"/tests/docs/more-test"},"next":{"title":"toc-2-3","permalink":"/tests/docs/toc/toc-2-3"}},{"id":"toc/toc-2-3","title":"toc-2-3","description":"","source":"@site/_dogfooding/_docs tests/toc/toc-2-3.mdx","sourceDirName":"toc","slug":"/toc/toc-2-3","permalink":"/tests/docs/toc/toc-2-3","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"toc_min_heading_level":2,"toc_max_heading_level":3},"sidebar":"sidebar","previous":{"title":"toc-2-2","permalink":"/tests/docs/toc/toc-2-2"},"next":{"title":"toc-2-4","permalink":"/tests/docs/toc/toc-2-4"}},{"id":"toc/toc-2-4","title":"toc-2-4","description":"","source":"@site/_dogfooding/_docs tests/toc/toc-2-4.mdx","sourceDirName":"toc","slug":"/toc/toc-2-4","permalink":"/tests/docs/toc/toc-2-4","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"toc_min_heading_level":2,"toc_max_heading_level":4},"sidebar":"sidebar","previous":{"title":"toc-2-3","permalink":"/tests/docs/toc/toc-2-3"},"next":{"title":"toc-2-5","permalink":"/tests/docs/toc/toc-2-5"}},{"id":"toc/toc-2-5","title":"toc-2-5","description":"","source":"@site/_dogfooding/_docs tests/toc/toc-2-5.mdx","sourceDirName":"toc","slug":"/toc/toc-2-5","permalink":"/tests/docs/toc/toc-2-5","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"toc_min_heading_level":2,"toc_max_heading_level":5},"sidebar":"sidebar","previous":{"title":"toc-2-4","permalink":"/tests/docs/toc/toc-2-4"},"next":{"title":"toc-3-5","permalink":"/tests/docs/toc/toc-3-5"}},{"id":"toc/toc-3-_","title":"toc-3-_","description":"","source":"@site/_dogfooding/_docs tests/toc/toc-3-_.mdx","sourceDirName":"toc","slug":"/toc/toc-3-_","permalink":"/tests/docs/toc/toc-3-_","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"toc_min_heading_level":3},"sidebar":"sidebar","previous":{"title":"toc-3-5","permalink":"/tests/docs/toc/toc-3-5"},"next":{"title":"toc-4-5","permalink":"/tests/docs/toc/toc-4-5"}},{"id":"toc/toc-3-5","title":"toc-3-5","description":"","source":"@site/_dogfooding/_docs tests/toc/toc-3-5.mdx","sourceDirName":"toc","slug":"/toc/toc-3-5","permalink":"/tests/docs/toc/toc-3-5","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"toc_min_heading_level":3,"toc_max_heading_level":5},"sidebar":"sidebar","previous":{"title":"toc-2-5","permalink":"/tests/docs/toc/toc-2-5"},"next":{"title":"toc-3-_","permalink":"/tests/docs/toc/toc-3-_"}},{"id":"toc/toc-4-5","title":"toc-4-5","description":"","source":"@site/_dogfooding/_docs tests/toc/toc-4-5.mdx","sourceDirName":"toc","slug":"/toc/toc-4-5","permalink":"/tests/docs/toc/toc-4-5","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"toc_min_heading_level":4,"toc_max_heading_level":5},"sidebar":"sidebar","previous":{"title":"toc-3-_","permalink":"/tests/docs/toc/toc-3-_"},"next":{"title":"toc-5-5","permalink":"/tests/docs/toc/toc-5-5"}},{"id":"toc/toc-5-5","title":"toc-5-5","description":"","source":"@site/_dogfooding/_docs tests/toc/toc-5-5.mdx","sourceDirName":"toc","slug":"/toc/toc-5-5","permalink":"/tests/docs/toc/toc-5-5","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"toc_min_heading_level":5,"toc_max_heading_level":5},"sidebar":"sidebar","previous":{"title":"toc-4-5","permalink":"/tests/docs/toc/toc-4-5"},"next":{"title":"toc-_-5","permalink":"/tests/docs/toc/toc-_-5"}},{"id":"toc/toc-test-bad","title":"toc-test-bad","description":"Test the TOC behavior of a real-world MD doc with invalid headings","source":"@site/_dogfooding/_docs tests/toc/toc-test-bad.mdx","sourceDirName":"toc","slug":"/toc/toc-test-bad","permalink":"/tests/docs/toc/toc-test-bad","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"toc_min_heading_level":2,"toc_max_heading_level":6},"sidebar":"sidebar","previous":{"title":"toc-_-_","permalink":"/tests/docs/toc/toc-_-_"},"next":{"title":"toc-test-good","permalink":"/tests/docs/toc/toc-test-good"}},{"id":"toc/toc-test-good","title":"toc-test-good","description":"Test the TOC behavior of a real-world MD doc with valid headings","source":"@site/_dogfooding/_docs tests/toc/toc-test-good.mdx","sourceDirName":"toc","slug":"/toc/toc-test-good","permalink":"/tests/docs/toc/toc-test-good","draft":false,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"toc_min_heading_level":2,"toc_max_heading_level":6},"sidebar":"sidebar","previous":{"title":"toc-test-bad","permalink":"/tests/docs/toc/toc-test-bad"}}],"drafts":[{"id":"tests/another-draft","title":"Another Draft","description":"This page should only be visible in local development","source":"@site/_dogfooding/_docs tests/tests/another-draft.mdx","sourceDirName":"tests","slug":"/tests/another-draft","permalink":"/tests/docs/tests/another-draft","draft":true,"unlisted":false,"tags":[],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"draft":true}},{"id":"tests/visibility/only-drafts/draft1","title":"Only Drafts - Draft 1","description":"Doc with draft front matter","source":"@site/_dogfooding/_docs tests/tests/visibility/only-drafts/draft1.mdx","sourceDirName":"tests/visibility/only-drafts","slug":"/tests/visibility/only-drafts/draft1","permalink":"/tests/docs/tests/visibility/only-drafts/draft1","draft":true,"unlisted":false,"tags":[{"inline":false,"label":"Visibility","permalink":"/tests/docs/tags/visibility"},{"inline":false,"label":"Draft","permalink":"/tests/docs/tags/draft"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"draft":true,"tags":["visibility","draft"]}},{"id":"tests/visibility/only-drafts/draft2","title":"Only Drafts - Draft 2","description":"Doc with draft front matter","source":"@site/_dogfooding/_docs tests/tests/visibility/only-drafts/draft2.mdx","sourceDirName":"tests/visibility/only-drafts","slug":"/tests/visibility/only-drafts/draft2","permalink":"/tests/docs/tests/visibility/only-drafts/draft2","draft":true,"unlisted":false,"tags":[{"inline":false,"label":"Draft","permalink":"/tests/docs/tags/draft"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"draft":true,"tags":["draft"]}},{"id":"tests/visibility/some-drafts/draft1","title":"Some Drafts - Draft 1","description":"Doc with draft front matter","source":"@site/_dogfooding/_docs tests/tests/visibility/some-drafts/draft1.mdx","sourceDirName":"tests/visibility/some-drafts","slug":"/tests/visibility/some-drafts/draft1","permalink":"/tests/docs/tests/visibility/some-drafts/draft1","draft":true,"unlisted":false,"tags":[{"inline":false,"label":"Visibility","permalink":"/tests/docs/tags/visibility"},{"inline":false,"label":"Draft","permalink":"/tests/docs/tags/draft"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"draft":true,"tags":["visibility","draft"]}},{"id":"tests/visibility/some-drafts/draft2","title":"Some Drafts - Draft 2","description":"Doc with draft front matter","source":"@site/_dogfooding/_docs tests/tests/visibility/some-drafts/draft2.mdx","sourceDirName":"tests/visibility/some-drafts","slug":"/tests/visibility/some-drafts/draft2","permalink":"/tests/docs/tests/visibility/some-drafts/draft2","draft":true,"unlisted":false,"tags":[{"inline":false,"label":"Visibility","permalink":"/tests/docs/tags/visibility"},{"inline":false,"label":"Draft","permalink":"/tests/docs/tags/draft"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"draft":true,"tags":["visibility","draft"]}},{"id":"tests/visibility/only-drafts/draft-subcategory/draft3","title":"Only Drafts - Draft 3","description":"Doc with draft front matter","source":"@site/_dogfooding/_docs tests/tests/visibility/only-drafts/draft-subcategory/draft3.mdx","sourceDirName":"tests/visibility/only-drafts/draft-subcategory","slug":"/tests/visibility/only-drafts/draft-subcategory/draft3","permalink":"/tests/docs/tests/visibility/only-drafts/draft-subcategory/draft3","draft":true,"unlisted":false,"tags":[{"inline":false,"label":"Visibility","permalink":"/tests/docs/tags/visibility"},{"inline":false,"label":"Draft","permalink":"/tests/docs/tags/draft"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"draft":true,"tags":["visibility","draft"]}},{"id":"tests/visibility/only-drafts/draft-subcategory/index","title":"Only Drafts - Subcategory index draft","description":"Doc with draft front matter","source":"@site/_dogfooding/_docs tests/tests/visibility/only-drafts/draft-subcategory/index.mdx","sourceDirName":"tests/visibility/only-drafts/draft-subcategory","slug":"/tests/visibility/only-drafts/draft-subcategory/","permalink":"/tests/docs/tests/visibility/only-drafts/draft-subcategory/","draft":true,"unlisted":false,"tags":[{"inline":false,"label":"Visibility","permalink":"/tests/docs/tags/visibility"},{"inline":false,"label":"Draft","permalink":"/tests/docs/tags/draft"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"draft":true,"tags":["visibility","draft"]}},{"id":"tests/visibility/some-drafts/draft-subcategory/draft3","title":"Some Drafts - Draft 3","description":"Doc with draft front matter","source":"@site/_dogfooding/_docs tests/tests/visibility/some-drafts/draft-subcategory/draft3.mdx","sourceDirName":"tests/visibility/some-drafts/draft-subcategory","slug":"/tests/visibility/some-drafts/draft-subcategory/draft3","permalink":"/tests/docs/tests/visibility/some-drafts/draft-subcategory/draft3","draft":true,"unlisted":false,"tags":[{"inline":false,"label":"Visibility","permalink":"/tests/docs/tags/visibility"},{"inline":false,"label":"Draft","permalink":"/tests/docs/tags/draft"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"draft":true,"tags":["visibility","draft"]}},{"id":"tests/visibility/some-drafts/draft-subcategory/index","title":"Some Drafts - Subcategory index draft","description":"Doc with draft front matter","source":"@site/_dogfooding/_docs tests/tests/visibility/some-drafts/draft-subcategory/index.mdx","sourceDirName":"tests/visibility/some-drafts/draft-subcategory","slug":"/tests/visibility/some-drafts/draft-subcategory/","permalink":"/tests/docs/tests/visibility/some-drafts/draft-subcategory/","draft":true,"unlisted":false,"tags":[{"inline":false,"label":"Visibility","permalink":"/tests/docs/tags/visibility"},{"inline":false,"label":"Draft","permalink":"/tests/docs/tags/draft"}],"version":"current","lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"frontMatter":{"draft":true,"tags":["visibility","draft"]}}],"sidebars":{"sidebar":[{"type":"doc","id":"index","className":"red","label":"Index","translatable":true},{"type":"doc","id":"doc-without-sidebar"},{"type":"doc","id":"doc-with-another-sidebar"},{"type":"doc","id":"doc-with-last-update"},{"type":"category","label":"Tests","link":{"type":"generated-index","slug":"/category/tests","permalink":"/tests/docs/category/tests"},"items":[{"type":"doc","id":"tests/Case-Sentitive-Doc"},{"type":"doc","id":"tests/admonitions"},{"type":"category","label":"ascii","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"folder","collapsible":true,"collapsed":true,"items":[{"type":"doc","id":"tests/ascii/folder/\xe6\xf8\xe5"}]},{"type":"doc","label":"index","id":"tests/ascii/\xe6\xf8\xe5/index"}]},{"type":"category","label":"Category Links","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Introduction","collapsible":true,"collapsed":true,"items":[{"type":"doc","id":"tests/category-links/custom-index-convention/sample-doc"}],"link":{"type":"doc","id":"tests/category-links/custom-index-convention/intro"}},{"type":"category","label":"no-index-doc","collapsible":true,"collapsed":true,"items":[{"type":"doc","id":"tests/category-links/no-index-doc/index"},{"type":"doc","id":"tests/category-links/no-index-doc/sample-doc"}]},{"type":"doc","label":"No sub-docs","id":"tests/category-links/no-subdoc/index"},{"type":"doc","id":"tests/category-links/readme"},{"type":"category","label":"regular-category","collapsible":true,"collapsed":true,"items":[{"type":"doc","id":"tests/category-links/regular-category/sample-doc"}]},{"type":"category","label":"Category with a doc of category\'s name","collapsible":true,"collapsed":true,"items":[{"type":"doc","id":"tests/category-links/with-category-name-doc/sample-doc"}],"link":{"type":"doc","id":"tests/category-links/with-category-name-doc/with-category-name-doc"}},{"type":"category","label":"Category with index.md doc","collapsible":true,"collapsed":true,"items":[{"type":"doc","id":"tests/category-links/with-index-doc/sample-doc"}],"link":{"type":"doc","id":"tests/category-links/with-index-doc/index"}},{"type":"category","label":"Category with readme.md doc","collapsible":true,"collapsed":true,"items":[{"type":"doc","id":"tests/category-links/with-readme-doc/sample-doc"}],"link":{"type":"doc","id":"tests/category-links/with-readme-doc/README"}}],"description":"Category Links - Custom Description","link":{"type":"generated-index","slug":"/category-links-generated-index-slug","permalink":"/tests/docs/category-links-generated-index-slug"}},{"type":"doc","label":"Image Tests","id":"tests/images/index"},{"type":"doc","id":"tests/import-bad-package"},{"type":"category","label":"links","collapsible":true,"collapsed":true,"items":[{"type":"doc","id":"tests/links/broken-anchors-tests"},{"type":"doc","id":"tests/links/target"},{"type":"doc","id":"tests/links/test-markdown-links"}]},{"type":"category","label":"Sidebar Front Matter Tests","collapsible":true,"collapsed":true,"className":"dogfood_sidebar_class_name_test","items":[{"type":"doc","id":"tests/sidebar-frontmatter/doc-with-sidebar-className","className":"dogfood_sidebar_class_name_test"},{"type":"doc","id":"tests/sidebar-frontmatter/doc-with-sidebar-custom-props","customProps":{"prop":"custom","number":1,"boolean":true}},{"type":"doc","id":"tests/sidebar-frontmatter/doc-with-sidebar-label","label":"Doc With Sidebar Label"},{"type":"doc","id":"tests/sidebar-frontmatter/doc-without"}],"link":{"type":"doc","id":"tests/sidebar-frontmatter/index"}},{"type":"doc","label":"TOC partial test","id":"tests/toc-partials/index"},{"type":"category","label":"Visibility","collapsible":true,"collapsed":true,"items":[{"type":"doc","id":"tests/visibility/force-unlisted"},{"type":"category","label":"only-unlisteds","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Only Unlisteds - Subcategory index unlisted","collapsible":true,"collapsed":true,"items":[{"type":"doc","id":"tests/visibility/only-unlisteds/unlisted-subcategory/unlisted3"}],"link":{"type":"doc","id":"tests/visibility/only-unlisteds/unlisted-subcategory/index"}},{"type":"doc","id":"tests/visibility/only-unlisteds/unlisted1"},{"type":"doc","id":"tests/visibility/only-unlisteds/unlisted2"}]},{"type":"category","label":"some-drafts","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"draft-subcategory","collapsible":true,"collapsed":true,"items":[{"type":"doc","id":"tests/visibility/some-drafts/draft-subcategory/listed1"}]}]},{"type":"category","label":"some-unlisteds","collapsible":true,"collapsed":true,"items":[{"type":"category","label":"Subcategory index listed","collapsible":true,"collapsed":true,"items":[{"type":"doc","id":"tests/visibility/some-unlisteds/subcategory-with-listed-index/unlisted1"},{"type":"doc","id":"tests/visibility/some-unlisteds/subcategory-with-listed-index/unlisted2"}],"link":{"type":"doc","id":"tests/visibility/some-unlisteds/subcategory-with-listed-index/index"}},{"type":"category","label":"Subcategory index unlisted","collapsible":true,"collapsed":true,"items":[{"type":"doc","id":"tests/visibility/some-unlisteds/unlisted-subcategory/listed1"},{"type":"doc","id":"tests/visibility/some-unlisteds/unlisted-subcategory/unlisted3"}],"link":{"type":"doc","id":"tests/visibility/some-unlisteds/unlisted-subcategory/index"}},{"type":"doc","id":"tests/visibility/some-unlisteds/unlisted1"},{"type":"doc","id":"tests/visibility/some-unlisteds/unlisted2"}]}],"link":{"type":"doc","id":"tests/visibility/index"}},{"type":"link","label":"External Link test","href":"https://docusaurus.io"},{"type":"category","label":"Sidebar item description tests","description":"Some custom category description","link":{"type":"generated-index","slug":"/category/sidebar-item-description-tests","permalink":"/tests/docs/category/sidebar-item-description-tests"},"items":[{"type":"link","label":"Link without description","href":"https://docusaurus.io"},{"type":"link","label":"Link with description","href":"https://docusaurus.io","description":"Some link description"},{"type":"category","label":"Category without description","items":[{"type":"link","label":"Link ","href":"https://docusaurus.io"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category with description","description":"Some category description","items":[{"type":"link","label":"Link ","href":"https://docusaurus.io"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Another category with index","collapsible":false,"link":{"type":"generated-index","slug":"/category/another-category-with-index","permalink":"/tests/docs/category/another-category-with-index"},"items":[{"type":"doc","id":"more-test"}],"collapsed":false},{"type":"category","label":"Huge sidebar category","items":[{"type":"link","href":"/","label":"Test Test test test test test test"},{"type":"link","href":"/","label":"Link 0 (level 1)"},{"type":"link","href":"/","label":"Link 1 (level 1)"},{"type":"link","href":"/","label":"Link 2 (level 1)"},{"type":"link","href":"/","label":"Link 3 (level 1)"},{"type":"link","href":"/","label":"Link 4 (level 1)"},{"type":"link","href":"/","label":"Link 5 (level 1)"},{"type":"link","href":"/","label":"Link 6 (level 1)"},{"type":"link","href":"/","label":"Link 7 (level 1)"},{"type":"category","label":"Category 0 (level 1)","items":[{"type":"link","href":"/","label":"Link 0 (level 2)"},{"type":"link","href":"/","label":"Link 1 (level 2)"},{"type":"link","href":"/","label":"Link 2 (level 2)"},{"type":"link","href":"/","label":"Link 3 (level 2)"},{"type":"link","href":"/","label":"Link 4 (level 2)"},{"type":"link","href":"/","label":"Link 5 (level 2)"},{"type":"link","href":"/","label":"Link 6 (level 2)"},{"type":"link","href":"/","label":"Link 7 (level 2)"},{"type":"category","label":"Category 0 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 1)","items":[{"type":"link","href":"/","label":"Link 0 (level 2)"},{"type":"link","href":"/","label":"Link 1 (level 2)"},{"type":"link","href":"/","label":"Link 2 (level 2)"},{"type":"link","href":"/","label":"Link 3 (level 2)"},{"type":"link","href":"/","label":"Link 4 (level 2)"},{"type":"link","href":"/","label":"Link 5 (level 2)"},{"type":"link","href":"/","label":"Link 6 (level 2)"},{"type":"link","href":"/","label":"Link 7 (level 2)"},{"type":"category","label":"Category 0 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 1)","items":[{"type":"link","href":"/","label":"Link 0 (level 2)"},{"type":"link","href":"/","label":"Link 1 (level 2)"},{"type":"link","href":"/","label":"Link 2 (level 2)"},{"type":"link","href":"/","label":"Link 3 (level 2)"},{"type":"link","href":"/","label":"Link 4 (level 2)"},{"type":"link","href":"/","label":"Link 5 (level 2)"},{"type":"link","href":"/","label":"Link 6 (level 2)"},{"type":"link","href":"/","label":"Link 7 (level 2)"},{"type":"category","label":"Category 0 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 1)","items":[{"type":"link","href":"/","label":"Link 0 (level 2)"},{"type":"link","href":"/","label":"Link 1 (level 2)"},{"type":"link","href":"/","label":"Link 2 (level 2)"},{"type":"link","href":"/","label":"Link 3 (level 2)"},{"type":"link","href":"/","label":"Link 4 (level 2)"},{"type":"link","href":"/","label":"Link 5 (level 2)"},{"type":"link","href":"/","label":"Link 6 (level 2)"},{"type":"link","href":"/","label":"Link 7 (level 2)"},{"type":"category","label":"Category 0 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 1)","items":[{"type":"link","href":"/","label":"Link 0 (level 2)"},{"type":"link","href":"/","label":"Link 1 (level 2)"},{"type":"link","href":"/","label":"Link 2 (level 2)"},{"type":"link","href":"/","label":"Link 3 (level 2)"},{"type":"link","href":"/","label":"Link 4 (level 2)"},{"type":"link","href":"/","label":"Link 5 (level 2)"},{"type":"link","href":"/","label":"Link 6 (level 2)"},{"type":"link","href":"/","label":"Link 7 (level 2)"},{"type":"category","label":"Category 0 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 1)","items":[{"type":"link","href":"/","label":"Link 0 (level 2)"},{"type":"link","href":"/","label":"Link 1 (level 2)"},{"type":"link","href":"/","label":"Link 2 (level 2)"},{"type":"link","href":"/","label":"Link 3 (level 2)"},{"type":"link","href":"/","label":"Link 4 (level 2)"},{"type":"link","href":"/","label":"Link 5 (level 2)"},{"type":"link","href":"/","label":"Link 6 (level 2)"},{"type":"link","href":"/","label":"Link 7 (level 2)"},{"type":"category","label":"Category 0 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 1)","items":[{"type":"link","href":"/","label":"Link 0 (level 2)"},{"type":"link","href":"/","label":"Link 1 (level 2)"},{"type":"link","href":"/","label":"Link 2 (level 2)"},{"type":"link","href":"/","label":"Link 3 (level 2)"},{"type":"link","href":"/","label":"Link 4 (level 2)"},{"type":"link","href":"/","label":"Link 5 (level 2)"},{"type":"link","href":"/","label":"Link 6 (level 2)"},{"type":"link","href":"/","label":"Link 7 (level 2)"},{"type":"category","label":"Category 0 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 1)","items":[{"type":"link","href":"/","label":"Link 0 (level 2)"},{"type":"link","href":"/","label":"Link 1 (level 2)"},{"type":"link","href":"/","label":"Link 2 (level 2)"},{"type":"link","href":"/","label":"Link 3 (level 2)"},{"type":"link","href":"/","label":"Link 4 (level 2)"},{"type":"link","href":"/","label":"Link 5 (level 2)"},{"type":"link","href":"/","label":"Link 6 (level 2)"},{"type":"link","href":"/","label":"Link 7 (level 2)"},{"type":"category","label":"Category 0 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 2)","items":[{"type":"link","href":"/","label":"Link 0 (level 3)"},{"type":"link","href":"/","label":"Link 1 (level 3)"},{"type":"link","href":"/","label":"Link 2 (level 3)"},{"type":"link","href":"/","label":"Link 3 (level 3)"},{"type":"link","href":"/","label":"Link 4 (level 3)"},{"type":"link","href":"/","label":"Link 5 (level 3)"},{"type":"link","href":"/","label":"Link 6 (level 3)"},{"type":"link","href":"/","label":"Link 7 (level 3)"},{"type":"category","label":"Category 0 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 1 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 2 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 3 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 4 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 5 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 6 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true},{"type":"category","label":"Category 7 (level 3)","items":[{"type":"link","href":"/","label":"Link (level 4)"}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true}],"collapsed":true,"collapsible":true},{"type":"category","label":"Link tests","className":"red","items":[{"type":"link","label":"External link absolute","href":"https://github.com/facebook/docusaurus"},{"type":"link","label":"pathname:/// link","href":"pathname:///some/local/path"},{"type":"link","label":"pathname:/// link (no baseUrl)","href":"pathname:///some/local/path","autoAddBaseUrl":false}],"collapsed":true,"collapsible":true},{"type":"category","label":"TOC tests","className":"red","items":[{"type":"doc","id":"toc/toc-2-2"},{"type":"doc","id":"toc/toc-2-3"},{"type":"doc","id":"toc/toc-2-4"},{"type":"doc","id":"toc/toc-2-5"},{"type":"doc","id":"toc/toc-3-5"},{"type":"doc","id":"toc/toc-3-_"},{"type":"doc","id":"toc/toc-4-5"},{"type":"doc","id":"toc/toc-5-5"},{"type":"doc","id":"toc/toc-_-5"},{"type":"doc","id":"toc/toc-_-_"},{"type":"doc","id":"toc/toc-test-bad"},{"type":"doc","id":"toc/toc-test-good"}],"collapsed":true,"collapsible":true},{"type":"category","label":"HTML items tests","collapsed":false,"collapsible":false,"items":[{"type":"html","value":"Some Text","defaultStyle":true},{"type":"html","value":"<span style=\\"border-top: 1px solid var(--ifm-color-gray-500); display: block;margin: 0.5rem 0 0.25rem 1rem;\\" ></span>"},{"type":"html","defaultStyle":true,"value":"\\n <span style=\\"font-size: 0.5rem; color: lightgrey;\\">Powered by</span>\\n <img style=\\"width: 100px; height: 100px; display: block;\\" src=\\"/img/docusaurus.png\\" alt=\\"Docusaurus Logo\\" />\\n "}]}],"anotherSidebar":[{"type":"doc","id":"dummy"}]}}]}},"docusaurus-plugin-content-blog":{"default":{"blogSidebarTitle":"All our posts","blogPosts":[{"id":"/releases/3.7","metadata":{"permalink":"/blog/releases/3.7","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/releases/3.7/index.mdx","source":"@site/blog/releases/3.7/index.mdx","title":"Docusaurus 3.7","description":"We are happy to announce Docusaurus 3.7.","date":"2025-01-03T00:00:00.000Z","tags":[{"inline":false,"label":"Release","permalink":"/blog/tags/release","description":"Blog posts about Docusaurus\' new releases"}],"readingTime":2.41,"hasTruncateMarker":true,"authors":[{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer, This Week In React editor","url":"https://thisweekinreact.com","page":{"permalink":"/blog/authors/slorber"},"description":"A freelance React and React-Native developer near Paris and Docusaurus maintainer. Also runs ThisWeekInReact.com, a newsletter to stay updated with the React ecosystem.","socials":{"bluesky":"https://bsky.app/profile/sebastienlorber.com","x":"https://x.com/sebastienlorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","github":"https://github.com/slorber","instagram":"https://www.instagram.com/thisweekinreact","newsletter":"https://thisweekinreact.com"},"imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"title":"Docusaurus 3.7","authors":["slorber"],"tags":["release"],"image":"./img/social-card.png","date":"2025-01-03T00:00:00.000Z"},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","nextItem":{"title":"Docusaurus 3.6","permalink":"/blog/releases/3.6"}},"content":"We are happy to announce **Docusaurus 3.7**.\\n\\nDocusaurus is now compatible with [React 19](https://react.dev/blog/2024/12/05/react-19).\\n\\nUpgrading should be easy. Our [release process](/community/release-process) respects [Semantic Versioning](https://semver.org/). Minor versions do not include any breaking changes.\\n\\n![Docusaurus blog post social card](./img/social-card.png)\\n\\n{/* truncate */}\\n\\n## Highlight\\n\\n### React 19\\n\\nIn [#10763](https://github.com/facebook/docusaurus/pull/10763), we added support for [React 19](https://react.dev/blog/2024/12/05/react-19), and the Docusaurus website is running on React 19 already.\\n\\nFrom now on, all newly initialized sites will run on React 19 by default, and React 19 will be the minimum required version Docusaurus v4.\\n\\nHowever, React 18 remains supported, and existing Docusaurus sites can either choose to stay on React 18, or upgrade their dependencies to React 19:\\n\\n```diff\\n{\\n \\"name\\": \\"my-docusaurus-site\\",\\n \\"dependencies\\": {\\n- \\"react\\": \\"^18.0.0\\",\\n- \\"react-dom\\": \\"^18.0.0\\"\\n+ \\"react\\": \\"^19.0.0\\",\\n+ \\"react-dom\\": \\"^19.0.0\\"\\n }\\n}\\n```\\n\\n:::warning\\n\\nThere\'s no urge to upgrade your site immediately.\\n\\nReact 19 is a bit heavier than React 18. Since we support both versions, we don\'t leverage yet the new features that are exclusive to React 19.\\n\\nHowever, upgrading to React 19 prepares your site for Docusaurus v4, that will drop support for React 18.\\n\\nHere are good reasons to upgrade your site before Docusaurus v4:\\n\\n- You have custom React code and want to ensure it is ready for React19\\n- You plan to leverage the brand-new React 19 features in your own code\\n- You use custom or third-party plugins and want to ensure their compatibility\\n- You have a monorepo and want to align the React dependency to v19 for all packages\\n\\n:::\\n\\nAlong the way, we [fixed](https://github.com/facebook/docusaurus/pull/10786) all the remaining hydration errors reported by React 19, some of them produced by our aggressive HTML minifier settings.\\n\\n### SVGR plugin\\n\\nDocusaurus has built-in support for [SVGR](https://github.com/gregberge/svgr), allowing you to seamlessly import and use SVG files as React components:\\n\\n```tsx\\nimport DocusaurusSvg from \'./docusaurus.svg\';\\n\\n<DocusaurusSvg />;\\n```\\n\\nThis built-in support has been the source of various bug reports due to the inability to customize the [SVGR Options](https://react-svgr.com/docs/options/), in particular the [SVG Optimizer](https://svgo.dev/) options.\\n\\nIn [#10677](https://github.com/facebook/docusaurus/pull/10677), we extracted a new [`@docusaurus/plugin-svgr`](/docs/api/plugins/@docusaurus/plugin-svgr) that you can now configure according to your needs. It is included by default in our classic preset:\\n\\n```js\\nexport default {\\n presets: [\\n [\\n \'classic\',\\n {\\n svgr: {\\n svgrConfig: {\\n // Your SVGR options ...\\n svgoConfig: {\\n // Your SVGO options ...\\n // Use \\"svgoConfig: undefined\\" to use a svgo.config.js file\\n },\\n },\\n },\\n },\\n ],\\n ],\\n};\\n```\\n\\n## Other changes\\n\\nOther notable changes include:\\n\\n- [#10768](https://github.com/facebook/docusaurus/pull/10768): Blog authors have built-in icons for social platforms bluesky, mastodon, threads, twitch, youtube, instagram.\\n- [#10729](https://github.com/facebook/docusaurus/pull/10729): Blog now supports `frontMatter.sidebar_label`\\n- [#10803](https://github.com/facebook/docusaurus/pull/10803): `@docusaurus/remark-plugin-npm2yarn` now supports Bun conversions.\\n- [#10672](https://github.com/facebook/docusaurus/pull/10672): Upgrade Algolia DocSearch to `algoliasearch` v5.\\n- [#10800](https://github.com/facebook/docusaurus/pull/10800): Docusaurus Faster turns Rspack incremental mode on by default.\\n- [#10783](https://github.com/facebook/docusaurus/pull/10783): Improve Dutch theme translations.\\n- [#10760](https://github.com/facebook/docusaurus/pull/10760): Improve Korean theme translations.\\n\\nCheck the **[3.7.0 changelog entry](/changelog/3.7.0)** for an exhaustive list of changes."},{"id":"/releases/3.6","metadata":{"permalink":"/blog/releases/3.6","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/releases/3.6/index.mdx","source":"@site/blog/releases/3.6/index.mdx","title":"Docusaurus 3.6","description":"We are happy to announce Docusaurus 3.6.","date":"2024-11-04T00:00:00.000Z","tags":[{"inline":false,"label":"Release","permalink":"/blog/tags/release","description":"Blog posts about Docusaurus\' new releases"}],"readingTime":5.91,"hasTruncateMarker":true,"authors":[{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer, This Week In React editor","url":"https://thisweekinreact.com","page":{"permalink":"/blog/authors/slorber"},"description":"A freelance React and React-Native developer near Paris and Docusaurus maintainer. Also runs ThisWeekInReact.com, a newsletter to stay updated with the React ecosystem.","socials":{"bluesky":"https://bsky.app/profile/sebastienlorber.com","x":"https://x.com/sebastienlorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","github":"https://github.com/slorber","instagram":"https://www.instagram.com/thisweekinreact","newsletter":"https://thisweekinreact.com"},"imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"title":"Docusaurus 3.6","authors":["slorber"],"tags":["release"],"image":"./img/social-card.png","date":"2024-11-04T00:00:00.000Z"},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Docusaurus 3.7","permalink":"/blog/releases/3.7"},"nextItem":{"title":"Docusaurus 3.5","permalink":"/blog/releases/3.5"}},"content":"We are happy to announce **Docusaurus 3.6**.\\n\\nDocusaurus is now \u26A1\uFE0F\u26A1\uFE0F\u26A1\uFE0F **much faster** to build your site.\\n\\nUpgrading should be easy. Our [release process](/community/release-process) respects [Semantic Versioning](https://semver.org/). Minor versions do not include any breaking changes.\\n\\n![Docusaurus blog post social card](./img/social-card.png)\\n\\n{/* truncate */}\\n\\n## Highlights\\n\\nThis release has been mostly focused on build performance through the [Docusaurus Faster](https://github.com/facebook/docusaurus/issues/10556) project.\\n\\n## Docusaurus Faster\\n\\nThe [Docusaurus Faster](https://github.com/facebook/docusaurus/issues/10556) project\'s goal is to reduce the build times and memory consumption.\\n\\nWe have worked on multiple optimizations and modernized our infrastructure to use faster Rust-based tools, notably:\\n\\n- \uD83E\uDD80 [Rspack](https://rspack.dev/): Fast Rust-based web bundler, almost drop-in replacement for [webpack](https://webpack.js.org/)\\n- \uD83E\uDD80 [SWC](https://swc.rs/): Speedy Web Compiler, Rust-based platform for the Web (HTML, CSS, JS)\\n- \uD83E\uDD80 [Lightning CSS](https://lightningcss.dev/): An extremely fast CSS parser, transformer, bundler, and minifier\\n\\n### Impacts\\n\\nAdopting a new infrastructure can have various impacts. It\'s impossible to list them all exhaustively, so let\'s focus on the major ones.\\n\\nTo help you adopt it easily, we have been fairly conservative in terms of expected static site output and [browser support](/docs/browser-support).\\n\\n#### Build Time\\n\\nBenchmarks on community site show that you can expect your production site to build \u26A1\uFE0F**2 to 4 times faster**! \uD83D\uDD25:\\n\\n- [React Native website](https://github.com/facebook/react-native-website/pull/4268): 3.04x faster \uD83D\uDD25\\n- [Babel website](https://github.com/babel/website/pull/2997): 3.27x faster \uD83D\uDD25\\n- [Lexical website](https://github.com/facebook/lexical/pull/6761): 2x faster \uD83D\uDD25\\n\\n[How to benchmark](https://github.com/facebook/docusaurus/issues/10556#issuecomment-2407671873)\\n\\n:::note About rebuilds\\n\\n[Rspack doesn\'t support persistent caching yet](https://rspack.dev/misc/planning/roadmap#persistent-cache), but it\'s on the roadmap and should be implemented soon. We think it\'s not a problem for the adoption of Rspack considering a cold Rspack build is usually as fast as a warm Webpack build using persistent caching.\\n\\n:::\\n\\n#### Memory Consumption\\n\\nYou should also notice an improvement in memory consumption:\\n\\n- The new infrastructure consumes less memory overall\\n- We fixed an important [memory leak](https://github.com/facebook/docusaurus/pull/10599) that affects in particular i18n sites\\n- We added [CI checks](https://github.com/facebook/docusaurus/pull/10601) to ensure that we don\'t regress, and that our site and init template can both build in a memory-constrained environments\\n- We added [internal tooling](https://github.com/facebook/docusaurus/pull/10590) to better understand which step of a build consumes memory\\n- We [removed a `process.exit(0)`](https://github.com/facebook/docusaurus/pull/10410) that can hide memory leaks in your own code and third-party plugins\\n\\n#### Other Impacts\\n\\n- The HTML minifier now [emits warnings in case of invalid HTML markup](https://github.com/facebook/docusaurus/discussions/10580)\\n- The static HTML output is [~5% smaller](https://github.com/facebook/docusaurus/pull/10554)\\n- Some bugs are automatically fixed by the new infrastructure\\n\\n### Adoption Strategy\\n\\nThis new infrastructure is a breaking change, but it is opt-in and does not require a new major version of Docusaurus.\\n\\nBefore using Docusaurus Faster, add this new package:\\n\\n```bash npm2yarn\\nnpm install @docusaurus/faster\\n```\\n\\nTo help you **adopt it incrementally under Docusaurus v3**, we\'re introducing a set of feature flags that you can activate progressively.\\n\\nWe recommend turning them on all at once with this simple boolean shortcut:\\n\\n```js\\nconst config = {\\n future: {\\n experimental_faster: true,\\n },\\n};\\n```\\n\\nIn case one of the flags does not work for your site, it\'s possible to turn feature flags on independently:\\n\\n```ts\\nconst config = {\\n future: {\\n experimental_faster: {\\n swcJsLoader: true,\\n swcJsMinimizer: true,\\n swcHtmlMinimizer: true,\\n lightningCssMinimizer: true,\\n rspackBundler: true,\\n mdxCrossCompilerCache: true,\\n },\\n },\\n};\\n```\\n\\n- [`swcJsLoader`](https://github.com/facebook/docusaurus/pull/10435): Use [SWC](https://swc.rs/) to transpile JS (instead of [Babel](https://babeljs.io/))\\n- [`swcJsMinimizer`](https://github.com/facebook/docusaurus/pull/10441): Use [SWC](https://swc.rs/) to minify JS (instead of [Terser](https://github.com/terser/terser))\\n- [`swcHtmlMinimizer `](https://github.com/facebook/docusaurus/pull/10554): Use [SWC](https://swc.rs/) to minify HTML and inlined JS/CSS (instead of [html-minifier-terser](https://github.com/terser/html-minifier-terser))\\n- [`lightningCssMinimizer`](https://github.com/facebook/docusaurus/pull/10522): Use [Lightning CSS](https://lightningcss.dev/) to minify CSS (instead of [cssnano](https://github.com/cssnano/cssnano) and [clean-css](https://github.com/clean-css/clean-css))\\n- [`rspackBundler`](https://github.com/facebook/docusaurus/pull/10402): Use [Rspack](https://rspack.dev/) to bundle your app (instead of [webpack](https://webpack.js.org/))\\n- [`mdxCrossCompilerCache`](https://github.com/facebook/docusaurus/pull/10479): Compile MDX files once for both browser/Node.js environments instead of twice\\n\\n:::tip Experimental but safe\\n\\nDon\'t be afraid to turn this feature on. What\'s experimental is the config options.\\n\\nThe new infrastructure is robust and well-tested by our CI pipeline. The [Docusaurus site](https://docusaurus.io/) already uses it in production, and we plan to use it on other Meta docs sites as well.\\n\\n:::\\n\\n#### Plugins\\n\\nThe new infrastructure uses [Rspack](https://rspack.dev/). By chance, Rspack is almost 100% compatible with [webpack](https://webpack.js.org/), and Rspack shouldn\'t break our plugin ecosystem.\\n\\nMost Docusaurus plugins should work out of the box with Rspack, even those implementing [`configureWebpack`](/docs/api/plugin-methods/lifecycle-apis#configureWebpack).\\n\\nHowever, some of them will require small modifications to make them compatible with Rspack. The general idea is to avoid importing `webpack` directly, and use the \\"dynamically provided\\" webpack instance instead:\\n\\n```diff\\n-import webpack from \'webpack\';\\n\\nexport default function (context, options) {\\n return {\\n name: \'custom-docusaurus-plugin\',\\n- configureWebpack(config, isServer) {\\n+ configureWebpack(config, isServer, {currentBundler}) {\\n return {\\n plugins: [\\n- new webpack.DefinePlugin({}),\\n+ new currentBundler.instance.DefinePlugin({}),\\n ]\\n };\\n },\\n };\\n}\\n```\\n\\n:::tip For plugins authors\\n\\nCheck the [dedicated issue](https://github.com/facebook/docusaurus/issues/10572) for guidelines and support.\\n\\n:::\\n\\n### Next Steps\\n\\nIt\'s only the beginning: we will continue working on the [Docusaurus Faster](https://github.com/facebook/docusaurus/issues/10556) project and already have a few more performance improvements planned.\\n\\nDepending on [your feedback](https://github.com/facebook/docusaurus/issues/10556), we plan to make this new infrastructure the default in an upcoming major version of Docusaurus.\\n\\n\uD83D\uDE4F We\'d like to thank the authors of all these great tools that already helped us make Docusaurus much faster than before. In particular the [Rspack team](https://rspack.dev/misc/team/core-team) that supported us along the way, handled our feedback very quickly and implemented all the missing features we needed to make it happen. \uD83D\uDC4F\\n\\n## Rsdoctor plugin\\n\\nIn [#10588](https://github.com/facebook/docusaurus/pull/10588), we created a Docusaurus plugin for [Rsdoctor](https://rsdoctor.dev/). It analyzes the bundling phase of Docusaurus and helps you figure out what slows down the bundler in terms of loaders, plugins and minimizers. It works for both webpack and Rspack.\\n\\n![Loader timeline example](./img/rsdoctor.jpg)\\n\\nTo use it, install the new [`@docusaurus/plugin-rsdoctor`](/docs/api/plugins/@docusaurus/plugin-rsdoctor) package, and then use the plugin in your config:\\n\\n```ts title=\\"docusaurus.config.js\\"\\nexport default {\\n plugins: [\\n [\\n \'rsdoctor\',\\n {\\n /* options */\\n },\\n ],\\n ],\\n};\\n```\\n\\n:::tip\\n\\nTurn it on conditionally, based on an environment variable:\\n\\n```ts title=\\"docusaurus.config.js\\"\\nexport default {\\n plugins: [\\n process.env.RSDOCTOR === \'true\' && [\\n \'rsdoctor\',\\n {\\n /* options */\\n },\\n ],\\n ],\\n};\\n```\\n\\n```bash\\n# Build without Rsdoctor\\nnpm run build\\n\\n# Build with Rsdoctor\\nRSDOCTOR=true npm run build\\n```\\n\\n:::\\n\\n## Mermaid\\n\\nIn [#10510](https://github.com/facebook/docusaurus/pull/10510), we relaxed our [Mermaid diagrams](https://mermaid.js.org/) dependency range to allow newer major versions of Mermaid. We now support both Mermaid 10/11, and expect upcoming versions to be compatible, letting you upgrade on your own terms.\\n\\nThis unlocks new types of diagrams, such as [Architecture Diagrams](https://mermaid.js.org/syntax/architecture):\\n\\n```mermaid\\narchitecture-beta\\n group api(cloud)[API]\\n\\n service db(database)[Database] in api\\n service disk1(disk)[Storage] in api\\n service disk2(disk)[Storage] in api\\n service server(server)[Server] in api\\n\\n db:L -- R:server\\n disk1:T -- B:server\\n disk2:T -- B:db\\n```\\n\\n## Translations\\n\\n- \uD83C\uDDF8\uD83C\uDDEE [#10551](https://github.com/facebook/docusaurus/pull/10551): Improve Slovenian theme translations.\\n- \uD83C\uDDFB\uD83C\uDDF3 [#10507](https://github.com/facebook/docusaurus/pull/10507): Improve Vietnamese theme translations.\\n- \uD83C\uDDEA\uD83C\uDDF8 [#10413](https://github.com/facebook/docusaurus/pull/10413): Improve Spanish theme translations.\\n\\n## Other changes\\n\\nOther notable changes include:\\n\\n- [#10586](https://github.com/facebook/docusaurus/pull/10586): Blog support for `frontMatter.title_meta` to override `frontMatter.title` for SEO reason.\\n- [#10600](https://github.com/facebook/docusaurus/pull/10600): `docusaurus build` and `docusaurus deploy` now support multiple `--locale` CLI args.\\n- [#10454](https://github.com/facebook/docusaurus/pull/10454): `docusaurus-remark-plugin-npm2yarn` upgrades to [`npm-to-yarn` v3](https://github.com/nebrelbug/npm-to-yarn/releases/tag/v3.0.0) and can convert `npx` commands.\\n- [#10612](https://github.com/facebook/docusaurus/pull/10612): Canary releases will use `3.5.2-canary-<number>` instead of `0.0.0-canary-<number>` to respect plugins `peerDependency` constraints.\\n- [#10547](https://github.com/facebook/docusaurus/pull/10547): `@docusaurus/tsconfig` upgrades to `target: \'es2022\'`.\\n- [#10514](https://github.com/facebook/docusaurus/pull/10514): Remove `babel.config.js` from Docusaurus init templates to discourage customizing Babel.\\n\\nCheck the **[3.6.0 changelog entry](/changelog/3.6.0)** for an exhaustive list of changes."},{"id":"/releases/3.5","metadata":{"permalink":"/blog/releases/3.5","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/releases/3.5/index.mdx","source":"@site/blog/releases/3.5/index.mdx","title":"Docusaurus 3.5","description":"We are happy to announce Docusaurus 3.5.","date":"2024-08-09T00:00:00.000Z","tags":[{"inline":false,"label":"Release","permalink":"/blog/tags/release","description":"Blog posts about Docusaurus\' new releases"}],"readingTime":3.91,"hasTruncateMarker":true,"authors":[{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer, This Week In React editor","url":"https://thisweekinreact.com","page":{"permalink":"/blog/authors/slorber"},"description":"A freelance React and React-Native developer near Paris and Docusaurus maintainer. Also runs ThisWeekInReact.com, a newsletter to stay updated with the React ecosystem.","socials":{"bluesky":"https://bsky.app/profile/sebastienlorber.com","x":"https://x.com/sebastienlorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","github":"https://github.com/slorber","instagram":"https://www.instagram.com/thisweekinreact","newsletter":"https://thisweekinreact.com"},"imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"title":"Docusaurus 3.5","authors":["slorber"],"tags":["release"],"image":"./img/social-card.png","date":"2024-08-09T00:00:00.000Z"},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Docusaurus 3.6","permalink":"/blog/releases/3.6"},"nextItem":{"title":"Docusaurus 3.4","permalink":"/blog/releases/3.4"}},"content":"We are happy to announce **Docusaurus 3.5**.\\n\\nThis release contains many **new exciting blog features**.\\n\\nUpgrading should be easy. Our [release process](/community/release-process) respects [Semantic Versioning](https://semver.org/). Minor versions do not include any breaking changes.\\n\\n![Docusaurus blog post social card](./img/social-card.png)\\n\\n{/* truncate */}\\n\\n## Highlights\\n\\n### Blog Social Icons\\n\\nIn [#10222](https://github.com/facebook/docusaurus/pull/10222), we added the possibility to associate social links to blog authors, for inline authors declared in front matter or global through the `authors.yml` file.\\n\\n```yml title=\\"blog/authors.yml\\"\\nslorber:\\n name: S\xe9bastien Lorber\\n # other author properties...\\n # highlight-start\\n socials:\\n x: sebastienlorber\\n linkedin: sebastienlorber\\n github: slorber\\n newsletter: https://thisweekinreact.com\\n # highlight-end\\n```\\n\\n![Author socials screenshot displaying `slorber` author with 4 social platform icons](./img/author-socials.png)\\n\\nIcons and handle shortcuts are provided for pre-defined platforms `x`, `linkedin`, `github` and `stackoverflow`. It\'s possible to provide any additional platform entry (like `newsletter` in the example above) with a full URL.\\n\\n### Blog Authors Pages\\n\\nIn [#10216](https://github.com/facebook/docusaurus/pull/10216), we added the possibility for [global blog authors](/docs/blog#global-authors) (declared in `authors.yml`) to have their own dedicated page listing all the blog posts they contributed to.\\n\\nThis feature is opt-in and mostly relevant for **multi-author blogs**. You can turn it on for a specific author by setting the `page: true` property:\\n\\n```yml title=\\"blog/authors.yml\\"\\nslorber:\\n name: S\xe9bastien Lorber\\n # the description will be displayed on the author\'s page\\n description: \'A freelance React and React-Native developer...\'\\n # highlight-next-line\\n page: true # Turns the feature on\\n```\\n\\nThis creates a [dedicated author page](/blog/authors/slorber) at `/blog/authors/slorber`.\\n\\n![Author page screenshot for `slorber` global author](./img/author-page.png)\\n\\nAn [authors index page](/blog/authors) is also created, listing all the blog authors.\\n\\n![Author index page listing multiple authors](./img/author-index.png)\\n\\nCheck the [blog authors pages guide](/docs/blog#authors-pages) for details.\\n\\n### Blog Feeds Styling\\n\\nIn [#9252](https://github.com/facebook/docusaurus/pull/9252), we added support for [styling your blog feeds](https://darekkay.com/blog/rss-styling/) by providing custom XSLT `.xls` files for the RSS and Atom feeds. This allows browsers to render the feeds in a more visually appealing way, like a regular HTML page, instead of the default XML view.\\n\\n```js title=\\"website/docusaurus.config.js\\"\\nconst blogOptions = {\\n feedOptions: {\\n // highlight-start\\n xslt: {\\n rss: \'custom-rss.xsl\',\\n atom: \'custom-atom.xsl\',\\n },\\n // highlight-end\\n },\\n};\\n```\\n\\nWriting your own XSLT can be complex, but you can also use `xslt: true` to turn on the built-in style:\\n\\n```js title=\\"website/docusaurus.config.js\\"\\nconst blogOptions = {\\n feedOptions: {\\n // highlight-start\\n xslt: true,\\n // highlight-end\\n },\\n};\\n```\\n\\n![Screenshot of the Docusaurus blog RSS feed, beautifully styled](./img/blog-feed-xslt.png)\\n\\n### Blog Sidebar Grouping\\n\\nIn [#10252](https://github.com/facebook/docusaurus/pull/10252), we added support for grouping blog posts by years in the blog sidebar.\\n\\n![Screenshot of the Docusaurus blog, in particular the sidebar items grouped by year](./img/blog-sidebar-years.png)\\n\\nThis feature is now turned on by default, but can be disabled with `themeConfig.blog.sidebar.groupByYear: false`.\\n\\n### Blog Consistency Options\\n\\nWe added new blog options to enforce recommended practices for your blog posts:\\n\\n#### `onInlineAuthors`\\n\\nWe believe large multi-blogs are easier to manage by using [global authors](/docs/blog#global-authors), declared in `authors.yml`. This notably permits to avoids duplicating author information across multiple blog posts, and now permits to generate [author pages](/docs/blog#authors-pages).\\n\\nIn [#10224](https://github.com/facebook/docusaurus/pull/10224), we added the `onInlineAuthors` option. Use `onInlineAuthors: \'throw\'` to forbid [inline authors](/docs/blog#inline-authors), and enforce a consistent usage of [global authors](/docs/blog#global-authors).\\n\\n#### `onUntruncatedBlogPosts`\\n\\nWe believe blog posts are better using [truncation markers](/docs/blog#blog-list) (`\x3c!-- truncate --\x3e` or `{/* truncate */}`). On paginated lists (blog home, tags pages, authors pages), this permits to render a more concise preview of the blog post instead of a full blog post.\\n\\nIn [#10375](https://github.com/facebook/docusaurus/pull/10375), we added the `onUntruncatedBlogPosts` option. Use `onUntruncatedBlogPosts: \'throw\'` to enforce a consistent usage of [truncation markers](/docs/blog#blog-list).\\n\\n## Translations\\n\\n- \uD83C\uDDEA\uD83C\uDDEA [#10339](https://github.com/facebook/docusaurus/pull/10339): Add Estonian theme translations.\\n- \uD83C\uDDEE\uD83C\uDDE9 [#10325](https://github.com/facebook/docusaurus/pull/10325): Add Indonesian theme translations.\\n- \uD83C\uDDEA\uD83C\uDDF8 [#10360](https://github.com/facebook/docusaurus/pull/10360): Improve Spanish theme translations.\\n- \uD83C\uDDE9\uD83C\uDDEA [#10235](https://github.com/facebook/docusaurus/pull/10235): Improve German theme translations.\\n- \uD83C\uDDE8\uD83C\uDDF3 [#10257](https://github.com/facebook/docusaurus/pull/10257): Improve Traditional Chinese (zh-Hant) theme translations.\\n\\n## Other changes\\n\\nOther notable changes include:\\n\\n- [#10369](https://github.com/facebook/docusaurus/pull/10369): Add support for [pkg.pr.new](https://pkg.pr.new) continuous releases so that you can test any pull-request code in a StackBlitz playground.\\n- [#10376](https://github.com/facebook/docusaurus/pull/10376): Theme unlisted/draft banners are also shown in dev so that you don\'t forget to publish your content.\\n- [#10335](https://github.com/facebook/docusaurus/pull/10335): The Markdown top-level headings `# title` are automatically wrapped in `<header>` for consistency with front matter `title: Title`.\\n- [#10286](https://github.com/facebook/docusaurus/pull/10286): Allows Docusaurus plugins to self-disable by returning `null`.\\n- [#10241](https://github.com/facebook/docusaurus/pull/10241): Add support for [MDX processor `recmaPlugins` option](https://mdxjs.com/packages/mdx/#processoroptions) to modify the MDX Estree AST.\\n- [#10324](https://github.com/facebook/docusaurus/pull/10324): The docs autogenerated `_category_.json` accepts a new `description` property that gets displayed on generated index pages.\\n- [#10368](https://github.com/facebook/docusaurus/pull/10368): The CLI command `docusaurus --version` now actually returns the Docusaurus version.\\n- [#10240](https://github.com/facebook/docusaurus/pull/10240): Markdown `mdx-code-block` now supports indentation.\\n- [#10219](https://github.com/facebook/docusaurus/pull/10219): Fix `<TabItem lazy>` support the for `className` prop.\\n- [#10313](https://github.com/facebook/docusaurus/pull/10313): Blog-related `@docusaurus/theme-common/internal` APIs have been moved to `@docusaurus/plugin-content-blog/client`.\\n- [#10316](https://github.com/facebook/docusaurus/pull/10316): Docs-related `@docusaurus/theme-common/internal` APIs have been moved to `@docusaurus/plugin-content-docs/client`.\\n\\nCheck the **[3.5.0 changelog entry](/changelog/3.5.0)** for an exhaustive list of changes."},{"id":"/releases/3.4","metadata":{"permalink":"/blog/releases/3.4","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/releases/3.4/index.mdx","source":"@site/blog/releases/3.4/index.mdx","title":"Docusaurus 3.4","description":"We are happy to announce Docusaurus 3.4.","date":"2024-05-31T00:00:00.000Z","tags":[{"inline":false,"label":"Release","permalink":"/blog/tags/release","description":"Blog posts about Docusaurus\' new releases"}],"readingTime":3.045,"hasTruncateMarker":true,"authors":[{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer, This Week In React editor","url":"https://thisweekinreact.com","page":{"permalink":"/blog/authors/slorber"},"description":"A freelance React and React-Native developer near Paris and Docusaurus maintainer. Also runs ThisWeekInReact.com, a newsletter to stay updated with the React ecosystem.","socials":{"bluesky":"https://bsky.app/profile/sebastienlorber.com","x":"https://x.com/sebastienlorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","github":"https://github.com/slorber","instagram":"https://www.instagram.com/thisweekinreact","newsletter":"https://thisweekinreact.com"},"imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"title":"Docusaurus 3.4","authors":["slorber"],"tags":["release"],"image":"./img/social-card.png","date":"2024-05-31T00:00:00.000Z"},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Docusaurus 3.5","permalink":"/blog/releases/3.5"},"nextItem":{"title":"Docusaurus 3.3","permalink":"/blog/releases/3.3"}},"content":"We are happy to announce **Docusaurus 3.4**.\\n\\nUpgrading should be easy. Our [release process](/community/release-process) respects [Semantic Versioning](https://semver.org/). Minor versions do not include any breaking changes.\\n\\n![Docusaurus blog post social card](./img/social-card.png)\\n\\n\x3c!--truncate--\x3e\\n\\n## Highlights\\n\\n### Tags files\\n\\nThe docs and blog plugins both already supported a `tags` front matter attribute, enabling you to group related content. But tags declared inline in the front matter are not always ideal.\\n\\nWith [#10137](https://github.com/facebook/docusaurus/pull/10137), you can now declare a list of pre-defined tags in a `tags.yml` file:\\n\\n```yml title=\\"blog/tags.yml\\"\\ntag1:\\n label: \'Tag 1\'\\n description: \'Tag 1 description\'\\n permalink: /tag-1-permalink\\n\\ntag2:\\n label: \'Tag 2\'\\n description: \'Tag 2 description\'\\n permalink: /tag-2-permalink\\n```\\n\\nThese predefined tags can be used in the front matter of your blog or docs files:\\n\\n```md title=\\"blog/2024-05-31-my-blog-post.md\\"\\n---\\ntags: [tag1, tag2]\\n---\\n\\n# Title\\n\\nContent\\n```\\n\\n:::tip Keeping tags usage consistent\\n\\nUse the new `onInlineTags: \'throw\'` plugin option to enforce the usage of predefined tags and prevent contributors from creating new unwanted tags.\\n\\n:::\\n\\n### Hash Router - Experimental\\n\\nWith [9859](https://github.com/facebook/docusaurus/pull/9859), we added a new **experimental** hash router config option, useful for **offline browsing** by opening your site locally through the `file://` protocol.\\n\\n```tsx title=\\"docusaurus.config.js\\"\\nexport default {\\n future: {\\n experimental_router: \'hash\',\\n },\\n};\\n```\\n\\n:::warning\\n\\nThis mode is **not recommended for sites deployed through a web server**.\\n\\n:::\\n\\nWhen this mode is turned on, Docusaurus will opt out of static site rendering, and build a client-side single page application where all routes are prefixed with `/#/`. A single `index.html` file is generated. This file can be opened locally in your browser by simply clicking it, using the browser `file://` protocol. This makes it possible to distribute a Docusaurus site as a `.zip` file so that readers can browse it offline, without having to install anything complex on their computer apart a web browser.\\n\\n![Docusaurus hash router - local browsing using the file:// protocol](./img/hash.png)\\n\\nTry browsing our own Docusaurus site built with the hash router:\\n\\n- [Docusaurus website - Hash Router web deployment](https://facebook.github.io/docusaurus/#/)\\n- [Docusaurus website - Hash Router downloadable GitHub artifacts](https://github.com/facebook/docusaurus/actions/workflows/build-hash-router.yml)\\n\\n:::caution Experimental\\n\\nThis feature is **experimental**. If you try it out, please let us know how it works for you [here](https://github.com/facebook/docusaurus/issues/3825).\\n\\n:::\\n\\n### Site Storage - Experimental\\n\\nDocusaurus uses the browser `localStorage` API to persist UI state.\\n\\nBut sometimes the storage space is \\"shared\\" between multiple sites using the same domain, leading to **storage key conflicts**. This generally happens in two cases\\n\\n- when working on multiple `http://localhost:3000` sites\\n- when hosting multiple sites under the same domain: `https://example.com/site1/` and `https://example.com/site2/`\\n\\nFor this reason, we introduced a new **experimental** `siteStorage` configuration option:\\n\\n```tsx\\nexport default {\\n future: {\\n experimental_storage: {\\n type: \'localStorage\',\\n namespace: true,\\n },\\n },\\n};\\n```\\n\\nWhen `namespace: true` is set, we apply a hash suffix to all the storage keys, making them unique to the current site (based on `config.url` and `config.baseUrl`. For example, the `theme` storage key becomes `theme-x6f`. It is also possible to provide your own custom suffix `namespace: \'suffix\'`. We also made it possible to use `type: \'sessionStorage\'` instead of the default `localStorage`.\\n\\n:::caution Experimental\\n\\nThis feature is **experimental**. If you try it out, please let us know how it works for you [here](https://github.com/facebook/docusaurus/pull/10121).\\n\\n:::\\n\\n## Other changes\\n\\nOther notable changes include:\\n\\n- [#10151](https://github.com/facebook/docusaurus/pull/10151): add Turkmen (tk) theme translations\\n- [#10111](https://github.com/facebook/docusaurus/pull/10111): add Bulgarian (bg) theme translations\\n- [#10168](https://github.com/facebook/docusaurus/pull/10168): fix many long overdue Markdown link resolution bugs\\n- [#10178](https://github.com/facebook/docusaurus/pull/10178): the `/search` page now respects the `contextualSearch: false` setting\\n- [#10118](https://github.com/facebook/docusaurus/pull/10118): fix bad pluralization on docs generated index category card description\\n- [#10130](https://github.com/facebook/docusaurus/pull/10130): fix false positives reported by the broken anchor checker due to trailing slashes\\n\\nCheck the **[3.4.0 changelog entry](/changelog/3.4.0)** for an exhaustive list of changes."},{"id":"/releases/3.3","metadata":{"permalink":"/blog/releases/3.3","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/releases/3.3/index.mdx","source":"@site/blog/releases/3.3/index.mdx","title":"Docusaurus 3.3","description":"We are happy to announce Docusaurus 3.3.","date":"2024-05-03T00:00:00.000Z","tags":[{"inline":false,"label":"Release","permalink":"/blog/tags/release","description":"Blog posts about Docusaurus\' new releases"}],"readingTime":2.56,"hasTruncateMarker":true,"authors":[{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer, This Week In React editor","url":"https://thisweekinreact.com","page":{"permalink":"/blog/authors/slorber"},"description":"A freelance React and React-Native developer near Paris and Docusaurus maintainer. Also runs ThisWeekInReact.com, a newsletter to stay updated with the React ecosystem.","socials":{"bluesky":"https://bsky.app/profile/sebastienlorber.com","x":"https://x.com/sebastienlorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","github":"https://github.com/slorber","instagram":"https://www.instagram.com/thisweekinreact","newsletter":"https://thisweekinreact.com"},"imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"title":"Docusaurus 3.3","authors":["slorber"],"tags":["release"],"image":"./img/social-card.png","date":"2024-05-03T00:00:00.000Z"},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Docusaurus 3.4","permalink":"/blog/releases/3.4"},"nextItem":{"title":"Docusaurus 3.2","permalink":"/blog/releases/3.2"}},"content":"We are happy to announce **Docusaurus 3.3**.\\n\\nUpgrading should be easy. Our [release process](/community/release-process) respects [Semantic Versioning](https://semver.org/). Minor versions do not include any breaking changes.\\n\\n![Docusaurus blog post social card](./img/social-card.png)\\n\\n\x3c!--truncate--\x3e\\n\\nimport BrowserWindow from \'@site/src/components/BrowserWindow\';\\nimport IframeWindow from \'@site/src/components/BrowserWindow/IframeWindow\';\\n\\n## Highlights\\n\\n### Prepare for React 19\\n\\nThe React core team recently [released the first **React 19 beta**](https://react.dev/blog/2024/04/25/react-19). They also [published an upgrade guide and a **React v18.3 release**](https://react.dev/blog/2024/04/25/react-19-upgrade-guide) with new warnings to help us identify issues **before upgrading to React 19**.\\n\\nDocusaurus v3 depends on React `18.x`. When initializing a new Docusaurus sites, it will use that new React `18.3` release. It\'s also the case if you decide to upgrade your dependencies, or re-generate your package manager lockfile.\\n\\nIt turns out in its current state, **Docusaurus had a few of those extra warnings to fix**, notably this one immediately appearing on your dev console on any page load and navigation:\\n\\n> Warning: LoadableComponent uses the legacy contextTypes API which is no longer supported and will be removed in the next major release. Use React.createContext() with static contextType instead.\\n\\nIn [#10079](https://github.com/facebook/docusaurus/pull/10079), we got Docusaurus ready for React 19. We fixed all the React 18.3 warnings we encountered. In case we missed any, don\'t hesitate to [**report new warnings**](https://github.com/facebook/docusaurus/issues/10099) if you see them, to us but also to other Docusaurus third-party plugin authors.\\n\\n### `createSitemapItems`\\n\\nIn [#10083](https://github.com/facebook/docusaurus/pull/10083), we introduced a new flexible `createSitemapItems()` hook to the sitemap plugin. This enables users to create/filter/transform/enhance the sitemap items with their own custom logic.\\n\\n```ts\\nexport default {\\n presets: [\\n [\\n \'@docusaurus/preset-classic\',\\n {\\n sitemap: {\\n // highlight-start\\n createSitemapItems: async ({\\n defaultCreateSitemapItems,\\n ...params\\n }) => {\\n const items = await defaultCreateSitemapItems(params);\\n return items.filter((item) => !item.url.includes(\'/tags/\'));\\n },\\n // highlight-end\\n },\\n },\\n ],\\n ],\\n};\\n```\\n\\n### Pages plugin improvements\\n\\nThe Docusaurus [pages plugin](/docs/api/plugins/@docusaurus/plugin-content-pages) has historically been lagging behind the docs and blog plugins in terms of available feature.\\n\\nIn [#10032](https://github.com/facebook/docusaurus/pull/10032) we normalized the options available on each core content plugins by adding a few the missing page plugins APIs related to the edit url and the last update metadata displayed at the bottom on Markdown pages.\\n\\n```js\\nexport default {\\n presets: [\\n [\\n \'@docusaurus/preset-classic\',\\n {\\n pages: {\\n // highlight-start\\n editUrl:\\n \'https://github.com/facebook/docusaurus/tree/main/website/src/pages\',\\n editLocalizedFiles: true,\\n showLastUpdateAuthor: true,\\n showLastUpdateTime: true,\\n // highlight-end\\n },\\n },\\n ],\\n ],\\n};\\n```\\n\\n<IframeWindow url=\\"/examples/markdownPageExample\\" />\\n\\n:::note Only for Markdown pages\\n\\nThese new plugin options only apply to Markdown pages, and have no effect on React pages for which you have full control over the layout with JSX.\\n\\n:::\\n\\n## Other changes\\n\\nOther notable changes include:\\n\\n- [#10064](https://github.com/facebook/docusaurus/pull/10064): new site config option `siteConfig.markdown.anchors.maintainCase`\\n- [#9767](https://github.com/facebook/docusaurus/pull/9767): new `docusaurus deploy --target-dir` option\\n- [#10042](https://github.com/facebook/docusaurus/pull/10042): new (experimental) plugin API: `route.props`\\n- [#10060](https://github.com/facebook/docusaurus/pull/10060): optimizes the App entrypoint, avoid useless re-renders on navigations\\n- [#10080](https://github.com/facebook/docusaurus/pull/10080): `<Admonition>` component can render properly without heading/icon\\n- [#10091](https://github.com/facebook/docusaurus/pull/10091): `<Tabs>` props can now override defaults\\n- [#10090](https://github.com/facebook/docusaurus/pull/10090): `docusaurus serve` works better with a `/baseUrl/` pathname prefix\\n- [#10070](https://github.com/facebook/docusaurus/pull/10070): add missing theme translations for `pt-BR`\\n- [#10025](https://github.com/facebook/docusaurus/pull/10025): doc sidebar item label now impacts the doc pagination label\\n\\nCheck the **[3.3.0 changelog entry](/changelog/3.3.0)** for an exhaustive list of changes."},{"id":"/releases/3.2","metadata":{"permalink":"/blog/releases/3.2","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/releases/3.2/index.mdx","source":"@site/blog/releases/3.2/index.mdx","title":"Docusaurus 3.2","description":"We are happy to announce Docusaurus 3.2.","date":"2024-03-29T00:00:00.000Z","tags":[{"inline":false,"label":"Release","permalink":"/blog/tags/release","description":"Blog posts about Docusaurus\' new releases"}],"readingTime":3.475,"hasTruncateMarker":true,"authors":[{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer, This Week In React editor","url":"https://thisweekinreact.com","page":{"permalink":"/blog/authors/slorber"},"description":"A freelance React and React-Native developer near Paris and Docusaurus maintainer. Also runs ThisWeekInReact.com, a newsletter to stay updated with the React ecosystem.","socials":{"bluesky":"https://bsky.app/profile/sebastienlorber.com","x":"https://x.com/sebastienlorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","github":"https://github.com/slorber","instagram":"https://www.instagram.com/thisweekinreact","newsletter":"https://thisweekinreact.com"},"imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"title":"Docusaurus 3.2","authors":["slorber"],"tags":["release"],"image":"./img/social-card.png","date":"2024-03-29T00:00:00.000Z"},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Docusaurus 3.3","permalink":"/blog/releases/3.3"},"nextItem":{"title":"Docusaurus 3.1","permalink":"/blog/releases/3.1"}},"content":"We are happy to announce **Docusaurus 3.2**.\\n\\nThe upgrade should be easy: as explained in our [release process documentation](/community/release-process), minor versions respect [Semantic Versioning](https://semver.org/).\\n\\n![Docusaurus blog post social card](./img/social-card.png)\\n\\n\x3c!--truncate--\x3e\\n\\nimport BrowserWindow from \'@site/src/components/BrowserWindow\';\\nimport IframeWindow from \'@site/src/components/BrowserWindow/IframeWindow\';\\nimport ErrorBoundaryTestButton from \'@site/src/components/ErrorBoundaryTestButton\';\\n\\n## Highlights\\n\\n### Faster builds\\n\\nWe worked hard to reduce the time it takes to build a Docusaurus site in production mode.\\n\\nBetween v3.1.0 and v3.2.0, several changes have been made, leading to significantly faster production builds for many sites.\\n\\nLet\'s take an example. Our benchmark on the [React Native website upgrading to v3.2](https://github.com/facebook/react-native-website/pull/4072) reports the following results:\\n\\n- \uD83D\uDD25 Cold builds: 95s \u27A1\uFE0F 66s (~30% faster)\\n- \uD83D\uDD25 Incremental builds: 55s \u27A1\uFE0F 22s (~60% faster)\\n\\nThe results will vary depending on your site\'s topology and the options you turned on, but we expect the largest sites will see the most significant improvements.\\n\\nNote that this is only the beginning, and Docusaurus performance can still be significantly improved, notably the bundling time and the memory consumption. Track our [performance issue](https://github.com/facebook/docusaurus/issues/4765) for upcoming improvements.\\n\\n<details>\\n <summary>What is the difference between a cold build and an incremental build?</summary>\\n\\nA cold build is when the Docusaurus caches are empty, generally after running `docusaurus clear`.\\n\\nAn incremental build happens when you run another time the `docusaurus build` command. Docusaurus automatically tries to \\"re-use\\" computations from former builds to make subsequent builds faster. In practice it\'s based on [Webpack persistent caching](https://webpack.js.org/guides/build-performance/#persistent-cache). To enable incremental builds on your CI server, you can persist the `node_modules/.cache` folder across builds.\\n\\n</details>\\n\\n### Faster Dev Server\\n\\nWe also worked on improving the performance of the dev server, so that you can get a faster feedback when editing Markdown/MDX files.\\n\\nThe way we initially implemented content reloading wasn\'t great. For example, editing a blog post file would also trigger a useless reload of the unrelated docs plugin. From now on, when editing a plugin\'s content, only that plugin will reload. It\'s hard to measure precisely the impact of this change, but I estimate edits should appear in your browser at least 50% faster \uD83D\uDD25.\\n\\nWe plan to keep improving the speed of our dev server, with even more granular hot reloads, ensuring we don\'t run useless computations that would always keep giving the same result.\\n\\n### MDX partials table-of-contents\\n\\nWith [#9684](https://github.com/facebook/docusaurus/pull/9684), Docusaurus is now able to render headings coming from an imported partial into the table-of-contents.\\n\\nDocusaurus and MDX allows you to [import one Markdown file into another](/docs/markdown-features/react#importing-markdown). We usually call the imported Markdown file a \\"partial\\", and use the `_` prefix so that this file does not lead to the creation of a new page.\\n\\n```md title=\\"myDoc.mdx\\"\\n# My Doc\\n\\n## Doc heading\\n\\nContent is imported from another MDX file:\\n\\nimport ImportedDoc from \'./\\\\_importedDoc.mdx\';\\n\\n<ImportedDoc />\\n```\\n\\n```md title=\\"_myPartial.mdx\\"\\n## Partial heading\\n\\nSome paragraph\\n```\\n\\nPreviously, the heading `Partial heading` did not appear in the table-of-contents, but now it will!\\n\\n### Blog improvements\\n\\nWe improved the blog plugin with several new options to make it even more powerful and flexible:\\n\\n- [#9912](https://github.com/facebook/docusaurus/pull/9912): you can now display the last update time and author of a blog post, a feature the docs plugin already had.\\n- [#9886](https://github.com/facebook/docusaurus/pull/9886): a new `processBlogPosts` option allow you to filter/transform/sort blog posts.\\n- [#9838](https://github.com/facebook/docusaurus/pull/9838): a new `pageBasePath` option allows you to customize the blog pagination URL segment (`/blog/page/2`)\\n\\n### Sitemap lastmod\\n\\nWith [#9954](https://github.com/facebook/docusaurus/pull/9954), the sitemap plugin has a new `lastmod` option that can now emit a `<lastmod>` tag on the XML. The value is read from the Git history by default, but can be overridden with docs and blog `last_update` front matter.\\n\\nWe also made it possible to opt-out of emitting `<priority>` and `<frequency>` tags, which are generally ignored by crawlers (notably [Google](https://developers.google.com/search/blog/2023/06/sitemaps-lastmod-ping)).\\n\\nWe recommend using the following sitemap plugin config, that will become the default in Docusaurus V4:\\n\\n```js\\n{\\n lastmod: \'date\',\\n priority: null,\\n changefreq: null,\\n}\\n```\\n\\n## Other changes\\n\\n- [#9687](https://github.com/facebook/docusaurus/pull/9687): new Vercel Analytics plugin\\n- [#9681](https://github.com/facebook/docusaurus/pull/9681) and [#9442](https://github.com/facebook/docusaurus/pull/9442): `docusaurus swizzle` and `create-docusaurus` CLIs now ask users if they prefer to use TypeScript\\n- [#9928](https://github.com/facebook/docusaurus/pull/9928): new Icelandic translation\\n- [#9928](https://github.com/facebook/docusaurus/pull/9931): new `allContentLoaded` plugin lifecycle (experimental)\\n\\nCheck the **[3.2.0 changelog entry](/changelog/3.2.0)** for an exhaustive list of changes."},{"id":"/releases/3.1","metadata":{"permalink":"/blog/releases/3.1","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/releases/3.1/index.mdx","source":"@site/blog/releases/3.1/index.mdx","title":"Docusaurus 3.1","description":"We are happy to announce Docusaurus 3.1.","date":"2024-01-05T00:00:00.000Z","tags":[{"inline":false,"label":"Release","permalink":"/blog/tags/release","description":"Blog posts about Docusaurus\' new releases"}],"readingTime":1.665,"hasTruncateMarker":true,"authors":[{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer, This Week In React editor","url":"https://thisweekinreact.com","page":{"permalink":"/blog/authors/slorber"},"description":"A freelance React and React-Native developer near Paris and Docusaurus maintainer. Also runs ThisWeekInReact.com, a newsletter to stay updated with the React ecosystem.","socials":{"bluesky":"https://bsky.app/profile/sebastienlorber.com","x":"https://x.com/sebastienlorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","github":"https://github.com/slorber","instagram":"https://www.instagram.com/thisweekinreact","newsletter":"https://thisweekinreact.com"},"imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"title":"Docusaurus 3.1","authors":["slorber"],"tags":["release"],"image":"./img/social-card.png","date":"2024-01-05T00:00:00.000Z"},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Docusaurus 3.2","permalink":"/blog/releases/3.2"},"nextItem":{"title":"Announcing Docusaurus 3.0","permalink":"/blog/releases/3.0"}},"content":"We are happy to announce **Docusaurus 3.1**.\\n\\nThe upgrade should be easy: as explained in our [release process documentation](/community/release-process), minor versions respect [Semantic Versioning](https://semver.org/).\\n\\n![Docusaurus blog post social card](./img/social-card.png)\\n\\n\x3c!--truncate--\x3e\\n\\nimport BrowserWindow from \'@site/src/components/BrowserWindow\';\\nimport IframeWindow from \'@site/src/components/BrowserWindow/IframeWindow\';\\nimport ErrorBoundaryTestButton from \'@site/src/components/ErrorBoundaryTestButton\';\\n\\n## Highlights\\n\\n### Broken anchors checker\\n\\nIn [#9528](https://github.com/facebook/docusaurus/pull/9528), we improved the built-in broken links checker to also detect broken anchors.\\n\\n![Docusaurus blog post social card](./img/broken-anchor.jpg)\\n\\n:::tip[Make it fail fast]\\n\\nThe new [`onBrokenAnchors`](/docs/api/docusaurus-config#onBrokenAnchors) option has value `warn` by default, for retro-compatibility reasons.\\n\\nWe recommend to turn it to `throw` and fail your CI builds instead of deploying broken anchors to productions.\\n\\n:::\\n\\n:::note\\n\\nFor users and plugin authors implementing custom `<Heading>` and `<Link>` components, we provide a new [`useBrokenLinks`](/docs/docusaurus-core#useBrokenLinks) React hook API.\\n\\n**Most Docusaurus users don\'t need to care about it**, built-in components (`docusaurus/Link` and `@theme/Heading`) already use it internally.\\n\\n:::\\n\\n### `parseFrontMatter` hook\\n\\nIn [#9624](https://github.com/facebook/docusaurus/pull/9624), we added a new [`siteConfig.markdown.parseFrontMatter` function hook](/docs/api/docusaurus-config#markdown).\\n\\nThis makes it possible to implement convenient front matter transformations, shortcuts, or to integrate with external systems using front matter that Docusaurus plugins do not support.\\n\\n```js title=\\"docusaurus.config.js\\"\\nexport default {\\n markdown: {\\n // highlight-start\\n parseFrontMatter: async (params) => {\\n // Reuse the default parser\\n const result = await params.defaultParseFrontMatter(params);\\n\\n // Process front matter description placeholders\\n result.frontMatter.description =\\n result.frontMatter.description?.replaceAll(\'{{MY_VAR}}\', \'MY_VALUE\');\\n\\n // Create your own front matter shortcut\\n if (result.frontMatter.i_do_not_want_docs_pagination) {\\n result.frontMatter.pagination_prev = null;\\n result.frontMatter.pagination_next = null;\\n }\\n\\n // Rename an unsupported front matter coming from another system\\n if (result.frontMatter.cms_seo_summary) {\\n result.frontMatter.description = result.frontMatter.cms_seo_summary;\\n delete result.frontMatter.cms_seo_summary;\\n }\\n\\n return result;\\n },\\n // highlight-end\\n },\\n};\\n```\\n\\nRead the [front matter guide](/docs/markdown-features#front-matter) and the [`parseFrontMatter` API ref](/docs/api/docusaurus-config#markdown) for details.\\n\\n## Other changes\\n\\nOther notable changes include:\\n\\n- [#9674](https://github.com/facebook/docusaurus/pull/9674): add `siteConfig.markdown.remarkRehypeOptions` to pass options to `remark-rehype`, letting you customize things such as MDX footnote label\\n- [#9671](https://github.com/facebook/docusaurus/pull/9671): add code block MagicComments support for (Visual) Basic/Batch/Fortran/COBOL/ML\\n- [#9610](https://github.com/facebook/docusaurus/pull/9610): enable CLI port configuration via `PORT` environment variable\\n- [#9477](https://github.com/facebook/docusaurus/pull/9477): complete Brazilian Portuguese (pt-BR) translations\\n\\nCheck the **[3.1.0 changelog entry](/changelog/3.1.0)** for an exhaustive list of changes."},{"id":"/releases/3.0","metadata":{"permalink":"/blog/releases/3.0","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/releases/3.0/index.mdx","source":"@site/blog/releases/3.0/index.mdx","title":"Announcing Docusaurus 3.0","description":"Today, we are happy to announce Docusaurus 3.0! \uD83E\uDD73","date":"2023-10-31T00:00:00.000Z","tags":[{"inline":false,"label":"Release","permalink":"/blog/tags/release","description":"Blog posts about Docusaurus\' new releases"}],"readingTime":10.515,"hasTruncateMarker":true,"authors":[{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer, This Week In React editor","url":"https://thisweekinreact.com","page":{"permalink":"/blog/authors/slorber"},"description":"A freelance React and React-Native developer near Paris and Docusaurus maintainer. Also runs ThisWeekInReact.com, a newsletter to stay updated with the React ecosystem.","socials":{"bluesky":"https://bsky.app/profile/sebastienlorber.com","x":"https://x.com/sebastienlorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","github":"https://github.com/slorber","instagram":"https://www.instagram.com/thisweekinreact","newsletter":"https://thisweekinreact.com"},"imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"title":"Announcing Docusaurus 3.0","authors":["slorber"],"tags":["release"],"image":"./img/social-card.png","date":"2023-10-31T00:00:00.000Z"},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Docusaurus 3.1","permalink":"/blog/releases/3.1"},"nextItem":{"title":"Preparing your site for Docusaurus v3","permalink":"/blog/preparing-your-site-for-docusaurus-v3"}},"content":"Today, we are happy to **announce Docusaurus 3.0**! \uD83E\uDD73\\n\\nAt [**Meta Open Source**](https://opensource.fb.com/), we believe Docusaurus will help you build the **best documentation websites** with **minimal effort**, letting you **focus on what really matters**: writing the content.\\n\\nThis is a new **major version** of Docusaurus, coming with **new exciting features** and upgraded dependencies.\\n\\nIn line with the [**Semantic Versioning**](https://semver.org/) principles, this release includes **breaking changes** we documented thoroughly in the [**v3 upgrade guide**](/docs/migration/v3/). Breaking changes can be bothersome, but they are necessary to set the ground for a **new wave of Docusaurus features** we plan to implement.\\n\\n![v3.0 social-card image](./img/social-card.png)\\n\\n{/* truncate */}\\n\\nWe initially planned to release more frequent major versions, but Docusaurus v3 has taken longer than expected. Among the breaking changes that we accrued, **upgrading to MDX v3** is probably the main challenge to the adoption of this new version. We went the extra mile to make this upgrade as easy as possible, notably by adding [compatibility options for MDX v1](/docs/api/docusaurus-config#markdown).\\n\\nThe simplest sites will only need to upgrade a few npm dependencies. For more complex sites, we came up with a few strategies that can help you upgrade more confidently:\\n\\n- [Prepare your site](/blog/preparing-your-site-for-docusaurus-v3) ahead of time, incrementally, while staying on Docusaurus v2\\n- [Set up visual regression tests](/blog/upgrading-frontend-dependencies-with-confidence-using-visual-regression-testing) to catch unexpected visual changes happening during the upgrade\\n\\n:::info About Docusaurus v2\\n\\nAccording to our [release process](/community/release-process#stable-version), Docusaurus v2 has now entered **maintenance mode**. It will only receive support for major security issues for 3 months, until 31 January 2024. It is recommended to upgrade within that time frame to v3.\\n\\n:::\\n\\nimport IframeWindow from \'@site/src/components/BrowserWindow/IframeWindow\';\\n\\n## Breaking changes\\n\\nThis section only gives you a quick glance. All the breaking changes are thoroughly documented in the [**v3 upgrade guide**](/docs/migration/v3).\\n\\nDocusaurus v3 upgraded a few dependencies to new major versions, each coming with its own breaking changes:\\n\\n- Node.js v16 \u27A1\uFE0F v18\\n- React v17 \u27A1\uFE0F v18\\n- MDX v1 \u27A1\uFE0F v3\\n- TypeScript v4 \u27A1\uFE0F v5\\n- prism-react-renderer v1 \u27A1\uFE0F v2\\n- react-live v2 \u27A1\uFE0F v4\\n- Mermaid v9 \u27A1\uFE0F v10\\n- import-fresh v3 \u27A1\uFE0F jiti v1\\n- remark-emoji v2 \u27A1\uFE0F v4\\n\\nA typical `package.json` dependency upgrade looks like:\\n\\n```diff title=\\"package.json\\"\\n {\\n \\"dependencies\\": {\\n // upgrade to Docusaurus v3\\n- \\"@docusaurus/core\\": \\"2.4.3\\",\\n- \\"@docusaurus/preset-classic\\": \\"2.4.3\\",\\n+ \\"@docusaurus/core\\": \\"3.0.0\\",\\n+ \\"@docusaurus/preset-classic\\": \\"3.0.0\\",\\n // upgrade to MDX v3\\n- \\"@mdx-js/react\\": \\"^1.6.22\\",\\n+ \\"@mdx-js/react\\": \\"^3.0.0\\",\\n // upgrade to prism-react-renderer v2.0+\\n- \\"prism-react-renderer\\": \\"^1.3.5\\",\\n+ \\"prism-react-renderer\\": \\"^2.1.0\\",\\n // upgrade to React v18.0+\\n- \\"react\\": \\"^17.0.2\\",\\n- \\"react-dom\\": \\"^17.0.2\\"\\n+ \\"react\\": \\"^18.2.0\\",\\n+ \\"react-dom\\": \\"^18.2.0\\"\\n },\\n \\"devDependencies\\": {\\n // upgrade Docusaurus dev dependencies to v3\\n- \\"@docusaurus/module-type-aliases\\": \\"2.4.3\\",\\n- \\"@docusaurus/types\\": \\"2.4.3\\"\\n+ \\"@docusaurus/module-type-aliases\\": \\"3.0.0\\",\\n+ \\"@docusaurus/types\\": \\"3.0.0\\"\\n }\\n \\"engines\\": {\\n // require Node.js 18.0+\\n- \\"node\\": \\">=16.14\\"\\n+ \\"node\\": \\">=18.0\\"\\n }\\n }\\n```\\n\\nApart from MDX v3, most breaking changes coming with those upgraded dependencies have been handled internally for you: most of the time, you shouldn\'t have to do anything. Outside of dependencies, the only functional breaking changes coming explicitly from the Docusaurus codebase are:\\n\\n- [#9189](https://github.com/facebook/docusaurus/pull/9189): new default blog RSS feed limit of 20 entries\\n- [#9308](https://github.com/facebook/docusaurus/pull/9308): fix and re-introduce the `:::warning` admonition, deprecate `:::caution`\\n- [#9310](https://github.com/facebook/docusaurus/pull/9310): remove the legacy versioned sidebar id prefix, used for sites versioned before `v2.0.0-beta.10` (December 2021)\\n- [#7966](https://github.com/facebook/docusaurus/pull/7966): refactor docs theme components, eventually requiring to you re-swizzle them\\n\\n## Highlights\\n\\nBelow is a non-exhaustive list of new useful features coming with this new version. All the features are listed in the [**Docusaurus v3.0.0 release notes**](https://github.com/facebook/docusaurus/releases/tag/v3.0.0).\\n\\n### Markdown\\n\\nDocusaurus v3 upgraded from MDX v1 to MDX v3:\\n\\n- in [#8288](https://github.com/facebook/docusaurus/pull/8288), we upgraded to [**MDX v2**](https://mdxjs.com/blog/v2/) ([migration guide](https://mdxjs.com/migrating/v2/))\\n- in [#9451](https://github.com/facebook/docusaurus/pull/9451), we upgraded to [**MDX v3**](https://mdxjs.com/blog/v3/) ([migration guide](https://mdxjs.com/migrating/v3/))\\n\\nThis new MDX version is **much better for content writers and plugin authors**, and lays the ground for implementing new exciting Markdown features.\\n\\n:::warning MDX v3 - the main challenge\\n\\nThe transition from MDX v1 to MDX v3 is the **main challenge** to the adoption of Docusaurus v3.\\n\\nSome documents that compiled successfully under Docusaurus v2 might now **fail to compile** under Docusaurus v3, while others might **render differently**.\\n\\nMost breaking changes come from [MDX v2](https://mdxjs.com/blog/v2/), and [MDX v3](https://mdxjs.com/blog/v3/) is a relatively small release. The [MDX v2 migration guide](https://mdxjs.com/migrating/v2/) has a section on how to [update MDX files](https://mdxjs.com/migrating/v2/#update-mdx-files) that will be particularly relevant to us. Also make sure to read the [Troubleshooting MDX](https://mdxjs.com/docs/troubleshooting-mdx/) page that can help you interpret common MDX error messages.\\n\\n**Don\'t be intimidated**. Most problems are **easy to fix** and often related to `{` and `<` characters that you now need to escape. However, depending on the size of your site, you might need to edit many files and feel overwhelmed. For this reason, we provide a command [`npx docusaurus-mdx-checker`](https://github.com/slorber/docusaurus-mdx-checker) to help you get an estimate of the work to be done, and we recommend to [prepare your site in advance](/blog/preparing-your-site-for-docusaurus-v3).\\n\\nIf you created custom [MDX plugins](/docs/markdown-features/plugins) (Remark/Rehype), the AST is slightly different, and you might need to refactor them.\\n\\n:::\\n\\nThis notably enables us to add a [CommonMark mode](/docs/markdown-features#mdx-vs-commonmark) that should make it easier for existing documentations to adopt Docusaurus. It is currently opt-in and **experimental** and limited ([some Docusaurus features will not work](https://github.com/facebook/docusaurus/issues/9092)). In Docusaurus v3, all files are still interpreted as MDX, but we plan to interpret `.md` files as CommonMark in an upcoming major version, and recommend to use the `.mdx` extension for any file using JSX or ES modules.\\n\\nWe also introduced a new way to [configure Markdown globally for your site](/docs/api/docusaurus-config#markdown), and plan to add more flexible options later.\\n\\n```js title=\\"docusaurus.config.js\\"\\nexport default {\\n markdown: {\\n format: \'mdx\',\\n mermaid: true,\\n preprocessor: ({filePath, fileContent}) => {\\n return fileContent.replaceAll(\'{{MY_VAR}}\', \'MY_VALUE\');\\n },\\n mdx1Compat: {\\n comments: true,\\n admonitions: true,\\n headingIds: true,\\n },\\n },\\n};\\n```\\n\\nDocusaurus now uses the [remark-directive](https://github.com/remarkjs/remark-directive) plugin to support admonitions. This also offers you the ability to create your own Remark plugins to extend Markdown with your own [custom directives](https://talk.commonmark.org/t/generic-directives-plugins-syntax/444) such as `:textDirective`, `::leafDirective` or `:::containerDirective`.\\n\\n### ESM and TypeScript configs {#esm-ts-configs}\\n\\nIn [#9317](https://github.com/facebook/docusaurus/pull/9317), we added support for ES Modules and TypeScript config files, including site config, docs sidebars, plugins and presets.\\n\\nHere are 2 TypeScript examples, giving you a modern experience with IDE autocompletion:\\n\\n```ts title=\\"docusaurus.config.ts\\"\\nimport type {Config} from \'@docusaurus/types\';\\nimport type * as Preset from \'@docusaurus/preset-classic\';\\n\\nconst config: Config = {\\n title: \'My Site\',\\n favicon: \'img/favicon.ico\',\\n // your site config ...\\n presets: [\\n [\\n \'classic\',\\n {\\n // your preset config ...\\n } satisfies Preset.Options,\\n ],\\n ],\\n themeConfig: {\\n // your theme config ...\\n } satisfies Preset.ThemeConfig,\\n};\\n\\nexport default config;\\n```\\n\\n```ts title=\\"sidebars.ts\\"\\nimport type {SidebarsConfig} from \'@docusaurus/plugin-content-docs\';\\n\\nconst sidebars: SidebarsConfig = {\\n docs: [\'introduction\'],\\n};\\n\\nexport default sidebars;\\n```\\n\\n### Unlisted content\\n\\nDocusaurus already supported a `draft: true` front matter option in our 3 content plugins (docs, blog, pages), which allows you to remove some pages from your production builds.\\n\\nIn [#8004](https://github.com/facebook/docusaurus/pull/8004), we introduced a new `unlisted: true` front matter option, which will keep your pages available in production builds, while \\"hiding\\" them and making them impossible to discover unless you have the url. This enables convenient workflows where you can easily ask for feedback on a piece of content before the final publication.\\n\\nUnlisted content will:\\n\\n- be excluded from `sitemap.xml`\\n- be excluded from SEO results thanks to `<meta name=\\"robots\\" content=\\"noindex, nofollow\\" />`\\n- be excluded from blog RSS feeds\\n- be excluded from Algolia DocSearch results\\n- be filtered from site navbar items, docs sidebars, blog sidebar, blog archives, tags pages...\\n\\nUnlisted content will also display a banner so that you don\'t forget to turn it off once your content is ready for prime time. Here\'s an example of an [unlisted blog post](/tests/blog/unlisted-post):\\n\\n<IframeWindow url=\\"/tests/blog/unlisted-post\\" />\\n\\n### React 18\\n\\nIn [#8961](https://github.com/facebook/docusaurus/pull/8961), we upgraded to React 18. This is important, notably for the [gradual adoption of Concurrent React features](https://react.dev/blog/2022/03/29/react-v18#gradually-adopting-concurrent-features), as well as upcoming exciting features such as [build-time React Server Components](https://github.com/facebook/docusaurus/issues/9089).\\n\\nThis new version of React should be a drop-in replacement for most Docusaurus sites. It comes with breaking changes that we handled internally in the Docusaurus codebase. If your site is using a lot of custom React code, we recommend you to take a look at the official article on [How to Upgrade to React 18](https://react.dev/blog/2022/03/08/react-18-upgrade-guide), notably the new [automatic batching](https://react.dev/blog/2022/03/08/react-18-upgrade-guide#automatic-batching) behavior.\\n\\n:::danger Experimental support for React 18 features\\n\\nReact 18 comes with new features:\\n\\n- `<Suspense>`\\n- `React.lazy()`\\n- `startTransition()`\\n\\nTheir Docusaurus support is considered as **experimental**. We might have to adjust the integration in the future, leading to a different runtime behavior.\\n\\n:::\\n\\n### Automatic JSX runtime\\n\\nDocusaurus now uses the [\\"automatic\\" JSX runtime](https://legacy.reactjs.org/blog/2020/09/22/introducing-the-new-jsx-transform.html).\\n\\nIt is not needed anymore to import React in JSX files that do not use any React API.\\n\\n```diff title=\\"src/components/MyComponent.js\\"\\n- import React from \'react\';\\n\\n export default function MyComponent() {\\n return <div>Hello</div>;\\n }\\n```\\n\\n### Debug builds\\n\\nIt is now possible to build your static site in dev mode.\\n\\n```bash\\ndocusaurus build --dev\\n```\\n\\n:::tip Debug React-related problems\\n\\nDocusaurus will log more errors to the console, notably React 18 hydration errors through the new [`onRecoverableError` callback](https://react.dev/reference/react-dom/client/hydrateRoot#parameters).\\n\\nThis new build mode is particularly helpful for **troubleshooting React problems**. Docusaurus will use the development build of React, thus producing detailed and readable error messages instead of minified ones linking to the [React Error Decoder page](https://reactjs.org/docs/error-decoder.html/).\\n\\n:::\\n\\n### TypeScript\\n\\nDocusaurus v3 now requires a minimum version of TypeScript 5.0.\\n\\nWe re-internalized the base recommended TypeScript config to a new official package:\\n\\n```diff title=\\"tsconfig.json\\"\\n {\\n- \\"extends\\": \\"@tsconfig/docusaurus/tsconfig.json\\",\\n+ \\"extends\\": \\"@docusaurus/tsconfig\\",\\n \\"compilerOptions\\": {\\n \\"baseUrl\\": \\".\\"\\n }\\n }\\n```\\n\\nWe also have cleaner, normalized exports for Docusaurus core type, plugin, and preset options, which you can use within the brand-new [TypeScript config files](#esm-ts-configs):\\n\\n```ts title=\\"docusaurus.config.ts\\"\\nimport type {Config} from \'@docusaurus/types\';\\nimport type {Options, ThemeConfig} from \'@docusaurus/preset-classic\';\\nimport type {SidebarsConfig} from \'@docusaurus/plugin-content-docs\';\\n```\\n\\n### Code blocks\\n\\nIn [#9316](https://github.com/facebook/docusaurus/pull/9316), we improved on syntax highlighting thanks to the [prism-react-renderer](https://github.com/FormidableLabs/prism-react-renderer) v2 upgrade. For example, a bash param `--save` is now colored:\\n\\n```bash\\nnpm install --save some-package\\n```\\n\\nThe [interactive code editor](/docs/markdown-features/code-blocks#interactive-code-editor) also upgrades to [react-live](https://github.com/FormidableLabs/react-live) v4, coming with a new [sucrase](https://github.com/alangpierce/sucrase) compiler. It is faster, lighter, and supports modern features, notably TypeScript type annotations.\\n\\n```js live\\nfunction Hello() {\\n const name: string = \'World\';\\n return <div>Hello {name}</div>;\\n}\\n```\\n\\nIn [#8982](https://github.com/facebook/docusaurus/pull/8982) and [#8870](https://github.com/facebook/docusaurus/pull/8870), we also added [magic comments](/docs/markdown-features/code-blocks#custom-magic-comments) support for TeX-like, Haskell-like, and WebAssembly comment syntax.\\n\\n```haskell title=\\"haskell.hs\\"\\nstringLength :: String -> Int\\n-- highlight-next-line\\nstringLength [] = 0\\nstringLength (x:xs) = 1 + stringLength xs\\n```\\n\\n```matlab title=\\"matlab.m\\"\\n% highlight-start\\nfunction result = times2(n)\\n result = n * 2;\\nend\\n% highlight-end\\nx = 10;\\n% highlight-next-line\\ny = times2(x);\\n```\\n\\n### Mermaid diagrams\\n\\nIn [#9305](https://github.com/facebook/docusaurus/pull/9305), we upgraded to Mermaid v10.4 and added support for async diagram rendering. Docusaurus is now able to render new types of diagrams.\\n\\n<details>\\n <summary>Mindmap</summary>\\n\\n```mermaid\\nmindmap\\n root((mindmap))\\n Research\\n Creative techniques\\n Strategic planning\\n Argument mapping\\n Tools\\n Pen and paper\\n Mermaid\\n```\\n\\n</details>\\n\\n<details>\\n <summary>Quadrant chart</summary>\\n\\n```mermaid\\nquadrantChart\\n title Reach and engagement of campaigns\\n x-axis Low Reach --\x3e High Reach\\n y-axis Low Engagement --\x3e High Engagement\\n quadrant-1 We should expand\\n quadrant-2 Need to promote\\n quadrant-3 Re-evaluate\\n quadrant-4 May be improved\\n Campaign A: [0.3, 0.6]\\n Campaign B: [0.45, 0.23]\\n Campaign C: [0.57, 0.69]\\n Campaign D: [0.78, 0.34]\\n Campaign E: [0.40, 0.34]\\n Campaign F: [0.35, 0.78]\\n```\\n\\n</details>\\n\\n### Query-string data attributes\\n\\nIn [#9028](https://github.com/facebook/docusaurus/pull/9028), we made it possible to set custom HTML [data attributes](https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/data-*) though `docusaurus-data-x` query-string parameters. This makes it easier to embed a Docusaurus iframe on another site, and lets you customize the appearance of the embedded version with CSS.\\n\\n```css title=\\"/src/css/custom.css\\"\\nhtml[data-navbar=\'false\'] .navbar {\\n display: none;\\n}\\n\\nhtml[data-red-border] div#__docusaurus {\\n border: red solid thick;\\n}\\n```\\n\\n<IframeWindow url=\\"/docs/?docusaurus-data-navbar=false&docusaurus-data-red-border\\" />\\n\\n### Other features\\n\\nOther new features worth mentioning:\\n\\n- [#9189](https://github.com/facebook/docusaurus/pull/9189): new blog `feedOptions.limit` option\\n- [#9071](https://github.com/facebook/docusaurus/pull/9071): add normalized SEO front matter support for the pages plugin\\n- [#9171](https://github.com/facebook/docusaurus/pull/9028): the client-redirects plugin now supports fully qualified urls and query-string/hash in destination url\\n- [#9171](https://github.com/facebook/docusaurus/pull/9171): new ESLint rule [`no-html-links`](/docs/api/misc/@docusaurus/eslint-plugin/no-html-links)\\n- [#8384](https://github.com/facebook/docusaurus/pull/8384): new ESLint rule [`prefer-docusaurus-heading`](/docs/api/misc/@docusaurus/eslint-plugin/prefer-docusaurus-heading)\\n\\nRead [**Docusaurus v3.0.0 release notes**](https://github.com/facebook/docusaurus/releases/tag/v3.0.0) for an exhaustive list of changes.\\n\\n## Conclusion\\n\\nThis release comes with a few features, but more importantly **upgrades many pieces of the Docusaurus infrastructure**.\\n\\nThe **MDX upgrade** consumed a lot of our time this year, and we worked hard to make this important upgrade less difficult for all of you.\\n\\nNow that we\'ve caught up with our infrastructure, we\'ll be back **delivering useful documentation features** very soon, in upcoming minor versions.\\n\\nWe would like to thank you for using Docusaurus over the years. The documentation framework space is becoming more competitive lately, and we will do our best to ensure that Docusaurus remains a **competitive solution** that stands out for its great **flexibility**."},{"id":"/preparing-your-site-for-docusaurus-v3","metadata":{"permalink":"/blog/preparing-your-site-for-docusaurus-v3","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/2023/09-29-preparing-your-site-for-docusaurus-v3/index.mdx","source":"@site/blog/2023/09-29-preparing-your-site-for-docusaurus-v3/index.mdx","title":"Preparing your site for Docusaurus v3","description":"This blog post was written when Docusaurus v3 was in beta. There are some changes in dependency versions and upgrade steps you should be aware of if upgrading to Docusaurus v3 current stable releases. Use the upgrade guide for the most up-to-date migration steps.","date":"2023-09-29T00:00:00.000Z","tags":[{"inline":false,"label":"Maintenance","permalink":"/blog/tags/maintenance"}],"readingTime":13.975,"hasTruncateMarker":true,"authors":[{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer, This Week In React editor","url":"https://thisweekinreact.com","page":{"permalink":"/blog/authors/slorber"},"description":"A freelance React and React-Native developer near Paris and Docusaurus maintainer. Also runs ThisWeekInReact.com, a newsletter to stay updated with the React ecosystem.","socials":{"bluesky":"https://bsky.app/profile/sebastienlorber.com","x":"https://x.com/sebastienlorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","github":"https://github.com/slorber","instagram":"https://www.instagram.com/thisweekinreact","newsletter":"https://thisweekinreact.com"},"imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"title":"Preparing your site for Docusaurus v3","authors":["slorber"],"tags":["maintenance"],"slug":"/preparing-your-site-for-docusaurus-v3","image":"./img/social-card.png"},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Announcing Docusaurus 3.0","permalink":"/blog/releases/3.0"},"nextItem":{"title":"Upgrading frontend dependencies with confidence","permalink":"/blog/upgrading-frontend-dependencies-with-confidence-using-visual-regression-testing"}},"content":":::warning\\n\\nThis blog post was written when Docusaurus v3 was in beta. There are some changes in dependency versions and upgrade steps you should be aware of if upgrading to Docusaurus v3 current stable releases. Use the [upgrade guide](https://docusaurus.io/docs/next/migration/v3) for the most up-to-date migration steps.\\n\\n:::\\n\\n**Docusaurus v3** is now [**in beta**](https://github.com/facebook/docusaurus/discussions/9312) and the official release is around the corner. This is the perfect time to start **preparing your site** for this new major version.\\n\\nDocusaurus v3 comes with a few **breaking changes**, many of which can be **handled today under Docusaurus v2**. Preparing your site ahead of time can be done incrementally, and will make it easier to upgrade to v3.\\n\\nThe main breaking change is the upgrade from MDX v1 to MDX v3. Read the [**MDX v2**](https://mdxjs.com/blog/v2/) and [**MDX v3**](https://mdxjs.com/blog/v3/) release notes for details. MDX will now compile your Markdown content **more strictly** and with **subtle differences**.\\n\\nThis article will mostly focus on how to prepare your content for this new MDX version, and will also list a few other breaking changes that you can handle today.\\n\\n![Preparing your site for Docusaurus v3 - social card](./img/social-card.png)\\n\\n\x3c!--truncate--\x3e\\n\\n:::warning\\n\\nThis article mentions most Docusaurus v3 breaking changes, but is not exhaustive. Read the [v3.0.0-beta.0 release notes](https://github.com/facebook/docusaurus/discussions/9312) for an exhaustive list.\\n\\n:::\\n\\n:::tip Don\'t be afraid\\n\\nThere\'s a lot of content in this blog post, but many Docusaurus v2 sites can upgrade with very few changes.\\n\\nIf your site is relatively small, with only a few customizations, you can probably [upgrade to Docusaurus v3](#try-docusaurus-v3-today) immediately.\\n\\n:::\\n\\n## Preparatory work\\n\\nBefore preparing for the Docusaurus v3 upgrade, we recommend upgrading to the latest [Docusaurus v2 version](/versions).\\n\\nDepending on the complexity of your site, it may be a good idea to adopt the [visual regression testing workflow](/blog/upgrading-frontend-dependencies-with-confidence-using-visual-regression-testing) that we recently presented. It could help you catch unexpected visual side effects occurring during the Docusaurus v3 upgrade.\\n\\nWe also recommend using the `.mdx` extension whenever you use JSX, `import`, or `export` (i.e. MDX features) inside a Markdown file. It is semantically more correct and improves compatibility with external tools (IDEs, formatters, linters, etc.). In future versions of Docusaurus, `.md` files will be parsed as standard [CommonMark](https://commonmark.org/), which does not support these features. In Docusaurus v3, `.md` files keep being compiled as MDX files, but it will be possible to [opt-in for CommonMark](https://github.com/facebook/docusaurus/issues/3018).\\n\\n## Preparing content for MDX v3\\n\\nMDX is a major dependency of Docusaurus responsible for compiling your `.md` and `.mdx` files to React components.\\n\\nMDX v3 is much better, but also comes with changes that probably require you to refactor your content a bit. MDX v3 is stricter, and some components that compiled fine under v1 might now fail to compile under v3, most likely because of `{` and `<` characters.\\n\\nUpgrading MDX comes with all the breaking changes documented on the [MDX v2](https://mdxjs.com/blog/v2/) and [MDX v3](https://mdxjs.com/blog/v3/) release blog posts. Most breaking changes come from MDX v2. The [MDX v2 migration guide](https://mdxjs.com/migrating/v2/) has a section on how to [update MDX files](https://mdxjs.com/migrating/v2/#update-mdx-files) that will be particularly relevant to us. Also make sure to read the [Troubleshooting MDX](https://mdxjs.com/docs/troubleshooting-mdx/) page that can help you interpret common MDX error messages.\\n\\nMake sure to also read our updated [**MDX and React**](/docs/markdown-features/react) documentation page.\\n\\n:::tip Ask for help\\n\\nWe have a dedicated [MDX v3 - Upgrade Support](https://github.com/facebook/docusaurus/discussions/9053) discussion.\\n\\n:::\\n\\n### Using the MDX playground\\n\\nThe MDX playground is your new best friend. It permits to understand how your content is **compiled to React components**, and troubleshoot compilation or rendering issues in isolation.\\n\\nEach MDX version comes with its own playground:\\n\\n- [MDX playground - current version](https://mdxjs.com/playground/)\\n- [MDX playground - v1](https://mdx-git-renovate-babel-monorepo-mdx.vercel.app/playground/)\\n\\n<details>\\n <summary>Configuring the MDX playground options for Docusaurus</summary>\\n\\nTo obtain a compilation behavior similar to what Docusaurus v2 uses, please turn on these options on the [MDX playground](https://mdxjs.com/playground/):\\n\\n- Use `MDX`\\n- Use `remark-gfm`\\n- Use `remark-directive`\\n\\n![Screenshot of the MDX playground\'s options panel, with only the \\"Use `MDX`\\", \\"Use `remark-gfm`\\", and \\"Use `remark-directive`\\" options checked](./img/mdx2-playground-options.png)\\n\\n</details>\\n\\nUsing the two MDX playgrounds side-by-side, you will soon notice that some content is compiled differently or fails to compile in v3.\\n\\n:::tip Making your content future-proof\\n\\nThe goal will be to refactor your problematic content so that it **works fine with both versions of MDX**. This way, when you upgrade to Docusaurus v3, this content will already work out-of-the-box.\\n\\n:::\\n\\n### Using the MDX checker CLI\\n\\nWe provide a [docusaurus-mdx-checker](https://github.com/slorber/docusaurus-mdx-checker) CLI that permits to easily spot problematic content. Run this command today on your Docusaurus v2 site to obtain a list of files that will fail to compile under MDX v3.\\n\\n```bash\\nnpx docusaurus-mdx-checker\\n```\\n\\nFor each compilation issue, the CLI will log the file path and a line number to look at.\\n\\n![Screenshot of the terminal showing an example MDX checker CLI output, with a few error messages](./img/mdx-checker-output.png)\\n\\n:::tip\\n\\nUse this CLI to estimate of how much work will be required to make your content compatible with MDX v3.\\n\\n:::\\n\\n:::warning\\n\\nThis CLI is a best effort, and will only report compilation errors.\\n\\nIt will not report subtle compilation changes that do not produce errors but can affect how your content is displayed. To catch these problems, we recommend using [visual regression tests](/blog/upgrading-frontend-dependencies-with-confidence-using-visual-regression-testing).\\n\\n:::\\n\\n### Common MDX problems\\n\\nWe upgraded a few Docusaurus sites to Docusaurus v3 and MDX v3:\\n\\n- [Docusaurus PR](https://github.com/facebook/docusaurus/pull/8288)\\n- [React-Native PR](https://github.com/facebook/react-native-website/pull/3780)\\n- [Jest PR](https://github.com/jestjs/jest/pull/14463)\\n\\nThese upgrades permitted us to aggregate the most common content problems, and document how to best handle them.\\n\\n#### Bad usage of `{`\\n\\nThe `{` character is used for opening [JavaScript expressions](https://mdxjs.com/docs/what-is-mdx/#expressions). MDX will now fail if what you put inside `{expression}` is not a valid expression.\\n\\n```md title=\\"example.md\\"\\nThe object shape looks like {username: string, age: number}\\n```\\n\\n:::danger Error message\\n\\n> Could not parse expression with acorn: Unexpected content after expression\\n\\n:::\\n\\n:::tip How to prepare\\n\\nAvailable options to fix this error:\\n\\n- Use inline code: `{username: string, age: number}`\\n- Use the HTML code: `&#123;`\\n- Escape it: `\\\\{`\\n\\n:::\\n\\n#### Bad usage of `<`\\n\\nThe `<` character is used for opening [JSX tags](https://mdxjs.com/docs/what-is-mdx/#jsx). MDX will now fail if it thinks your JSX is invalid.\\n\\n```md title=\\"example.md\\"\\nUse Android version <5\\n\\nYou can use a generic type like Array<T>\\n\\nFollow the template \\"Road to <YOUR_MINOR_VERSION>\\"\\n```\\n\\n:::danger Error messages\\n\\n> Unexpected character `5` (U+0035) before name, expected a character that can start a name, such as a letter, `$`, or `_`\\n\\n> Expected a closing tag for `<T>` (1:6-1:9) before the end of `paragraph` end-tag-mismatch mdast-util-mdx-jsx\\n\\n> Expected a closing tag for `<YOUR_MINOR_VERSION>` (134:19-134:39) before the end of `paragraph`\\n\\n:::\\n\\n:::tip How to prepare\\n\\nAvailable options to fix this error:\\n\\n- Use inline code: `Array<T>`\\n- Use the HTML code: `&lt;` or `&#60;`\\n- Escape it: `\\\\<` (unfortunately the `\\\\` will be displayed under MDX v1)\\n\\n:::\\n\\n#### Bad usage of GFM Autolink\\n\\nDocusaurus supports [GitHub Flavored Markdown (GFM)](https://github.github.com/gfm/), but [autolink](https://github.github.com/gfm/#autolinks) using the `<link>` syntax is not supported anymore by MDX.\\n\\n```md title=\\"example.md\\"\\n<sebastien@thisweekinreact.com>\\n\\n<http://localhost:3000>\\n```\\n\\n:::danger Error messages\\n\\n> Unexpected character `@` (U+0040) in name, expected a name character such as letters, digits, `$`, or `_`; whitespace before attributes; or the end of the tag (note: to create a link in MDX, use `[text](url)`)\\n\\n> Unexpected character `/` (U+002F) before local name, expected a character that can start a name, such as a letter, `$`, or `_` (note: to create a link in MDX, use `[text](url)`)\\n\\n:::\\n\\n:::tip How to prepare\\n\\nUse regular Markdown links, or remove the `<` and `>`. MDX and GFM are able to autolink literals already.\\n\\n{/* prettier-ignore */}\\n```md title=\\"example.md\\"\\nsebastien@thisweekinreact.com\\n[sebastien@thisweekinreact.com](mailto:sebastien@thisweekinreact.com)\\n\\nhttp://localhost:3000\\n[http://localhost:3000](http://localhost:3000)\\n```\\n\\n:::\\n\\n#### Lower-case MDXComponent mapping\\n\\nFor users providing a [custom `MDXComponent`mapping](/docs/markdown-features/react#mdx-component-scope), components are now \\"sandboxed\\":\\n\\n- a `MDXComponent` mapping for `h1` only gets used for `# hi` but not for `<h1>hi</h1>`\\n- a **lower-cased** custom element name will not be substituted by its respective `MDXComponent` component anymore\\n\\n:::danger visual difference\\n\\nYour [`MDXComponent` component mapping](/docs/markdown-features/react#mdx-component-scope) might not be applied as before, and your custom components might no longer be used.\\n\\n:::\\n\\n:::tip How to prepare\\n\\nFor native Markdown elements, you can keep using **lower-case**: `p`, `h1`, `img`, `a`...\\n\\nFor any other element, **use upper-case names**.\\n\\n```diff title=\\"src/theme/MDXComponents.js\\"\\n import MDXComponents from \'@theme-original/MDXComponents\';\\n\\n export default {\\n ...MDXComponents,\\n p: (props) => <p {...props} className=\\"my-paragraph\\"/>\\n- myElement: (props) => <div {...props} className=\\"my-class\\" />,\\n+ MyElement: (props) => <div {...props} className=\\"my-class\\" />,\\n };\\n```\\n\\n:::\\n\\n#### Unintended extra paragraphs\\n\\nIn MDX, it is now possible to interleave JSX and Markdown more easily without requiring extra line breaks. Writing content on multiple lines can also produce new expected `<p>` tags.\\n\\n:::danger visual difference\\n\\nSee how this content is rendered differently by MDX v1 and v3.\\n\\n```md title=\\"example.md\\"\\n<div>Some **Markdown** content</div>\\n<div>\\n Some **Markdown** content\\n</div>\\n```\\n\\n{/* prettier-ignore */}\\n```html title=\\"MDX v1 output\\"\\n<div>Some **Markdown** content</div>\\n<div>Some **Markdown** content</div>\\n```\\n\\n{/* prettier-ignore */}\\n```html title=\\"MDX v3 output\\"\\n<div>Some <strong>Markdown</strong> content</div>\\n<div><p>Some <strong>Markdown</strong> content</p></div>\\n```\\n\\n:::\\n\\n:::tip How to prepare\\n\\nIf you don\'t want an extra `<p>` tag, refactor content on a case by case basis to use a single-line JSX tag.\\n\\n```diff\\n <figure>\\n <img src=\\"/img/myImage.png\\" alt=\\"My alt\\" />\\n- <figcaption>\\n- My image caption\\n- </figcaption>\\n+ <figcaption>My image caption</figcaption>\\n </figure>\\n```\\n\\nIf your content contains \\"Markdown inlines\\" (`**`, `*`, `_`, `[link](/path)`), you might not be able to refactor it ahead of time, and will have to do it alongside the Docusaurus v3 upgrade.\\n\\n:::\\n\\n#### Unintended usage of directives\\n\\nDocusaurus v3 now uses [Markdown Directives](https://talk.commonmark.org/t/generic-directives-plugins-syntax/444) (implemented with [remark-directive](https://github.com/remarkjs/remark-directive)) as a generic way to provide support for admonitions, and other upcoming Docusaurus features.\\n\\n```md title=\\"example.md\\"\\nThis is a :textDirective\\n\\n::leafDirective\\n\\n:::containerDirective\\n\\nContainer directive content\\n\\n:::\\n```\\n\\n:::danger Visual change\\n\\nDirectives are parsed with the purpose of being handled by other Remark plugins. Unhandled directives will be ignored, and won\'t be rendered back in their original form.\\n\\n```md title=\\"example.md\\"\\nThe AWS re:Invent conf is great\\n```\\n\\nDue to `:Invent` being parsed as a text directive, this will now be rendered as:\\n\\n```\\nThe AWS re\\nconf is great\\n```\\n\\n:::\\n\\n:::tip How to prepare\\n\\n- Use the HTML code: `&#58;`\\n- Add a space after `:` (if it makes sense): `: text`\\n- Escape it: `\\\\:` (unfortunately the `\\\\` will be displayed under MDX v1)\\n\\n:::\\n\\n#### Unsupported indented code blocks\\n\\nMDX does not transform indented text as code blocks anymore.\\n\\n```md title=\\"example.md\\"\\n console.log(\\"hello\\");\\n```\\n\\n:::danger Visual change\\n\\nThe upgrade does not generally produce new MDX compilation errors, but can lead to content being rendered in an unexpected way because there isn\'t a code block anymore.\\n\\n:::\\n\\n:::tip How to prepare\\n\\nUse the regular code block syntax instead of indentation:\\n\\n````md title=\\"example.md\\"\\n```js\\nconsole.log(\'hello\');\\n```\\n````\\n\\n:::\\n\\n### MDX plugins\\n\\nAll the official packages (Unified, Remark, Rehype...) in the MDX ecosystem are now [**ES Modules only**](https://gist.github.com/sindresorhus/a39789f98801d908bbc7ff3ecc99d99c) and do not support [CommonJS](https://nodejs.org/api/modules.html#modules-commonjs-modules) anymore.\\n\\nIn practice this means that you can\'t do `require(\\"remark-plugin\\")` anymore.\\n\\n:::tip How to prepare\\n\\nDocusaurus v3 now supports [**ES Modules**](https://flaviocopes.com/es-modules/) configuration files. We recommend that you migrate your config file to ES module, that enables you to import the Remark plugins easily:\\n\\n```js title=\\"docusaurus.config.js\\"\\nimport remarkPlugin from \'remark-plugin\';\\n\\nexport default {\\n title: \'Docusaurus\',\\n /* site config using remark plugins here */\\n};\\n```\\n\\nIf you want to keep using CommonJS modules, you can use dynamic imports as a workaround that enables you to import ES modules inside a CommonJS module. Fortunately, the [Docusaurus config supports the usage of an async function](/docs/configuration#syntax-to-declare-docusaurus-config) to let you do so.\\n\\n```js title=\\"docusaurus.config.js\\"\\nmodule.exports = async function () {\\n const myPlugin = (await import(\'remark-plugin\')).default;\\n return {\\n // site config...\\n };\\n};\\n```\\n\\n:::\\n\\n:::info For plugin authors\\n\\nIf you created custom Remark or Rehype plugins, you may need to refactor those, or eventually rewrite them completely, due to how the new AST is structured. We have created a [dedicated support discussion](https://github.com/facebook/docusaurus/discussions/9337) to help plugin authors upgrade their code.\\n\\n:::\\n\\n## Other breaking changes\\n\\nApart from MDX, there are other breaking changes that you can already prepare your site for, notably major version upgrades of important dependencies.\\n\\n### Node.js 18.0\\n\\nNode.js 16 [reached End-of-Life](https://nodejs.org/en/blog/announcements/nodejs16-eol), and Docusaurus v3 now requires **Node.js >= 18.0**.\\n\\n:::tip How to prepare\\n\\nUpgrade your Docusaurus v2 site to Node.js 18 before upgrading to Docusaurus v3.\\n\\n:::\\n\\n### React 18.0\\n\\nDocusaurus v3 now requires **React >= 18.0**.\\n\\nReact 18 comes with its own breaking changes that should be relatively easy to handle, depending on the amount of custom React code you created for your site.\\n\\nSimple Docusaurus sites that only use our official theme code without swizzling do not have anything to do.\\n\\n:::tip How to prepare\\n\\nRead the official [React v18.0](https://react.dev/blog/2022/03/29/react-v18) and [How to Upgrade to React 18](https://react.dev/blog/2022/03/08/react-18-upgrade-guide), and look at your first-party React code to figure out which components might be affected this React 18 upgrade.\\n\\nWe recommend to particularly look for:\\n\\n- Automatic batching for stateful components\\n- New React hydration errors reported to the console\\n\\n:::\\n\\n### TypeScript 5.0\\n\\nDocusaurus v3 now requires **TypeScript >= 5.0**.\\n\\n:::tip How to prepare\\n\\nUpgrade your Docusaurus v2 site to TypeScript 5 before upgrading to Docusaurus v3.\\n\\n:::\\n\\n### TypeScript base config\\n\\nThe official Docusaurus TypeScript config has been re-internalized from the external package [`@tsconfig/docusaurus`](https://www.npmjs.com/package/@tsconfig/docusaurus) to our new monorepo package [`@docusaurus/tsconfig`](https://www.npmjs.com/package/@docusaurus/tsconfig).\\n\\nThis new package is versioned alongside all the other Docusaurus core packages, and will be used to ensure TypeScript retro-compatibility and breaking changes on major version upgrades.\\n\\n:::tip How to prepare\\n\\nThe new Docusaurus v3 TypeScript config is sensibly the same as the former Docusaurus v2 TypeScript config. If you upgraded to TypeScript 5, using the Docusaurus v3 config on a v2 site is already possible:\\n\\n```diff title=\\"package.json\\"\\n {\\n \\"devDependencies\\": {\\n- \\"@tsconfig/docusaurus\\": \\"^1.0.7\\",\\n+ \\"@docusaurus/tsconfig\\": \\"^3.0.0-beta.0\\",\\n }\\n }\\n```\\n\\n```diff title=\\"tsconfig.json\\"\\n {\\n- \\"extends\\": \\"@tsconfig/docusaurus/tsconfig.json\\",\\n+ \\"extends\\": \\"@docusaurus/tsconfig\\",\\n \\"compilerOptions\\": {\\n \\"baseUrl\\": \\".\\"\\n }\\n }\\n```\\n\\n:::\\n\\n### Admonition warning\\n\\nFor historical reasons, we support an undocumented admonition `:::warning` that renders with a red color.\\n\\n:::danger Warning\\n\\nThis is a Docusaurus v2 `:::warning` admonition.\\n\\n:::\\n\\nHowever, the color and icon is historically wrong. Docusaurus v3 re-introduces `:::warning` admonition officially, documents it, and fix the color and icon.\\n\\n:::warning\\n\\nThis is a Docusaurus v3 `:::warning` admonition.\\n\\n:::\\n\\n:::tip How to prepare\\n\\nIf you previously used the undocumented `:::warning` admonition, make sure to verify for each usage if yellow is now an appropriate color. If you want to keep the red color, use `:::danger` instead.\\n\\nDocusaurus v3 also [deprecated the `:::caution`](https://github.com/facebook/docusaurus/pull/9308) admonition. Please refactor `:::caution` (yellow) to either `:::warning` (yellow) or `:::danger` (red).\\n\\n:::\\n\\n### Versioned sidebars\\n\\nThis breaking change will only affect **Docusaurus v2 early adopters** who versioned their docs before `v2.0.0-beta.10` (December 2021).\\n\\nWhen creating version `v1.0.0`, the sidebar file contained a prefix `version-v1.0.0/` that [Docusaurus v3 does not support anymore](https://github.com/facebook/docusaurus/pull/9310).\\n\\n```json title=\\"versioned_sidebars/version-v1.0.0-sidebars.json\\"\\n{\\n \\"version-v1.0.0/docs\\": [\\n \\"version-v1.0.0/introduction\\",\\n \\"version-v1.0.0/prerequisites\\"\\n ]\\n}\\n```\\n\\n:::tip How to prepare\\n\\nYour Docusaurus v2 site is able to handle the 2 sidebar formats similarly.\\n\\nYou can remove the useless versioned prefix from your versioned sidebars.\\n\\n```json title=\\"versioned_sidebars/version-v1.0.0-sidebars.json\\"\\n{\\n \\"docs\\": [\\"introduction\\", \\"prerequisites\\"]\\n}\\n```\\n\\n:::\\n\\n## Try Docusaurus v3 today {#try-docusaurus-v3-today}\\n\\nDocusaurus v3 is now [in beta](https://github.com/facebook/docusaurus/discussions/9312), and already used in production by [React-Native](https://reactnative.dev), [Jest](https://jestjs.io), and [our own website](https://docusaurus.io/).\\n\\nWe think this new Docusaurus version is **robust and ready to be deployed in production**. It should be released officially soon, after receiving a positive feedback from early adopters of our community.\\n\\nWe would really appreciate it if you try upgrading and report issues on the [3.0.0-beta.0 release discussion thread](https://github.com/facebook/docusaurus/discussions/9312).\\n\\nFor most sites, the upgrade should be easy. If you prepared your site ahead of time as documented here, upgrading the following dependencies should be enough:\\n\\n```diff title=\\"package.json\\"\\n {\\n \\"dependencies\\": {\\n- \\"@docusaurus/core\\": \\"2.4.3\\",\\n- \\"@docusaurus/preset-classic\\": \\"2.4.3\\",\\n- \\"@mdx-js/react\\": \\"^1.6.22\\",\\n+ \\"@docusaurus/core\\": \\"3.0.0-beta.0\\",\\n+ \\"@docusaurus/preset-classic\\": \\"3.0.0-beta.0\\",\\n+ \\"@mdx-js/react\\": \\"^3.0.0\\",\\n \\"clsx\\": \\"^2.0.0\\",\\n \\"prism-react-renderer\\": \\"^1.3.5\\",\\n- \\"react\\": \\"^17.0.2\\",\\n- \\"react-dom\\": \\"^17.0.2\\"\\n+ \\"react\\": \\"^18.2.0\\",\\n+ \\"react-dom\\": \\"^18.2.0\\"\\n },\\n \\"devDependencies\\": {\\n- \\"@docusaurus/module-type-aliases\\": \\"2.4.3\\"\\n+ \\"@docusaurus/module-type-aliases\\": \\"3.0.0-beta.0\\"\\n }\\n }\\n```\\n\\n## Ask for help\\n\\nWe will be there to help you upgrade through the following support channels:\\n\\n- [Docusaurus v3 - Upgrade Support](https://github.com/facebook/docusaurus/discussions/9336)\\n- [Docusaurus v3 - Discord channel #migration-v2-to-v3](https://discord.com/channels/398180168688074762/1154771869094912090)\\n- [MDX v3 - Upgrade Support](https://github.com/facebook/docusaurus/discussions/9053)\\n- [MDX v3 - Remark/Rehype Plugins Support](https://github.com/facebook/docusaurus/discussions/9337)\\n- [MDX v3 - Discord channel #migration-mdx-v3](https://discord.com/channels/398180168688074762/1116724556976111616)\\n\\nAlternatively, you can look for a paid [Docusaurus Service Provider](https://github.com/facebook/docusaurus/discussions/9281) to execute this upgrade for you. If your site is open source, you can also ask our community for [free, benevolent help](https://github.com/facebook/docusaurus/discussions/9283).\\n\\n## Conclusion\\n\\nDocusaurus v3 is ready to try, and will be released soon. This article already gives you a good idea of all the major changes required to upgrade.\\n\\nThe initial 3.0 release is focusing on dependency and infrastructure upgrades that will permit us to implement new exciting features. It also comes with a few useful features that we will detail in the final release notes."},{"id":"/upgrading-frontend-dependencies-with-confidence-using-visual-regression-testing","metadata":{"permalink":"/blog/upgrading-frontend-dependencies-with-confidence-using-visual-regression-testing","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/2023/09-22-upgrading-frontend-dependencies-with-confidence-using-visual-regression-testing/index.mdx","source":"@site/blog/2023/09-22-upgrading-frontend-dependencies-with-confidence-using-visual-regression-testing/index.mdx","title":"Upgrading frontend dependencies with confidence","description":"Upgrade npm dependencies with confidence thanks to a visual regression testing workflow using GitHub Actions, Playwright and Argos.","date":"2023-09-22T00:00:00.000Z","tags":[{"inline":false,"label":"Release","permalink":"/blog/tags/release","description":"Blog posts about Docusaurus\' new releases"}],"readingTime":8.355,"hasTruncateMarker":true,"authors":[{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer, This Week In React editor","url":"https://thisweekinreact.com","page":{"permalink":"/blog/authors/slorber"},"description":"A freelance React and React-Native developer near Paris and Docusaurus maintainer. Also runs ThisWeekInReact.com, a newsletter to stay updated with the React ecosystem.","socials":{"bluesky":"https://bsky.app/profile/sebastienlorber.com","x":"https://x.com/sebastienlorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","github":"https://github.com/slorber","instagram":"https://www.instagram.com/thisweekinreact","newsletter":"https://thisweekinreact.com"},"imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"authors":["slorber"],"tags":["release"],"slug":"/upgrading-frontend-dependencies-with-confidence-using-visual-regression-testing","description":"Upgrade npm dependencies with confidence thanks to a visual regression testing workflow using GitHub Actions, Playwright and Argos.","image":"./img/social-card.png"},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Preparing your site for Docusaurus v3","permalink":"/blog/preparing-your-site-for-docusaurus-v3"},"nextItem":{"title":"Docusaurus 2.4","permalink":"/blog/releases/2.4"}},"content":"Frontend developers often need to **upgrade npm dependencies**, but those upgrades can feel scary and lead to **subtle UI side effects** not caught by your regular test suite.\\n\\nUpgrading Docusaurus is a good example: without reviewing all the pages one by one, it\'s hard to be sure there\'s no visual regression. **Docusaurus v3 is around the corner** (currently in [beta](https://github.com/facebook/docusaurus/discussions/9312)), and we would like to help you do this upgrade with confidence.\\n\\nThis article introduces a **visual regression testing** workflow based on [**GitHub Actions**](https://github.com/features/actions), [**Playwright**](https://playwright.dev/), and [**Argos**](https://argos-ci.com/). It is not directly coupled to Docusaurus or React, and can be adapted to work with other frontend applications and frameworks.\\n\\n![Upgrading frontend dependencies with confidence - social card](./img/social-card.png)\\n\\n\x3c!--truncate--\x3e\\n\\nThis workflow has been tested while upgrading Docusaurus v2 to v3, and already helped catch a few visual regressions on sites such as [React Native](https://reactnative.dev/), [Jest](https://jestjs.io/), and the [Docusaurus](https://docusaurus.io/) site itself.\\n\\nDocusaurus v3 comes with infrastructure changes and major dependency upgrades such as [MDX v3](https://mdxjs.com/blog/v3/) and [React 18](https://react.dev/blog/2022/03/29/react-v18), which can produce unexpected side effects. It would have been difficult to notice all the visual regressions without such a workflow. That\'s why we encourage site owners to consider adopting visual regression testing, especially for highly customized sites.\\n\\n## Workflow overview\\n\\nThe general idea is pretty simple:\\n\\n- Build your site in CI with [GitHub Actions](https://github.com/features/actions)\\n- Take screenshots of all `sitemap.xml` pages with [Playwright](https://playwright.dev/)\\n- Upload them to [Argos](https://argos-ci.com/)\\n- Do this for both Git branches `main` and `pr-branch`\\n- Compare the screenshots side-by-side in [Argos](https://argos-ci.com/)\\n\\nArgos will then **report visual differences** found between `main` and `pr-branch` as a GitHub commit status and pull-request comment. This can help you detect visual regressions ahead of time in an automated way.\\n\\n![Argos GitHub commit status](./img/argos-github-status.png)\\n\\n![Argos GitHub PR comment](./img/argos-github-comment.png)\\n\\nArgos creates a report referencing all the visual differences found while comparing the 2 Git branches sites side-by-side, and provides a convenient UX to easily spot the difference.\\n\\nCheck the [Docusaurus Argos page](https://app.argos-ci.com/meta-open-source/docusaurus) to explore our own website reports.\\n\\nHere is a more concrete example of Argos [reporting a visual regression](https://app.argos-ci.com/slorber/rnw-visual-tests/builds/32/56012838) found while upgrading the React-Native website:\\n\\n[![Argos GitHub PR comment](./img/argos-react-native-regression.png)](https://app.argos-ci.com/slorber/rnw-visual-tests/builds/32/56012838)\\n\\n## Workflow implementation\\n\\nThis section will describe the implementation details of each step of the workflow.\\n\\nYou will need to [sign up to Argos](https://app.argos-ci.com/signup) and [connect Argos to your GitHub repository](https://argos-ci.com/docs/github)\\n\\n### Dependencies\\n\\nThis workflow requires the following dev dependencies, in addition to the usual Docusaurus ones:\\n\\n```bash\\nyarn add -D @argos-ci/cli @argos-ci/playwright @playwright/test cheerio\\n```\\n\\n### GitHub Action\\n\\nThe GitHub action is responsible for executing the workflow for each Git branch.\\n\\nA minimal workflow could look like:\\n\\n```yaml title=\\".github/workflows/argos.yml\\"\\nname: Argos CI Screenshots\\n\\non:\\n push:\\n branches: [main]\\n pull_request:\\n branches: [main]\\n\\njobs:\\n take-screenshots:\\n runs-on: ubuntu-latest\\n steps:\\n - name: Check out repository code\\n uses: actions/checkout@v4\\n\\n - name: Use Node.js\\n uses: actions/setup-node@v3\\n with:\\n node-version: current\\n\\n - name: Install dependencies\\n run: yarn install --frozen-lockfile\\n\\n - name: Install Playwright browsers\\n run: yarn playwright install --with-deps chromium\\n\\n - name: Build the website\\n run: yarn docusaurus build\\n\\n - name: Take screenshots with Playwright\\n run: yarn playwright test\\n\\n - name: Upload screenshots to Argos\\n run: yarn argos upload ./screenshots\\n```\\n\\n### Playwright config\\n\\nPlaywright is responsible for taking screenshots of the website previously built locally by the GitHub action.\\n\\nA minimal [Playwright config](https://playwright.dev/docs/test-configuration) could look like:\\n\\n```ts title=\\"playwright.config.ts\\"\\nimport {devices} from \'@playwright/test\';\\nimport type {PlaywrightTestConfig} from \'@playwright/test\';\\n\\nconst config: PlaywrightTestConfig = {\\n webServer: {\\n port: 3000,\\n command: \'yarn docusaurus serve\',\\n },\\n projects: [\\n {\\n name: \'chromium\',\\n use: {\\n ...devices[\'Desktop Chrome\'],\\n },\\n },\\n ],\\n};\\n\\nexport default config;\\n```\\n\\n### Playwright test\\n\\nA Playwright config is not enough: we also need to write a Playwright test file to generate the site screenshots.\\n\\n```ts title=\\"screenshot.spec.ts\\"\\nimport * as fs from \'fs\';\\nimport {test} from \'@playwright/test\';\\nimport {argosScreenshot} from \'@argos-ci/playwright\';\\nimport {extractSitemapPathnames, pathnameToArgosName} from \'./utils\';\\n\\n// Constants\\nconst siteUrl = \'http://localhost:3000\';\\nconst sitemapPath = \'./build/sitemap.xml\';\\nconst stylesheetPath = \'./screenshot.css\';\\nconst stylesheet = fs.readFileSync(stylesheetPath).toString();\\n\\n// Wait for hydration, requires Docusaurus v2.4.3+\\n// Docusaurus adds a <html data-has-hydrated=\\"true\\"> once hydrated\\n// See https://github.com/facebook/docusaurus/pull/9256\\nfunction waitForDocusaurusHydration() {\\n return document.documentElement.dataset.hasHydrated === \'true\';\\n}\\n\\nfunction screenshotPathname(pathname: string) {\\n test(`pathname ${pathname}`, async ({page}) => {\\n const url = siteUrl + pathname;\\n await page.goto(url);\\n await page.waitForFunction(waitForDocusaurusHydration);\\n await page.addStyleTag({content: stylesheet});\\n await argosScreenshot(page, pathnameToArgosName(pathname));\\n });\\n}\\n\\ntest.describe(\'Docusaurus site screenshots\', () => {\\n const pathnames = extractSitemapPathnames(sitemapPath);\\n console.log(\'Pathnames to screenshot:\', pathnames);\\n pathnames.forEach(screenshotPathname);\\n});\\n```\\n\\n<details>\\n <summary>Why do we take screenshots with Argos instead of Playwright?</summary>\\n\\nArgos has a [Playwright integration](https://argos-ci.com/docs/playwright) that wraps the original Playwright screenshot API and provides better defaults to make screenshots more deterministic.\\n\\n</details>\\n\\n<details>\\n<summary>What\'s inside <code>utils.ts</code>?</summary>\\n\\nThis module contains implementation details that we choose to hide for clarity.\\n\\n```ts\\nimport * as cheerio from \'cheerio\';\\nimport * as fs from \'fs\';\\n\\n// Extract a list of pathnames, given a fs path to a sitemap.xml file\\n// Docusaurus generates a build/sitemap.xml file for you!\\nexport function extractSitemapPathnames(sitemapPath: string): string[] {\\n const sitemap = fs.readFileSync(sitemapPath).toString();\\n const $ = cheerio.load(sitemap, {xmlMode: true});\\n const urls: string[] = [];\\n $(\'loc\').each(function handleLoc() {\\n urls.push($(this).text());\\n });\\n return urls.map((url) => new URL(url).pathname);\\n}\\n\\n// Converts a pathname to a decent screenshot name\\nexport function pathnameToArgosName(pathname: string): string {\\n return pathname.replace(/^\\\\/|\\\\/$/g, \'\') || \'index\';\\n}\\n```\\n\\n</details>\\n\\n### Stylesheet\\n\\nScreenshots are not always deterministic, and taking a screenshot of a page twice can lead to subtle variations that will be reported by Argos as **false positive** visual regressions.\\n\\nFor this reason, we recommend injecting an extra stylesheet to hide the problematic elements. You will probably need to add new CSS rules to this base stylesheet, according to flaky elements found on your own site. Read [Argos - About flaky tests docs](https://argos-ci.com/docs/about-flaky) for details.\\n\\n```css title=\\"screenshot.css\\"\\n/* Iframes can load lazily */\\niframe,\\n/* Avatars can be flaky due to using external sources: GitHub/Unavatar */\\n.avatar__photo,\\n/* Gifs load lazily and are animated */\\nimg[src$=\'.gif\'],\\n/* Algolia keyboard shortcuts appear with a little delay */\\n.DocSearch-Button-Keys > kbd,\\n/* The live playground preview can often display dates/counters */\\n[class*=\'playgroundPreview\'] {\\n visibility: hidden;\\n}\\n\\n/* Different docs last-update dates can alter layout */\\n.theme-last-updated,\\n/* Mermaid diagrams are rendered client-side and produce layout shifts */\\n.docusaurus-mermaid-container {\\n display: none;\\n}\\n```\\n\\n:::tip prevent layout shifts\\n\\nWe recommend hiding flaky UI elements affecting layout with `display: none;`.\\n\\nFor example, the docs \\"Last Updated on\\" might render on more than 1 line, eventually \\"pushing\\" the rest of your content further down, leading to Argos detecting many different pixels.\\n\\n:::\\n\\n## Example repository\\n\\nThe [slorber/docusaurus-argos-example](https://github.com/slorber/docusaurus-argos-example) repo shows a complete example of implementing this workflow on a newly initialized Docusaurus v2 site, using a Yarn monorepo.\\n\\n[![Docusaurus + Argos monorepo example screenshot](./img/docusaurus-argos-example-repo-screenshot.png)](https://github.com/slorber/docusaurus-argos-example)\\n\\nRelevant pull-requests:\\n\\n- [PR - Set up GitHub Action + Playwright + Argos](https://github.com/slorber/docusaurus-argos-example/pull/1): implements the minimal workflow described above\\n- [PR - Upgrading Docusaurus from v2 to v3](https://github.com/slorber/docusaurus-argos-example/pull/2): shows how Argos caught 3 visual regressions while upgrading\\n\\n:::tip More advanced example?\\n\\nBrowse the Docusaurus repository for a more advanced integration:\\n\\n- [GitHub Action](https://github.com/facebook/docusaurus/blob/main/.github/workflows/argos.yml)\\n- [Playwright + Argos tests](https://github.com/facebook/docusaurus/tree/main/argos)\\n\\n:::\\n\\n## Make it cheap\\n\\nThe tools we choose are implementation details of this visual regression testing workflow.\\n\\nFor Docusaurus, we choose [Argos](https://argos-ci.com/): it works well for us, and offers [free](https://argos-ci.com/pricing) and [open source](https://argos-ci.com/docs/open-source) plans. However, you are free to adopt alternative tools.\\n\\nIn case you don\'t mind storing large screenshots in Git, you can also try the free, self-hosted [Playwright Visual Comparisons](https://playwright.dev/docs/test-snapshots) and browse visual differences with `npx playwright show-report`. However, we found using a dedicated external tool is more convenient.\\n\\nExternal tools can be expensive, but generally offer free plans with an ample quota of screenshots. You can reduce your screenshot consumption by implementing a few tricks below.\\n\\n### Limit the number of pathnames\\n\\nThe base setup involves taking a screenshot of every single pathname found in `sitemap.xml`. For large sites, that can lead to a lot of screenshots.\\n\\nYou can decide to filter the pathnames to only take screenshots of the most critical pages.\\n\\nFor the Docusaurus website, do not take screenshots for versioned docs pages:\\n\\n```ts title=\\"screenshot.spec.ts\\"\\n// highlight-start\\nfunction isVersionedDocsPathname(pathname: string): boolean {\\n return pathname.match(/^\\\\/docs\\\\/((\\\\d\\\\.\\\\d\\\\.\\\\d)|(next))\\\\//);\\n}\\n// highlight-end\\n\\ntest.describe(\'Docusaurus site screenshots\', () => {\\n const pathnames = extractSitemapPathnames(sitemapPath)\\n // highlight-next-line\\n .filter(isVersionedDocsPathname);\\n\\n pathnames.forEach(screenshotPathname);\\n});\\n```\\n\\n### Limit the workflow concurrency\\n\\nImplementing [GitHub Actions concurrency groups](https://docs.github.com/en/actions/using-jobs/using-concurrency) will prevent successive commits to trigger multiple useless workflow runs. The workflow will only be executed for the last commit, and previous commits will be canceled automatically.\\n\\n```yaml title=\\".github/workflows/argos.yml\\"\\nconcurrency:\\n group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}\\n cancel-in-progress: true\\n```\\n\\n### Run your workflow conditionally\\n\\nIt\'s not worth running this workflow for every single commit and pull-request.\\n\\nFor example, if someone corrects a typo in your documentation, you probably don\'t want to take hundreds of screenshots and have Argos to point out that only the modified page has a visual difference: duh, that\'s a bit expected!\\n\\nFor the Docusaurus website, we only run the workflow for pull-request having the `Argos` label:\\n\\n```yaml title=\\".github/workflows/argos.yml\\"\\nname: Argos CI Screenshots\\n\\non:\\n push:\\n branches: [main]\\n pull_request:\\n branches: [main]\\n # highlight-start\\n types:\\n - opened\\n - synchronize\\n - reopened\\n - labeled\\n # highlight-end\\n\\njobs:\\n take-screenshots:\\n # highlight-start\\n if: ${{ github.ref_name == \'main\' || (github.event_name == \'pull_request\' && contains(github.event.pull_request.labels.*.name, \'Argos\')) }}\\n # highlight-end\\n runs-on: ubuntu-latest\\n steps:\\n # Your job steps here ...\\n```\\n\\nThere are many options to explore, such as [triggering the workflow manually](https://docs.github.com/en/actions/using-workflows/manually-running-a-workflow) or [only when files matching a specific pattern are modified](https://docs.github.com/en/actions/using-workflows/triggering-a-workflow#example-including-paths).\\n\\n## Conclusion\\n\\nI believe **visual regression testing is underused** in the frontend ecosystem.\\n\\nTaking full-page screenshots is a **low-hanging fruit** that is easy to set up and can help you **catch a new class of bugs** that your regular test suite would miss. This technique shines not only for npm package upgrades, but also for **any kind of refactoring** that shouldn\'t change the user interface.\\n\\nSo why not give it a try?\\n\\nHappy hacking!\\n\\n## See also\\n\\nUseful documentation links:\\n\\n- [Playwright - Installation](https://playwright.dev/docs/intro)\\n- [Playwright - Test config guide](https://playwright.dev/docs/test-configuration)\\n- [Playwright - Test config API](https://playwright.dev/docs/api/class-testconfig)\\n- [Argos - Installation](https://argos-ci.com/docs/installation)\\n- [Argos - Use with GitHub Actions](https://argos-ci.com/docs/github-actions)\\n- [Argos - Use with Playwright](https://argos-ci.com/docs/playwright)\\n- [Argos - About flaky tests](https://argos-ci.com/docs/about-flaky)"},{"id":"/releases/2.4","metadata":{"permalink":"/blog/releases/2.4","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/releases/2.4/index.mdx","source":"@site/blog/releases/2.4/index.mdx","title":"Docusaurus 2.4","description":"We are happy to announce Docusaurus 2.4.","date":"2023-03-23T00:00:00.000Z","tags":[{"inline":false,"label":"Release","permalink":"/blog/tags/release","description":"Blog posts about Docusaurus\' new releases"}],"readingTime":3.05,"hasTruncateMarker":true,"authors":[{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer, This Week In React editor","url":"https://thisweekinreact.com","page":{"permalink":"/blog/authors/slorber"},"description":"A freelance React and React-Native developer near Paris and Docusaurus maintainer. Also runs ThisWeekInReact.com, a newsletter to stay updated with the React ecosystem.","socials":{"bluesky":"https://bsky.app/profile/sebastienlorber.com","x":"https://x.com/sebastienlorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","github":"https://github.com/slorber","instagram":"https://www.instagram.com/thisweekinreact","newsletter":"https://thisweekinreact.com"},"imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"title":"Docusaurus 2.4","authors":["slorber"],"tags":["release"],"image":"./img/social-card.png","date":"2023-03-23T00:00:00.000Z"},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Upgrading frontend dependencies with confidence","permalink":"/blog/upgrading-frontend-dependencies-with-confidence-using-visual-regression-testing"},"nextItem":{"title":"Docusaurus 2.3","permalink":"/blog/releases/2.3"}},"content":"We are happy to announce **Docusaurus 2.4**.\\n\\nThe upgrade should be easy: as explained in our [release process documentation](/community/release-process), minor versions respect [Semantic Versioning](https://semver.org/).\\n\\n![Docusaurus blog post social card](./img/social-card.png)\\n\\n\x3c!--truncate--\x3e\\n\\nimport BrowserWindow from \'@site/src/components/BrowserWindow\';\\nimport IframeWindow from \'@site/src/components/BrowserWindow/IframeWindow\';\\nimport ErrorBoundaryTestButton from \'@site/src/components/ErrorBoundaryTestButton\';\\n\\n## Highlights\\n\\n### Sidebar item description\\n\\nIn [#8236](https://github.com/facebook/docusaurus/pull/8236), we made it possible to provide a new `description` attribute for docs sidebar items of type `link` and `category`.\\n\\n```tsx title=\\"sidebars.js\\"\\n[\\n {\\n type: \'link\',\\n label: \'Link with description\',\\n href: \'https://docusaurus.io\',\\n // highlight-next-line\\n description: \'Some link description\',\\n },\\n {\\n type: \'category\',\\n label: \'Category with description\',\\n // highlight-next-line\\n description: \'Some category description\',\\n items: [],\\n },\\n];\\n```\\n\\nThese descriptions will be used in category generated index pages.\\n\\n![Show sidebar category generated index with custom descriptions](./img/sidebar-item-description.jpg)\\n\\n### Theme Query String\\n\\nIn [#8708](https://github.com/facebook/docusaurus/pull/8708), we added the possibility to force Docusaurus to initialize itself in `light` or `dark` mode through a new `docusaurus-theme` query-string parameter.\\n\\nThis is useful to ensure a consistent theme when embedding an existing Docusaurus page into an iframe or WebView.\\n\\n<IframeWindow url=\\"/docs/?docusaurus-theme=light\\" />\\n<IframeWindow url=\\"/docs/?docusaurus-theme=dark\\" />\\n\\n### Remark plugin npm2yarn upgrade\\n\\nIn [#8690](https://github.com/facebook/docusaurus/pull/8690), we upgraded our Remark plugin [@docusaurus/remark-plugin-npm2yarn](https://github.com/facebook/docusaurus/tree/main/packages/docusaurus-remark-plugin-npm2yarn) with many conversion bug fixes, first-class support for pnpm, and the ability to register custom converters producing new tabs.\\n\\n````markdown\\nRun these commands!\\n\\n```bash npm2yarn\\nnpm install\\nnpm run build\\nnpm run myCustomScript -- --some-arg\\n```\\n````\\n\\n<BrowserWindow>\\n\\n```bash npm2yarn\\nnpm install\\nnpm run build\\nnpm run myCustomScript -- --some-arg\\n```\\n\\n</BrowserWindow>\\n\\n### gtag support for multiple tracking IDs\\n\\nIn [#8620](https://github.com/facebook/docusaurus/pull/8620) we added support for the [@docusaurus/plugin-google-gtag](/docs/api/plugins/@docusaurus/plugin-google-gtag) plugin to declare multiple tracking IDs.\\n\\n```js title=\\"docusaurus.config.js\\"\\nmodule.exports = {\\n presets: [\\n [\\n \'@docusaurus/preset-classic\',\\n {\\n gtag: {\\n trackingID: [\\n // highlight-next-line\\n \'G-<YOUR-NEW-GA4-ID>\',\\n // highlight-next-line\\n \'UA-<YOUR-OLD-UA-ID>\',\\n ],\\n },\\n },\\n ],\\n ],\\n};\\n```\\n\\n:::warning Google is sunsetting Universal Analytics\\n\\n**[Google will sunset its Universal Analytics](https://blog.google/products/marketingplatform/analytics/prepare-for-future-with-google-analytics-4/)** on **July 1, 2023**.\\n\\nDocusaurus users should migrate to Google Analytics 4. Google **does not permit to migrate your existing Universal Analytics data** to your new Google Analytics 4 property.\\n\\nTo preserve the continuity of your analytics, we temporarily recommend that you report events to 2 tracking IDs at the same time: the old one (`UA-*`) and new one (`G-*`). Refer to the **[dedicated issue](https://github.com/facebook/docusaurus/issues/7221)** for details.\\n\\n:::\\n\\n### Developer Experience\\n\\nIn [#8736](https://github.com/facebook/docusaurus/pull/8736), we improved how we render error messages and added initial support to render the full causal chain of an error (see [ES2022 Error Cause](https://h3manth.com/ES2022/#error-cause)).\\n\\n:::tip\\n\\nTo see it in action, click here: <ErrorBoundaryTestButton cause=\\"Probably undefined is not a function \uD83D\uDE04\\"/>\\n\\n:::\\n\\nIn [#8735](https://github.com/facebook/docusaurus/pull/8735) we also made navbar-related error messages clearer to help users understand what they did wrong.\\n\\n![Docusaurus navbar error message screenshot](./img/navbar-error.jpg)\\n\\n### Translations\\n\\nWe made it possible to translate some new elements:\\n\\n- [#8677](https://github.com/facebook/docusaurus/pull/8677) introduces a new `process.env.DOCUSAURUS_CURRENT_LOCALE` (experimental) allowing you to localize your config file, including site title, tagline, announcement bar, baseUrl...\\n- [#8616](https://github.com/facebook/docusaurus/pull/8616) allows to translate the navbar and footer logo alt text\\n\\nWe added default theme translation support for multiple languages:\\n\\n- \uD83C\uDDED\uD83C\uDDFA [#8668](https://github.com/facebook/docusaurus/pull/8668): Hungarian\\n- \uD83C\uDDF3\uD83C\uDDF4 [#8631](https://github.com/facebook/docusaurus/pull/8631): Norwegian (Bokm\xe5l)\\n\\n:::tip\\n\\nCompleting theme translations is an [ongoing effort](https://github.com/facebook/docusaurus/issues/3526) and an easy way to contribute to Docusaurus. We add new theme features regularly, for which we often [need new translations](https://github.com/facebook/docusaurus/issues/3526).\\n\\n:::\\n\\n## Other changes\\n\\nOther notable changes include:\\n\\n- [#8674](https://github.com/facebook/docusaurus/pull/8674): respect `prefers-reduced-motion: reduce` media query\\n- [#8712](https://github.com/facebook/docusaurus/pull/8712): use a navbar item of type `docSidebar` in template\\n- [#8801](https://github.com/facebook/docusaurus/pull/8801): allow tabs children to be falsy\\n- [#8757](https://github.com/facebook/docusaurus/pull/8757): make search page react to external query-string changes\\n- [#8803](https://github.com/facebook/docusaurus/pull/8803): fix code block buttons position in RTL\\n- [#8615](https://github.com/facebook/docusaurus/pull/8615): fix color mode toggle when using dark navbar\\n- [#8699](https://github.com/facebook/docusaurus/pull/8699): fix navbar dropdown tab focus bug\\n\\nCheck the **[2.4.0 changelog entry](/changelog/2.4.0)** for an exhaustive list of changes."},{"id":"/releases/2.3","metadata":{"permalink":"/blog/releases/2.3","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/releases/2.3/index.mdx","source":"@site/blog/releases/2.3/index.mdx","title":"Docusaurus 2.3","description":"We are happy to announce Docusaurus 2.3.","date":"2023-01-27T00:00:00.000Z","tags":[{"inline":false,"label":"Release","permalink":"/blog/tags/release","description":"Blog posts about Docusaurus\' new releases"}],"readingTime":2.89,"hasTruncateMarker":true,"authors":[{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer, This Week In React editor","url":"https://thisweekinreact.com","page":{"permalink":"/blog/authors/slorber"},"description":"A freelance React and React-Native developer near Paris and Docusaurus maintainer. Also runs ThisWeekInReact.com, a newsletter to stay updated with the React ecosystem.","socials":{"bluesky":"https://bsky.app/profile/sebastienlorber.com","x":"https://x.com/sebastienlorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","github":"https://github.com/slorber","instagram":"https://www.instagram.com/thisweekinreact","newsletter":"https://thisweekinreact.com"},"imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"title":"Docusaurus 2.3","authors":["slorber"],"tags":["release"],"image":"./img/social-card.png","date":"2023-01-27T00:00:00.000Z"},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Docusaurus 2.4","permalink":"/blog/releases/2.4"},"nextItem":{"title":"Docusaurus 2.2","permalink":"/blog/releases/2.2"}},"content":"We are happy to announce **Docusaurus 2.3**.\\n\\nThe upgrade should be easy: as explained in our [release process documentation](/community/release-process), minor versions respect [Semantic Versioning](https://semver.org/).\\n\\n![Docusaurus 2.2 social card](./img/social-card.png)\\n\\n\x3c!--truncate--\x3e\\n\\n## Highlights\\n\\n### Google Tag Manager plugin\\n\\nGoogle Tag Manager is a tag management system that allows great flexibility. It enables analytics and marketing teams to easily load other third-party trackers and fire analytics tags.\\n\\nWe now have a [`@docusaurus/plugin-google-tag-manager`](/docs/api/plugins/@docusaurus/plugin-google-tag-manager/) package that you can use alongside or as an alternative to the existing [gtag.js plugin](/docs/api/plugins/@docusaurus/plugin-google-gtag/) (refer to [this doc](https://support.google.com/tagmanager/answer/7582054) to understand when to use which solution).\\n\\n:::warning Google is sunsetting Universal Analytics\\n\\n[Google will sunset its Universal Analytics](https://blog.google/products/marketingplatform/analytics/prepare-for-future-with-google-analytics-4/) on **July 1, 2023**, and ask users to migrate to **Google Analytics 4**.\\n\\nTherefore, we are also **deprecating our existing [`@docusaurus/plugin-google-analytics`](/docs/api/plugins/@docusaurus/plugin-google-analytics)** package. Docusaurus users should create a new Google Analytics 4 property, and migrate to the [gtag.js plugin](/docs/api/plugins/@docusaurus/plugin-google-gtag/), or the [Google Tag Manager plugin](/docs/api/plugins/@docusaurus/plugin-google-tag-manager/). Refer to the [dedicated Docusaurus issue](https://github.com/facebook/docusaurus/issues/7221) for details and questions.\\n\\n:::\\n\\n### Tabs Query String Support\\n\\nIt is now possible to link a selected tab to a query string parameter. When a tab is selected, it will be stored in your browser URL as a `?qs-param=tab-value` search parameter.\\n\\nThis feature allows deep-linking to a specific documentation tab that will pre-selected on page load.\\n\\nWhen used alongside the `groupId` prop, the query string tab value takes precedence over the `localStorage` value.\\n\\nMake sure to check the [documentation](/docs/markdown-features/tabs#query-string) and the demo below to understand how it works:\\n\\nimport BrowserWindow from \'@site/src/components/BrowserWindow\';\\nimport Tabs from \'@theme/Tabs\';\\nimport TabItem from \'@theme/TabItem\';\\n\\n```tsx\\n<Tabs groupId=\\"current-os\\" queryString>\\n <TabItem value=\\"android\\" label=\\"Android\\">\\n Android\\n </TabItem>\\n <TabItem value=\\"ios\\" label=\\"iOS\\">\\n iOS\\n </TabItem>\\n</Tabs>\\n```\\n\\n<BrowserWindow>\\n <Tabs groupId=\\"current-os\\" queryString>\\n <TabItem value=\\"android\\" label=\\"Android\\">\\n Android\\n </TabItem>\\n <TabItem value=\\"ios\\" label=\\"iOS\\">\\n iOS\\n </TabItem>\\n </Tabs>\\n</BrowserWindow>\\n\\n### Nested admonitions\\n\\nIt is now possible to nest one admonition within another by adding extra colons for the outer/enclosing admonition:\\n\\n```md\\n::::tip nested admonitions\\n\\nYou can now nest one admonition within another!\\n\\n:::danger\\n\\nUse this sparingly when it makes sense.\\n\\n:::\\n\\n::::\\n```\\n\\n::::tip nested admonitions\\n\\nYou can now nest one admonition within another!\\n\\n:::danger\\n\\nUse this sparingly when it makes sense.\\n\\n:::\\n\\n::::\\n\\n### Blog `createFeedItems`\\n\\nA new blog plugin option [`feedOptions.createFeedItems`](/docs/api/plugins/@docusaurus/plugin-content-blog/#CreateFeedItemsFn) gives you more control over the RSS/Atom feed generation. It is now possible to transform/filter/limit feed items through a new callback.\\n\\n```tsx title=\\"docusaurus.config.js\\"\\n[\\n \'@docusaurus/preset-classic\',\\n {\\n blog: {\\n feedOptions: {\\n // highlight-start\\n createFeedItems: async (params) => {\\n const {blogPosts, defaultCreateFeedItems, ...rest} = params;\\n return defaultCreateFeedItems({\\n // keep only the 10 most recent blog posts in the feed\\n blogPosts: blogPosts.filter((item, index) => index < 10),\\n ...rest,\\n });\\n },\\n // highlight-end\\n },\\n },\\n },\\n];\\n```\\n\\n### Translations\\n\\nWe added or completed the default theme translation support for multiple languages:\\n\\n- \uD83C\uDDF8\uD83C\uDDEE [#8541](https://github.com/facebook/docusaurus/pull/8541) Slovenian\\n- \uD83C\uDDF9\uD83C\uDDF7 [#8289](https://github.com/facebook/docusaurus/pull/8289) Turkish\\n- \uD83C\uDDEE\uD83C\uDDF7 [#8406](https://github.com/facebook/docusaurus/pull/8406) Farsi\\n- \uD83C\uDDF5\uD83C\uDDF1 [#8525](https://github.com/facebook/docusaurus/pull/8525) Polish\\n- \uD83C\uDDE8\uD83C\uDDF3 [#8423](https://github.com/facebook/docusaurus/pull/8423) Chinese\\n- \uD83C\uDDF8\uD83C\uDDEA [#8312](https://github.com/facebook/docusaurus/pull/8312) Swedish\\n- \uD83C\uDDFB\uD83C\uDDF3 [#8450](https://github.com/facebook/docusaurus/pull/8450) Vietnamese\\n\\n:::tip\\n\\nCompleting theme translations is an [ongoing effort](https://github.com/facebook/docusaurus/issues/3526) and an easy way to contribute to Docusaurus. We add new theme features regularly, for which we often [need new translations](https://github.com/facebook/docusaurus/issues/3526).\\n\\n:::\\n\\n## Other changes\\n\\nOther notable changes include:\\n\\n- [#8463](https://github.com/facebook/docusaurus/pull/8463) and [#8328](https://github.com/facebook/docusaurus/pull/8328): fix some annoying Docusaurus layout issues\\n- [#8539](https://github.com/facebook/docusaurus/pull/8539): Algolia plugin `options.searchPagePath` should be correctly applied to search modal footer\\n- [#8462](https://github.com/facebook/docusaurus/pull/8462): Algolia plugin now makes it easier to transform displayed search results with custom logic\\n- [#8397](https://github.com/facebook/docusaurus/pull/8397): the `deploy` CLI now understands git url `insteadOf` config\\n\\nCheck the **[2.3.0 changelog entry](/changelog/2.3.0)** for an exhaustive list of changes."},{"id":"/releases/2.2","metadata":{"permalink":"/blog/releases/2.2","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/releases/2.2/index.mdx","source":"@site/blog/releases/2.2/index.mdx","title":"Docusaurus 2.2","description":"We are happy to announce Docusaurus 2.2.","date":"2022-10-29T00:00:00.000Z","tags":[{"inline":false,"label":"Release","permalink":"/blog/tags/release","description":"Blog posts about Docusaurus\' new releases"}],"readingTime":2.2,"hasTruncateMarker":true,"authors":[{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer, This Week In React editor","url":"https://thisweekinreact.com","page":{"permalink":"/blog/authors/slorber"},"description":"A freelance React and React-Native developer near Paris and Docusaurus maintainer. Also runs ThisWeekInReact.com, a newsletter to stay updated with the React ecosystem.","socials":{"bluesky":"https://bsky.app/profile/sebastienlorber.com","x":"https://x.com/sebastienlorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","github":"https://github.com/slorber","instagram":"https://www.instagram.com/thisweekinreact","newsletter":"https://thisweekinreact.com"},"imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"title":"Docusaurus 2.2","authors":["slorber"],"tags":["release"],"image":"./img/social-card.png","date":"2022-10-29T00:00:00.000Z"},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Docusaurus 2.3","permalink":"/blog/releases/2.3"},"nextItem":{"title":"Docusaurus 2.1","permalink":"/blog/2022/09/01/docusaurus-2.1"}},"content":"We are happy to announce **Docusaurus 2.2**.\\n\\nThe upgrade should be easy: as explained in our [release process documentation](/community/release-process), minor versions respect [Semantic Versioning](https://semver.org/).\\n\\n![Docusaurus 2.2 social card](./img/social-card.png)\\n\\n{/* truncate */}\\n\\n## Highlights\\n\\n### Mermaid diagrams\\n\\nIn [#7490](https://github.com/facebook/docusaurus/pull/7490), we added support for Mermaid diagrams. This fills the gap between GitHub Flavored Markdown which also [added support recently](https://github.blog/2022-02-14-include-diagrams-markdown-files-mermaid/). You can create Mermaid diagrams using Markdown code blocks:\\n\\n````md\\n```mermaid\\nsequenceDiagram\\n participant Alice\\n participant Bob\\n Alice->>John: Hello John, how are you?\\n loop Health check\\n John->>John: Fight against hypochondria\\n end\\n Note right of John: Rational thoughts <br/>prevail!\\n John--\x3e>Alice: Great!\\n John->>Bob: How about you?\\n Bob--\x3e>John: Jolly good!\\n```\\n````\\n\\n````mdx-code-block\\nimport BrowserWindow from \'@site/src/components/BrowserWindow\';\\n\\n<BrowserWindow>\\n\\n```mermaid\\nsequenceDiagram\\n participant Alice\\n participant Bob\\n Alice->>John: Hello John, how are you?\\n loop Health check\\n John->>John: Fight against hypochondria\\n end\\n Note right of John: Rational thoughts <br/>prevail!\\n John--\x3e>Alice: Great!\\n John->>Bob: How about you?\\n Bob--\x3e>John: Jolly good!\\n```\\n\\n</BrowserWindow>\\n\\n````\\n\\nMake sure to check the [documentation](/docs/markdown-features/diagrams), and the [more advanced examples](/tests/pages/diagrams)\\n\\n### Config `headTags`\\n\\nIn [#8151](https://github.com/facebook/docusaurus/pull/8151), we added the ability to apply arbitrary HTML `<head>` tags to all pages of your site.\\n\\n```js title=\\"docusaurus.config.js\\"\\nmodule.exports = {\\n headTags: [\\n {\\n tagName: \'link\',\\n attributes: {\\n rel: \'icon\',\\n href: \'/img/docusaurus.png\',\\n },\\n },\\n ],\\n};\\n```\\n\\n### Accessibility\\n\\nWe did several accessibility improvements:\\n\\n- [#8207](https://github.com/facebook/docusaurus/pull/8207): improves keyboard navigation for mobile drawer hamburger button\\n- [#8161](https://github.com/facebook/docusaurus/pull/8161): improves keyboard navigation for tabs\\n- [#8204](https://github.com/facebook/docusaurus/pull/8204): makes the skip to content button support progressive enhancement\\n- [#8174](https://github.com/facebook/docusaurus/pull/8174): improves screen reader announcement when toggling between light/dark mode\\n\\n### Developer Experience\\n\\nWe made validation stricter and improved error messages:\\n\\n- [#8234](https://github.com/facebook/docusaurus/pull/8234): in case of doc processing failure, prints the problematic markdown file path in the error message\\n- [#8192](https://github.com/facebook/docusaurus/pull/8192) and [#8159](https://github.com/facebook/docusaurus/pull/8159): validates `siteConfig.url` more strictly and with better error message\\n- [#8066](https://github.com/facebook/docusaurus/pull/8066): makes config `url` and `baseUrl` fail-safe and less sensitive to the presence or absence of a leading or trailing slash\\n\\n### Translations\\n\\nWe completed the default theme translation support for multiple languages:\\n\\n- \uD83C\uDDF9\uD83C\uDDF7 [#8105](https://github.com/facebook/docusaurus/pull/8105): completes Turkish translations\\n- \uD83C\uDDF7\uD83C\uDDFA [#8253](https://github.com/facebook/docusaurus/pull/8253): completes Russian translations\\n- \uD83C\uDDEB\uD83C\uDDF7 [#8243](https://github.com/facebook/docusaurus/pull/8243): completes French translations\\n- \uD83C\uDDEF\uD83C\uDDF5 [#8075](https://github.com/facebook/docusaurus/pull/8075): completes Japanese translations\\n\\n:::tip\\n\\nCompleting theme translations is an [ongoing effort](https://github.com/facebook/docusaurus/issues/3526) and an easy way to contribute to Docusaurus. We add new theme features regularly, for which we often [need new translations](https://github.com/facebook/docusaurus/issues/3526).\\n\\n:::\\n\\n## Other changes\\n\\nOther notable changes include:\\n\\n- [#8210](https://github.com/facebook/docusaurus/pull/8210): the `docusaurus swizzle` CLI has a new `--config` option\\n- [#8109](https://github.com/facebook/docusaurus/pull/8109): mobile navigation performance optimizations, prefetch resources earlier\\n- [#8059](https://github.com/facebook/docusaurus/pull/8059): versions/locales navbar dropdowns preserve hash and querystring on navigation\\n- [#8227](https://github.com/facebook/docusaurus/pull/8227): the client redirect plugin preserves hash and querystring on redirect\\n\\nCheck the **[2.2.0 changelog entry](/changelog/2.2.0)** for an exhaustive list of changes."},{"id":"/2022/09/01/docusaurus-2.1","metadata":{"permalink":"/blog/2022/09/01/docusaurus-2.1","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/2022/09-01-docusaurus-2.1/index.mdx","source":"@site/blog/2022/09-01-docusaurus-2.1/index.mdx","title":"Docusaurus 2.1","description":"We are happy to announce Docusaurus 2.1, our very first minor version release.","date":"2022-09-01T00:00:00.000Z","tags":[{"inline":false,"label":"Release","permalink":"/blog/tags/release","description":"Blog posts about Docusaurus\' new releases"}],"readingTime":1.725,"hasTruncateMarker":true,"authors":[{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer, This Week In React editor","url":"https://thisweekinreact.com","page":{"permalink":"/blog/authors/slorber"},"description":"A freelance React and React-Native developer near Paris and Docusaurus maintainer. Also runs ThisWeekInReact.com, a newsletter to stay updated with the React ecosystem.","socials":{"bluesky":"https://bsky.app/profile/sebastienlorber.com","x":"https://x.com/sebastienlorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","github":"https://github.com/slorber","instagram":"https://www.instagram.com/thisweekinreact","newsletter":"https://thisweekinreact.com"},"imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"title":"Docusaurus 2.1","authors":["slorber"],"tags":["release"],"image":"./img/social-card.png"},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Docusaurus 2.2","permalink":"/blog/releases/2.2"},"nextItem":{"title":"Announcing Docusaurus 2.0","permalink":"/blog/2022/08/01/announcing-docusaurus-2.0"}},"content":"We are happy to announce **Docusaurus 2.1**, our very first minor version release.\\n\\nThe upgrade should be easy: as explained in our [release process documentation](/community/release-process), minor versions respect [Semantic Versioning](https://semver.org/).\\n\\n![Docusaurus 2.1 social card](./img/social-card.png)\\n\\n\x3c!--truncate--\x3e\\n\\n## Highlights\\n\\n### DocCardList improvements\\n\\nIn [#8008](https://github.com/facebook/docusaurus/pull/8008), we simplified the usage of the`<DocCardList>` component, that is notably used on sidebar category generated index pages.\\n\\nThe `items` prop is now optional, and will be automatically inferred from the content of the parent sidebar category:\\n\\n```diff\\nimport DocCardList from \'@theme/DocCardList\';\\n- import {useCurrentSidebarCategory} from \'@docusaurus/theme-common\';\\n\\n- <DocCardList items={useCurrentSidebarCategory().items}/>\\n+ <DocCardList/>\\n```\\n\\nAlso, we made it possible to use it on any document, including regular docs not linked to any sidebar category.\\n\\n![simplified DocCardList component](./img/doc-card-list.png)\\n\\n### `noindex` improvements\\n\\nWe improved the support of the [`noindex` meta `robots` directive](https://developers.google.com/search/docs/advanced/crawling/block-indexing), a way to signal search engines you don\'t want a specific page to be indexed.\\n\\nIn [#7963](https://github.com/facebook/docusaurus/pull/7963), we allow `noindex` to be configured on a per-docs-version basis.\\n\\nUse the following plugin options to tell crawlers you don\'t want the `1.0.0` version to be indexed:\\n\\n```jsx\\nconst options = {\\n versions: {\\n \'1.0.0\': {\\n noIndex: true,\\n },\\n },\\n};\\n```\\n\\nIn practice, Docusaurus will add the following meta to each page of that version:\\n\\n```html\\n<meta name=\\"robots\\" content=\\"noindex, nofollow\\" />\\n```\\n\\nIn [#7964](https://github.com/facebook/docusaurus/pull/7964), we also fixed a bug where the sitemap plugin would still contain pages that have a `noindex` directive. Now the sitemap plugin will reliably filter out all the pages containing `noindex` directives.\\n\\n### Overriding default meta tags\\n\\nIn [#7952](https://github.com/facebook/docusaurus/pull/7952), it becomes possible to override default html meta tags you couldn\'t before:\\n\\n```jsx\\n<>\\n {siteConfig.noIndex && <meta name=\\"robots\\" content=\\"nofollow, noindex\\" />}\\n <meta name=\\"viewport\\" content=\\"width=device-width, initial-scale=1.0\\" />\\n</>\\n```\\n\\nIt is now possible to use `<Head>` or `themeConfig.metadata`:\\n\\n- to override the `viewport` meta\\n- to override the `robots` meta: you could mark your site as `noIndex`, but except for specific pages that should be indexed\\n\\n### Ukrainian translations\\n\\nIn [#7953](https://github.com/facebook/docusaurus/pull/7953), we added default classic theme translations for the Ukrainian language.\\n\\n## Other changes\\n\\nCheck the [2.1.0 changelog entry](/changelog/2.1.0) for an exhaustive list of changes."},{"id":"/2022/08/01/announcing-docusaurus-2.0","metadata":{"permalink":"/blog/2022/08/01/announcing-docusaurus-2.0","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/2022/08-01-announcing-docusaurus-2.0/index.mdx","source":"@site/blog/2022/08-01-announcing-docusaurus-2.0/index.mdx","title":"Announcing Docusaurus 2.0","description":"Today we are extremely happy to finally announce Docusaurus 2.0! \uD83E\uDD73\uFE0F","date":"2022-08-01T00:00:00.000Z","tags":[{"inline":false,"label":"Release","permalink":"/blog/tags/release","description":"Blog posts about Docusaurus\' new releases"}],"readingTime":12.075,"hasTruncateMarker":true,"authors":[{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer, This Week In React editor","url":"https://thisweekinreact.com","page":{"permalink":"/blog/authors/slorber"},"description":"A freelance React and React-Native developer near Paris and Docusaurus maintainer. Also runs ThisWeekInReact.com, a newsletter to stay updated with the React ecosystem.","socials":{"bluesky":"https://bsky.app/profile/sebastienlorber.com","x":"https://x.com/sebastienlorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","github":"https://github.com/slorber","instagram":"https://www.instagram.com/thisweekinreact","newsletter":"https://thisweekinreact.com"},"imageURL":"https://github.com/slorber.png","key":"slorber"},{"name":"Joshua Chen","title":"Working hard on Docusaurus","url":"https://joshcena.com/","email":"sidachen2003@gmail.com","page":{"permalink":"/blog/authors/josh-cena"},"imageURL":"https://github.com/josh-cena.png","key":"Josh-Cena"},{"name":"Yangshun Tay","title":"Ex-Meta Staff Engineer, Co-founder GreatFrontEnd","url":"https://linkedin.com/in/yangshun","page":{"permalink":"/blog/authors/yangshun"},"socials":{"x":"https://x.com/yangshunz","linkedin":"https://www.linkedin.com/in/yangshun/","github":"https://github.com/yangshun","newsletter":"https://www.greatfrontend.com"},"imageURL":"https://github.com/yangshun.png","key":"yangshun"},{"name":"Alexey Pyltsyn","title":"Open-source enthusiast","url":"https://github.com/lex111","email":"lex@php.net","page":{"permalink":"/blog/authors/lex-111"},"imageURL":"https://github.com/lex111.png","key":"lex111"},{"name":"Paul O\u2019Shannessy","title":"Engineering Manager at Meta","url":"https://x.com/zpao","page":{"permalink":"/blog/authors/zpao"},"socials":{"x":"https://x.com/zpao","github":"https://github.com/zpao"},"imageURL":"https://github.com/zpao.png","key":"zpao"},{"name":"Joel Marcey","title":"Co-creator of Docusaurus 1","url":"https://x.com/JoelMarcey","page":{"permalink":"/blog/authors/j-marcey"},"socials":{},"imageURL":"https://github.com/JoelMarcey.png","key":"JMarcey"}],"frontMatter":{"title":"Announcing Docusaurus 2.0","authors":["slorber","Josh-Cena","yangshun","lex111","zpao",{"key":"JMarcey","title":"Co-creator of Docusaurus 1"}],"tags":["release"],"image":"./img/social-card.png"},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Docusaurus 2.1","permalink":"/blog/2022/09/01/docusaurus-2.1"},"nextItem":{"title":"Docusaurus 2021 Recap","permalink":"/blog/2022/01/24/docusaurus-2021-recap"}},"content":"```mdx-code-block\\nimport LiteYouTubeEmbed from \'react-lite-youtube-embed\';\\nimport \'react-lite-youtube-embed/dist/LiteYouTubeEmbed.css\';\\nimport BrowserWindow from \'@site/src/components/BrowserWindow\';\\nimport ProductHuntCard from \'@site/src/components/ProductHuntCard\';\\nimport HackerNewsIcon from \'@site/src/components/HackerNewsIcon\';\\nimport ColorModeToggle from \'@theme/Navbar/ColorModeToggle\';\\nimport useBaseUrl from \'@docusaurus/useBaseUrl\';\\nimport ThemedImage from \'@theme/ThemedImage\';\\nimport {ShowcaseCarouselV1, ShowcaseCarouselV2, ShowcaseCarouselV2Theming} from \'./ShowcaseCarousel\';\\n```\\n\\nToday we are extremely happy to finally **announce Docusaurus 2.0**! \uD83E\uDD73\uFE0F\\n\\nAt [**Meta Open Source**](https://opensource.fb.com/), we believe Docusaurus will help you build the **best documentation websites** with **minimal effort**, letting you **focus on what really matters**: writing the content.\\n\\nAfter **4 years of work, [75 alphas](https://github.com/facebook/docusaurus/releases/tag/v2.0.0-alpha.75) and [22 betas](https://github.com/facebook/docusaurus/releases/tag/v2.0.0-beta.22)**, the next generation of Docusaurus is **ready for prime time**. From now on, we now plan to **respect [Semantic Versioning](https://semver.org/)** and will release **major versions more frequently**.\\n\\n![social-card image](./img/social-card.png)\\n\\n{/* truncate */}\\n\\n:::info We are on [ProductHunt](https://www.producthunt.com/posts/docusaurus-2-0) and [Hacker News](https://news.ycombinator.com/item?id=32303052)!\\n\\n**Now** is the best time to show your love for Docusaurus!\\n\\n<div style={{display: \'flex\'}}>\\n <ProductHuntCard />\\n <HackerNewsIcon />\\n</div>\\n\\n:::\\n\\n:::tip\\n\\nIn a hurry? Check [what\'s new in Docusaurus 2.0](#whats-new-in-20)!\\n\\n:::\\n\\n## What is Docusaurus exactly?\\n\\nDocusaurus is a **static site generator** that helps you ship **beautiful documentation websites** in **no time**.\\n\\nFocus on your content: just write **Markdown files**. Docusaurus will generate an optimized **website** for you that\'s easy to **host anywhere**.\\n\\nDocusaurus is **full-featured** and very **flexible**: we ship with well-designed docs and blog layout, as well as out-of-the-box versioning, search, and internationalization functionalities, with a call to accessibility and search engine optimizations. Its flexible theming system permits to **adapt the UI to match your branding** so that it integrates nicely with your main website or documentation portal. Its usage of **React** enables a **modern client-side navigation**, and the ability to build an **interactive documentation**.\\n\\n![Introducing Slash](/img/slash-introducing.svg)\\n\\nThe Docusaurus philosophy is akin to the **Pareto principle**: you can get **80% of the results** for **20% of the effort**. This enables you to compete with top-notch documentation sites with **minimal effort**.\\n\\n<TweetQuote\\n url=\\"https://x.com/rachelnabors/status/1452697991039660038\\"\\n handle=\\"rachelnabors\\"\\n name=\\"Rachel Nabors\\"\\n job=\\"Former ReactJS & React-Native docs manager\\">\\n Unless you\'re spinning up a documentation team with engineering resources, you\\n probably want Docusaurus!\\n</TweetQuote>\\n\\nDocusaurus aims to be the **best documentation tool**, but you can use it for **other use-cases** as well: a blog, a knowledge base, a developer portfolio, a second brain, or even to scaffold landing pages!\\n\\n<TweetQuote\\n url=\\"https://x.com/johnny_reilly/status/1551861926334025728\\"\\n handle=\\"johnny_reilly\\"\\n name=\\"Johnny Reilly\\"\\n job=\\"Group Principal Engineer at Investec\\">\\n Using Docusaurus for my tech blog has been a fantastic choice. It looks\\n tremendous out-of-the-box and the awesome DX means I write way more\\n</TweetQuote>\\n\\n:::tip\\n\\nTry Docusaurus now with our [online playgrounds](/docs/playground) and [5 minutes tutorial](https://tutorial.docusaurus.io/) \u23F1\uFE0F\\n\\n:::\\n\\n## The story behind Docusaurus\\n\\nDocusaurus was created at **Facebook Open Source** in **2017** (now [Meta Open Source](https://opensource.fb.com/)). We had a lot of internal and open source projects to document. It\'s **complicated enough to write good documentation**, let alone to create the HTML, CSS, and JavaScript for a good-looking website. We wanted project leaders to be able to **focus on the content**, and **Markdown** is great for that.\\n\\nAt that time, our solution was to **copy/paste a Jekyll template** over and over again. This naturally became **hard to maintain**, so we created a tool to **solve our own pain** once for all.\\n\\n**[Docusaurus v1 was born](/blog/2017/12-14-introducing-docusaurus.mdx)!**\\n\\n![Birth of Slash](/img/slash-birth.png)\\n\\nIt quickly built momentum at Facebook and in the frontend ecosystem, adopted by many popular projects such as [Prettier](https://prettier.io/), [Babel](https://babeljs.io/), [React-Native](https://archive.reactnative.dev/), [KaTeX](https://katex.org/docs/), and of course [Docusaurus v1](http://v1.docusaurus.io/) itself.\\n\\n<ShowcaseCarouselV1 />\\n\\n<br />\\n\\n:::note\\n\\nNotice that the sample sites above use different colors, but still look quite the same.\\n\\n:::\\n\\n## Toward Docusaurus 2.0\\n\\n[**Docusaurus v1**](http://v1.docusaurus.io/) has been very successful, but we started to **question some architectural choices**:\\n\\n- React was only used as a **server-side templating language**, and not used on the client\\n- **Theming system was pretty limited**, and apart from changing a few colors with CSS, it was difficult to do more advanced customizations\\n- The **docs versioning system was confusing**, since it was based on a diff algorithm\\n- The codebase was **monolithic**, neither well-tested nor easy to extend\\n\\n[**Docusaurus v2**](https://docusaurus.io/) was **rebuilt** from the ground up with a new **modular architecture**:\\n\\n- React is now also used on the client, enabling a **modern Single Page Application navigation**\\n- **Plugins** empower the community to contribute useful features as third-party packages\\n- **Theming** is more **flexible** than ever\\n- Docs versioning is now based on snapshot copies, much easier to understand\\n- We kept **everything good from v1**: docs, blog, pages, versioning, i18n...\\n- We implemented **several new features**\\n\\nMore details in the [Docusaurus 2 project announcement](/blog/2018/09-11-Towards-Docusaurus-2.mdx) and [v1 to v2 migration guide](https://docusaurus.io/docs/migration)\\n\\n## Who uses Docusaurus 2.0?\\n\\nDespite being in pre-release, it didn\'t take long for **Docusaurus v2 to outgrow Docusaurus v1** in terms of NPM downloads:\\n\\n[![NPM downloads: v2 outgrows v1](./img/npm-downloads.png)](https://npmtrends.com/docusaurus-vs-@docusaurus/core)\\n\\nOur GitHub star trend is very positive, competing with major frameworks:\\n\\n[![GitHub stars: Docusaurus is well-positioned](./img/star-history.png)](https://star-history.com/#facebook/docusaurus&vercel/next.js&gatsbyjs/gatsby&hexojs/hexo&nuxt/nuxt.js&vuejs/vuepress&11ty/eleventy&gohugoio/hugo&remix-run/remix&mkdocs/mkdocs&Timeline)\\n\\nToday, Docusaurus v2 has already been a great success even before its launch:\\n\\n- We received so many [lovely testimonials](https://x.com/sebastienlorber/timelines/1392048416872706049)\\n- Companies like [1Password](https://blog.1password.com/docusaurus-documentation-framework/) and [Courier](https://www.courier.com/blog/how-we-built-our-documentation/) are writing down their positive experience\\n- Our [site showcase](/showcase) references hundreds of sites, and this is only the tip of the iceberg.\\n\\n<ShowcaseCarouselV2 />\\n\\n<br />\\n\\n:::tip\\n\\nPlease add your site to our [site showcase](/showcase)! It only takes a few seconds: just [post a comment here](https://github.com/facebook/docusaurus/discussions/7826).\\n\\n:::\\n\\n<TweetQuote\\n url=\\"https://x.com/maxlynch/status/1549415692704825346\\"\\n handle=\\"maxlynch\\"\\n name=\\"Max Lynch\\"\\n job=\\"Ionic co-founder and CEO\\">\\n We use Docusaurus everywhere now and love it\\n</TweetQuote>\\n\\n<TweetQuote\\n url=\\"https://x.com/supabase/status/1328960757149671425\\"\\n handle=\\"supabase\\"\\n name=\\"Supabase\\"\\n job=\\"Open Source Firebase alternative\\">\\n We\'ve been using V2 since January and it has been great\\n</TweetQuote>\\n\\n<TweetQuote\\n url=\\"https://x.com/gabrielcsapo/status/1415061312917233665\\"\\n handle=\\"gabrielcsapo\\"\\n name=\\"Gabriel Csapo\\"\\n job=\\"Staff Software Engineer at LinkedIn\\">\\n Docusaurus is next level easy for literally everything you would need for\\n documentation in your project.\\n</TweetQuote>\\n\\n<TweetQuote\\n url=\\"https://x.com/ItWasMattGregg/status/1526682295075102721\\"\\n handle=\\"ItWasMattGregg\\"\\n name=\\"Matt Gregg\\"\\n job=\\"Senior Front End Developer at Shopify\\">\\n Docusaurus is awesome. We use it\\n</TweetQuote>\\n\\n## What\'s New in 2.0?\\n\\nIt would be difficult to describe every single new feature coming with Docusaurus v2. Let\'s focus on the features we believe are the **most impactful**.\\n\\n### MDX\\n\\n[MDX](https://github.com/mdx-js/mdx) allows you to **interleave React components** in Markdown. This enables you to build top-notch **interactive documentation experiences** very easily.\\n\\nA demo is worth a thousand words:\\n\\n```md title=\\"docs/my-document.mdx\\"\\n### Give it a try: press that button!\\n\\nimport ColorModeToggle from \'@theme/ColorModeToggle\';\\n\\n<ColorModeToggle/>\\n```\\n\\n```mdx-code-block\\n<BrowserWindow>\\n\\n<h3>Give it a try: press that button!</h3>\\n\\n<ColorModeToggle/>\\n\\n</BrowserWindow>\\n```\\n\\n:::info\\n\\nMDX has its own [plugin system](https://mdxjs.com/docs/extending-mdx/). You to customize your Markdown authoring experience, and even create your own Markdown syntax.\\n\\n:::\\n\\n<TweetQuote\\n url=\\"https://x.com/HamelHusain/status/1551962275250053123\\"\\n handle=\\"HamelHusain\\"\\n name=\\"Hamel Husain\\"\\n job=\\"Head Of Data Science at Outerbounds\\">\\n Docusaurus + MDX is great: we were able to implement a beautiful two-pane\\n layout and give the author fine-grained control on the placement of code and\\n corresponding prose.\\n</TweetQuote>\\n\\n### File system conventions\\n\\nOur goal is to make Docusaurus very **intuitive** to use. We added file system conventions, and adding a doc page is as easy as creating one Markdown file.\\n\\n<LiteYouTubeEmbed\\n id=\\"T3S8GyFIXjo\\"\\n params=\\"autoplay=1&autohide=1&showinfo=0&rel=0\\"\\n title=\\"Explain Like I\'m 5: Docusaurus\\"\\n poster=\\"maxresdefault\\"\\n webp\\n/>\\n\\n<br />\\n\\n<TweetQuote\\n url=\\"https://x.com/paularmstrong/status/1552005085168865281\\"\\n handle=\\"paularmstrong\\"\\n name=\\"Paul Armstrong\\"\\n job=\\"Principal Engineer at Microsoft\\">\\n Using the auto-generated sidebars makes it so simple to just create a page and\\n not worry about any other configuration.\\n</TweetQuote>\\n\\n### Plugins\\n\\nDocusaurus now has a **modular architecture** with a plugin system \u2014 our **core features** like docs, blog, pages, and search are all powered by individual plugins.\\n\\nMore importantly, it enables our community to **enhance Docusaurus** with additional features.\\n\\nLet\'s highlight some examples:\\n\\n- [redocusaurus](https://github.com/rohit-gohri/redocusaurus): seamless integration with [OpenAPI](https://www.openapis.org/) and [Redoc](https://github.com/Redocly/redoc)\\n\\n![redocusaurus plugin example](./img/plugins/redocusaurus.png)\\n\\n- [docusaurus-preset-shiki-twoslash](https://www.npmjs.com/package/docusaurus-preset-shiki-twoslash): use [Shiki](https://github.com/shikijs/shiki) code block syntax highlighting with [TwoSlash](https://shikijs.github.io/twoslash/) TypeScript compiler hints\\n\\n![shiki-twoslash plugin example](./img/plugins/shiki-twoslash.png)\\n\\n<TweetQuote\\n url=\\"https://x.com/orta\\"\\n handle=\\"orta\\"\\n name=\\"Orta Therox\\"\\n job=\\"Former TypeScript core team at Microsoft\\">\\n The plugin API was a breeze to use, and powerful enough that I could port the\\n code sample renderer from the TypeScript website site in a couple of hours.\\n</TweetQuote>\\n\\n- [docusaurus-search-local](https://github.com/easyops-cn/docusaurus-search-local): one of the various local search alternatives to the built-in Algolia plugin\\n\\n![local search plugin example](./img/plugins/search.png)\\n\\n:::tip\\n\\nWe have a curated list of outstanding plugins in our [community resources](/community/resources) page.\\n\\n:::\\n\\n<TweetQuote\\n url=\\"https://x.com/jodyheavener/status/1551974535452311552\\"\\n handle=\\"jodyheavener\\"\\n name=\\"Jody Heavener\\"\\n job=\\"Senior Developer at 1Password\\">\\n The plugin system in Docusaurus v2 has made expanding 1Password\'s developer\\n portal so easy and fun. Super excited to show you what we\'ve got cooking up.\\n</TweetQuote>\\n\\n### Theming\\n\\nTheming is one of the most important features of Docusaurus: we believe a professional documentation site should **respect your company\'s branding** and create a consistent experience.\\n\\nDocusaurus theming gives a lot of **flexibility** on multiple levels:\\n\\n- Customize CSS variables to adjust colors, fonts, and more\\n- Provide your own CSS stylesheets\\n- Implement your own theme from scratch\\n- **Override any React component** provided by our default theme: we call this [swizzling](https://docusaurus.io/docs/swizzling)\\n\\n<TweetQuote\\n url=\\"https://x.com/hung_dev/status/1546918275065741312\\"\\n handle=\\"hung_dev\\"\\n name=\\"\\nHung Viet Nguyen\\"\\n job=\\"Creator of JestPreview\\">\\n I love Docusaurus Swizzling feature. It\u2019s opinionated and flexible at the same\\n time. This is super cool since a framework usually needs to sacrifice one for\\n the other.\\n</TweetQuote>\\n\\nThis enables users willing to invest a bit more time on **customizations** to build sites that **look different** from others.\\n\\n<ShowcaseCarouselV2Theming />\\n\\n<TweetQuote\\n url=\\"https://x.com/dabit3/status/1382855449813389315\\"\\n handle=\\"dabit3\\"\\n name=\\"Nader Dabit\\"\\n job=\\"Web3 developer, Developer DAO founder\\">\\n So far it\u2019s working out really nicely. It\u2019s been really easy to style up the\\n way that we wanted it to look. No blockers at all.\\n</TweetQuote>\\n\\n### Other features\\n\\nDocusaurus 2 comes with a very long list of useful features:\\n\\n- Theme: dark mode, better UI and UX, flexible `themeConfig` options...\\n- Docs versioning: flexible plugin options to adapt to your workflow\\n- Docs sidebar: collapsible category, category index pages...\\n- Blog: multiple authors, authors map, archive page...\\n- Markdown: tabs, math equations, live code blocks, linking, flexible front matter...\\n- Search: use the new Algolia DocSearch 3 experience\\n- Assets: make it easy to incorporate images and other kinds of files\\n- Internationalization: config options, default theme translations...\\n- Accessibility: aria labels, color contrasts, skip-to-content, keyboard navigation, progressive enhancement...\\n- SEO: sensible defaults, easy to customize, canonical url, social card, no-index, sitemap, microdata, hreflang...\\n- PWA: add offline support to your site, and make it installable\\n- Fail-fast: strict config validation, detect broken links, and prevent bad production deployments\\n- TypeScript support for config files, plugins, custom pages and theme authors\\n- Playgrounds: assess Docusaurus easily from your browser with [docusaurus.new](https://docusaurus.new)\\n- Canary releases: use the @canary npm tag to use the upcoming release before anyone else\\n- Tests: Docusaurus is well-tested, we dogfood features and ensure they keep working\\n\\n<TweetQuote\\n url=\\"https://x.com/alexbdebrie/status/1540010328335032320\\"\\n handle=\\"alexbdebrie\\"\\n name=\\"Alex DeBrie\\"\\n job=\\"AWS Data Hero, author of The DynamoDB Book\\">\\n Recently, I was shocked at how good Docusaurus is out of the box. Super solid,\\n a good bit of configuration without being overwhelming, and the ability to\\n really customize the styling if you\'re braver than I am.\\n</TweetQuote>\\n\\n## Why 2.0 now?\\n\\nMany enthusiastic followers of ours have been curious **why it took us 4 years to release Docusaurus 2.0**, considering the beta is already successful and **widely used in production**.\\n\\nThe reason is that we aim to **respect [Semantic Versioning](https://semver.org/)**, which means we will be incrementing the major version number whenever we release a **breaking change**.\\n\\nIt is important for multiple reasons:\\n\\n- It **guarantees simple minor version upgrades**, as long as you only use the [public API](/community/release-process#public-api-surface)\\n- It follows front-end ecosystem conventions\\n- A new major version is an opportunity to thoroughly document breaking changes\\n- A new major/minor version is an opportunity to communicate new features through a blog post\\n\\nThe problem is that our flexible theming system inherently creates a very **implicit API surface** on which it is **hard to know what is a breaking change** in the first place. Highly customized Docusaurus sites sometimes have a hard time upgrading Docusaurus because they achieve customizations using internal APIs. We dedicated time to extensive theme refactors and clearly defining our [public API](/community/release-process#public-api-surface), so that future code changes can be made more safely. We will continue to expand this public theming API so that the most common site customizations do not need to use any internal API.\\n\\n:::info\\n\\nFrom now on, Docusaurus will **release new major versions more frequently**. In practice, you can expect a **new major version every 2 to 4 months**.\\n\\n[Major version numbers are not sacred](https://tom.preston-werner.com/2022/05/23/major-version-numbers-are-not-sacred.html), but we still group breaking changes together and avoid releasing major versions too often.\\n\\nCheck our [release process](/community/release-process) documentation for details.\\n\\n:::\\n\\n## What\'s Next?\\n\\n![Slash Up and Running](/img/slash-up-and-running.png)\\n\\nThe work on Docusaurus 3.0 has started, and this next version will be released only in a few months. We will **backport retro-compatible changes in Docusaurus 2.x** minor versions to make them available as soon as possible to the community on a stable channel.\\n\\nA sample of the features on our roadmap for the upcoming major versions of Docusaurus:\\n\\n- [Upgrade to MDX 2.0](https://github.com/facebook/docusaurus/issues/4029)\\n- [Improve Markdown infrastructure](https://github.com/facebook/docusaurus/issues/4625)\\n- [Improve theming and swizzle](https://github.com/facebook/docusaurus/issues/6114)\\n- [TailwindCSS theme](https://github.com/facebook/docusaurus/issues/2961)\\n- [Theme; support custom item types for navbar, doc sidebar, blog sidebar, footer](https://github.com/facebook/docusaurus/issues/7227)\\n- [Dynamic navbar: navbar item activation strategies](https://github.com/facebook/docusaurus/issues/4389)\\n- [Custom Social Cards](https://github.com/facebook/docusaurus/issues/2968)\\n- [CSS-in-JS support](https://github.com/facebook/docusaurus/issues/3236)\\n- [Use Node.js ES Modules](https://github.com/facebook/docusaurus/issues/6520)\\n- [Improve build time performance](https://github.com/facebook/docusaurus/issues/4765)\\n- [Extend Docusaurus plugins, CMS integration](https://github.com/facebook/docusaurus/issues/4138)\\n\\n## Thank You\\n\\nWe\'d like to express our gratitude to [all our contributors](https://github.com/facebook/docusaurus/graphs/contributors), including:\\n\\n- The Docusaurus core team: [Alexey Pyltsyn](https://github.com/lex111), [Joshua Chen](https://github.com/Josh-Cena), [S\xe9bastien Lorber](https://github.com/slorber), [Yangshun Tay](https://github.com/yangshun) and all our [former team members](https://docusaurus.io/community/team)\\n- [Joel Marcey](https://github.com/JoelMarcey) for creating Docusaurus 1.0 and supporting the Docusaurus 2.0 project at Meta Open Source\\n- [Paul O\u2019Shannessy](https://github.com/zpao) for supporting the development of all the next versions of Docusaurus at Meta Open Source\\n- [Eric Nakagawa](https://github.com/ericnakagawa) for creating our cutest mascot Slash\\n- [Endilie Yacop Sucipto](https://github.com/endiliey) for his significant [initial work on Docusaurus v2](/blog/2020/01-07-tribute-to-endi.mdx)\\n- [Cl\xe9ment Vannicatte](https://github.com/shortcuts), [Kevin Granger](https://github.com/Shipow) and the whole Algolia team for their support\\n- All the community members for making valuable code contributions, improving our documentation, and answering questions on [Discord](https://discordapp.com/invite/docusaurus)\\n\\nWe\'d like to thank in particular all our **Docusaurus 2.0 early adopters** for assessing its alpha, beta and canary releases, providing a ton of **invaluable feedback**. We sincerely hope you had a great experience using it, and that you will continue to provide feedback on the upcoming pre-releases of Docusaurus 3.0.\\n\\nAt [Meta Open Source](https://opensource.fb.com/), Docusaurus is one of our **most successful projects**. We can\'t wait to see all the outstanding documentation websites that you will create! Don\'t forget to **submit them to our [site showcase](/showcase)**!\\n\\n**Now, let your imagination run wild \uD83E\uDD2A!**\\n\\n\u2014 Slash\\n\\n:::info We are on [ProductHunt](https://www.producthunt.com/posts/docusaurus-2-0) and [Hacker News](https://news.ycombinator.com/item?id=32303052)!\\n\\n\uD83D\uDE4F Share your experience using Docusaurus with the community!\\n\\n<div style={{display: \'flex\'}}>\\n <ProductHuntCard />\\n <HackerNewsIcon />\\n</div>\\n\\n:::\\n\\n![Slash plushies](./img/slash-plushies.jpg)"},{"id":"/2022/01/24/docusaurus-2021-recap","metadata":{"permalink":"/blog/2022/01/24/docusaurus-2021-recap","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/2022/01-24-docusaurus-2021-recap/index.mdx","source":"@site/blog/2022/01-24-docusaurus-2021-recap/index.mdx","title":"Docusaurus 2021 Recap","description":"Docusaurus has made great progress in 2021! We\'ve seen a lot of traction and just crossed 30k stars on GitHub!","date":"2022-01-24T00:00:00.000Z","tags":[{"inline":false,"label":"Recap","permalink":"/blog/tags/recap","description":"Blog posts about Docusaurus\' year recaps"}],"readingTime":6.01,"hasTruncateMarker":true,"authors":[{"name":"Joshua Chen","title":"Working hard on Docusaurus","url":"https://joshcena.com/","email":"sidachen2003@gmail.com","page":{"permalink":"/blog/authors/josh-cena"},"imageURL":"https://github.com/josh-cena.png","key":"Josh-Cena"}],"frontMatter":{"title":"Docusaurus 2021 Recap","authors":["Josh-Cena"],"tags":["recap"],"image":"./img/thumbnail.png"},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Announcing Docusaurus 2.0","permalink":"/blog/2022/08/01/announcing-docusaurus-2.0"},"nextItem":{"title":"DocSearch migration","permalink":"/blog/2021/11/21/algolia-docsearch-migration"}},"content":"Docusaurus has made great progress in 2021! We\'ve seen a lot of traction and just crossed **30k stars on GitHub**!\\n\\nWe\'ve **reached full feature parity** with v1 after [the release of internationalization](/blog/2021/03-09-releasing-docusaurus-i18n.mdx), [announced our **first beta**](/blog/2021/05-12-announcing-docusaurus-two-beta/index.mdx), and welcomed **significantly more users** this year.\\n\\nThe **official v2 release** is just around the corner! Follow the [roadmap issue](https://github.com/facebook/docusaurus/issues/6113) for any latest news.\\n\\n![](./img/thumbnail.png)\\n\\n\x3c!--truncate--\x3e\\n\\n## Highlights\\n\\nLet\'s begin by going over a few highlights this year. Remember the [todo-list](/blog/2021/05-12-announcing-docusaurus-two-beta/index.mdx#whats-next) from half a year ago? Time to take it out again and see how far we\'ve come!\\n\\n- **Internationalization**: officially released four months after its initial landing in late 2020. Seen great success in [many projects](/showcase?tags=i18n)\\n- **Autogenerated sidebars**: no need to maintain a big `sidebars.js` anymore\\n- **Webpack 5**: significantly improved build performance\\n- **Trailing slash config**: seamless integration with any content hosting provider\\n- **Redesigned mobile navigation**: mobile users now enjoy all navigation features as on desktop\\n- **UI improvements**: more accessible quotes, better admonitions, back-to-top button...\\n- **Blog multi-authors**: credit all the amazing contributors that collaborated on one blog post!\\n- **More blog features**: archive page, structured data for SEO, full post content in feeds \u2013 empowering you to ship a fully-featured blog in no time\\n- **Asset collocation**: no need for a bloated static folder anymore: colocate your images with Markdown files\\n- **Sidebar category index pages**: category labels can now be associated with pages, enabling better doc organization\\n\\nOur codebase has been polished over time as well. We have improved test coverage, migrated all packages to TypeScript, and reduced our published bundle size by a maximum of 60%!\\n\\n## Trends\\n\\n### npm\\n\\nDocusaurus v2 continues to grow steadily. V2 installation is now 8 times more than v1. In terms of weekly downloads, we have witnessed another three-fold increase (+209.4%), growing from 28,066 in early January to a peak of 86,846 in mid-December.\\n\\n[![Docusaurus v1 vs. v2 npm trends of the year 2021. The installations of Docusaurus v2 is constantly rising, while v1 is almost constant. V1 stays at 10000, while v2 grows from 30000 to almost 90000. There\'s a sharp drop from 90000 to 40000 just before the Jan 2022 line.](./img/npm-trend.png)](https://www.npmtrends.com/docusaurus-vs-@docusaurus/core)\\n\\n(Ah, the classic Christmas dip...)\\n\\nWe released 18 versions, going from `2.0.0-alpha.71` to `2.0.0-beta.14`. That\'s one release every 20 days!\\n\\n### GitHub\\n\\n- **Stars**: 20,460 \u2192 29,679 (+45.1% y/y). And, just before this blog post is published, we have reached 30k stars!\\n- **Total contributors**: 512 \u2192 773 (+51.0% y/y)\\n- **Dependents**: 5,039 \u2192 14,579 (+189.3% y/y) for v2, and 6,311 \u2192 7,581 (+20.1% y/y) for v1\\n- **Commits**: 1,187 commits in the past year, averaging 23 commits every week\\n- **Issues**: 619 issues opened, 505 of them eventually resolved\\n- A [**new core team member**](https://github.com/Josh-Cena) (yep, that\'s me \uD83D\uDE1D)\\n\\nOur star trend is also very positive. Compared to similar projects, we are **growing at a faster rate**:\\n\\n![Stars trend by year of 9 static site generators. Next.js grows the fastest, with Docusaurus at the 4th place in terms of growth rate.](./img/star-history.png)\\n\\nWith an 8.4k increase in stars, we are ranked number 3 in this year\'s [JavaScript rising stars of static site generators](https://risingstars.js.org/2021/en#section-ssg), preceded only by Next.js and Astro.\\n\\n![Docusaurus placing 3rd in the \\"Static Sites\\" ranking list](./img/rising-stars.png)\\n\\n## Featured adoptions\\n\\nOur showcase has welcomed a few new [\\"favorite\\" sites](/showcase?tags=favorite) that showcase the true potential of Docusaurus 2\'s pluggable architecture.\\n\\n- [**IOTA-wiki**](https://wiki.iota.org/)\\n\\n![Iota wiki light mode](./img/iota-light.png#gh-light-mode-only)![Iota wiki dark mode](./img/iota-dark.png#gh-dark-mode-only)\\n\\n- [**Dyte**](https://docs.dyte.io/docs/home/introduction/)\\n\\n![Dyte light mode](./img/dyte-light.png#gh-light-mode-only)![Dyte dark mode](./img/dyte-dark.png#gh-dark-mode-only)\\n\\n- [**Ionic**](https://ionicframework.com/docs)\\n\\n![Ionic light mode](./img/ionic-light.png#gh-light-mode-only)![Ionic dark mode](./img/ionic-dark.png#gh-dark-mode-only)\\n\\n- [**Courier**](https://www.courier.com/docs/)\\n\\n![Courier](./img/courier.png)\\n\\nThe creativity of Docusaurus users is beyond our imagination \uD83E\uDD29 We look forward to more and more adopters leveraging the content features of Docusaurus while exploring original theme designs! If your site uses Docusaurus, we would love to [have it in our showcase](https://github.com/facebook/docusaurus/edit/main/website/src/data/users.tsx).\\n\\n## Community\\n\\nAs an active moderator on [Discord](https://discord.gg/docusaurus), I can clearly see the community thriving. Many frequently asked questions are now integrated into our documentation, and some feature requests have been implemented as well. The project and the community reciprocally benefit each other \u2013 case in point, I was formerly a community contributor before becoming a maintainer.\\n\\nWe are constantly mentioned on X with inspirational feedback:\\n\\n> **@docusaurus** is amazing! cant believe it\'s THAT simple to use.\\n\\n> No extra plugins, tooling or compilation steps. It just works out of the box.\\n\\n> I love **@docusaurus**. I couldn\'t have built the APIs, tutorials, and blogs contained in my site efficiently and beautifully in my workflow without Docusaurus.\\n\\nAnd we keep every one of them in [our little box](https://x.com/sebastienlorber/timelines/1392048416872706049) \uD83D\uDE04 If you enjoy Docusaurus yourself, keep tagging us with your comments!\\n\\nAs we approach the official release, we are interested in knowing more about what people are doing out there: [plugin authors](https://github.com/facebook/docusaurus/discussions/4025), [creators of customized sites](https://github.com/facebook/docusaurus/discussions/5468), and [all new users](https://github.com/facebook/docusaurus/discussions/4610) \u2013 please keep us posted about your achievements so we can steer our development to better serve your needs.\\n\\n## Going forward\\n\\nIn the past few months, we have been constantly speaking about the release-candidate phase of Docusaurus, and yes, it\'s almost there. We have created a dedicated [milestone](https://github.com/facebook/docusaurus/milestone/15) to keep track of all issues to solve before we can confidently progress to the next stage. In short, we want to build a **more robust theming workflow**, empowering creative site creators to customize our default theme without fearing breaking changes as they upgrade. This will include:\\n\\n- Guidelines on **component organization**. We want the theme components to have the right granularity so when you want to customize a part of your site, there\'s always a component doing just what you need.\\n- Improvements to the **swizzle CLI**. We want users to use it with delight and let it aid you through all possible swizzling scenarios.\\n- Refactoring our **theme APIs**. We want all swizzlable components to be actually appropriate for swizzling, so non-UI components will be re-located.\\n- **Docs**. We want our docs to be maximally accessible to everyone \u2013 from first-time coders to experienced web developers. We will organize it as a more progressive tutorial that can be beneficial for every skill level.\\n\\nRead more about plans for Docusaurus 2.0 in this [roadmap issue](https://github.com/facebook/docusaurus/issues/6113). 2.0 will be a greater release with the help from the community, so please share your opinions and suggestions under any of the milestone issues!\\n\\nAs the core team is working hard to ship the general availability release, we plan to release other useful features as minor versions after 2.0. We have even made further plans for [architectural changes in 3.0](https://github.com/facebook/docusaurus/milestone/16)!\\n\\nWith the official release of Docusaurus 2.0, we are confident to see much more new adoptions and migrations from v1.\\n\\nWe\'d like to express our gratitude to [all the contributors in 2021](https://github.com/facebook/docusaurus/graphs/contributors?from=2021-01-01&to=2022-01-01&type=c), including:\\n\\n- The core team: [Alexey Pyltsyn](https://github.com/lex111), [S\xe9bastien Lorber](https://github.com/slorber), [Joshua Chen](https://github.com/Josh-Cena), and [Yangshun Tay](https://github.com/yangshun) for moderating the community, publicizing Docusaurus, triaging issues, and implementing new features\\n- [Joel Marcey](https://github.com/JoelMarcey) for creating Docusaurus and supporting its development all along\\n- The Algolia team for helping Docusaurus users [migrate to the new DocSearch](/blog/2021/11-21-algolia-docsearch-migration/index.mdx) and answering search-related questions\\n- All the active community members for making valuable code contributions, improving our documentation, and answering questions on Discord\\n\\nSo long, 2021, and let\'s greet a great 2022!"},{"id":"/2021/11/21/algolia-docsearch-migration","metadata":{"permalink":"/blog/2021/11/21/algolia-docsearch-migration","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/2021/11-21-algolia-docsearch-migration/index.mdx","source":"@site/blog/2021/11-21-algolia-docsearch-migration/index.mdx","title":"DocSearch migration","description":"DocSearch is migrating to a new, more powerful system, which gives users their own Algolia application and new credentials.","date":"2021-11-21T00:00:00.000Z","tags":[{"inline":false,"label":"Search","permalink":"/blog/tags/search"}],"readingTime":2.96,"hasTruncateMarker":true,"authors":[{"name":"Cl\xe9ment Vannicatte","title":"Software Engineer @ Algolia","url":"https://github.com/shortcuts","socials":{"x":"https://x.com/sh0rtcts","github":"https://github.com/shortcuts"},"imageURL":"https://github.com/shortcuts.png","key":"shortcuts","page":null},{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer, This Week In React editor","url":"https://thisweekinreact.com","page":{"permalink":"/blog/authors/slorber"},"description":"A freelance React and React-Native developer near Paris and Docusaurus maintainer. Also runs ThisWeekInReact.com, a newsletter to stay updated with the React ecosystem.","socials":{"bluesky":"https://bsky.app/profile/sebastienlorber.com","x":"https://x.com/sebastienlorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","github":"https://github.com/slorber","instagram":"https://www.instagram.com/thisweekinreact","newsletter":"https://thisweekinreact.com"},"imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"title":"DocSearch migration","authors":["shortcuts","slorber"],"tags":["search"],"image":"./img/social-card.png"},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Docusaurus 2021 Recap","permalink":"/blog/2022/01/24/docusaurus-2021-recap"},"nextItem":{"title":"Announcing Docusaurus 2 Beta","permalink":"/blog/2021/05/12/announcing-docusaurus-two-beta"}},"content":"[DocSearch](https://docsearch.algolia.com/) is migrating to a new, more powerful system, which gives users their own Algolia application and new credentials.\\n\\nDocusaurus site owners should upgrade their configuration with their new credentials **by February 1, 2022**, existing search indexes will be frozen and become read-only after this date.\\n\\n\x3c!--truncate--\x3e\\n\\n## Upgrading your Docusaurus site\\n\\nIn the next few weeks, Docusaurus site owners will receive an email inviting them to join their personal Algolia application.\\n\\nThis email will include a new `appId` and `apiKey` to use in your Docusaurus configuration.\\n\\nThe only things you have to do:\\n\\n- Join the Algolia application (eventually creating a new Algolia account)\\n- Update your site configuration.\\n\\n```js title=\\"docusaurus.config.js\\"\\nconst config = {\\n themeConfig: {\\n algolia: {\\n // highlight-start\\n appId: \'<NEW_APP_ID>\',\\n apiKey: \'<NEW_SEARCH_API_KEY>\',\\n // highlight-end\\n },\\n },\\n};\\n\\nmodule.exports = config;\\n```\\n\\n:::info\\n\\n`appId` is now **required**.\\n\\nThese keys are not secrets and can be added to your Git repository.\\n\\n:::\\n\\n## DocSearch has a new home!\\n\\n### What is DocSearch?\\n\\n[DocSearch](https://docsearch.algolia.com/) is a program created by [Algolia](http://algolia.com/), which offers search to technical documentation of Open Source projects and technical blogs **for free**.\\n\\nYou can [read more here](https://docsearch.algolia.com/docs/what-is-docsearch/), and [apply](https://docsearch.algolia.com/apply) if you\'d like to give it a try!\\n\\n## What is this migration about?\\n\\n### Motivation\\n\\nWith the upcoming stable release of [DocSearch UI](https://docsearch.algolia.com/docs/DocSearch-v3), we wanted to go further and provide better tooling for our users to improve their search, but also leverage the full potential of Algolia.\\n\\n### What\'s new?\\n\\nDocSearch now leverages the [Algolia Crawler](https://www.algolia.com/products/search-and-discovery/crawler/), which includes a web interface that will allow you to:\\n\\n- Start, schedule and monitor your crawls\\n- Edit your config file from a live editor\\n- Test your results with DocSearch v3\\n\\n![The Algolia crawler front page showing the project\'s overview, such as last complete crawl and indices](./img/crawler-overview.png)\\n\\n![The Algolia config editor opened to the docusaurus-2 config. The right pane shows the results for index and various facet filters.](./img/editor.png)\\n\\nBut also, more Algolia features in **your own Algolia app**:\\n\\n- Team management\\n- Browse and see how your records are indexed in Algolia\\n- Try other Algolia features with free trials\\n\\n![The Algolia index overview page, showing various filters and the details of every single index](./img/index-overview.png)\\n\\n![The Algolia index analytics page, showing trends for total users, total searches, etc.](./img/index-analytics.png)\\n\\nAnd of course, **a lot more, for free**.\\n\\n## FAQ\\n\\n### I\'m using Docusaurus and DocSearch, can I migrate? {#im-using-docusaurus-and-docsearch-can-i-migrate}\\n\\nAt the time we are writing this, we are still at an early stage of the migration. We are doing small batches every week but will increase the load shortly, so please be patient and keep an eye out in your mailbox, you\'ll be contacted as soon as your Algolia app is ready!\\n\\n### Where can I read more about this?\\n\\nWe wrote a small [migration guide](https://docsearch.algolia.com/docs/migrating-from-legacy) but you\'ll have more detailed information in the migration email.\\n\\n### I received the migration email but the invite expired\\n\\nPlease contact us via either [email](mailto:docsearch@algolia.com) or [DocSearch\'s Discord](https://discord.gg/bRTacwYrfX) or on [Docusaurus\'s Discord #algolia channel](https://discordapp.com/invite/docusaurus)\\n\\n### I have feedback!\\n\\nFor any feedback regarding our documentation or the DocSearch UI component, you can open an issue [on our GitHub repository](https://github.com/algolia/docsearch/issues), but also contact us via the methods above.\\n\\n### Can I still run my own DocSearch instance?\\n\\nIn favor of the new infrastructure and DocSearch v3, we will no longer maintain our beloved [DocSearch scraper](https://github.com/algolia/docsearch-scraper) and [DocSearch v2](https://github.com/algolia/docsearch/tree/master), but the repositories will still be available and open to pull requests.\\n\\nThe previous documentation (now called `legacy`) remains available as well as our [`run your own`](https://docsearch.algolia.com/docs/legacy/run-your-own) guide."},{"id":"/2021/05/12/announcing-docusaurus-two-beta","metadata":{"permalink":"/blog/2021/05/12/announcing-docusaurus-two-beta","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/2021/05-12-announcing-docusaurus-two-beta/index.mdx","source":"@site/blog/2021/05-12-announcing-docusaurus-two-beta/index.mdx","title":"Announcing Docusaurus 2 Beta","description":"After a lengthy alpha stage in order to ensure feature parity and quality, we are excited to officially release the first Docusaurus 2 beta.","date":"2021-05-12T00:00:00.000Z","tags":[{"inline":false,"label":"Release","permalink":"/blog/tags/release","description":"Blog posts about Docusaurus\' new releases"},{"inline":false,"label":"Beta","permalink":"/blog/tags/beta"}],"readingTime":3.52,"hasTruncateMarker":true,"authors":[{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer, This Week In React editor","url":"https://thisweekinreact.com","page":{"permalink":"/blog/authors/slorber"},"description":"A freelance React and React-Native developer near Paris and Docusaurus maintainer. Also runs ThisWeekInReact.com, a newsletter to stay updated with the React ecosystem.","socials":{},"imageURL":"./img/slorber.png","key":"slorber","image_url":"./img/slorber.png"},{"name":"Joel Marcey","title":"Developer Advocate at Meta","url":"https://x.com/JoelMarcey","page":{"permalink":"/blog/authors/j-marcey"},"socials":{"x":"https://x.com/joelmarcey","github":"https://github.com/JoelMarcey"},"imageURL":"https://github.com/JoelMarcey.png","key":"JMarcey"},{"name":"Yangshun Tay","title":"Ex-Meta Staff Engineer, Co-founder GreatFrontEnd","url":"https://linkedin.com/in/yangshun","page":{"permalink":"/blog/authors/yangshun"},"socials":{"x":"https://x.com/yangshunz","linkedin":"https://www.linkedin.com/in/yangshun/","github":"https://github.com/yangshun","newsletter":"https://www.greatfrontend.com"},"imageURL":"https://github.com/yangshun.png","key":"yangshun"},{"name":"Alexey Pyltsyn","title":"Open-source enthusiast","url":"https://github.com/lex111","email":"lex@php.net","page":{"permalink":"/blog/authors/lex-111"},"imageURL":"https://github.com/lex111.png","key":"lex111"}],"frontMatter":{"title":"Announcing Docusaurus 2 Beta","authors":[{"key":"slorber","image_url":"./img/slorber.png","imageURL":"./img/slorber.png"},"JMarcey","yangshun","lex111"],"tags":["release","beta"],"image":"./img/social-card.png"},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"DocSearch migration","permalink":"/blog/2021/11/21/algolia-docsearch-migration"},"nextItem":{"title":"Releasing Docusaurus i18n","permalink":"/blog/2021/03/09/releasing-docusaurus-i18n"}},"content":"After a lengthy alpha stage in order to ensure feature parity and quality, we are excited to officially release the first **[Docusaurus 2 beta](https://github.com/facebook/docusaurus/releases/tag/v2.0.0-beta.0)**.\\n\\nWith the announcement of this beta, the team is even more confident that Docusaurus 2 is **ready for mainstream adoption**!\\n\\n![](./img/image_cropped.png)\\n\\n\x3c!--truncate--\x3e\\n\\n## Docusaurus adoption\\n\\n**Don\'t fear the beta tag!**\\n\\nDocusaurus 2 is widely adopted and growing fast:\\n\\n[![Docusaurus v1 vs. v2 npm trends from 2019 to mid 2021. The installations of Docusaurus v2 is sharply rising, while v1 is mostly stable. V1 fluctuates between 10000 and 20000, while v2 starts at 0 and ends at almost 60000. The intersection happens around June 2020.](./img/trend.png)](https://www.npmtrends.com/docusaurus-vs-@docusaurus/core)\\n\\nTo get a fuller understanding of the quality of current Docusaurus 2 sites, our new [showcase](https://docusaurus.io/showcase) page allows you to filter Docusaurus sites by features, so you may get inspired by real-world production sites with a similar use-case as yours!\\n\\nDon\'t miss our [favorite](https://docusaurus.io/showcase?tags=favorite) sites; they all stand out with something unique:\\n\\n[![A screenshot of the showcase\'s favorites section, with 12 cards each displaying the information and preview of one site](./img/favorites.png)](https://docusaurus.io/showcase?tags=favorite)\\n\\n## Why was Docusaurus v2 in alpha for so long?\\n\\nIt\'s hard to believe that the first alpha release [v2.0.0-alpha.0](https://github.com/facebook/docusaurus/releases/tag/v2.0.0-alpha.0) was 2 years ago \uD83D\uDE33 , unusually long for a software alpha.\\n\\nAs this was a substantial re-architecture of the code base, we wanted to ensure that we had confidence in the stability and features of Docusaurus 2 before moving on to a beta stage, since beta suggests a high level of quality. We are happy to say that Docusaurus 2 has reached **feature parity** with Docusaurus 1 with **[i18n](https://docusaurus.io/blog/2021/03/09/releasing-docusaurus-i18n)**, and it has been **successfully adopted** by many Docusaurus sites (see [i18n showcase](https://docusaurus.io/showcase?tags=i18n)).\\n\\nWe\'re now quite confident that the core features of Docusaurus 2 are stable enough to be in beta.\\n\\n## What are the goals of the beta?\\n\\nNow that Docusaurus 2 is stable and major feature complete, the goal of the beta is to inspire confidence in new users on the production-readiness of Docusaurus 2, migrate more remaining Docusaurus 1 users to version 2, and officially deprecate Docusaurus 1. We will, of course, continue to resolve any issues and bugs that may be discovered.\\n\\nIn addition, we will use the beta phase to **improve our theming system**.\\n\\nWe want to make it:\\n\\n- **easier to implement a custom theme**, including for ourselves. We want to provide [multiple official themes](https://github.com/facebook/docusaurus/issues/3522) (including [Tailwind CSS](https://github.com/facebook/docusaurus/issues/2961)) for a long time.\\n\\n- **safer to extend an existing theme**: it can be painful to upgrade a highly customized Docusaurus site, as customizations can conflict with internal changes. We need to make the theme public API surface more explicit, and make it clear what is safe to customize.\\n\\nWe will build a better **theming infrastructure** and refactor the classic theme to use it.\\n\\nIf you customize your site, you may find these planned improvements quite valuable.\\n\\n## What\'s new?\\n\\nIn case you missed it, we recently shipped two major improvements:\\n\\n- [Auto-generated sidebars](https://docusaurus.io/docs/sidebar#sidebar-item-autogenerated): no need to maintain a `sidebars.js` file anymore!\\n- [Webpack 5 / PostCSS 8](https://github.com/facebook/docusaurus/issues/4027): persistent caching significantly speeds up **rebuild time**!\\n\\n## What\'s next?\\n\\nShipping the official 2.0 release!\\n\\nTo get there, we will continue to **fix bugs** and implement the **most wanted features**, including:\\n\\n- [Sidebar category index pages](https://github.com/facebook/docusaurus/issues/2643)\\n- [Better mobile navigation UX](https://github.com/facebook/docusaurus/issues/2220)\\n- [Better admonition design](https://github.com/facebookincubator/infima/issues/55)\\n- [CSS-in-JS support](https://github.com/facebook/docusaurus/issues/3236)\\n- [Improve build time performance](https://github.com/facebook/docusaurus/issues/4765)\\n- [Extend Docusaurus plugins, CMS integration](https://github.com/facebook/docusaurus/issues/4138)\\n- [Fix trailing slashes and relative link issues](https://github.com/facebook/docusaurus/issues/3372)\\n- [Better compatibility with CommonMark](https://github.com/facebook/docusaurus/issues/3018)\\n- [Upgrade to MDX 2.0](https://github.com/facebook/docusaurus/issues/4029)\\n\\n## Conclusion\\n\\nThis is an exciting time for Docusaurus.\\n\\nWe are inspired by the [positive feedback](https://x.com/sebastienlorber/timelines/1392048416872706049) about Docusaurus, and discover new sites online every single day.\\n\\nWe are so excited for this beta release. We strove for quality and stability while continuing to try to increase the adoption of Docusaurus. For those that have been on the fence from migrating an existing Docusaurus site to Docusaurus 2, it is a great time to upgrade. We want you running on the latest infrastructure when we deprecate Docusaurus 1 at the end of this beta period. Let us know how we can help.\\n\\nThank you to everyone for reading and to the entire community who supports Docusaurus. \uD83E\uDD17"},{"id":"/2021/03/09/releasing-docusaurus-i18n","metadata":{"permalink":"/blog/2021/03/09/releasing-docusaurus-i18n","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/2021/03-09-releasing-docusaurus-i18n.mdx","source":"@site/blog/2021/03-09-releasing-docusaurus-i18n.mdx","title":"Releasing Docusaurus i18n","description":"Today, we officially release Docusaurus 2 i18n (internationalization), as part of 2.0.0-alpha.71.","date":"2021-03-09T00:00:00.000Z","tags":[{"inline":false,"label":"Release","permalink":"/blog/tags/release","description":"Blog posts about Docusaurus\' new releases"},{"inline":false,"label":"I18n","permalink":"/blog/tags/i-18-n"}],"readingTime":3.445,"hasTruncateMarker":true,"authors":[{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer, This Week In React editor","url":"https://thisweekinreact.com","page":{"permalink":"/blog/authors/slorber"},"description":"A freelance React and React-Native developer near Paris and Docusaurus maintainer. Also runs ThisWeekInReact.com, a newsletter to stay updated with the React ecosystem.","socials":{"bluesky":"https://bsky.app/profile/sebastienlorber.com","x":"https://x.com/sebastienlorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","github":"https://github.com/slorber","instagram":"https://www.instagram.com/thisweekinreact","newsletter":"https://thisweekinreact.com"},"imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"title":"Releasing Docusaurus i18n","authors":["slorber"],"tags":["release","i18n"],"image":"/img/blog/2021-03-09-releasing-docusaurus-i18n/social-card.png"},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Announcing Docusaurus 2 Beta","permalink":"/blog/2021/05/12/announcing-docusaurus-two-beta"},"nextItem":{"title":"Docusaurus 2020 Recap","permalink":"/blog/2021/01/19/docusaurus-2020-recap"}},"content":"Today, we officially release **[Docusaurus 2 i18n](https://docusaurus.io/docs/i18n/introduction)** ([internationalization](https://en.wikipedia.org/wiki/Internationalization_and_localization)), as part of [2.0.0-alpha.71](https://github.com/facebook/docusaurus/releases/tag/v2.0.0-alpha.71).\\n\\nDocusaurus 2 has now reached **full feature parity with Docusaurus 1**. \uD83C\uDF89 And soon, after a few additional infrastructure updates and a bit more testing, the **first Docusaurus 2 beta** will be released.\\n\\n**We went the extra mile**, and the new i18n support is **even better than in Docusaurus 1**.\\n\\nIn this post, we will present you the **translation workflow**, explain some **design decisions** and **showcase early adopter sites** that just went live: [Jest](https://jestjs.io/), [Redwood](https://learn.redwoodjs.com/), and [Datagit](https://datagit.ir/).\\n\\nWe also **dogfood** the i18n support on the **Docusaurus 2 site itself**, and this post is already available in [English](https://docusaurus.io/blog/2021/03/09/releasing-docusaurus-i18n) and [French](https://docusaurus.io/fr/blog/2021/03/09/releasing-docusaurus-i18n)!\\n\\n\x3c!--truncate--\x3e\\n\\n## Translate your site\\n\\nYou can translate a Docusaurus site in **3 simple steps**:\\n\\n1. **Configure**: declare the default locale and alternative locales in `docusaurus.config.js`\\n1. **Translate**: put the translation files at the [correct filesystem location](https://docusaurus.io/docs/next/i18n/introduction#translation-files-location)\\n1. **Deploy**: build and deploy your site using a single or multi-domain strategy\\n\\nThe i18n support is **very flexible** and based on the **filesystem**.\\n\\nThe **[i18n tutorial](https://docusaurus.io/docs/i18n/tutorial)** is the best way to get started, and we provide help to use **[Git](https://docusaurus.io/docs/i18n/git)** or **[Crowdin](https://docusaurus.io/docs/i18n/crowdin)**.\\n\\n## Design decisions\\n\\nThe goals of the Docusaurus i18n system are:\\n\\n- **Simple**: just put the translated files in the [correct filesystem location](https://docusaurus.io/docs/next/i18n/introduction#translation-files-location)\\n- **Flexible translation workflows**: use Git (monorepo, forks, or submodules), SaaS software, FTP\\n- **Flexible deployment options**: single, multiple domains, or hybrid\\n- **Modular**: allow plugin authors to provide i18n support\\n- **Low-overhead runtime**: documentation is mostly static and does not require a heavy JS library or polyfills\\n- **Scalable build-times**: allow building and deploying localized sites independently\\n- **Localize assets**: an image of your site might contain text that should be translated\\n- **No coupling**: not forced to use any SaaS, yet integrations are possible\\n- **Easy to use with [Crowdin](https://crowdin.com/)**: multiple Docusaurus 1 sites use Crowdin, and should be able to migrate to v2\\n- **Good SEO defaults**: we set useful SEO headers like [`hreflang`](https://developers.google.com/search/docs/advanced/crawling/localized-versions) for you\\n- **RTL support**: locales reading right-to-left (Arabic, Hebrew, etc.) are supported and easy to implement\\n- **Default translations**: classic theme labels are translated for you in [many languages](https://github.com/facebook/docusaurus/tree/main/packages/docusaurus-theme-translations/locales)\\n\\n## Showcase\\n\\nWe worked with a few volunteers to **dogfood the i18n support** before releasing it.\\n\\n### Jest: upgrading Docusaurus\\n\\nWe have made it possible to **upgrade** a **translated Docusaurus 1 site** to Docusaurus 2.\\n\\n**[Jest](https://jestjs.io)**, using Docusaurus 1 and Crowdin was one of those sites.\\n\\nThe Docusaurus 2 migration was successful and the new site is now deployed in production ([announcement post](https://jestjs.io/blog/2021/03/09/jest-website-upgrade)).\\n\\n[![Jest\'s website front page in Japanese](/img/blog/2021-03-09-releasing-docusaurus-i18n/jest.png)](https://jestjs.io)\\n\\n### Redwood: adopting Docusaurus\\n\\n[Redwood](https://redwoodjs.com/) is a React full-stack Jamstack framework.\\n\\nThey were looking for a solution to create an **internationalized learning platform**, and became early adopters of Docusaurus 2 i18n for [learn.redwoodjs.com](https://learn.redwoodjs.com/), using Crowdin to get it translated to French.\\n\\n[![Redwood\'s doc page in French](/img/blog/2021-03-09-releasing-docusaurus-i18n/redwood.png)](https://learn.redwoodjs.com/)\\n\\n### Datagit: using LTR support\\n\\nThe i18n system should work with any language, including **Right-to-Left languages**.\\n\\n[Datagit.ir](https://datagit.ir/) is using Farsi, and a simple configuration option is able to **flip the Docusaurus theme** to add the required Right-to-Left support.\\n\\n[![Datagit\'s website in Persian, a right-to-left language. The sidebar appears on the right of the window and the TOC appears on the left.](/img/blog/2021-03-09-releasing-docusaurus-i18n/datagit.png)](https://datagit.ir/)\\n\\n## Conclusion\\n\\nWe sincerely hope you will adopt and like the new i18n support.\\n\\nThis feature has not been an easy one, and we would like to thank everyone that got involved in this journey:\\n\\n- [Alexey](https://github.com/lex111) for his help to make the i18n support exhaustive and even better than v1\\n- [Simen](https://github.com/SimenB) for volunteering and supporting the Jest migration\\n- [Claire](https://github.com/clairefro) for adopting Docusaurus 2 on the new Redwood platform and providing many feedbacks\\n- [Massoud](https://github.com/massoudmaboudi) for reviewing my work on LTR and adopting it on Datagit\\n- [Crowdin](https://crowdin.com/) for their support and willingness to improve their translation SaaS\\n- The Docusaurus community for their patience, and providing many useful feedbacks on GitHub\\n\\nThanks for reading.\\n\\n\uD83D\uDE4F And please, add your brand new i18n sites to our [showcase page](https://docusaurus.io/showcase). We accept any all polished Docusaurus site here, and we are working on a [redesign](https://github.com/facebook/docusaurus/issues/4238) allowing you to filter sites by features."},{"id":"/2021/01/19/docusaurus-2020-recap","metadata":{"permalink":"/blog/2021/01/19/docusaurus-2020-recap","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/2021/01-19-docusaurus-2020-recap.mdx","source":"@site/blog/2021/01-19-docusaurus-2020-recap.mdx","title":"Docusaurus 2020 Recap","description":"2020 was great for Docusaurus, despite a regrettable start and a tumultuous year for everyone.","date":"2021-01-19T00:00:00.000Z","tags":[{"inline":false,"label":"Recap","permalink":"/blog/tags/recap","description":"Blog posts about Docusaurus\' year recaps"}],"readingTime":5.04,"hasTruncateMarker":true,"authors":[{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer, This Week In React editor","url":"https://thisweekinreact.com","page":{"permalink":"/blog/authors/slorber"},"description":"A freelance React and React-Native developer near Paris and Docusaurus maintainer. Also runs ThisWeekInReact.com, a newsletter to stay updated with the React ecosystem.","socials":{"bluesky":"https://bsky.app/profile/sebastienlorber.com","x":"https://x.com/sebastienlorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","github":"https://github.com/slorber","instagram":"https://www.instagram.com/thisweekinreact","newsletter":"https://thisweekinreact.com"},"imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"title":"Docusaurus 2020 Recap","authors":["slorber"],"tags":["recap"],"image":"/img/docusaurus-2020-recap.png"},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Releasing Docusaurus i18n","permalink":"/blog/2021/03/09/releasing-docusaurus-i18n"},"nextItem":{"title":"Tribute to Endi","permalink":"/blog/2020/01/07/tribute-to-endi"}},"content":"**2020 was great for Docusaurus**, despite [a regrettable start](https://docusaurus.io/blog/2020/01/07/tribute-to-endi) and a tumultuous year for everyone.\\n\\nWe continued to invest in [Docusaurus 2](https://docusaurus.io/), and made it reach **full feature parity** with [Docusaurus 1](https://v1.docusaurus.io/).\\n\\nWe now **recommend Docusaurus 2** as the **default choice** to start a new Docusaurus project and encourage v1 users to [migrate to Docusaurus 2](https://docusaurus.io/docs/migration).\\n\\nWe are **still in alpha**, but expect **some good news very soon**!\\n\\n![Three Docusaurus plushies laid side-by-side on the table](/img/blog/2020-recap/docusaurus-plushie-banner.jpeg)\\n\\n\x3c!--truncate--\x3e\\n\\n## Docusaurus 2 highlights\\n\\nWe have worked on many features this year, and would like to highlight the most significant ones:\\n\\n- **i18n**: easily translate your Docusaurus site, released soon! ([preview](https://github.com/facebook/docusaurus/pull/3325), [doc](https://docusaurus.io/docs/next/i18n/introduction))\\n- **Version dropdown**: enable contextual version switch\\n- **Versioning options**: solving the most common pain-points users had with versioning\\n- **Contextual search**: search in the current version, use the brand-new DocSearch 3 experience\\n- **Markdown pages**: use Markdown instead of React components to create standalone pages\\n- **Better theme**: various UI, UX and accessibility improvements\\n- **PWA**: add offline support to your site, and make it installable\\n- **Fail-fast**: strict config validation, detect broken links, and prevent bad production deployments\\n- **Multi-instance**: use the docs plugin twice on a single site (e.g. iOS/Android SDK docs)\\n- **Migration CLI**: automate the upgrade from Docusaurus 1\\n- **CodeSandbox**: assess Docusaurus easily from your browser with [new.docusaurus.io](https://new.docusaurus.io/)\\n- **Canary releases**: use the `@canary` npm tag to use the upcoming release before anyone else\\n- **TypeScript**: progressive adoption for internal code, and improve usage for users\\n- **Publish Infima**: it is now [open-source](https://github.com/facebookincubator/infima)\\n\\n## Docusaurus 2 growth\\n\\nThe plan to [rebuild Docusaurus from scratch in 2019](https://docusaurus.io/blog/2019/12/30/docusaurus-2019-recap) paid off: after a slow start, Docusaurus 2 has been widely adopted and has **already outgrown Docusaurus 1** usage.\\n\\n![Docusaurus v1 vs. v2 npm trends of the year 2020. The installations of Docusaurus v2 is visibly up-growing, while v1 is slightly downward. V1 starts at 15000 and ends at 10000, while v2 starts at 2000 and ends at 25000. The intersection happens around June 2020.](/img/blog/2020-recap/docusaurus-npm-trends.png)\\n\\nNotable **projects, startups, large companies, and individuals** adopted Docusaurus 2 ([showcase](https://docusaurus.io/showcase)):\\n\\n- [Supabase](https://supabase.io)\\n- [React Navigation](https://reactnavigation.org)\\n- [React Redux](https://react-redux.js.org/)\\n- [Vector](https://vector.dev)\\n- [Algolia DocSearch](https://docsearch.algolia.com)\\n- [SAP Cloud SDK](https://sap.github.io/cloud-sdk)\\n- [Palo Alto Cortex XSOAR](https://xsoar.pan.dev)\\n- [Qudd\xfas George\'s website](https://portfoliosaurus.now.sh)\\n\\nWe helped **large scale Docusaurus 1 sites to upgrade**, ensuring a proper **migration path** and **feature parity**.\\n\\n[React Native](https://reactnative.dev/) was successfully upgraded to Docusaurus 2 ([archived v1 site](http://archive.reactnative.dev/)):\\n\\n![React Native\'s new website built with Docusaurus v2](/img/blog/2020-recap/react-native-screenshot.png)\\n\\nLocalized Docusaurus 1 sites (like **Jest**) will be able to upgrade too:\\n\\n![Jest\'s new website built with Docusaurus v2 in Japanese](/img/blog/2020-recap/jest-screenshot.png)\\n\\nWe also saw the **[first right-to-left](https://datagit.ir/)** Docusaurus 2 site published:\\n\\n![Datagit\'s website in Persian, a right-to-left language. The sidebar appears on the right of the window and the TOC appears on the left.](/img/blog/2020-recap/datagit-rtl-screenshot.png)\\n\\n## GitHub Activity\\n\\n- **Stars**: 14632 \u2192 20946 (+43.2% y/y)\\n- **Total Contributors**: 303 \u2192 512 (+68.9% y/y). Most of which are non-Facebook contributors\\n- **Weekly npm Downloads**: 2356 \u2192 25592 (+986% y/y)\\n- **On GitHub**, Docusaurus 1 is used by 6311 projects (+62.9% y/y) while Docusaurus 2 is used by 5039 projects (+1940% y/y)\\n\\n## Collaboration with Major League Hacking\\n\\nWe have welcomed [Major League Hacking](https://mlh.io/) (MLH) fellows for 2 seasons already.\\n\\nWe are very thankful for the **various contributions** they made, such as:\\n\\n- Writing the foundations of the v1 to v2 migration CLI\\n- Help migrate the React Native website from v1 to v2\\n- Making the config validation more strict and exhaustive, returning helpful error messages\\n- Adding CodeSandbox support\\n- Improving the CI pipelines: build size and Lighthouse bots\\n\\nWe look forward to continuing this collaboration in 2021.\\n\\n## Media\\n\\nDmitry Vinnik (Developer Advocate @ Facebook) explains Docusaurus in [60 seconds](https://www.youtube.com/watch?v=_An9EsKPhp0) or [15min](https://www.youtube.com/watch?v=Yhyx7otSksg) videos.\\n\\nRachel Nabors (Documentation Engineer @ Facebook) talked a bit about Docusaurus in [React Native Radio 178 (podcast)](https://reactnativeradio.com/episodes/178-documenting-react-native-with-rachel-nabors-gWxwySPl), and William Candillon the [React Native website migration (video)](https://www.youtube.com/watch?v=-zhjq2ECKq4).\\n\\nMany blog posts have been published:\\n\\n- [To the Makers of Docusaurus](https://portfoliosaurus.now.sh/blog/toTheMakers) by Quddus George\\n- [Richer API documentation with Redoc and Docusaurus](https://davidgoss.co/blog/api-documentation-redoc-docusaurus/) by David Goss\\n- [How to Build a Plugin for Docusaurus v2](https://aknapen.nl/blog/how-to-build-a-plugin-for-docusaurus-v2/) by Adriaan Knapen\\n- [React Tracked Documentation Website with Docusaurus v2](https://blog.axlight.com/posts/react-tracked-documentation-website-with-docusaurus-v2/) by Daishi Kato\\n- [Easy documentation with Docusaurus](https://blog.logrocket.com/easy-documentation-with-docusaurus/) by Anshul Goyal (MLH fellow)\\n- [Build Beautiful Documentation Websites with Docusaurus](https://lo-victoria.com/build-beautiful-documentation-websites-with-docusaurus) by Victoria Lo\\n\\n## Community\\n\\nThe Docusaurus community continues to grow, the [Discord](https://discord.gg/docusaurus) server is quite active, and [Stack Overflow questions](https://stackoverflow.com/questions/tagged/docusaurus) keep being posted.\\n\\nThe **modular architecture** of Docusaurus 2 allowed the community to build and publish [third-party plugins](https://docusaurus.io/community/resources#community-plugins-). As we would like to federate better our community, if you are building a plugin, please [let us know](https://github.com/facebook/docusaurus/discussions/4025).\\n\\n## What\'s next?\\n\\nAs the **core features of Docusaurus 2** have finally been built, we will be able to dedicate more time to solve the pain points and bugs reported by the community, and make Docusaurus stable and convenient enough to enter the **beta and release-candidate phase**.\\n\\nWith proper support for **i18n and versioning**, and **large scale migrations** such as **React Native** and **Jest**, we now have a clear migration path for all Docusaurus 1 sites.\\n\\nWe still have a few **major features** that we would like to work on:\\n\\n- [Create a theme gallery](https://github.com/facebook/docusaurus/issues/3522), make it easy to switch from one another, and include **first-class Tailwind support**\\n- [Upgrade to Webpack 5](https://github.com/facebook/docusaurus/issues/4027), improve performances and build times\\n- [Better compatibility with CommonMark](https://github.com/facebook/docusaurus/issues/3018), as MDX and makes it harder for CommonMark-based sites to adopt Docusaurus\\n- [Upgrade to MDX 2.0](https://github.com/facebook/docusaurus/issues/4029)\\n- Other tasks that we might discover during 2021\\n\\nHuge thanks to the community for [their contributions in 2020](https://github.com/facebook/docusaurus/graphs/contributors?from=2020-01-01&to=2021-01-01&type=c), especially:\\n\\n- [Joel Marcey](https://github.com/JoelMarcey) for creating Docusaurus and supporting the project all this time\\n- the core team - [Alexey Pyltsyn](https://github.com/lex111), [S\xe9bastien Lorber](https://sebastienlorber.com), [Yangshun Tay](https://x.com/yangshunz)\\n- the Major League Hacking and Facebook interns for their significant impact\\n- the Algolia team for DocSearch 3 and their support\\n- [Bartosz Kaszubowski](https://github.com/Simek) for his investment in the React Native migration\\n- the whole community for their contributions, and providing support to each other\\n\\nCheers to a great 2021! \uD83C\uDF89"},{"id":"/2020/01/07/tribute-to-endi","metadata":{"permalink":"/blog/2020/01/07/tribute-to-endi","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/2020/01-07-tribute-to-endi.mdx","source":"@site/blog/2020/01-07-tribute-to-endi.mdx","title":"Tribute to Endi","description":"It is with great sadness to announce that our primary external Docusaurus contributor, Endilie Yacop Sucipto (Endi to those who knew him), passed away over the weekend after an illness associated with his bout with cancer.","date":"2020-01-07T00:00:00.000Z","tags":[{"inline":false,"label":"Endi","permalink":"/blog/tags/endi"},{"inline":false,"label":"Tribute","permalink":"/blog/tags/tribute"}],"readingTime":0.895,"hasTruncateMarker":true,"authors":[{"name":"Joel Marcey","title":"Developer Advocate at Meta","url":"https://x.com/JoelMarcey","page":{"permalink":"/blog/authors/j-marcey"},"socials":{"x":"https://x.com/joelmarcey","github":"https://github.com/JoelMarcey"},"imageURL":"https://github.com/JoelMarcey.png","key":"JMarcey"}],"frontMatter":{"title":"Tribute to Endi","authors":"JMarcey","tags":["endi","tribute"]},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Docusaurus 2020 Recap","permalink":"/blog/2021/01/19/docusaurus-2020-recap"},"nextItem":{"title":"Docusaurus 2019 Recap","permalink":"/blog/2019/12/30/docusaurus-2019-recap"}},"content":"It is with great sadness to announce that our primary external Docusaurus contributor, [Endilie Yacop Sucipto](https://github.com/endiliey) (Endi to those who knew him), [passed away](https://give.asia/campaign/help_endi_beat_cancer#/updates) over the weekend after an illness associated with his bout with cancer.\\n\\n\x3c!--truncate--\x3e\\n\\nIt is impossible to overstate Endi\'s impact on this project:\\n\\n- Docusaurus\' top contributor, [by far](https://github.com/facebook/docusaurus/graphs/contributors).\\n- [Lead developer](https://docusaurus.io/blog/2018/09/11/Towards-Docusaurus-2) on the nearly complete [version 2 of Docusaurus](https://docusaurus.io/blog/2019/12/30/docusaurus-2019-recap).\\n- Overall passionate advocate of the project on [X](https://x.com/endiliey), [Discord](https://discord.gg/docusaurus) and other social media\\n\\nThinking about it now, it is absolutely amazing how much Endi accomplished on Docusaurus given what he was battling with his health.\\n\\nWe are working on ways to honor Endi\'s contributions - a commemorative sticker, possibly - and we are open to ideas. Leave a comment here or [tweet](https://x.com/docusaurus) if you have a suggestion.\\n\\nThe Docusaurus project will not be the same without Endi, and those of us who worked with him will miss him greatly. \uD83D\uDE14\\n\\n![A photo from behind Endi\'s back, with Endi sitting on a rock cliff, facing the vast sea. His right hand forms a V pose.](/img/endi.jpg)"},{"id":"/2019/12/30/docusaurus-2019-recap","metadata":{"permalink":"/blog/2019/12/30/docusaurus-2019-recap","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/2019/12-30-docusaurus-2019-recap.mdx","source":"@site/blog/2019/12-30-docusaurus-2019-recap.mdx","title":"Docusaurus 2019 Recap","description":"2019 was a great year for Docusaurus - we\'ve made tremendous progress on Docusaurus 2. Current Docusaurus 1 users who aren\'t using the translations feature can feel free to check it out and migrate to it! Otherwise we will work with you to make that happen in 2020 :)","date":"2019-12-30T00:00:00.000Z","tags":[{"inline":false,"label":"Recap","permalink":"/blog/tags/recap","description":"Blog posts about Docusaurus\' year recaps"}],"readingTime":2.72,"hasTruncateMarker":true,"authors":[{"name":"Yangshun Tay","title":"Ex-Meta Staff Engineer, Co-founder GreatFrontEnd","url":"https://linkedin.com/in/yangshun","page":{"permalink":"/blog/authors/yangshun"},"socials":{"x":"https://x.com/yangshunz","linkedin":"https://www.linkedin.com/in/yangshun/","github":"https://github.com/yangshun","newsletter":"https://www.greatfrontend.com"},"imageURL":"https://github.com/yangshun.png","key":"yangshun"}],"frontMatter":{"title":"Docusaurus 2019 Recap","authors":"yangshun","tags":["recap"]},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Tribute to Endi","permalink":"/blog/2020/01/07/tribute-to-endi"},"nextItem":{"title":"Happy 1st Birthday Slash!","permalink":"/blog/2018/12/14/Happy-First-Birthday-Slash"}},"content":"2019 was a great year for Docusaurus - we\'ve made tremendous progress on [Docusaurus 2](https://docusaurus.io/). Current Docusaurus 1 users who aren\'t using the translations feature can feel free to check it out and [migrate](https://docusaurus.io/docs/migration) to it! Otherwise we will work with you to make that happen in 2020 :)\\n\\n\x3c!--truncate--\x3e\\n\\n## Docusaurus 2 (D2)\\n\\nIn 2018, we proposed to rebuild [Docusaurus from the ground up](https://github.com/facebook/docusaurus/issues/789). It involved a major rearchitecture effort - we created a content-centric CSS framework from scratch, a plugins system, and moved from static HTML pages to be a single page-app with prerendered routes. It was a wild adventure and a tough feat, especially with no dedicated FTE working on the project. With the help of [@endilie](https://github.com/endiliey), our ex-intern-turned-contributor-turned-maintainer, we made really good progress on D2 and are currently on version 2.0.0-alpha.40. All features in Docusaurus 1 except for translations have been ported over.\\n\\nD2\'s killer features are **Dark Mode** and its **superb performance**. D2 has dark mode support out-of-the-box and it is near effortless to create a dark mode-friendly documentation site. Endilie put in great effort into optimizing the performance of the site and a bunch of performance optimization tricks have been done under the hood by default - optimized images, prerendering every route to static HTML and client-side routing thereafter, prefetching assets needed by future navigations whenever the user hovers over a navigation link, etc.\\n\\nLast but not least, we implemented a plugins architecture and turned the repo into a [Lerna monorepo](https://github.com/facebook/docusaurus/tree/main/packages). We believe this plugin architecture will be helpful towards building a community and also allowing users to build their own features for their unique use cases.\\n\\n## GitHub Activity\\n\\n- Stars: 10050 \u2192 14632 (+45.6% y/y)\\n- Total Contributors: 182 \u2192 303 (+66.4% y/y). Most of which are non-Facebook contributors\\n- Daily npm Downloads: 728 \u2192 2320 (+218.7% y/y). The peak was in November\\n- D1 is currently used by 3872 projects on GitHub while D2 is used by 247 projects on GitHub\\n- We now have 4 active core contributors! (+100% y/y)\\n\\n## Notable Users\\n\\nA good portion of the projects within the Open Source community use Docusaurus. This half we also onboarded more notable projects onto Docusaurus 2:\\n\\n- [Create React App](https://create-react-app.dev/)\\n- [Redux](https://redux.js.org/)\\n- [Draft.js](https://draftjs.org/)\\n- [Flux](http://facebook.github.io/flux/)\\n\\nAnd welcomed more projects to Docusaurus 1:\\n\\n- [Libra](https://developers.libra.org/)\\n- [MobX](https://mobx.js.org/)\\n- [Immer](https://immerjs.github.io/immer/)\\n- [Sorbet](https://sorbet.org/)\\n\\n## Media\\n\\nYangshun gave a classroom session during F8 about [Using Docusaurus to Create Open Source Websites](https://www.youtube.com/watch?v=QcGJsf6mgZE).\\n\\n## Community\\n\\nA few third-party hosting/development services also has first-class integration with a Docusaurus setup:\\n\\n- [Vercel deployment](https://github.com/vercel/vercel/tree/main/examples/docusaurus)\\n- [CodeSandbox](https://codesandbox.io/s/docusaurus-template-x3vg9)\\n- [Render](https://render.com/docs/deploy-docusaurus)\\n\\n## Looking Ahead\\n\\nD2 has gained some traction among the [developer community](https://docusaurus.io/showcase). In 2020, we want to achieve full feature parity with D1 by the first half and help the remaining Facebook projects on D1 move to D2. It would also be great if we could use Docusaurus for internal documentation, but that is a non-trivial undertaking. If you have a need for it or have some ideas, come speak with us!\\n\\nHuge thanks to the community for their contributions, especially the core team - [Endilie Yacop Sucipto](https://github.com/endiliey), [Alexey Pyltsyn](https://github.com/lex111), [Wei Gao](https://github.com/wgao19). Lastly, thank you [Joel Marcey](https://github.com/JoelMarcey) for starting Docusaurus and supporting the project all this time.\\n\\nCheers to a great 2020! \uD83C\uDF89"},{"id":"/2018/12/14/Happy-First-Birthday-Slash","metadata":{"permalink":"/blog/2018/12/14/Happy-First-Birthday-Slash","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/2018/12-14-Happy-First-Birthday-Slash.mdx","source":"@site/blog/2018/12-14-Happy-First-Birthday-Slash.mdx","title":"Happy 1st Birthday Slash!","description":"Docusaurus makes 1 year! Happy Birthday Slash!","date":"2018-12-14T00:00:00.000Z","tags":[{"inline":false,"label":"Birth","permalink":"/blog/tags/birth"}],"readingTime":0.615,"hasTruncateMarker":true,"authors":[{"name":"Joel Marcey","title":"Co-creator of Docusaurus","url":"https://x.com/JoelMarcey","page":{"permalink":"/blog/authors/j-marcey"},"socials":{},"imageURL":"https://github.com/JoelMarcey.png","key":"JMarcey"}],"frontMatter":{"title":"Happy 1st Birthday Slash!","authors":[{"key":"JMarcey","title":"Co-creator of Docusaurus"}],"tags":["birth"]},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Docusaurus 2019 Recap","permalink":"/blog/2019/12/30/docusaurus-2019-recap"},"nextItem":{"title":"Towards Docusaurus 2","permalink":"/blog/2018/09/11/Towards-Docusaurus-2"}},"content":"![Docusaurus makes 1 year! Happy Birthday Slash!](/img/docusaurus-slash-first-birthday.svg)\\n\\nDocusaurus [went live](https://v1.docusaurus.io/blog/2017/12/14/introducing-docusaurus) on December 14, 2017. At the time, we had [8 early adopters](https://v1.docusaurus.io/blog/2017/12/14/introducing-docusaurus#acknowledgements).\\n\\n\x3c!--truncate--\x3e\\n\\nWe now have nearly [60 known users of Docusaurus](https://v1.docusaurus.io/en/users), and probably more that we don\'t know about. We have [9K GitHub stars](https://github.com/facebook/docusaurus) and an active community, particularly [Yangshun Tay](https://x.com/yangshunz) and [Endilie Yacop Sucipto](https://x.com/endiliey), both of whom are the lead maintainers helping keep this project [moving forward](https://docusaurus.io/blog/2018/09/11/Towards-Docusaurus-2).\\n\\nThank you to everyone for your support and use of this project! I am super proud of how far this project has come in just a year.\\n\\n> Special thanks to [Eric Nakagawa](https://x.com/ericnakagawa), creator of Slash, for creating this 1-year image of Slash enjoying cake. The Slash brand has been a boon for us!"},{"id":"/2018/09/11/Towards-Docusaurus-2","metadata":{"permalink":"/blog/2018/09/11/Towards-Docusaurus-2","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/2018/09-11-Towards-Docusaurus-2.mdx","source":"@site/blog/2018/09-11-Towards-Docusaurus-2.mdx","title":"Towards Docusaurus 2","description":"Docusaurus was officially announced over nine months ago as a way to easily build open source documentation websites. Since then, it has amassed over 8,600 GitHub Stars, and is used by many popular open source projects such as React Native, Babel, Jest, Reason and Prettier.","date":"2018-09-11T00:00:00.000Z","tags":[{"inline":false,"label":"New","permalink":"/blog/tags/new"},{"inline":false,"label":"Adoption","permalink":"/blog/tags/adoption"}],"readingTime":9.25,"hasTruncateMarker":true,"authors":[{"name":"Endilie Yacop Sucipto","title":"Maintainer of Docusaurus","url":"https://github.com/endiliey","imageURL":"https://github.com/endiliey.png","key":"endiliey","page":null}],"frontMatter":{"title":"Towards Docusaurus 2","authors":"endiliey","tags":["new","adoption"]},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Happy 1st Birthday Slash!","permalink":"/blog/2018/12/14/Happy-First-Birthday-Slash"},"nextItem":{"title":"How I Converted Profilo to Docusaurus in Under 2 Hours","permalink":"/blog/2018/04/30/How-I-Converted-Profilo-To-Docusaurus"}},"content":"Docusaurus was [officially announced](https://v1.docusaurus.io/blog/2017/12/14/introducing-docusaurus) over nine months ago as a way to easily build open source documentation websites. Since then, it has amassed over 8,600 GitHub Stars, and is used by many popular open source projects such as [React Native](https://facebook.github.io/react-native/), [Babel](https://babeljs.io/), [Jest](https://jestjs.io/), [Reason](https://reasonml.github.io/) and [Prettier](https://prettier.io/).\\n\\nThere is a saying that the very best software is constantly evolving, and the very worst is not. In case you are not aware, we have been planning and working on the next version of Docusaurus \uD83C\uDF89.\\n\\n\x3c!--truncate--\x3e\\n\\n## Introduction\\n\\nIt all started with this [RFC issue](https://github.com/facebook/docusaurus/issues/789) opened by [Yangshun](https://github.com/yangshun) towards the end of June 2018.\\n\\n<blockquote>\\n <h4>\\n <a href=\\"https://github.com/facebook/docusaurus/issues/789\\">\\n {\'[RFC] Docusaurus v2 \xb7 Issue #789 \xb7 facebook/docusaurus\'}\\n </a>\\n </h4>\\n These are some of the problems I\'m seeing in Docusaurus now and also how we can\\n address them in v2. A number of the ideas here were inspired by VuePress and other\\n static site generators. In the current static site generators ecosystem, t...\\n</blockquote>\\n\\nMost of the suggested improvements are mentioned in the issue; I will provide details on some of issues in Docusaurus 1 and how we are going to address them in Docusaurus 2.\\n\\n## Infrastructure\\n\\n### Content\\n\\nA Docusaurus 1 website is, in fact, built into a bunch of static HTML pages. Despite using React, we were not fully utilizing the features React offered, such as component state, which allows for dynamic and interactive pages. React was only used as a templating engine for static content and interactivity has to be added through script tags and `dangerouslySetInnerHTML` \uD83D\uDE31.\\n\\nIn addition, there is not an easy way to change how Docusaurus loads content. For example, adding CSS preprocessors such as Sass and Less was not supported natively and involved many user hacks of adding custom scripts.\\n\\nFor Docusaurus 2, we will be using [webpack](https://webpack.js.org/) as a module bundler and we are changing the way we serve content. Adding CSS preprocessors will be as easy as adding a webpack loader. Instead of a pure static HTML, **during build time we will create a server-rendered version of the app** and render the corresponding HTML. A Docusaurus site will be essentially an isomorphic/universal application. This approach is heavily inspired by [Gatsby](https://github.com/gatsbyjs/gatsby).\\n\\n### Versioning\\n\\nIf you have been using Docusaurus for a while, you might notice that Docusaurus creates versioned docs **if and only if** the docs content are **different**.\\n\\nFor example, if we have `docs/hello.md`:\\n\\n```text\\n---\\nid: hello\\ntitle: hello\\n---\\nHello world !\\n```\\n\\nAnd **we cut version 1.0.0,** Docusaurus will create `versioned_docs/version-1.0.0/hello.md`:\\n\\n```text\\n---\\nid: version-1.0.0-hello\\ntitle: hello\\noriginal_id: hello\\n---\\nHello world !\\n```\\n\\nHowever, if there are no changes to `hello.md` when cutting v2.0.0, Docusaurus will not create any versioned docs for that document. In other words, `versioned_docs/version-2.0.0/hello.md` will not exist.\\n\\nThis can be very confusing for users; if they want to edit the v2.0.0 docs, they have to edit `versioned_docs/version-1.0.0/hello.md` or manually add `versioned_docs/version-2.0.0/hello.md`. This could potentially lead to unwanted bugs. Here is a [real scenario in Jest](https://github.com/facebook/jest/pull/6758#issuecomment-408274413).\\n\\nIn addition, this adds complexity within the codebase as we require a mechanism for version fallbacks. And during build time, Docusaurus has to replace the linking to the correct version. This is also the cause of a bug where [renaming docs breaks links in old versions](https://github.com/facebook/docusaurus/issues/845).\\n\\nFor Docusaurus 2, **every time we cut a new version, we will instead take a snapshot of all the docs**. We will not require the content of a document to have changed. This is a space complexity trade-off for a better developer and user experience. We will use more space for better separation of concerns and guaranteed correctness.\\n\\n### Translation\\n\\nDocusaurus allows for easy translation functionality by using [Crowdin](https://crowdin.com/). Documentation files written in English are uploaded to Crowdin for translation by users within a community. We always assumed that **English** is the default language, but this might not be the case for all users. We have seen plenty of non-English open source projects using Docusaurus.\\n\\nFor Docusaurus 2, **we will not assume English is the default language**. When a user enables internationalization, they have to set a default language in `siteConfig.js`. We will then assume that all the files in `docs` are written in that language.\\n\\nIn addition, after working on the MVP of Docusaurus 2, I realized that it is possible not to use Crowdin for translations. Thus, we might need to add an additional workflow to enable that scenario. However, we will still strongly recommend people use Crowdin for easier integration.\\n\\n## Customizability\\n\\n### Layout\\n\\nThe current state of Docusaurus is that it is in charge of the entire layout and styling, unintentionally making it very hard for users to customize their site\'s appearance to their wishes.\\n\\nFor Docusaurus 2, **layout and styling should be controlled by the user**. Docusaurus will handle the content generation, routing, translation, and versioning. Inspired by [create-react-app](https://github.com/facebook/create-react-app) and [VuePress](https://vuepress.vuejs.org/), Docusaurus will still provide a default theme, which the user can eject from, for further layout and styling customization. This means that it is very possible for the user to even change the HTML meta by using [React Helmet](https://github.com/nfl/react-helmet). Community-based themes are also very possible. This approach of allowing users to be in charge of layout and styling is taken by most static site generators.\\n\\n### Markdown\\n\\nOur Markdown parsing is currently powered by [Remarkable](https://github.com/jonschlinkert/remarkable). What if the user wants to use [Markdown-it](https://github.com/Markdown-it/Markdown-it) or even [MDX](https://github.com/mdx-js/mdx)? And then there is an issue of which syntax highlighter to use, (e.g: [Prism](https://prismjs.com/) vs [Highlight.js](https://highlightjs.org/)). We should leave these choices open to the user.\\n\\nFor Docusaurus 2, **users can eject and choose their own Markdown parser**. It does not matter if they want to use another Markdown parser such as [Remark](https://github.com/remarkjs/remark), or even their own in-house Markdown parser. As a rule of thumb, the user has to provide a React component, in which we will provide a children props containing the _RAW string of Markdown_. By default, we will use Remarkable for the Markdown parser and Highlight.js for the syntax highlighting. The default parser could still change in the future as we\'re still experimenting with different Markdown parsers.\\n\\n### Search\\n\\nOur core search functionality is based on [Algolia](https://www.algolia.com/). There are requests by users to be able to use different search offerings, such as `lunrjs` for offline search.\\n\\nI personally like Algolia and we have a great experience working with them. They are very responsive; we can easily submit a pull request to Algolia since their `DocSearch` is open source. For example, I recently submitted [this PR that enables DocSearch to scrape alternate languages in sitemap](https://github.com/algolia/docsearch-scraper/pull/387).\\n\\nFor Docusaurus 2, **we will allow users to customize the search box**. Users simply need to eject from the default theme and modify the Search UI (a React component). However, we will still use Algolia in the default theme.\\n\\n## Stability\\n\\nSoftware is never going to be perfect, but we want Docusaurus to not break as we add new features. When Docusaurus was first released, it did not have any strong automated test suites. As a result, there were a lot of regressions not caught early. Although we have recently added a lot of tests, the test coverage is still relatively low.\\n\\nFor Docusaurus 2, **we are adding tests as we develop** since we are going for a fresh rewrite. Hence, I believe that it should be more stable than ever and it should be harder to break things compared to Docusaurus 1.\\n\\n## Frequently Asked Questions\\n\\n### Will there be any breaking changes?\\n\\nIf you\'ve read the post up until to this point, you should be able to notice that there will be breaking changes. While we will try to **minimize the number of breaking changes** and make it backward compatible as much as possible, we believe that some breaking changes are required. This is mostly due to Docusaurus 2 being a **major rewrite and re-architecting** of the codebase.\\n\\nThe exact list of breaking changes is not totally known yet as development is not 100% finalized. However, one thing that I will highlight is that we will deprecate a lot of options in `siteConfig.js` and we plan to keep it as lean as possible. For example, the `cleanUrl` siteConfig will be deprecated as all the URL for Docusaurus 2 sites will be without the `.html` suffix.\\n\\nOur goal is that most sites should be able to upgrade to Docusaurus 2 without a lot of pain. We will also include a migration guide when we release Docusaurus 2. When the times come, feel free to ping us on [Discord](https://discord.gg/docusaurus) or [X](https://x.com/docusaurus) for questions and help.\\n\\n### When is the release of Docusaurus 2?\\n\\nAs of now, we do not have an exact date planned for the release. I personally estimate that we might be able to release an alpha version in the next one to two months, but this is, of course, just an estimate.\\n\\nOne thing that I would like to share is that while Docusaurus is part of [Facebook Open Source](https://opensource.fb.com/) and most of the team are Facebook employees, the maintenance and development work is mostly done outside of normal working hours. I am currently a final year undergraduate student at [NTU Singapore](https://x.com/NTUsg), so I had to juggle between doing my coursework, my final year project and maintaining/developing Docusaurus. However, that does not mean that we do not want to make Docusaurus better. In fact, **we want to make it as awesome as possible**.\\n\\nFor now, the actual Docusaurus 2 work is still hosted in a private repository. In the near future, we will move them into the [public repository](https://github.com/facebook/docusaurus). When that time arrives, I encourage everyone to look into it and hopefully contribute in some way. Before then, please stay tuned \uD83D\uDE09!\\n\\n## Final Thoughts\\n\\nDocusaurus has had a large impact on the open source community as seen from the [many popular projects](https://v1.docusaurus.io/en/users) which use Docusaurus for documentation. In order to move faster in the future, we are taking the opportunity to fix some core problems with Docusaurus 1 and striving to make Docusaurus better for everyone. In fact, it is safe to say that Docusaurus 2 is not just a plan any longer; the work on it has started and, hopefully, we will be able to see it materialize in the near future.\\n\\nDocusaurus\' mission has always been to make it really easy for you to get a website with documentation up and running out of the box. That mission does not change with Docusaurus 2.\\n\\nWe also want to let people know that **due to work on Docusaurus 2, we will be less likely to accept new features/major changes on Docusaurus 1.**\\n\\nIf you are using Docusaurus, you are part of our community; keep letting us know how we can make Docusaurus better for you. If you appreciate the work we\'re doing, you can support [Docusaurus on Open Collective](https://opencollective.com/Docusaurus).\\n\\n> If you are sponsoring our work on [Open Collective](https://opencollective.com/Docusaurus), we\'ll personally offer you a helping hand for maintenance and upgrading of Docusaurus website.\\n\\nLastly, if you haven\'t done so already, click the **star** and **watch** button on [GitHub](https://github.com/facebook/docusaurus), and follow us on [X](https://x.com/docusaurus)."},{"id":"/2018/04/30/How-I-Converted-Profilo-To-Docusaurus","metadata":{"permalink":"/blog/2018/04/30/How-I-Converted-Profilo-To-Docusaurus","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/2018/04-30-How-I-Converted-Profilo-To-Docusaurus.mdx","source":"@site/blog/2018/04-30-How-I-Converted-Profilo-To-Docusaurus.mdx","title":"How I Converted Profilo to Docusaurus in Under 2 Hours","description":"\u201CJoel and I were discussing having a website and how it would have been great to launch with it. So I challenged myself to add Docusaurus support. It took just over an hour and a half. I\'m going to send you a PR with the addition so you can take a look and see if you like it. Your workflow for adding docs wouldn\'t be much different from editing those Markdown files.\u201D","date":"2018-04-30T00:00:00.000Z","tags":[{"inline":false,"label":"Profilo","permalink":"/blog/tags/profilo"},{"inline":false,"label":"Adoption","permalink":"/blog/tags/adoption"}],"readingTime":5.95,"hasTruncateMarker":true,"authors":[{"name":"Christine Abernathy","url":"http://x.com/abernathyca","socials":{"x":"https://x.com/abernathyca"},"imageURL":"https://github.com/caabernathy.png","key":"abernathyca","page":null}],"frontMatter":{"title":"How I Converted Profilo to Docusaurus in Under 2 Hours","authors":["abernathyca"],"tags":["profilo","adoption"]},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"Towards Docusaurus 2","permalink":"/blog/2018/09/11/Towards-Docusaurus-2"},"nextItem":{"title":"Introducing Docusaurus","permalink":"/blog/2017/12/14/introducing-docusaurus"}},"content":"> _\u201CJoel and I were discussing having a website and how it would have been great to launch with it. So I challenged myself to add Docusaurus support. It took just over an hour and a half. I\'m going to send you a PR with the addition so you can take a look and see if you like it. Your workflow for adding docs wouldn\'t be much different from editing those Markdown files.\u201D_\\n>\\n> _\u2014 Note sent to the Profilo team_\\n\\nThis is the story of the rather short journey it took to create the [Profilo](https://facebookincubator.github.io/profilo/) website using Docusaurus.\\n\\nProfilo, an Android library for collecting performance traces from production, [was announced](https://code.fb.com/android/profilo-understanding-app-performance-in-the-wild/) earlier this year. The project was [published on GitHub](https://github.com/facebookincubator/profilo/tree/802042f90f990998a272387e371b893af52465b8) with a less than [a handful or Markdown files](https://github.com/facebookincubator/profilo/tree/802042f90f990998a272387e371b893af52465b8/docs) to describe its functionality and no website to showcase any branding and highlight the logo. The task at hand was to turn these existing docs and logo into a website.\\n\\n\x3c!--truncate--\x3e\\n\\nIn general, when creating a website with Docusaurus you do the following:\\n\\n1. Generate a template website using Docusaurus scripts.\\n1. Customize the generated template files for your desired site colors and your project configuration (ex: website and GitHub links).\\n1. Create the website content:\\n 1. Add your docs and any supporting assets.\\n 1. Customize the default landing page provided by Docusaurus to suit your needs.\\n 1. Configure the default site navigation file.\\n1. Publish the website and set up how it will be published for future changes.\\n\\nGiven I had pre-existing Markdown files, I didn\'t have to generate the core content but simply make sure that Docusaurus could process the files by adding the expected metadata to them. Most of the work would therefore consist of customizing the defaults provided by Docusaurus.\\n\\n## Overview of Steps Taken\\n\\nHere\'s an overview of the steps taken to convert to a website. I\'ll discuss some of the design aspects in a later section.\\n\\n**Design and colors:**\\n\\n1. Got all the desired logo formats from designer. I had to create the _.favicon_ one.\\n1. Worked out some passable primary and secondary website colors using the http://paletton.com/ tools - very handy!\\n\\n**Initial website setup:**\\n\\n1. Forked the [Profilo project](https://github.com/facebookincubator/profilo/) on GitHub and created a local clone of the fork to set up the website.\\n1. Created the initial Docusaurus website using the [installation instructions](https://v1.docusaurus.io/docs/en/installation.html).\\n1. Deleted the `docs-examples-from-docusaurus` and `website/blog-examples-from-docusaurus` folders as these would not be needed. Profilo had existing docs we could use and there was no need for blogs at this time.\\n\\n**Content creation:**\\n\\n1. Added metadata to the existing Markdown files found in the `docs` folder, for example:\\n\\n ```md\\n ---\\n id: architecture\\n title: Architecture\\n sidebar_label: Architecture\\n ---\\n ```\\n\\n2. Added the logo assets to the `website/static/img` folder.\\n3. Modified `website/pages/en/index.js`, the landing page, to highlight Profilo features.\\n4. Modified `website/core/Footer.js`, the footer, to simplify it for Profilo.\\n5. Edited `website/siteConfig.js` (website configuration file) to specify the previously chosen primary and secondary colors.\\n6. Modified `website/sidebars.json` that specifies the sidebar navigation. Listed all the docs and customized it based on the metadata added to the Markdown files.\\n7. Edited the website configuration file to specify the GitHub properties, logo images, header links, and the website link.\\n8. Tested the website locally throughout this phase. (I ran `yarn start` from the `website` folder to start the server.)\\n\\n**Feedback and review changes:**\\n\\n1. Sent a [pull request](https://github.com/facebookincubator/profilo/pull/6) to the project.\\n2. Updated the colors after the designer rightly gasped at the ones I had chosen (IANAD).\\n3. Updated the colors and updated the PR.\\n4. The PR was then accepted and [merged](https://github.com/facebookincubator/profilo/commit/6ad033aaf5a7d54e6d842f45a5bccd051a8e45ad). Yay!\\n\\n**Website publishing:**\\n\\n1. Pushed the first website version by running the Docusaurus publish script from the command line:\\n\\n ```bash\\n USE_SSH=true \\\\\\n GIT_USER=caabernathy \\\\\\n CURRENT_BRANCH=master \\\\\\n yarn run publish-gh-pages\\n ```\\n\\n2. Configured CircleCI using the [provided Docusaurus instructions](https://v1.docusaurus.io/docs/en/publishing.html#automating-deployments-using-continuous-integration). There were 2 PRs for this, [the first](https://github.com/facebookincubator/profilo/pull/8)for the initial config and [the second](https://github.com/facebookincubator/profilo/pull/12) to make sure CircleCI only triggered for changes in the master branch (thanks Joel Marcey!).\\n\\nThe final website was published on https://facebookincubator.github.io/profilo/. It had taken 1.5 hours to get to the initial PR stage and another half an hour or so to respond to review feedback and publish the website.\\n\\n## Design\\n\\nHere\'s what the initial website looked like when the first pull request was sent out:\\n\\n![The website\'s front page, with a quite bright and saturated red color as the primary color, closely resembling the Profilo logo color, making the logo unrecognizable in the navbar](/img/profilo_blog_post_website_initial.png)\\n\\nMost of the time in the content creation was spent picking colors that worked reasonably well with the given logo. These colors were a good jumping off point for designer feedback. I used Photoshop to sample various portions of the logo.\\n\\n![Picking colors in Photoshop, with the Profilo logo and the main working area in the background and a color picker dialog in the foreground, selected to a red shade](/img/profilo_blog_post_photoshop_color_picker.png)\\n\\nI then took the RGB representation of the color and set it as the baseline color on [Paletton](http://paletton.com/). The website then gave me various color options to try on the website by editing the Docusaurus website configuration file.\\n\\n![Using Paletton to generate a full palette from the red shade selected. There\'s a color wheel showing all hues on the left, and a square showing various shades of red on the right.](/img/profilo_blog_post_palette_website_color_picker.png)\\n\\nThe selected primary and secondary colors were a good jumping off point for designer feedback.\\n\\nThere were also modifications made to the default website generated by Docusaurus. These changes were mainly around simplifying the footer and creating a customized landing page for Profilo that listed the project\'s features.\\n\\nHere\'s what the final website looked like:\\n\\n![The website\'s front page, with a much darker red color as the primary color, making both the logo and the primary-colored title text clearly legible.](/img/profilo_blog_post_website_final.png)\\n\\nThis is an example page showing the core content, in this case the Getting Started page:\\n\\n![A doc page with the sidebar on the left quarter of the screen and the main content occupying the rest. Some text is using the primary color and the main body uses multiple kinds of typesetting including bold, list, and code](/img/profilo_blog_post_website_final_docs.png)\\n\\nThis also shows the sidebar structure that was set up through editing `website/sidebars.json`.\\n\\nLastly, I didn\'t have to worry about handling responsive design. You get this out of the box with Docusaurus!\\n\\n![Mobile screenshots of the front page and sample doc page. The layout is automatically adjusted to make it appear more natural. The doc sidebar is hidden behind a button.](/img/profilo_blog_post_android_ios.png)\\n\\n## Final Thoughts\\n\\nThe Profilo engineers were happy to see that they didn\'t have to change their workflow to update existing content. They were able to continue working with Markdown files. This will still be true in the future if new docs are added, although there may be some config changes needed if the sidebar navigation needs to be updated.\\n\\nThe infrastructure provided by Docusaurus made it easy to convert Markdown files into a working website. Even though the project had only three docs, this gave Profilo a more professional look. So, it was well worth the short time investment to get it done."},{"id":"/2017/12/14/introducing-docusaurus","metadata":{"permalink":"/blog/2017/12/14/introducing-docusaurus","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/blog/2017/12-14-introducing-docusaurus.mdx","source":"@site/blog/2017/12-14-introducing-docusaurus.mdx","title":"Introducing Docusaurus","description":"We are very happy to introduce Docusaurus to help you manage one or many open source websites.","date":"2017-12-14T00:00:00.000Z","tags":[{"inline":false,"label":"Documentation","permalink":"/blog/tags/documentation"},{"inline":false,"label":"Blog","permalink":"/blog/tags/blog"},{"inline":false,"label":"Docusaurus","permalink":"/blog/tags/docusaurus"}],"readingTime":8.215,"hasTruncateMarker":true,"authors":[{"name":"Joel Marcey","title":"Developer Advocate at Meta","url":"https://x.com/JoelMarcey","page":{"permalink":"/blog/authors/j-marcey"},"socials":{"x":"https://x.com/joelmarcey","github":"https://github.com/JoelMarcey"},"imageURL":"https://github.com/JoelMarcey.png","key":"JMarcey"}],"frontMatter":{"title":"Introducing Docusaurus","authors":"JMarcey","tags":["documentation","blog","docusaurus"]},"unlisted":false,"lastUpdatedAt":1743178850000,"lastUpdatedBy":"Daniel Kuschny","prevItem":{"title":"How I Converted Profilo to Docusaurus in Under 2 Hours","permalink":"/blog/2018/04/30/How-I-Converted-Profilo-To-Docusaurus"}},"content":"![](/img/slash-introducing.svg)\\n\\nWe are very happy to introduce [Docusaurus](https://github.com/facebook/docusaurus) to help you manage one or many open source websites.\\n\\nWe created [Docusaurus](https://docusaurus.io) for the following reasons:\\n\\n1. To put the focus on writing good documentation instead of worrying about the infrastructure of a website.\\n1. To provide features that many of our open source websites need like blog support, search and versioning.\\n1. To make it easy to push updates, new features, and bug fixes to everyone all at once.\\n1. And, finally, to provide a consistent look and feel across all of our open source projects.\\n\\n\x3c!--truncate--\x3e\\n\\nDocusaurus is a tool designed to make it easy for teams to publish documentation websites without having to worry about the infrastructure and design details. At its core, all a user has to provide are documentation files written in Markdown, customization of a provided home page written in React, and a few configuration modifications. Docusaurus handles the rest by providing default styles, site formatting, and simple document navigation. Getting started is easy, as users can [install](https://v1.docusaurus.io/docs/en/installation.html) it using `npm` or `yarn` via a simple initialization script that [creates a working example website out of the box](https://v1.docusaurus.io/docs/en/site-preparation.html).\\n\\nDocusaurus also provides core website and documentation features out-of-the-box including [blog support](https://v1.docusaurus.io/docs/en/blog.html), [internationalization](https://v1.docusaurus.io/docs/en/translation.html), [search](https://v1.docusaurus.io/docs/en/search.html), and [versioning](https://v1.docusaurus.io/docs/en/versioning.html). While some projects may not require any of these features, enabling them is generally a matter of updating configuration options instead of having to add the infrastructure from the ground up. As more features get added to Docusaurus, users just can easily update to the latest version. This can be done by simply running npm or yarn update and updating configuration options. Users or teams will no longer need to manually rework their entire website infrastructure each time a new feature gets added.\\n\\n## The Birth of docusaurus\\n\\n![](/img/slash-birth.png)\\n\\nWhen Facebook first started their open source program, many teams implemented a custom website for each of their open source projects. This approach presented challenges when the open source program team was asked to help the project teams improve their documentation. Since each site was unique, adding basic infrastructure such as a blog, consistent navigation, search, etc. became challenging undertakings.\\n\\nThe open source team tried to help mitigate this problem by coming up with a standard template, based on Jekyll, that could be used as a starting point for a project website. We asked our new projects to manually copy our template source to their repo, write their docs, and publish. This template approach was adopted by most of open source projects launched; some existing projects even converted their custom website implementations to the new template as well.\\n\\nThe problem with the \\"copy the template to your repo\\" approach is that, even though the platform is consistent, pushing updates becomes unmaintainable across an entire suite of projects already using the template. This is because we lost control of the template after a project copied it to their repo. Projects were free to modify the template as desired and apply their own project-specific features to it. So while projects share the same site generation platform, they have now diverted enough where they cannot take advantage of the new features we have added to the template over time. There was no easy way we could ask all current projects to \\"copy\\" a new version of the template since it might break their existing site or remove features that they have added on their own. Instead, we would have to apply the updates manually to each project one-by-one. This became very problematic when projects started asking for our team for internationalization support within the template, requiring low-level changes to how the template was structured and generated.\\n\\nSo we started thinking about what we could do to help mitigate the challenge of keeping sites updated and consistent across our entire portfolio. We also wanted multiple projects to share the same site generation software. We wanted them to start out with the same template, and yet have the flexibility to customize and adapt their site theme to suit their needs. They should be able to extend and customize their site, but when we update the underlying infrastructure with fixes and features, the project should be able update simply and without any breaking changes.\\n\\nDocusaurus was born!\\n\\nAt Facebook, Docusaurus allows us to quickly get different projects up and running with documentation websites, especially for teams who don\'t have much experience with web development or primarily want a basic site to showcase their project. Docusaurus already supports sites needing more advanced features like internationalization for Jest and versioning for React Native. As different projects request new features for their sites, they are added to Docusaurus and simultaneously provided to all projects! All together, this ends up greatly reducing the work needed to maintain different sites for different projects. Our teams are able to focus on keeping their projects healthier by spending more time adding features, fixing bugs, and writing documentation.\\n\\n## Getting Up and Running\\n\\n![](/img/slash-up-and-running.png)\\n\\nAt its core, we wanted sites running Docusaurus to be simple to use. With one [installation](https://v1.docusaurus.io/docs/en/installation.html) command and some simple [configuration](https://v1.docusaurus.io/docs/en/site-preparation.html), you can actually have a default running website.\\n\\nWhen you run `docusaurus-init`, you will see a structure similar to:\\n\\n```bash\\nroot-of-repo\\n\u251C\u2500\u2500 docs-examples-from-docusaurus\\n\u2502 \u251C\u2500\u2500 doc1.md\\n\u2502 \u251C\u2500\u2500 doc2.md\\n\u2502 \u251C\u2500\u2500 doc3.md\\n\u2502 \u251C\u2500\u2500 example-doc4.md\\n\u2502 \u2514\u2500\u2500 example-doc5.md\\n\u251C\u2500\u2500 website\\n\u2502 \u251C\u2500\u2500 blog-examples-from-docusaurus\\n\u2502 \u2502 \u251C\u2500\u2500 2016-03-11-blog-post.md\\n\u2502 \u2502 \u2514\u2500\u2500 2017-04-10-blog-post-two.md\\n\u2502 \u251C\u2500\u2500 core\\n\u2502 \u2502 \u2514\u2500\u2500 Footer.js\\n\u2502 \u251C\u2500\u2500 node_modules\\n\u2502 \u251C\u2500\u2500 package.json\\n\u2502 \u251C\u2500\u2500 pages\\n\u2502 \u251C\u2500\u2500 sidebars.json\\n\u2502 \u251C\u2500\u2500 siteConfig.js\\n\u2502 \u2514\u2500\u2500 static\\n```\\n\\nWith the exception of node_modules and package.json, all the directories and files you see are where you customize and add content to your Docusaurus-based website. The docs folder is where you add your Markdown that represents your documentation; the blog folder is where you add your Markdown for your [blog posts](https://v1.docusaurus.io/docs/en/blog.html); `siteConfig.js` is where you make most of the [customizations](https://v1.docusaurus.io/docs/en/site-config.html) for your site; `sidebars.json` is where you maintain the layout and content of the [sidebar](https://v1.docusaurus.io/docs/en/navigation.html) for your documentation; the `pages` folder is where you add [custom](https://v1.docusaurus.io/docs/en/custom-pages.html) pages for your site; the `static` folder is where all of your static assets go (e.g., CSS stylesheets and images); and the `core` folder is where you can customize core components of the site, in this case the footer.\\n\\n## How does Docusaurus work?\\n\\nDocusaurus is written primarily in JavaScript and [React](https://facebook.github.io/react), replacing Jekyll which we used in the old template. We use [Remarkable](https://github.com/jonschlinkert/remarkable) for our Markdown rendering and [highlight.js](https://highlightjs.org/) for our code block syntax highlighting. The core of Docusaurus\' functionality is in the [lib directory](https://github.com/facebookexperimental/Docusaurus/tree/master/lib) of the [Docusaurus repo](https://github.com/facebook/docusaurus/). The general structure looks like:\\n\\n```bash\\nroot-of-Docusaurus\\n\u251C\u2500\u2500 lib\\n\u2502 \u251C\u2500\u2500 core\\n\u2502 \u251C\u2500\u2500 server\\n\u2502 \u2502 \u251C\u2500\u2500 generate.js\\n\u2502 \u2502 \u251C\u2500\u2500 server.js\\n\u2502 \u2502 \u2514\u2500\u2500 ...and more files\\n\u2502 \u251C\u2500\u2500 static\\n\u2502 \u251C\u2500\u2500 build-files.js\\n\u2502 \u251C\u2500\u2500 copy-examples.js\\n\u2502 \u251C\u2500\u2500 generate-feed.js\\n\u2502 \u251C\u2500\u2500 publish-gh-pages.js\\n\u2502 \u251C\u2500\u2500 rename-version.js\\n\u2502 \u251C\u2500\u2500 start-server.js\\n\u2502 \u251C\u2500\u2500 versions.js\\n\u2502 \u2514\u2500\u2500 write-translations.js\\n```\\n\\nThe key files here are build-files.js and start-server.js. There are many similarities between these two files: `build-files.js` is used to build the physical artifacts for serving by an external web server. `start-server.js` is used to run the Docusaurus server and locally test your site. Both go through the following general process to take all of the Markdown and configuration to create a runnable website:\\n\\n1. Process your website settings in `siteConfig.js`\\n1. Read the document metadata that exists in all the Markdown files in your docs directory.\\n1. Create a table of contents for your documents based upon the IDs extracted from the metadata.\\n1. Convert the Markdown to HTML, including doing link replacement.\\n1. These files will go in a build/docs directory of the compiled site, and any translated versions will go into a language specific folder within the build/docs folder.\\n1. Repeat 1-3 for blog posts.\\n1. The blog file will go in a build/blog directory of the compiled site.\\n1. Read the main.css file and concatenate any user-defined css into master css file that will be in the build/css directory of the compiled site.\\n1. Copy images into an build/img directory of the compiled site.\\n1. Take any custom pages that were added to the pages folder of the site and compile/copy those into the root build directory of the compiled site. Any translated versions will go into a language specific folder within build.\\n1. Create CNAME and sitemap.xml files and add those to build.\\n\\nNote that this process does not take into full account how translations or versioning works. The underlying details of those features will be saved for future blog posts.\\n\\nThe final structure of your compiled site will look similar to:\\n\\n```bash\\nbuild\\n\u251C\u2500\u2500 website\\n\u2502 \u251C\u2500\u2500 CNAME\\n\u2502 \u251C\u2500\u2500 blog\\n\u2502 \u251C\u2500\u2500 css\\n\u2502 \u251C\u2500\u2500 docs\\n\u2502 \u251C\u2500\u2500 en\\n\u2502 \u251C\u2500\u2500 help.html # custom page\\n\u2502 \u251C\u2500\u2500 img\\n\u2502 \u251C\u2500\u2500 index.html # landing page\\n\u2502 \u251C\u2500\u2500 sitemap.xml\\n\u2502 \u2514\u2500\u2500 users.html # custom page\\n```\\n\\n## Community\\n\\n![](/img/docusaurus.svg)\\n\\nWe welcome your [contributions](https://github.com/facebook/docusaurus/blob/master/CONTRIBUTING.md) to Docusaurus, whether you want to use it for your own site, you want to [contribute](https://github.com/facebook/docusaurus/blob/master/CONTRIBUTING.md) to the Docusaurus core or just have questions. Follow us on [GitHub](https://github.com/facebook/docusaurus) and [X)](https://x.com/docusaurus).\\n\\n## Acknowledgements\\n\\nDocusaurus wouldn\'t exist without the work of the rest of the core Docusaurus team: [Eric Nakagawa](http://x.com/ericnakagawa), [Hector Ramos](https://x.com/hectorramos), [Eric Vicenti](https://x.com/EricVicenti) and [Frank Li](https://github.com/deltice) \u2014 a former intern at Facebook who implemented the core technology and features.\\n\\nSpecial thanks also goes out to our earliest [adopters](https://v1.docusaurus.io/en/users.html) of Docusaurus:\\n\\n- [BuckleScript](https://bucklescript.github.io/)\\n- [FastText](https://fasttext.cc)\\n- [Jest](https://jestjs.io)\\n- [Make It Open](http://makeitopen.com)\\n- [Prettier](https://prettier.io/)\\n- [Reason-react](https://reasonml.github.io/reason-react/)\\n- [React Native](https://facebook.github.io/react-native/)\\n- [Relay](https://facebook.github.io/relay/)\\n\\nWithout their dedication to creating or migrating their websites over to the platform, we would have not have been in the position where we are today.\\n\\n## Resources\\n\\n- [Read our documentation](https://v1.docusaurus.io)\\n- [Follow our X feed](https://x.com/docusaurus)\\n- [Follow us on GitHub](https://github.com/facebook/docusaurus)\\n- [About Slash, the Docusaurus mascot](https://v1.docusaurus.io/about-slash.html)"}],"blogListPaginated":[{"items":["/releases/3.7","/releases/3.6","/releases/3.5","/releases/3.4","/releases/3.3"],"metadata":{"permalink":"/blog","page":1,"postsPerPage":5,"totalPages":6,"totalCount":26,"nextPage":"/blog/page/2","blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}},{"items":["/releases/3.2","/releases/3.1","/releases/3.0","/preparing-your-site-for-docusaurus-v3","/upgrading-frontend-dependencies-with-confidence-using-visual-regression-testing"],"metadata":{"permalink":"/blog/page/2","page":2,"postsPerPage":5,"totalPages":6,"totalCount":26,"previousPage":"/blog","nextPage":"/blog/page/3","blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}},{"items":["/releases/2.4","/releases/2.3","/releases/2.2","/2022/09/01/docusaurus-2.1","/2022/08/01/announcing-docusaurus-2.0"],"metadata":{"permalink":"/blog/page/3","page":3,"postsPerPage":5,"totalPages":6,"totalCount":26,"previousPage":"/blog/page/2","nextPage":"/blog/page/4","blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}},{"items":["/2022/01/24/docusaurus-2021-recap","/2021/11/21/algolia-docsearch-migration","/2021/05/12/announcing-docusaurus-two-beta","/2021/03/09/releasing-docusaurus-i18n","/2021/01/19/docusaurus-2020-recap"],"metadata":{"permalink":"/blog/page/4","page":4,"postsPerPage":5,"totalPages":6,"totalCount":26,"previousPage":"/blog/page/3","nextPage":"/blog/page/5","blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}},{"items":["/2020/01/07/tribute-to-endi","/2019/12/30/docusaurus-2019-recap","/2018/12/14/Happy-First-Birthday-Slash","/2018/09/11/Towards-Docusaurus-2","/2018/04/30/How-I-Converted-Profilo-To-Docusaurus"],"metadata":{"permalink":"/blog/page/5","page":5,"postsPerPage":5,"totalPages":6,"totalCount":26,"previousPage":"/blog/page/4","nextPage":"/blog/page/6","blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}},{"items":["/2017/12/14/introducing-docusaurus"],"metadata":{"permalink":"/blog/page/6","page":6,"postsPerPage":5,"totalPages":6,"totalCount":26,"previousPage":"/blog/page/5","blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}}],"blogTags":{"/blog/tags/release":{"inline":false,"label":"Release","permalink":"/blog/tags/release","description":"Blog posts about Docusaurus\' new releases","items":["/releases/3.7","/releases/3.6","/releases/3.5","/releases/3.4","/releases/3.3","/releases/3.2","/releases/3.1","/releases/3.0","/upgrading-frontend-dependencies-with-confidence-using-visual-regression-testing","/releases/2.4","/releases/2.3","/releases/2.2","/2022/09/01/docusaurus-2.1","/2022/08/01/announcing-docusaurus-2.0","/2021/05/12/announcing-docusaurus-two-beta","/2021/03/09/releasing-docusaurus-i18n"],"pages":[{"items":["/releases/3.7","/releases/3.6","/releases/3.5","/releases/3.4","/releases/3.3"],"metadata":{"permalink":"/blog/tags/release","page":1,"postsPerPage":5,"totalPages":4,"totalCount":16,"nextPage":"/blog/tags/release/page/2","blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}},{"items":["/releases/3.2","/releases/3.1","/releases/3.0","/upgrading-frontend-dependencies-with-confidence-using-visual-regression-testing","/releases/2.4"],"metadata":{"permalink":"/blog/tags/release/page/2","page":2,"postsPerPage":5,"totalPages":4,"totalCount":16,"previousPage":"/blog/tags/release","nextPage":"/blog/tags/release/page/3","blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}},{"items":["/releases/2.3","/releases/2.2","/2022/09/01/docusaurus-2.1","/2022/08/01/announcing-docusaurus-2.0","/2021/05/12/announcing-docusaurus-two-beta"],"metadata":{"permalink":"/blog/tags/release/page/3","page":3,"postsPerPage":5,"totalPages":4,"totalCount":16,"previousPage":"/blog/tags/release/page/2","nextPage":"/blog/tags/release/page/4","blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}},{"items":["/2021/03/09/releasing-docusaurus-i18n"],"metadata":{"permalink":"/blog/tags/release/page/4","page":4,"postsPerPage":5,"totalPages":4,"totalCount":16,"previousPage":"/blog/tags/release/page/3","blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}}],"unlisted":false},"/blog/tags/maintenance":{"inline":false,"label":"Maintenance","permalink":"/blog/tags/maintenance","items":["/preparing-your-site-for-docusaurus-v3"],"pages":[{"items":["/preparing-your-site-for-docusaurus-v3"],"metadata":{"permalink":"/blog/tags/maintenance","page":1,"postsPerPage":5,"totalPages":1,"totalCount":1,"blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}}],"unlisted":false},"/blog/tags/recap":{"inline":false,"label":"Recap","permalink":"/blog/tags/recap","description":"Blog posts about Docusaurus\' year recaps","items":["/2022/01/24/docusaurus-2021-recap","/2021/01/19/docusaurus-2020-recap","/2019/12/30/docusaurus-2019-recap"],"pages":[{"items":["/2022/01/24/docusaurus-2021-recap","/2021/01/19/docusaurus-2020-recap","/2019/12/30/docusaurus-2019-recap"],"metadata":{"permalink":"/blog/tags/recap","page":1,"postsPerPage":5,"totalPages":1,"totalCount":3,"blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}}],"unlisted":false},"/blog/tags/search":{"inline":false,"label":"Search","permalink":"/blog/tags/search","items":["/2021/11/21/algolia-docsearch-migration"],"pages":[{"items":["/2021/11/21/algolia-docsearch-migration"],"metadata":{"permalink":"/blog/tags/search","page":1,"postsPerPage":5,"totalPages":1,"totalCount":1,"blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}}],"unlisted":false},"/blog/tags/beta":{"inline":false,"label":"Beta","permalink":"/blog/tags/beta","items":["/2021/05/12/announcing-docusaurus-two-beta"],"pages":[{"items":["/2021/05/12/announcing-docusaurus-two-beta"],"metadata":{"permalink":"/blog/tags/beta","page":1,"postsPerPage":5,"totalPages":1,"totalCount":1,"blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}}],"unlisted":false},"/blog/tags/i-18-n":{"inline":false,"label":"I18n","permalink":"/blog/tags/i-18-n","items":["/2021/03/09/releasing-docusaurus-i18n"],"pages":[{"items":["/2021/03/09/releasing-docusaurus-i18n"],"metadata":{"permalink":"/blog/tags/i-18-n","page":1,"postsPerPage":5,"totalPages":1,"totalCount":1,"blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}}],"unlisted":false},"/blog/tags/endi":{"inline":false,"label":"Endi","permalink":"/blog/tags/endi","items":["/2020/01/07/tribute-to-endi"],"pages":[{"items":["/2020/01/07/tribute-to-endi"],"metadata":{"permalink":"/blog/tags/endi","page":1,"postsPerPage":5,"totalPages":1,"totalCount":1,"blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}}],"unlisted":false},"/blog/tags/tribute":{"inline":false,"label":"Tribute","permalink":"/blog/tags/tribute","items":["/2020/01/07/tribute-to-endi"],"pages":[{"items":["/2020/01/07/tribute-to-endi"],"metadata":{"permalink":"/blog/tags/tribute","page":1,"postsPerPage":5,"totalPages":1,"totalCount":1,"blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}}],"unlisted":false},"/blog/tags/birth":{"inline":false,"label":"Birth","permalink":"/blog/tags/birth","items":["/2018/12/14/Happy-First-Birthday-Slash"],"pages":[{"items":["/2018/12/14/Happy-First-Birthday-Slash"],"metadata":{"permalink":"/blog/tags/birth","page":1,"postsPerPage":5,"totalPages":1,"totalCount":1,"blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}}],"unlisted":false},"/blog/tags/new":{"inline":false,"label":"New","permalink":"/blog/tags/new","items":["/2018/09/11/Towards-Docusaurus-2"],"pages":[{"items":["/2018/09/11/Towards-Docusaurus-2"],"metadata":{"permalink":"/blog/tags/new","page":1,"postsPerPage":5,"totalPages":1,"totalCount":1,"blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}}],"unlisted":false},"/blog/tags/adoption":{"inline":false,"label":"Adoption","permalink":"/blog/tags/adoption","items":["/2018/09/11/Towards-Docusaurus-2","/2018/04/30/How-I-Converted-Profilo-To-Docusaurus"],"pages":[{"items":["/2018/09/11/Towards-Docusaurus-2","/2018/04/30/How-I-Converted-Profilo-To-Docusaurus"],"metadata":{"permalink":"/blog/tags/adoption","page":1,"postsPerPage":5,"totalPages":1,"totalCount":2,"blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}}],"unlisted":false},"/blog/tags/profilo":{"inline":false,"label":"Profilo","permalink":"/blog/tags/profilo","items":["/2018/04/30/How-I-Converted-Profilo-To-Docusaurus"],"pages":[{"items":["/2018/04/30/How-I-Converted-Profilo-To-Docusaurus"],"metadata":{"permalink":"/blog/tags/profilo","page":1,"postsPerPage":5,"totalPages":1,"totalCount":1,"blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}}],"unlisted":false},"/blog/tags/documentation":{"inline":false,"label":"Documentation","permalink":"/blog/tags/documentation","items":["/2017/12/14/introducing-docusaurus"],"pages":[{"items":["/2017/12/14/introducing-docusaurus"],"metadata":{"permalink":"/blog/tags/documentation","page":1,"postsPerPage":5,"totalPages":1,"totalCount":1,"blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}}],"unlisted":false},"/blog/tags/blog":{"inline":false,"label":"Blog","permalink":"/blog/tags/blog","items":["/2017/12/14/introducing-docusaurus"],"pages":[{"items":["/2017/12/14/introducing-docusaurus"],"metadata":{"permalink":"/blog/tags/blog","page":1,"postsPerPage":5,"totalPages":1,"totalCount":1,"blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}}],"unlisted":false},"/blog/tags/docusaurus":{"inline":false,"label":"Docusaurus","permalink":"/blog/tags/docusaurus","items":["/2017/12/14/introducing-docusaurus"],"pages":[{"items":["/2017/12/14/introducing-docusaurus"],"metadata":{"permalink":"/blog/tags/docusaurus","page":1,"postsPerPage":5,"totalPages":1,"totalCount":1,"blogDescription":"Read blog posts about Docusaurus from the team","blogTitle":"Docusaurus blog"}}],"unlisted":false}},"blogTagsListPath":"/blog/tags","authorsMap":{"JMarcey":{"name":"Joel Marcey","title":"Developer Advocate at Meta","url":"https://x.com/JoelMarcey","page":{"permalink":"/blog/authors/j-marcey"},"socials":{"x":"https://x.com/joelmarcey","github":"https://github.com/JoelMarcey"},"imageURL":"https://github.com/JoelMarcey.png","key":"JMarcey"},"zpao":{"name":"Paul O\u2019Shannessy","title":"Engineering Manager at Meta","url":"https://x.com/zpao","page":{"permalink":"/blog/authors/zpao"},"socials":{"x":"https://x.com/zpao","github":"https://github.com/zpao"},"imageURL":"https://github.com/zpao.png","key":"zpao"},"slorber":{"name":"S\xe9bastien Lorber","title":"Docusaurus maintainer, This Week In React editor","url":"https://thisweekinreact.com","page":{"permalink":"/blog/authors/slorber"},"description":"A freelance React and React-Native developer near Paris and Docusaurus maintainer. Also runs ThisWeekInReact.com, a newsletter to stay updated with the React ecosystem.","socials":{"bluesky":"https://bsky.app/profile/sebastienlorber.com","x":"https://x.com/sebastienlorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","github":"https://github.com/slorber","instagram":"https://www.instagram.com/thisweekinreact","newsletter":"https://thisweekinreact.com"},"imageURL":"https://github.com/slorber.png","key":"slorber"},"yangshun":{"name":"Yangshun Tay","title":"Ex-Meta Staff Engineer, Co-founder GreatFrontEnd","url":"https://linkedin.com/in/yangshun","page":{"permalink":"/blog/authors/yangshun"},"socials":{"x":"https://x.com/yangshunz","linkedin":"https://www.linkedin.com/in/yangshun/","github":"https://github.com/yangshun","newsletter":"https://www.greatfrontend.com"},"imageURL":"https://github.com/yangshun.png","key":"yangshun"},"lex111":{"name":"Alexey Pyltsyn","title":"Open-source enthusiast","url":"https://github.com/lex111","email":"lex@php.net","page":{"permalink":"/blog/authors/lex-111"},"imageURL":"https://github.com/lex111.png","key":"lex111"},"Josh-Cena":{"name":"Joshua Chen","title":"Working hard on Docusaurus","url":"https://joshcena.com/","email":"sidachen2003@gmail.com","page":{"permalink":"/blog/authors/josh-cena"},"imageURL":"https://github.com/josh-cena.png","key":"Josh-Cena"},"endiliey":{"name":"Endilie Yacop Sucipto","title":"Maintainer of Docusaurus","url":"https://github.com/endiliey","imageURL":"https://github.com/endiliey.png","key":"endiliey","page":null},"abernathyca":{"name":"Christine Abernathy","url":"http://x.com/abernathyca","socials":{"x":"https://x.com/abernathyca"},"imageURL":"https://github.com/caabernathy.png","key":"abernathyca","page":null},"shortcuts":{"name":"Cl\xe9ment Vannicatte","title":"Software Engineer @ Algolia","url":"https://github.com/shortcuts","socials":{"x":"https://x.com/sh0rtcts","github":"https://github.com/shortcuts"},"imageURL":"https://github.com/shortcuts.png","key":"shortcuts","page":null}}},"blog-tests":{"blogSidebarTitle":"Recent posts","blogPosts":[{"id":"/2024/07/03/dual-author","metadata":{"permalink":"/tests/blog/2024/07/03/dual-author","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_blog-tests/_dogfooding/_blog tests/2024-07-03-dual-author.mdx","source":"@site/_dogfooding/_blog tests/2024-07-03-dual-author.mdx","title":"Dual author socials","description":"Content","date":"2024-07-03T00:00:00.000Z","tags":[],"readingTime":1.4,"hasTruncateMarker":false,"authors":[{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","socials":{"x":"https://x.com/sebastienlorber","github":"https://github.com/slorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","newsletter":"https://thisweekinreact.com/newsletter"},"key":null,"page":null},{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","socials":{"x":"https://x.com/sebastienlorber","github":"https://github.com/slorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","newsletter":"https://thisweekinreact.com/newsletter"},"key":null,"page":null}],"frontMatter":{"title":"Dual author socials","authors":[{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","socials":{"x":"https://x.com/sebastienlorber","github":"https://github.com/slorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","newsletter":"https://thisweekinreact.com/newsletter"}},{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","socials":{"x":"https://x.com/sebastienlorber","github":"https://github.com/slorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","newsletter":"https://thisweekinreact.com/newsletter"}}]},"unlisted":false,"nextItem":{"title":"How multiple authors with socials looks","permalink":"/tests/blog/2024/07/03/multiple-authors"}},"content":"## Content\\n\\nContent about the blog post"},{"id":"/2024/07/03/multiple-authors","metadata":{"permalink":"/tests/blog/2024/07/03/multiple-authors","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_blog-tests/_dogfooding/_blog tests/2024-07-03-multiple-authors.mdx","source":"@site/_dogfooding/_blog tests/2024-07-03-multiple-authors.mdx","title":"How multiple authors with socials looks","description":"Content","date":"2024-07-03T00:00:00.000Z","tags":[],"readingTime":1.4,"hasTruncateMarker":false,"authors":[{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","title":"Docusaurus Maintainer and This Week In React editor editor editor editor editor editor editor editor","socials":{"x":"https://x.com/sebastienlorber","github":"https://github.com/slorber","stackoverflow":"https://stackoverflow.com/users/82609/sebastien-lorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","instagram":"https://www.instagram.com/thisweekinreact/","newsletter":"https://thisweekinreact.com/newsletter"},"key":null,"page":null},{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","socials":{"x":"https://x.com/sebastienlorber","instagram":"https://www.instagram.com/thisweekinreact"},"key":null,"page":null},{"name":"Zed Spencer-Milnes","title":"All the socials test","urL":"https://gingergeek.co.uk","image_url":"https://github.com/GingerGeek.png","page":false,"socials":{"x":"https://x.com/GingerGeek","github":"https://github.com/gingergeek","linkedin":"https://www.linkedin.com/in/zedspencermilnes/","youtube":"https://youtube.com/@gingergeekuk","bluesky":"https://bsky.app/profile/gingergeek.co.uk","stackoverflow":"https://stackoverflow.com/users/2064409","twitch":"https://twitch.tv/gingergeek","threads":"https://www.threads.net/@gingergeekuk","mastodon":"https://hachyderm.io/@zed"},"imageURL":"https://github.com/GingerGeek.png","key":null},{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","title":"Docusaurus Maintainer and This Week In React editor","socials":{},"key":null,"page":null},{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","title":"Docusaurus Maintainer and This Week In React editor editor editor editor editor editor editor editor","socials":{},"key":null,"page":null},{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","title":"Docusaurus Maintainer and This Week In React editor","socials":{},"key":null,"page":null},{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","socials":{"github":"https://github.com/slorber","x":"https://x.com/sebastienlorber"},"key":null,"page":null},{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","title":"Docusaurus Maintainer and This Week In React editor editor editor editor editor editor editor editor","socials":{"github":"https://github.com/slorber","x":"https://x.com/sebastienlorber"},"key":null,"page":null},{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","socials":{"a":"https://thisweekinreact.com/newsletter","b":"https://thisweekinreact.com/newsletter","c":"https://thisweekinreact.com/newsletter","d":"https://thisweekinreact.com/newsletter","e":"https://thisweekinreact.com/newsletter","f":"https://thisweekinreact.com/newsletter","g":"https://thisweekinreact.com/newsletter","h":"https://thisweekinreact.com/newsletter","i":"https://thisweekinreact.com/newsletter","j":"https://thisweekinreact.com/newsletter","k":"https://thisweekinreact.com/newsletter","l":"https://thisweekinreact.com/newsletter","m":"https://thisweekinreact.com/newsletter","n":"https://thisweekinreact.com/newsletter","o":"https://thisweekinreact.com/newsletter","p":"https://thisweekinreact.com/newsletter"},"key":null,"page":null},{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","socials":{"a":"https://thisweekinreact.com/newsletter","b":"https://thisweekinreact.com/newsletter","c":"https://thisweekinreact.com/newsletter","d":"https://thisweekinreact.com/newsletter","e":"https://thisweekinreact.com/newsletter","f":"https://thisweekinreact.com/newsletter","g":"https://thisweekinreact.com/newsletter","h":"https://thisweekinreact.com/newsletter","i":"https://thisweekinreact.com/newsletter","j":"https://thisweekinreact.com/newsletter","k":"https://thisweekinreact.com/newsletter","l":"https://thisweekinreact.com/newsletter","m":"https://thisweekinreact.com/newsletter","n":"https://thisweekinreact.com/newsletter","o":"https://thisweekinreact.com/newsletter","p":"https://thisweekinreact.com/newsletter","q":"https://thisweekinreact.com/newsletter","r":"https://thisweekinreact.com/newsletter","s":"https://thisweekinreact.com/newsletter","t":"https://thisweekinreact.com/newsletter","u":"https://thisweekinreact.com/newsletter","v":"https://thisweekinreact.com/newsletter","w":"https://thisweekinreact.com/newsletter","x":"https://thisweekinreact.com/newsletter","y":"https://thisweekinreact.com/newsletter","z":"https://thisweekinreact.com/newsletter"},"key":null,"page":null}],"frontMatter":{"title":"How multiple authors with socials looks","authors":[{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","title":"Docusaurus Maintainer and This Week In React editor editor editor editor editor editor editor editor","socials":{"x":"https://x.com/sebastienlorber","github":"https://github.com/slorber","stackoverflow":"https://stackoverflow.com/users/82609/sebastien-lorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","instagram":"https://www.instagram.com/thisweekinreact/","newsletter":"https://thisweekinreact.com/newsletter"}},{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","socials":{"x":"https://x.com/sebastienlorber","instagram":"thisweekinreact"}},{"name":"Zed Spencer-Milnes","title":"All the socials test","urL":"https://gingergeek.co.uk","image_url":"https://github.com/GingerGeek.png","page":false,"socials":{"x":"GingerGeek","github":"gingergeek","linkedin":"zedspencermilnes","youtube":"gingergeekuk","bluesky":"gingergeek.co.uk","stackoverflow":"2064409","twitch":"gingergeek","threads":"gingergeekuk","mastodon":"https://hachyderm.io/@zed"},"imageURL":"https://github.com/GingerGeek.png"},{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","title":"Docusaurus Maintainer and This Week In React editor"},{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","title":"Docusaurus Maintainer and This Week In React editor editor editor editor editor editor editor editor"},{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","title":"Docusaurus Maintainer and This Week In React editor"},{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","socials":{"github":"https://github.com/slorber","x":"https://x.com/sebastienlorber"}},{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","title":"Docusaurus Maintainer and This Week In React editor editor editor editor editor editor editor editor","socials":{"github":"https://github.com/slorber","x":"https://x.com/sebastienlorber"}},{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","socials":{"a":"https://thisweekinreact.com/newsletter","b":"https://thisweekinreact.com/newsletter","c":"https://thisweekinreact.com/newsletter","d":"https://thisweekinreact.com/newsletter","e":"https://thisweekinreact.com/newsletter","f":"https://thisweekinreact.com/newsletter","g":"https://thisweekinreact.com/newsletter","h":"https://thisweekinreact.com/newsletter","i":"https://thisweekinreact.com/newsletter","j":"https://thisweekinreact.com/newsletter","k":"https://thisweekinreact.com/newsletter","l":"https://thisweekinreact.com/newsletter","m":"https://thisweekinreact.com/newsletter","n":"https://thisweekinreact.com/newsletter","o":"https://thisweekinreact.com/newsletter","p":"https://thisweekinreact.com/newsletter"}},{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","socials":{"a":"https://thisweekinreact.com/newsletter","b":"https://thisweekinreact.com/newsletter","c":"https://thisweekinreact.com/newsletter","d":"https://thisweekinreact.com/newsletter","e":"https://thisweekinreact.com/newsletter","f":"https://thisweekinreact.com/newsletter","g":"https://thisweekinreact.com/newsletter","h":"https://thisweekinreact.com/newsletter","i":"https://thisweekinreact.com/newsletter","j":"https://thisweekinreact.com/newsletter","k":"https://thisweekinreact.com/newsletter","l":"https://thisweekinreact.com/newsletter","m":"https://thisweekinreact.com/newsletter","n":"https://thisweekinreact.com/newsletter","o":"https://thisweekinreact.com/newsletter","p":"https://thisweekinreact.com/newsletter","q":"https://thisweekinreact.com/newsletter","r":"https://thisweekinreact.com/newsletter","s":"https://thisweekinreact.com/newsletter","t":"https://thisweekinreact.com/newsletter","u":"https://thisweekinreact.com/newsletter","v":"https://thisweekinreact.com/newsletter","w":"https://thisweekinreact.com/newsletter","x":"https://thisweekinreact.com/newsletter","y":"https://thisweekinreact.com/newsletter","z":"https://thisweekinreact.com/newsletter"}}]},"unlisted":false,"prevItem":{"title":"Dual author socials","permalink":"/tests/blog/2024/07/03/dual-author"},"nextItem":{"title":"Single author socials","permalink":"/tests/blog/2024/07/03/single-author"}},"content":"## Content\\n\\nContent about the blog post"},{"id":"/2024/07/03/single-author","metadata":{"permalink":"/tests/blog/2024/07/03/single-author","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_blog-tests/_dogfooding/_blog tests/2024-07-03-single-author.mdx","source":"@site/_dogfooding/_blog tests/2024-07-03-single-author.mdx","title":"Single author socials","description":"Content","date":"2024-07-03T00:00:00.000Z","tags":[],"readingTime":1.4,"hasTruncateMarker":false,"authors":[{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","title":"Docusaurus Maintainer and This Week In React editor editor editor editor editor editor editor editor editor editor editor editor editor editor","socials":{"x":"https://x.com/sebastienlorber","github":"https://github.com/slorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","newsletter":"https://thisweekinreact.com/newsletter"},"key":null,"page":null}],"frontMatter":{"title":"Single author socials","authors":[{"name":"S\xe9bastien Lorber","imageURL":"https://github.com/slorber.png","title":"Docusaurus Maintainer and This Week In React editor editor editor editor editor editor editor editor editor editor editor editor editor editor","socials":{"x":"https://x.com/sebastienlorber","github":"https://github.com/slorber","linkedin":"https://www.linkedin.com/in/sebastienlorber/","newsletter":"https://thisweekinreact.com/newsletter"}}]},"unlisted":false,"prevItem":{"title":"How multiple authors with socials looks","permalink":"/tests/blog/2024/07/03/multiple-authors"},"nextItem":{"title":"Ensure heading anchor slugs respect GitHub emoji behavior","permalink":"/tests/blog/2023/08/05/"}},"content":"## Content\\n\\nContent about the blog post"},{"id":"/2023/08/05/","metadata":{"permalink":"/tests/blog/2023/08/05/","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_blog-tests/_dogfooding/_blog tests/2023-08-05.mdx","source":"@site/_dogfooding/_blog tests/2023-08-05.mdx","title":"Ensure heading anchor slugs respect GitHub emoji behavior","description":"This is a friendly header","date":"2023-08-05T00:00:00.000Z","tags":[],"readingTime":3.2,"hasTruncateMarker":false,"authors":[],"frontMatter":{"title":"Ensure heading anchor slugs respect GitHub emoji behavior","date":"2023-08-05T00:00:00.000Z","sidebar_label":"Ensure heading... (custom label)"},"unlisted":false,"prevItem":{"title":"Single author socials","permalink":"/tests/blog/2024/07/03/single-author"},"nextItem":{"title":"Test if href in feed resolved correctly","permalink":"/tests/blog/2023/07/19/a"}},"content":"## :smiley: This is a friendly header\\n\\n## \uD83D\uDE03 This is a friendly header (real smiley)"},{"id":"/2023/07/19/a","metadata":{"permalink":"/tests/blog/2023/07/19/a","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_blog-tests/_dogfooding/_blog tests/2023-07-19-a.mdx","source":"@site/_dogfooding/_blog tests/2023-07-19-a.mdx","title":"Test if href in feed resolved correctly","description":"absolute full url","date":"2023-07-19T00:00:00.000Z","tags":[],"readingTime":2.2,"hasTruncateMarker":false,"authors":[],"frontMatter":{"title":"Test if href in feed resolved correctly"},"unlisted":false,"prevItem":{"title":"Ensure heading anchor slugs respect GitHub emoji behavior","permalink":"/tests/blog/2023/08/05/"},"nextItem":{"title":"Test Relative Path","permalink":"/tests/blog/2023/07/19/b"}},"content":"[absolute full url](https://github.com/facebook/docusaurus)\\n\\n[absolute url with implicit domain name](/tests/blog/2023/07/19/b)\\n\\n[relative url](2023-07-19-b.mdx)"},{"id":"/2023/07/19/b","metadata":{"permalink":"/tests/blog/2023/07/19/b","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_blog-tests/_dogfooding/_blog tests/2023-07-19-b.mdx","source":"@site/_dogfooding/_blog tests/2023-07-19-b.mdx","title":"Test Relative Path","description":"","date":"2023-07-19T00:00:00.000Z","tags":[],"readingTime":0,"hasTruncateMarker":false,"authors":[],"frontMatter":{},"unlisted":false,"prevItem":{"title":"Test if href in feed resolved correctly","permalink":"/tests/blog/2023/07/19/a"},"nextItem":{"title":"A post with html slug","permalink":"/tests/blog/x/y/z.html"}},"content":""},{"id":"/x/y/z.html","metadata":{"permalink":"/tests/blog/x/y/z.html","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_blog-tests/_dogfooding/_blog tests/2022-10-02-html-slug.mdx","source":"@site/_dogfooding/_blog tests/2022-10-02-html-slug.mdx","title":"A post with html slug","description":"This is a blog post with an html slug!","date":"2022-10-02T00:00:00.000Z","tags":[{"inline":false,"label":"Paginated-tag","permalink":"/tests/blog/tags/paginated-tag"}],"readingTime":3.4,"hasTruncateMarker":false,"authors":[],"frontMatter":{"title":"A post with html slug","tags":["paginated-tag"],"slug":"/x/y/z.html"},"unlisted":false,"prevItem":{"title":"Test Relative Path","permalink":"/tests/blog/2023/07/19/b"},"nextItem":{"title":"First post with footnote to test posts with same footnote reference.","permalink":"/tests/blog/2022/04/20/dup-footnote"}},"content":"This is a blog post with an html slug!\\n\\n```mdx-code-block\\nimport Partial from \\"./_partial.mdx\\"\\n\\n<Partial />\\n```"},{"id":"/unlisted-post","metadata":{"permalink":"/tests/blog/unlisted-post","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_blog-tests/_dogfooding/_blog tests/2022-08-24-post-unlisted.mdx","source":"@site/_dogfooding/_blog tests/2022-08-24-post-unlisted.mdx","title":"Unlisted blog post","description":"This unlisted blog post should be \\"hidden\\" in production, but remain accessible.","date":"2022-08-24T00:00:00.000Z","tags":[{"inline":false,"label":"Blog","permalink":"/tests/blog/tags/blog"},{"inline":false,"label":"Visibility","permalink":"/tests/blog/tags/visibility"},{"inline":false,"label":"Unlisted","permalink":"/tests/blog/tags/unlisted"}],"readingTime":4.2,"hasTruncateMarker":false,"authors":[],"frontMatter":{"title":"Unlisted blog post","unlisted":true,"tags":["blog","visibility","unlisted"],"slug":"/unlisted-post"},"unlisted":true},"content":"This unlisted blog post should be \\"hidden\\" in production, but remain accessible.\\n\\nIt is filtered from the sidebar, sitemap, SEO indexation..."},{"id":"/2022/04/20/dup-footnote","metadata":{"permalink":"/tests/blog/2022/04/20/dup-footnote","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_blog-tests/_dogfooding/_blog tests/2022-04-20-dup-footnote.mdx","source":"@site/_dogfooding/_blog tests/2022-04-20-dup-footnote.mdx","title":"First post with footnote to test posts with same footnote reference.","description":"foo","date":"2022-04-20T00:00:00.000Z","tags":[],"readingTime":1.8,"hasTruncateMarker":false,"authors":[],"frontMatter":{"title":"First post with footnote to test posts with same footnote reference."},"unlisted":false,"prevItem":{"title":"A post with html slug","permalink":"/tests/blog/x/y/z.html"},"nextItem":{"title":"Second post with footnote to test posts with same footnote reference.","permalink":"/tests/blog/2022/01/22/dup-footnote"}},"content":"foo[^1]\\n\\nbar[^2]\\n\\nbaz[^3]\\n\\n[^1]: foo\\n[^2]: bar\\n[^3]: baz"},{"id":"/2022/01/22/dup-footnote","metadata":{"permalink":"/tests/blog/2022/01/22/dup-footnote","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_blog-tests/_dogfooding/_blog tests/2022-01-22-dup-footnote.mdx","source":"@site/_dogfooding/_blog tests/2022-01-22-dup-footnote.mdx","title":"Second post with footnote to test posts with same footnote reference.","description":"foo","date":"2022-01-22T00:00:00.000Z","tags":[],"readingTime":1.8,"hasTruncateMarker":false,"authors":[],"frontMatter":{"title":"Second post with footnote to test posts with same footnote reference."},"unlisted":false,"prevItem":{"title":"First post with footnote to test posts with same footnote reference.","permalink":"/tests/blog/2022/04/20/dup-footnote"},"nextItem":{"title":"Third post with footnote to test posts with same footnote reference.","permalink":"/tests/blog/2022/01/21/dup-footnote"}},"content":"foo[^1]\\n\\nbar[^2]\\n\\nbaz[^3]\\n\\n[^1]: foo\\n[^2]: bar\\n[^3]: baz"},{"id":"/2022/01/21/dup-footnote","metadata":{"permalink":"/tests/blog/2022/01/21/dup-footnote","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_blog-tests/_dogfooding/_blog tests/2022-01-21-dup-footnote.mdx","source":"@site/_dogfooding/_blog tests/2022-01-21-dup-footnote.mdx","title":"Third post with footnote to test posts with same footnote reference.","description":"foo","date":"2022-01-21T00:00:00.000Z","tags":[],"readingTime":1.8,"hasTruncateMarker":false,"authors":[],"frontMatter":{"title":"Third post with footnote to test posts with same footnote reference."},"unlisted":false,"prevItem":{"title":"Second post with footnote to test posts with same footnote reference.","permalink":"/tests/blog/2022/01/22/dup-footnote"},"nextItem":{"title":"Image-only authors","permalink":"/tests/blog/2022/01/20/image-only-authors"}},"content":"foo[^1]\\n\\nbar[^2]\\n\\nbaz[^3]\\n\\n[^1]: foo\\n[^2]: bar\\n[^3]: baz"},{"id":"/2022/01/20/image-only-authors","metadata":{"permalink":"/tests/blog/2022/01/20/image-only-authors","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_blog-tests/_dogfooding/_blog tests/2022-01-20-image-only-authors.mdx","source":"@site/_dogfooding/_blog tests/2022-01-20-image-only-authors.mdx","title":"Image-only authors","description":"You can make a compact authors list without author names!","date":"2022-01-20T00:00:00.000Z","tags":[{"inline":false,"label":"Paginated-tag","permalink":"/tests/blog/tags/paginated-tag"}],"readingTime":2,"hasTruncateMarker":false,"authors":[{"image_url":"https://github.com/endiliey.png","url":"https://github.com/endiliey","imageURL":"https://github.com/endiliey.png","socials":{},"key":null,"page":null},{"image_url":"https://github.com/lex111.png","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","socials":{},"key":null,"page":null},{"image_url":"https://github.com/slorber.png","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","socials":{},"key":null,"page":null},{"image_url":"https://github.com/yangshun.png","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png","socials":{},"key":null,"page":null},{"image_url":"https://github.com/JoelMarcey.png","url":"https://github.com/JoelMarcey","imageURL":"https://github.com/JoelMarcey.png","socials":{},"key":null,"page":null},{"image_url":"https://github.com/Josh-Cena.png","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","socials":{},"key":null,"page":null},{"image_url":"https://github.com/deltice.png","url":"https://github.com/deltice","imageURL":"https://github.com/deltice.png","socials":{},"key":null,"page":null},{"image_url":"https://github.com/SamChou19815.png","url":"https://github.com/SamChou19815","imageURL":"https://github.com/SamChou19815.png","socials":{},"key":null,"page":null},{"image_url":"https://github.com/ericnakagawa.png","url":"https://github.com/ericnakagawa","imageURL":"https://github.com/ericnakagawa.png","socials":{},"key":null,"page":null},{"image_url":"https://github.com/Simek.png","url":"https://github.com/Simek","imageURL":"https://github.com/Simek.png","socials":{},"key":null,"page":null},{"image_url":"https://github.com/hramos.png","url":"https://github.com/hramos","imageURL":"https://github.com/hramos.png","socials":{},"key":null,"page":null},{"image_url":"https://github.com/wgao19.png","url":"https://github.com/wgao19","imageURL":"https://github.com/wgao19.png","socials":{},"key":null,"page":null},{"image_url":"https://github.com/rickyvetter.png","url":"https://github.com/rickyvetter","imageURL":"https://github.com/rickyvetter.png","socials":{},"key":null,"page":null},{"image_url":"https://github.com/fanny.png","url":"https://github.com/fanny","imageURL":"https://github.com/fanny.png","socials":{},"key":null,"page":null},{"image_url":"https://github.com/armano2.png","url":"https://github.com/armano2","imageURL":"https://github.com/armano2.png","socials":{},"key":null,"page":null},{"image_url":"https://github.com/RDIL.png","url":"https://github.com/RDIL","imageURL":"https://github.com/RDIL.png","socials":{},"key":null,"page":null},{"image_url":"https://github.com/teikjun.png","url":"https://github.com/teikjun","imageURL":"https://github.com/teikjun.png","socials":{},"key":null,"page":null},{"image_url":"https://github.com/hong4rc.png","url":"https://github.com/hong4rc","imageURL":"https://github.com/hong4rc.png","socials":{},"key":null,"page":null},{"image_url":"https://github.com/anshulrgoyal.png","url":"https://github.com/anshulrgoyal","imageURL":"https://github.com/anshulrgoyal.png","socials":{},"key":null,"page":null},{"image_url":"https://github.com/italicize.png","url":"https://github.com/italicize","imageURL":"https://github.com/italicize.png","socials":{},"key":null,"page":null}],"frontMatter":{"authors":[{"image_url":"https://github.com/endiliey.png","url":"https://github.com/endiliey","imageURL":"https://github.com/endiliey.png"},{"image_url":"https://github.com/lex111.png","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png"},{"image_url":"https://github.com/slorber.png","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png"},{"image_url":"https://github.com/yangshun.png","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png"},{"image_url":"https://github.com/JoelMarcey.png","url":"https://github.com/JoelMarcey","imageURL":"https://github.com/JoelMarcey.png"},{"image_url":"https://github.com/Josh-Cena.png","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png"},{"image_url":"https://github.com/deltice.png","url":"https://github.com/deltice","imageURL":"https://github.com/deltice.png"},{"image_url":"https://github.com/SamChou19815.png","url":"https://github.com/SamChou19815","imageURL":"https://github.com/SamChou19815.png"},{"image_url":"https://github.com/ericnakagawa.png","url":"https://github.com/ericnakagawa","imageURL":"https://github.com/ericnakagawa.png"},{"image_url":"https://github.com/Simek.png","url":"https://github.com/Simek","imageURL":"https://github.com/Simek.png"},{"image_url":"https://github.com/hramos.png","url":"https://github.com/hramos","imageURL":"https://github.com/hramos.png"},{"image_url":"https://github.com/wgao19.png","url":"https://github.com/wgao19","imageURL":"https://github.com/wgao19.png"},{"image_url":"https://github.com/rickyvetter.png","url":"https://github.com/rickyvetter","imageURL":"https://github.com/rickyvetter.png"},{"image_url":"https://github.com/fanny.png","url":"https://github.com/fanny","imageURL":"https://github.com/fanny.png"},{"image_url":"https://github.com/armano2.png","url":"https://github.com/armano2","imageURL":"https://github.com/armano2.png"},{"image_url":"https://github.com/RDIL.png","url":"https://github.com/RDIL","imageURL":"https://github.com/RDIL.png"},{"image_url":"https://github.com/teikjun.png","url":"https://github.com/teikjun","imageURL":"https://github.com/teikjun.png"},{"image_url":"https://github.com/hong4rc.png","url":"https://github.com/hong4rc","imageURL":"https://github.com/hong4rc.png"},{"image_url":"https://github.com/anshulrgoyal.png","url":"https://github.com/anshulrgoyal","imageURL":"https://github.com/anshulrgoyal.png"},{"image_url":"https://github.com/italicize.png","url":"https://github.com/italicize","imageURL":"https://github.com/italicize.png"}],"tags":["paginated-tag"]},"unlisted":false,"prevItem":{"title":"Third post with footnote to test posts with same footnote reference.","permalink":"/tests/blog/2022/01/21/dup-footnote"},"nextItem":{"title":"Post with duplicate title","permalink":"/tests/blog/2021/11/13/dup-title"}},"content":"You can make a compact authors list without author names!"},{"id":"/2021/11/13/dup-title","metadata":{"permalink":"/tests/blog/2021/11/13/dup-title","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_blog-tests/_dogfooding/_blog tests/2021-11-13-dup-title.mdx","source":"@site/_dogfooding/_blog tests/2021-11-13-dup-title.mdx","title":"Post with duplicate title","description":"I hope I\'m still here","date":"2021-11-13T00:00:00.000Z","tags":[{"inline":false,"label":"Paginated-tag","permalink":"/tests/blog/tags/paginated-tag"}],"readingTime":1,"hasTruncateMarker":false,"authors":[],"frontMatter":{"tags":["paginated-tag"]},"unlisted":false,"prevItem":{"title":"Image-only authors","permalink":"/tests/blog/2022/01/20/image-only-authors"},"nextItem":{"title":"Blog post MDX require Feed tests","permalink":"/tests/blog/2021/10/08/blog-post-mdx-require-feed-tests"}},"content":"I hope I\'m still here"},{"id":"/2021/10/08/blog-post-mdx-require-feed-tests","metadata":{"permalink":"/tests/blog/2021/10/08/blog-post-mdx-require-feed-tests","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_blog-tests/_dogfooding/_blog tests/2021-10-08-blog-post-mdx-require-feed-tests.mdx","source":"@site/_dogfooding/_blog tests/2021-10-08-blog-post-mdx-require-feed-tests.mdx","title":"Blog post MDX require Feed tests","description":"Some MDX tests, mostly to test how the RSS feed render those","date":"2021-10-08T00:00:00.000Z","tags":[{"inline":false,"label":"Paginated-tag","permalink":"/tests/blog/tags/paginated-tag"},{"inline":false,"label":"Blog","permalink":"/tests/blog/tags/blog"},{"inline":false,"label":"Docusaurus","permalink":"/tests/blog/tags/docusaurus"},{"inline":false,"label":"Long-long","permalink":"/tests/blog/tags/long-long"},{"inline":false,"label":"Long-long-long","permalink":"/tests/blog/tags/long-long-long"},{"inline":false,"label":"Long-long-long-long","permalink":"/tests/blog/tags/long-long-long-long"}],"readingTime":6.6,"hasTruncateMarker":true,"authors":[{"name":"Sebastien Lorber","title":"Docusaurus maintainer","url":"https://sebastienlorber.com","page":{"permalink":"/tests/blog/authors/slorber"},"socials":{"x":"https://x.com/sebastienlorber"},"imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"title":"Blog post MDX require Feed tests","authors":["slorber"],"tags":["paginated-tag","blog","docusaurus","long-long","long-long-long","long-long-long-long"]},"unlisted":false,"prevItem":{"title":"Post with duplicate title","permalink":"/tests/blog/2021/11/13/dup-title"},"nextItem":{"title":"Blog post MDX Feed tests","permalink":"/tests/blog/2021/10/07/blog-post-mdx-feed-tests"}},"content":"Some MDX tests, mostly to test how the RSS feed render those\\n\\n{/* truncate */}\\n\\nTest MDX with require calls\\n\\nimport useBaseUrl from \'@docusaurus/useBaseUrl\';\\n\\n<img src={useBaseUrl(\'/img/docusaurus.png\')} />\\n\\n<img src={require(\'../../static/img/docusaurus.png\').default} />\\n\\n<img src={require(\'@site/static/img/docusaurus.png\').default} />"},{"id":"/2021/10/07/blog-post-mdx-feed-tests","metadata":{"permalink":"/tests/blog/2021/10/07/blog-post-mdx-feed-tests","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_blog-tests/_dogfooding/_blog tests/2021-10-07-blog-post-mdx-feed-tests.mdx","source":"@site/_dogfooding/_blog tests/2021-10-07-blog-post-mdx-feed-tests.mdx","title":"Blog post MDX Feed tests","description":"Some MDX tests, mostly to test how the RSS feed render those","date":"2021-10-07T00:00:00.000Z","tags":[{"inline":false,"label":"Paginated-tag","permalink":"/tests/blog/tags/paginated-tag"},{"inline":false,"label":"Blog","permalink":"/tests/blog/tags/blog"},{"inline":false,"label":"Docusaurus","permalink":"/tests/blog/tags/docusaurus"},{"inline":false,"label":"Long-long","permalink":"/tests/blog/tags/long-long"},{"inline":false,"label":"Long-long-long","permalink":"/tests/blog/tags/long-long-long"},{"inline":false,"label":"Long-long-long-long","permalink":"/tests/blog/tags/long-long-long-long"}],"hasTruncateMarker":true,"authors":[{"name":"Sebastien Lorber","title":"Docusaurus maintainer","url":"https://sebastienlorber.com","page":{"permalink":"/tests/blog/authors/slorber"},"socials":{"x":"https://x.com/sebastienlorber"},"imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"title":"Blog post MDX Feed tests","authors":["slorber"],"tags":["paginated-tag","blog","docusaurus","long-long","long-long-long","long-long-long-long"],"hide_reading_time":true},"unlisted":false,"prevItem":{"title":"Blog post MDX require Feed tests","permalink":"/tests/blog/2021/10/08/blog-post-mdx-require-feed-tests"},"nextItem":{"title":"Post with duplicate title","permalink":"/tests/blog/2021/09/13/dup-title"}},"content":"Some MDX tests, mostly to test how the RSS feed render those\\n\\n{/* truncate */}\\n\\n## Imports\\n\\nHere are some imports:\\n\\nimport Tabs from \'@theme/Tabs\';\\nimport TabItem from \'@theme/TabItem\';\\n\\n## Exports\\n\\nHere are some exports:\\n\\nexport const someExport = 42;\\n\\n## Tabs test\\n\\nHere are some tabs:\\n\\n<Tabs>\\n <TabItem value=\\"apple\\" label=\\"Apple\\">\\n This is an apple \uD83C\uDF4E\\n </TabItem>\\n <TabItem value=\\"orange\\" label=\\"Orange\\">\\n This is an orange \uD83C\uDF4A\\n </TabItem>\\n</Tabs>\\n\\nHere are some tabs, inside `mdx-code-block`:\\n\\n```mdx-code-block\\n<Tabs>\\n <TabItem value=\\"apple\\" label=\\"Apple\\">\\n This is an apple \uD83C\uDF4E\\n </TabItem>\\n <TabItem value=\\"orange\\" label=\\"Orange\\">\\n This is an orange \uD83C\uDF4A\\n </TabItem>\\n</Tabs>\\n```"},{"id":"/2021/09/13/dup-title","metadata":{"permalink":"/tests/blog/2021/09/13/dup-title","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_blog-tests/_dogfooding/_blog tests/2021-09-13-dup-title.mdx","source":"@site/_dogfooding/_blog tests/2021-09-13-dup-title.mdx","title":"Post with duplicate title","description":"See https://github.com/facebook/docusaurus/issues/6059. This one and 2021-11-13-dup-title.md should both show up.","date":"2021-09-13T00:00:00.000Z","tags":[{"inline":false,"label":"Paginated-tag","permalink":"/tests/blog/tags/paginated-tag"}],"readingTime":2,"hasTruncateMarker":false,"authors":[{"name":"Josh-Cena1","socials":{},"key":null,"page":null},{"name":"Josh-Cena2","image_url":"https://github.com/Josh-Cena.png","imageURL":"https://github.com/Josh-Cena.png","socials":{},"key":null,"page":null},{"name":"Josh-Cena3","url":"https://github.com/Josh-Cena","socials":{},"key":null,"page":null},{"name":"Josh-Cena4","email":"sidechen2003@gmail.com","socials":{},"key":null,"page":null}],"frontMatter":{"tags":["paginated-tag"],"authors":[{"name":"Josh-Cena1"},{"name":"Josh-Cena2","image_url":"https://github.com/Josh-Cena.png","imageURL":"https://github.com/Josh-Cena.png"},{"name":"Josh-Cena3","url":"https://github.com/Josh-Cena"},{"name":"Josh-Cena4","email":"sidechen2003@gmail.com"}]},"unlisted":false,"prevItem":{"title":"Blog post MDX Feed tests","permalink":"/tests/blog/2021/10/07/blog-post-mdx-feed-tests"},"nextItem":{"title":"Multiple authors","permalink":"/tests/blog/2021/08/23/multiple-authors"}},"content":"See https://github.com/facebook/docusaurus/issues/6059. This one and [2021-11-13-dup-title.md](./2021-11-13-dup-title.mdx) should both show up."},{"id":"/2021/08/23/multiple-authors","metadata":{"permalink":"/tests/blog/2021/08/23/multiple-authors","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_blog-tests/_dogfooding/_blog tests/2021-08-23-multiple-authors.mdx","source":"@site/_dogfooding/_blog tests/2021-08-23-multiple-authors.mdx","title":"Multiple authors","description":"You can have multiple authors for one blog post!","date":"2021-08-23T00:00:00.000Z","tags":[{"inline":false,"label":"Blog","permalink":"/tests/blog/tags/blog"},{"inline":false,"label":"Docusaurus","permalink":"/tests/blog/tags/docusaurus"},{"inline":false,"label":"Paginated-tag","permalink":"/tests/blog/tags/paginated-tag"},{"inline":false,"label":"Long","permalink":"/tests/blog/tags/long"},{"inline":false,"label":"Long-long","permalink":"/tests/blog/tags/long-long"},{"inline":false,"label":"Long-long-long","permalink":"/tests/blog/tags/long-long-long"},{"inline":false,"label":"Long-long-long-long","permalink":"/tests/blog/tags/long-long-long-long"},{"inline":false,"label":"Long-long-long-long-long","permalink":"/tests/blog/tags/long-long-long-long-long"}],"readingTime":1.8,"hasTruncateMarker":false,"authors":[{"name":"Sebastien Lorber","title":"Docusaurus maintainer","url":"https://sebastienlorber.com","page":{"permalink":"/tests/blog/authors/slorber"},"socials":{"x":"https://x.com/sebastienlorber"},"imageURL":"https://github.com/slorber.png","key":"slorber"},{"name":"Josh-Cena","image_url":"https://avatars.githubusercontent.com/u/55398995?v=4","url":"https://joshcena.com","imageURL":"https://avatars.githubusercontent.com/u/55398995?v=4","socials":{},"key":null,"page":null}],"frontMatter":{"authors":["slorber",{"name":"Josh-Cena","image_url":"https://avatars.githubusercontent.com/u/55398995?v=4","url":"https://joshcena.com","imageURL":"https://avatars.githubusercontent.com/u/55398995?v=4"}],"tags":["blog","docusaurus","paginated-tag","long","long-long","long-long-long","long-long-long-long","long-long-long-long-long"]},"unlisted":false,"prevItem":{"title":"Post with duplicate title","permalink":"/tests/blog/2021/09/13/dup-title"},"nextItem":{"title":"Hmmm!","permalink":"/tests/blog/2021/08/22/no-author"}},"content":"You can have multiple authors for one blog post!"},{"id":"/2021/08/22/no-author","metadata":{"permalink":"/tests/blog/2021/08/22/no-author","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_blog-tests/_dogfooding/_blog tests/2021-08-22-no-author.mdx","source":"@site/_dogfooding/_blog tests/2021-08-22-no-author.mdx","title":"Hmmm!","description":"This is a blog post from an anonymous author!","date":"2021-08-22T00:00:00.000Z","tags":[{"inline":false,"label":"Paginated-tag","permalink":"/tests/blog/tags/paginated-tag"}],"readingTime":3.4,"hasTruncateMarker":false,"authors":[],"frontMatter":{"tags":["paginated-tag"]},"unlisted":false,"prevItem":{"title":"Multiple authors","permalink":"/tests/blog/2021/08/23/multiple-authors"},"nextItem":{"title":"Blog TOC FrontMatter tests","permalink":"/tests/blog/2021/08/21/blog-post-toc-tests"}},"content":"This is a blog post from an anonymous author!\\n\\n```mdx-code-block\\nimport Partial from \\"./_partial.mdx\\"\\n\\n<Partial />\\n```"},{"id":"/2021/08/21/blog-post-toc-tests","metadata":{"permalink":"/tests/blog/2021/08/21/blog-post-toc-tests","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_blog-tests/_dogfooding/_blog tests/2021-08-21-blog-post-toc-tests.mdx","source":"@site/_dogfooding/_blog tests/2021-08-21-blog-post-toc-tests.mdx","title":"Blog TOC FrontMatter tests","description":"{/ truncate /}","date":"2021-08-21T00:00:00.000Z","tags":[{"inline":false,"label":"Paginated-tag","permalink":"/tests/blog/tags/paginated-tag"}],"readingTime":1.8,"hasTruncateMarker":true,"authors":[{"name":"Sebastien Lorber","title":"Docusaurus maintainer","url":"https://sebastienlorber.com","page":{"permalink":"/tests/blog/authors/slorber"},"socials":{"x":"https://x.com/sebastienlorber"},"imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"title":"Blog TOC FrontMatter tests","authors":["slorber"],"toc_min_heading_level":2,"toc_max_heading_level":4,"tags":["paginated-tag"]},"unlisted":false,"prevItem":{"title":"Hmmm!","permalink":"/tests/blog/2021/08/22/no-author"},"nextItem":{"title":"Using twice the blog plugin","permalink":"/tests/blog/2020/08/03/demo/second-blog-intro"}},"content":"{/* truncate */}\\n\\nimport Content from \'@site/_dogfooding/_partials/toc-tests.mdx\';\\n\\n<Content />"},{"id":"/2020/08/03/demo/second-blog-intro","metadata":{"permalink":"/tests/blog/2020/08/03/demo/second-blog-intro","editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_blog-tests/_dogfooding/_blog tests/demo/2020-08-03-second-blog-intro.mdx","source":"@site/_dogfooding/_blog tests/demo/2020-08-03-second-blog-intro.mdx","title":"Using twice the blog plugin","description":"Did you know you can use multiple instances of the same plugin?","date":"2020-08-03T00:00:00.000Z","tags":[{"inline":false,"label":"Paginated-tag","permalink":"/tests/blog/tags/paginated-tag"},{"inline":false,"label":"Blog","permalink":"/tests/blog/tags/blog"},{"inline":false,"label":"Docusaurus","permalink":"/tests/blog/tags/docusaurus"}],"readingTime":7,"hasTruncateMarker":true,"authors":[{"name":"Sebastien Lorber","title":"Docusaurus maintainer","url":"https://sebastienlorber.com","page":{"permalink":"/tests/blog/authors/slorber"},"socials":{"x":"https://x.com/sebastienlorber"},"imageURL":"https://github.com/slorber.png","key":"slorber"}],"frontMatter":{"title":"Using twice the blog plugin","authors":["slorber"],"tags":["paginated-tag","blog","docusaurus"]},"unlisted":false,"prevItem":{"title":"Blog TOC FrontMatter tests","permalink":"/tests/blog/2021/08/21/blog-post-toc-tests"}},"content":"Did you know you can use multiple instances of the same plugin?\\n\\n{/* truncate */}\\n\\n:::tip\\n\\nUsing twice the blog plugin permits you to create more than one blog on the same Docusaurus website!\\n\\n:::"}],"blogListPaginated":[{"items":["/2024/07/03/dual-author","/2024/07/03/multiple-authors","/2024/07/03/single-author"],"metadata":{"permalink":"/tests/blog","page":1,"postsPerPage":3,"totalPages":7,"totalCount":19,"nextPage":"/tests/blog/page/2","blogDescription":"Blog","blogTitle":"Blog"}},{"items":["/2023/08/05/","/2023/07/19/a","/2023/07/19/b"],"metadata":{"permalink":"/tests/blog/page/2","page":2,"postsPerPage":3,"totalPages":7,"totalCount":19,"previousPage":"/tests/blog","nextPage":"/tests/blog/page/3","blogDescription":"Blog","blogTitle":"Blog"}},{"items":["/x/y/z.html","/2022/04/20/dup-footnote","/2022/01/22/dup-footnote"],"metadata":{"permalink":"/tests/blog/page/3","page":3,"postsPerPage":3,"totalPages":7,"totalCount":19,"previousPage":"/tests/blog/page/2","nextPage":"/tests/blog/page/4","blogDescription":"Blog","blogTitle":"Blog"}},{"items":["/2022/01/21/dup-footnote","/2022/01/20/image-only-authors","/2021/11/13/dup-title"],"metadata":{"permalink":"/tests/blog/page/4","page":4,"postsPerPage":3,"totalPages":7,"totalCount":19,"previousPage":"/tests/blog/page/3","nextPage":"/tests/blog/page/5","blogDescription":"Blog","blogTitle":"Blog"}},{"items":["/2021/10/08/blog-post-mdx-require-feed-tests","/2021/10/07/blog-post-mdx-feed-tests","/2021/09/13/dup-title"],"metadata":{"permalink":"/tests/blog/page/5","page":5,"postsPerPage":3,"totalPages":7,"totalCount":19,"previousPage":"/tests/blog/page/4","nextPage":"/tests/blog/page/6","blogDescription":"Blog","blogTitle":"Blog"}},{"items":["/2021/08/23/multiple-authors","/2021/08/22/no-author","/2021/08/21/blog-post-toc-tests"],"metadata":{"permalink":"/tests/blog/page/6","page":6,"postsPerPage":3,"totalPages":7,"totalCount":19,"previousPage":"/tests/blog/page/5","nextPage":"/tests/blog/page/7","blogDescription":"Blog","blogTitle":"Blog"}},{"items":["/2020/08/03/demo/second-blog-intro"],"metadata":{"permalink":"/tests/blog/page/7","page":7,"postsPerPage":3,"totalPages":7,"totalCount":19,"previousPage":"/tests/blog/page/6","blogDescription":"Blog","blogTitle":"Blog"}}],"blogTags":{"/tests/blog/tags/paginated-tag":{"inline":false,"label":"Paginated-tag","permalink":"/tests/blog/tags/paginated-tag","items":["/x/y/z.html","/2022/01/20/image-only-authors","/2021/11/13/dup-title","/2021/10/08/blog-post-mdx-require-feed-tests","/2021/10/07/blog-post-mdx-feed-tests","/2021/09/13/dup-title","/2021/08/23/multiple-authors","/2021/08/22/no-author","/2021/08/21/blog-post-toc-tests","/2020/08/03/demo/second-blog-intro"],"pages":[{"items":["/x/y/z.html","/2022/01/20/image-only-authors","/2021/11/13/dup-title"],"metadata":{"permalink":"/tests/blog/tags/paginated-tag","page":1,"postsPerPage":3,"totalPages":4,"totalCount":10,"nextPage":"/tests/blog/tags/paginated-tag/page/2","blogDescription":"Blog","blogTitle":"Blog"}},{"items":["/2021/10/08/blog-post-mdx-require-feed-tests","/2021/10/07/blog-post-mdx-feed-tests","/2021/09/13/dup-title"],"metadata":{"permalink":"/tests/blog/tags/paginated-tag/page/2","page":2,"postsPerPage":3,"totalPages":4,"totalCount":10,"previousPage":"/tests/blog/tags/paginated-tag","nextPage":"/tests/blog/tags/paginated-tag/page/3","blogDescription":"Blog","blogTitle":"Blog"}},{"items":["/2021/08/23/multiple-authors","/2021/08/22/no-author","/2021/08/21/blog-post-toc-tests"],"metadata":{"permalink":"/tests/blog/tags/paginated-tag/page/3","page":3,"postsPerPage":3,"totalPages":4,"totalCount":10,"previousPage":"/tests/blog/tags/paginated-tag/page/2","nextPage":"/tests/blog/tags/paginated-tag/page/4","blogDescription":"Blog","blogTitle":"Blog"}},{"items":["/2020/08/03/demo/second-blog-intro"],"metadata":{"permalink":"/tests/blog/tags/paginated-tag/page/4","page":4,"postsPerPage":3,"totalPages":4,"totalCount":10,"previousPage":"/tests/blog/tags/paginated-tag/page/3","blogDescription":"Blog","blogTitle":"Blog"}}],"unlisted":false},"/tests/blog/tags/blog":{"inline":false,"label":"Blog","permalink":"/tests/blog/tags/blog","items":["/2021/10/08/blog-post-mdx-require-feed-tests","/2021/10/07/blog-post-mdx-feed-tests","/2021/08/23/multiple-authors","/2020/08/03/demo/second-blog-intro"],"pages":[{"items":["/2021/10/08/blog-post-mdx-require-feed-tests","/2021/10/07/blog-post-mdx-feed-tests","/2021/08/23/multiple-authors"],"metadata":{"permalink":"/tests/blog/tags/blog","page":1,"postsPerPage":3,"totalPages":2,"totalCount":4,"nextPage":"/tests/blog/tags/blog/page/2","blogDescription":"Blog","blogTitle":"Blog"}},{"items":["/2020/08/03/demo/second-blog-intro"],"metadata":{"permalink":"/tests/blog/tags/blog/page/2","page":2,"postsPerPage":3,"totalPages":2,"totalCount":4,"previousPage":"/tests/blog/tags/blog","blogDescription":"Blog","blogTitle":"Blog"}}],"unlisted":false},"/tests/blog/tags/visibility":{"inline":false,"label":"Visibility","permalink":"/tests/blog/tags/visibility","items":["/unlisted-post"],"pages":[{"items":["/unlisted-post"],"metadata":{"permalink":"/tests/blog/tags/visibility","page":1,"postsPerPage":3,"totalPages":1,"totalCount":1,"blogDescription":"Blog","blogTitle":"Blog"}}],"unlisted":true},"/tests/blog/tags/unlisted":{"inline":false,"label":"Unlisted","permalink":"/tests/blog/tags/unlisted","items":["/unlisted-post"],"pages":[{"items":["/unlisted-post"],"metadata":{"permalink":"/tests/blog/tags/unlisted","page":1,"postsPerPage":3,"totalPages":1,"totalCount":1,"blogDescription":"Blog","blogTitle":"Blog"}}],"unlisted":true},"/tests/blog/tags/docusaurus":{"inline":false,"label":"Docusaurus","permalink":"/tests/blog/tags/docusaurus","items":["/2021/10/08/blog-post-mdx-require-feed-tests","/2021/10/07/blog-post-mdx-feed-tests","/2021/08/23/multiple-authors","/2020/08/03/demo/second-blog-intro"],"pages":[{"items":["/2021/10/08/blog-post-mdx-require-feed-tests","/2021/10/07/blog-post-mdx-feed-tests","/2021/08/23/multiple-authors"],"metadata":{"permalink":"/tests/blog/tags/docusaurus","page":1,"postsPerPage":3,"totalPages":2,"totalCount":4,"nextPage":"/tests/blog/tags/docusaurus/page/2","blogDescription":"Blog","blogTitle":"Blog"}},{"items":["/2020/08/03/demo/second-blog-intro"],"metadata":{"permalink":"/tests/blog/tags/docusaurus/page/2","page":2,"postsPerPage":3,"totalPages":2,"totalCount":4,"previousPage":"/tests/blog/tags/docusaurus","blogDescription":"Blog","blogTitle":"Blog"}}],"unlisted":false},"/tests/blog/tags/long-long":{"inline":false,"label":"Long-long","permalink":"/tests/blog/tags/long-long","items":["/2021/10/08/blog-post-mdx-require-feed-tests","/2021/10/07/blog-post-mdx-feed-tests","/2021/08/23/multiple-authors"],"pages":[{"items":["/2021/10/08/blog-post-mdx-require-feed-tests","/2021/10/07/blog-post-mdx-feed-tests","/2021/08/23/multiple-authors"],"metadata":{"permalink":"/tests/blog/tags/long-long","page":1,"postsPerPage":3,"totalPages":1,"totalCount":3,"blogDescription":"Blog","blogTitle":"Blog"}}],"unlisted":false},"/tests/blog/tags/long-long-long":{"inline":false,"label":"Long-long-long","permalink":"/tests/blog/tags/long-long-long","items":["/2021/10/08/blog-post-mdx-require-feed-tests","/2021/10/07/blog-post-mdx-feed-tests","/2021/08/23/multiple-authors"],"pages":[{"items":["/2021/10/08/blog-post-mdx-require-feed-tests","/2021/10/07/blog-post-mdx-feed-tests","/2021/08/23/multiple-authors"],"metadata":{"permalink":"/tests/blog/tags/long-long-long","page":1,"postsPerPage":3,"totalPages":1,"totalCount":3,"blogDescription":"Blog","blogTitle":"Blog"}}],"unlisted":false},"/tests/blog/tags/long-long-long-long":{"inline":false,"label":"Long-long-long-long","permalink":"/tests/blog/tags/long-long-long-long","items":["/2021/10/08/blog-post-mdx-require-feed-tests","/2021/10/07/blog-post-mdx-feed-tests","/2021/08/23/multiple-authors"],"pages":[{"items":["/2021/10/08/blog-post-mdx-require-feed-tests","/2021/10/07/blog-post-mdx-feed-tests","/2021/08/23/multiple-authors"],"metadata":{"permalink":"/tests/blog/tags/long-long-long-long","page":1,"postsPerPage":3,"totalPages":1,"totalCount":3,"blogDescription":"Blog","blogTitle":"Blog"}}],"unlisted":false},"/tests/blog/tags/long":{"inline":false,"label":"Long","permalink":"/tests/blog/tags/long","items":["/2021/08/23/multiple-authors"],"pages":[{"items":["/2021/08/23/multiple-authors"],"metadata":{"permalink":"/tests/blog/tags/long","page":1,"postsPerPage":3,"totalPages":1,"totalCount":1,"blogDescription":"Blog","blogTitle":"Blog"}}],"unlisted":false},"/tests/blog/tags/long-long-long-long-long":{"inline":false,"label":"Long-long-long-long-long","permalink":"/tests/blog/tags/long-long-long-long-long","items":["/2021/08/23/multiple-authors"],"pages":[{"items":["/2021/08/23/multiple-authors"],"metadata":{"permalink":"/tests/blog/tags/long-long-long-long-long","page":1,"postsPerPage":3,"totalPages":1,"totalCount":1,"blogDescription":"Blog","blogTitle":"Blog"}}],"unlisted":false}},"blogTagsListPath":"/tests/blog/tags","authorsMap":{"slorber":{"name":"Sebastien Lorber","title":"Docusaurus maintainer","url":"https://sebastienlorber.com","page":{"permalink":"/tests/blog/authors/slorber"},"socials":{"x":"https://x.com/sebastienlorber"},"imageURL":"https://github.com/slorber.png","key":"slorber"},"ozaki":{"name":"ozaki","page":{"permalink":"/tests/blog/authors/custom/ozaki/permalink"},"key":"ozaki"}}}},"docusaurus-plugin-content-pages":{"default":[{"type":"jsx","permalink":"/","source":"@site/src/pages/index.tsx"},{"type":"mdx","permalink":"/tests","source":"@site/src/pages/tests.mdx","title":"Tests","description":"Docusaurus use some extra plugin instances for testing / dogfooding purpose:","frontMatter":{},"lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/src/pages/tests.mdx","unlisted":false},{"type":"jsx","permalink":"/versions","source":"@site/src/pages/versions.tsx"},{"type":"mdx","permalink":"/examples/markdownPageExample","source":"@site/src/pages/examples/markdownPageExample.mdx","title":"Markdown Page example","description":"Markdown Page example","frontMatter":{"title":"Markdown Page example","description":"Markdown Page example","wrapperClassName":"docusaurus-markdown-example"},"lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/src/pages/examples/markdownPageExample.mdx","unlisted":false},{"type":"mdx","permalink":"/examples/noIndex","source":"@site/src/pages/examples/noIndex.mdx","title":"No Index Page example","description":"This page will not be indexed by search engines because it contains the page following page metadata markup:","frontMatter":{},"lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/src/pages/examples/noIndex.mdx","unlisted":false},{"type":"jsx","permalink":"/showcase/","source":"@site/src/pages/showcase/index.tsx"}],"pages-tests":[{"type":"jsx","permalink":"/tests/pages/analytics","source":"@site/_dogfooding/_pages tests/analytics.tsx"},{"type":"mdx","permalink":"/tests/pages/code-block-tests","source":"@site/_dogfooding/_pages tests/code-block-tests.mdx","title":"Code block tests","description":"This test page is quite outdated: MDX v2 lowercase tags are not substituted anymore in the same way as they were in v1.","frontMatter":{},"lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_pages tests/code-block-tests.mdx","unlisted":false},{"type":"jsx","permalink":"/tests/pages/crashTest","source":"@site/_dogfooding/_pages tests/crashTest.tsx"},{"type":"mdx","permalink":"/tests/pages/diagrams","source":"@site/_dogfooding/_pages tests/diagrams.mdx","title":"Diagram Examples","description":"Invalid Diagrams","frontMatter":{},"lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_pages tests/diagrams.mdx","unlisted":false},{"type":"jsx","permalink":"/tests/pages/embeds","source":"@site/_dogfooding/_pages tests/embeds.tsx"},{"type":"jsx","permalink":"/tests/pages/error-boundary-tests","source":"@site/_dogfooding/_pages tests/error-boundary-tests.tsx"},{"type":"mdx","permalink":"/tests/pages/head-metadata","source":"@site/_dogfooding/_pages tests/head-metadata.mdx","description":"Head Metadata tests","frontMatter":{},"lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_pages tests/head-metadata.mdx","unlisted":false},{"type":"jsx","permalink":"/tests/pages/history-tests","source":"@site/_dogfooding/_pages tests/history-tests.tsx"},{"type":"jsx","permalink":"/tests/pages/hydration-tests","source":"@site/_dogfooding/_pages tests/hydration-tests.tsx"},{"type":"mdx","permalink":"/tests/pages/","source":"@site/_dogfooding/_pages tests/index.mdx","description":"Page","frontMatter":{},"lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_pages tests/index.mdx","unlisted":false},{"type":"jsx","permalink":"/tests/pages/layout-no-children","source":"@site/_dogfooding/_pages tests/layout-no-children.tsx"},{"type":"jsx","permalink":"/tests/pages/link-tests","source":"@site/_dogfooding/_pages tests/link-tests.tsx"},{"type":"mdx","permalink":"/tests/pages/markdown-tests-md","source":"@site/_dogfooding/_pages tests/markdown-tests-md.md","title":"Markdown Page tests title","description":"Markdown Page tests description","frontMatter":{"title":"Markdown Page tests title","description":"Markdown Page tests description","wrapperClassName":"docusaurus-markdown-example"},"lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_pages tests/markdown-tests-md.md","unlisted":false},{"type":"mdx","permalink":"/tests/pages/markdown-tests-mdx","source":"@site/_dogfooding/_pages tests/markdown-tests-mdx.mdx","title":"Markdown Page tests title","description":"Markdown Page tests description","frontMatter":{"title":"Markdown Page tests title","description":"Markdown Page tests description","wrapperClassName":"docusaurus-markdown-example"},"lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_pages tests/markdown-tests-mdx.mdx","unlisted":false},{"type":"mdx","permalink":"/tests/pages/navbar-dropdown-tests","source":"@site/_dogfooding/_pages tests/navbar-dropdown-tests.mdx","title":"navbar-dropdown-tests","description":"1. Make sure that the theme switcher is placed immediately after the language switcher in the navbar.","frontMatter":{},"lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_pages tests/navbar-dropdown-tests.mdx","unlisted":false},{"type":"mdx","permalink":"/tests/pages/page-toc-tests","source":"@site/_dogfooding/_pages tests/page-toc-tests.mdx","frontMatter":{"toc_min_heading_level":2,"toc_max_heading_level":4},"lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_pages tests/page-toc-tests.mdx","unlisted":false},{"type":"mdx","permalink":"/tests/pages/seo","source":"@site/_dogfooding/_pages tests/seo.md","title":"custom SEO title","description":"custom SEO description","frontMatter":{"title":"custom SEO title","description":"custom SEO description","keywords":["custom","keywords"],"image":"./local-image.png"},"lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_pages tests/seo.md","unlisted":false},{"type":"mdx","permalink":"/tests/pages/tabs-tests","source":"@site/_dogfooding/_pages tests/tabs-tests.mdx","title":"Tabs tests","description":"Tabs sync with different heights","frontMatter":{},"lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_pages tests/tabs-tests.mdx","unlisted":false},{"type":"mdx","permalink":"/tests/pages/unlisted","source":"@site/_dogfooding/_pages tests/unlisted.mdx","title":"Unlisted page","description":"This unlisted page should always be directly accessible, but hidden from search engines","frontMatter":{"unlisted":true},"lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_pages tests/unlisted.mdx","unlisted":true},{"type":"jsx","permalink":"/tests/pages/z-index-tests","source":"@site/_dogfooding/_pages tests/z-index-tests.tsx"},{"type":"jsx","permalink":"/tests/pages/react-18/","source":"@site/_dogfooding/_pages tests/react-18/index.tsx"},{"type":"mdx","permalink":"/tests/pages/svg/","source":"@site/_dogfooding/_pages tests/svg/index.mdx","title":"Many inline SVGs","description":"Have a bunch of SVGs, they\'re written to intentionally override each others styled when inlined on the same page.","frontMatter":{},"lastUpdatedBy":"Daniel Kuschny","lastUpdatedAt":1743178850000,"editUrl":"https://github.com/facebook/docusaurus/edit/main/website/_dogfooding/_pages tests/svg/index.mdx","unlisted":false}]},"docusaurus-plugin-debug":{},"docusaurus-plugin-google-gtag":{},"docusaurus-plugin-svgr":{},"docusaurus-theme-classic":{},"docusaurus-theme-search-algolia":{},"changelog-plugin":{"default":{"blogSidebarTitle":"Changelog","blogPosts":[{"id":"/3.7.0","metadata":{"permalink":"/changelog/3.7.0","source":"@site/changelog/source/3.7.0.md","title":"3.7.0","description":"New Feature","date":"2025-01-03T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Alvin Bryan","alias":"alvinometric","url":"https://github.com/alvinometric","imageURL":"https://github.com/alvinometric.png","key":"alvinometric","page":null},{"name":"Lin Huang","alias":"codimiracle","url":"https://github.com/codimiracle","imageURL":"https://github.com/codimiracle.png","key":"codimiracle","page":null},{"name":"Zen","alias":"effozen","url":"https://github.com/effozen","imageURL":"https://github.com/effozen.png","key":"effozen","page":null},{"name":"Zed Spencer-Milnes","alias":"GingerGeek","url":"https://github.com/GingerGeek","imageURL":"https://github.com/GingerGeek.png","key":"GingerGeek","page":null},{"name":"Hichem Fantar","alias":"hichemfantar","url":"https://github.com/hichemfantar","imageURL":"https://github.com/hichemfantar.png","key":"hichemfantar","page":null},{"name":"Ivan Cheban","alias":"ivancheban","url":"https://github.com/ivancheban","imageURL":"https://github.com/ivancheban.png","key":"ivancheban","page":null},{"name":"Jake Boone","alias":"jakeboone02","url":"https://github.com/jakeboone02","imageURL":"https://github.com/jakeboone02.png","key":"jakeboone02","page":null},{"name":"Jan Aukema","alias":"janaukema","url":"https://github.com/janaukema","imageURL":"https://github.com/janaukema.png","key":"janaukema","page":null},{"name":"Lehoczky Zolt\xe1n","alias":"Lehoczky","url":"https://github.com/Lehoczky","imageURL":"https://github.com/Lehoczky.png","key":"Lehoczky","page":null},{"name":"Pierre Millot","alias":"millotp","url":"https://github.com/millotp","imageURL":"https://github.com/millotp.png","key":"millotp","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Taylor Reece","alias":"taylorreece","url":"https://github.com/taylorreece","imageURL":"https://github.com/taylorreece.png","key":"taylorreece","page":null},{"name":"Waldir Pimenta","alias":"waldyrious","url":"https://github.com/waldyrious","imageURL":"https://github.com/waldyrious.png","key":"waldyrious","page":null},{"name":"William Black","alias":"WillBlack403","url":"https://github.com/WillBlack403","imageURL":"https://github.com/WillBlack403.png","key":"WillBlack403","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2025-01-03T20:00","authors":["alvinometric","codimiracle","effozen","GingerGeek","hichemfantar","ivancheban","jakeboone02","janaukema","Lehoczky","millotp","slorber","taylorreece","waldyrious","WillBlack403"]},"unlisted":false,"nextItem":{"title":"3.6.3","permalink":"/changelog/3.6.3"},"listPageLink":"/changelog/"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-faster`, `docusaurus`\\n - [#10800](https://github.com/facebook/docusaurus/pull/10800) feat(core): Turn Rspack incremental on by default (again) ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`\\n - [#10768](https://github.com/facebook/docusaurus/pull/10768) feat(blog): Add author social icons for bluesky, mastodon, threads, twitch, youtube, instagram ([@GingerGeek](https://github.com/GingerGeek))\\n- `create-docusaurus`, `docusaurus-mdx-loader`, `docusaurus-module-type-aliases`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-google-tag-manager`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-rsdoctor`, `docusaurus-plugin-sitemap`, `docusaurus-plugin-svgr`, `docusaurus-plugin-vercel-analytics`, `docusaurus-preset-classic`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-mermaid`, `docusaurus-theme-search-algolia`, `docusaurus-types`, `docusaurus`\\n - [#10763](https://github.com/facebook/docusaurus/pull/10763) feat: Add React 19 support to Docusaurus v3 ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`\\n - [#10729](https://github.com/facebook/docusaurus/pull/10729) feat(blog): Add `frontMatter.sidebar_label` ([@slorber](https://github.com/slorber))\\n- `docusaurus-module-type-aliases`, `docusaurus-plugin-svgr`, `docusaurus-preset-classic`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`\\n - [#10677](https://github.com/facebook/docusaurus/pull/10677) feat(svgr): create new Docusaurus SVGR plugin ([@slorber](https://github.com/slorber))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-remark-plugin-npm2yarn`\\n - [#10803](https://github.com/facebook/docusaurus/pull/10803) fix(npm-to-yarn): add missing npm-to-yarn converter for Bun ([@Lehoczky](https://github.com/Lehoczky))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#10796](https://github.com/facebook/docusaurus/pull/10796) fix(theme): Footer Column/Link should merge provided className ([@slorber](https://github.com/slorber))\\n- `docusaurus-bundler`, `docusaurus-theme-common`\\n - [#10786](https://github.com/facebook/docusaurus/pull/10786) fix(core): fix React hydration errors, change html minifier settings ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-common`\\n - [#10782](https://github.com/facebook/docusaurus/pull/10782) fix(theme-common): code block magic comments should support SQL block comments ([@WillBlack403](https://github.com/WillBlack403))\\n- `docusaurus-theme-translations`\\n - [#10783](https://github.com/facebook/docusaurus/pull/10783) fix(theme-translations): Add missing Dutch (nl) theme translations ([@janaukema](https://github.com/janaukema))\\n - [#10760](https://github.com/facebook/docusaurus/pull/10760) fix(theme-translation): add missing Korean (ko) theme translations ([@effozen](https://github.com/effozen))\\n- `docusaurus-plugin-content-docs`\\n - [#10754](https://github.com/facebook/docusaurus/pull/10754) fix(docs): fix sidebar item visibility bug for category index ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#10727](https://github.com/facebook/docusaurus/pull/10727) fix(core): fix codegen routesChunkName possible hash collision ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`\\n - [#10723](https://github.com/facebook/docusaurus/pull/10723) fix(mdx-loader): fix md image paths with spaces bug related to transformImage encoding problem ([@slorber](https://github.com/slorber))\\n\\n## :memo: Documentation\\n\\n- [#10740](https://github.com/facebook/docusaurus/pull/10740) docs: Link initialization docs together ([@waldyrious](https://github.com/waldyrious))\\n\\n## :robot: Dependencies\\n\\n- [#10771](https://github.com/facebook/docusaurus/pull/10771) chore(deps): bump nanoid from 3.3.7 to 3.3.8 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#10721](https://github.com/facebook/docusaurus/pull/10721) chore(deps): bump actions/dependency-review-action from 4.4.0 to 4.5.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n\\n## :wrench: Maintenance\\n\\n- Other\\n - [#10770](https://github.com/facebook/docusaurus/pull/10770) chore: Devcontainer upgrade to Ubuntu Noble & Node 22 ([@GingerGeek](https://github.com/GingerGeek))\\n- `docusaurus-theme-search-algolia`\\n - [#10801](https://github.com/facebook/docusaurus/pull/10801) refactor(algolia): simplify SearchBar component ([@slorber](https://github.com/slorber))\\n - [#10672](https://github.com/facebook/docusaurus/pull/10672) chore(algolia): upgrade algoliasearch to v5 ([@millotp](https://github.com/millotp))\\n- `docusaurus`\\n - [#10798](https://github.com/facebook/docusaurus/pull/10798) refactor(core): Use Intl native API to get locale direction, remove rtl-detect depend\u2026 ([@slorber](https://github.com/slorber))\\n - [#10747](https://github.com/facebook/docusaurus/pull/10747) refactor(core): swizzle wrap should use ReactNode instead of JSX.Element ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`, `docusaurus-mdx-loader`, `docusaurus-module-type-aliases`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-mermaid`, `docusaurus-theme-search-algolia`, `docusaurus-types`, `docusaurus`\\n - [#10746](https://github.com/facebook/docusaurus/pull/10746) refactor: prepare types for React 19 ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-common`\\n - [#10728](https://github.com/facebook/docusaurus/pull/10728) refactor(theme-common): change storageUtils useSyncExternalCode getSnapshot workaround ([@slorber](https://github.com/slorber))\\n\\n## Committers: 14\\n\\n- Alvin Bryan ([@alvinometric](https://github.com/alvinometric))\\n- Hichem Fantar ([@hichemfantar](https://github.com/hichemfantar))\\n- Ivan Cheban ([@ivancheban](https://github.com/ivancheban))\\n- Jake Boone ([@jakeboone02](https://github.com/jakeboone02))\\n- Jan Aukema ([@janaukema](https://github.com/janaukema))\\n- Lehoczky Zolt\xe1n ([@Lehoczky](https://github.com/Lehoczky))\\n- Lin Huang ([@codimiracle](https://github.com/codimiracle))\\n- Pierre Millot ([@millotp](https://github.com/millotp))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Taylor Reece ([@taylorreece](https://github.com/taylorreece))\\n- Waldir Pimenta ([@waldyrious](https://github.com/waldyrious))\\n- William Black ([@WillBlack403](https://github.com/WillBlack403))\\n- Zed Spencer-Milnes ([@GingerGeek](https://github.com/GingerGeek))\\n- Zen ([@effozen](https://github.com/effozen))"},{"id":"/3.6.3","metadata":{"permalink":"/changelog/3.6.3","source":"@site/changelog/source/3.6.3.md","title":"3.6.3","description":"Bug Fix","date":"2024-11-22T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2024-11-22T20:00","authors":["slorber"]},"unlisted":false,"prevItem":{"title":"3.7.0","permalink":"/changelog/3.7.0"},"nextItem":{"title":"3.6.2","permalink":"/changelog/3.6.2"},"listPageLink":"/changelog/"},"content":"\x3c!-- truncate --\x3e\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus`\\n - [#10712](https://github.com/facebook/docusaurus/pull/10712) fix(core): disable Rspack incremental in dev ([@slorber](https://github.com/slorber))\\n\\n## Committers: 1\\n\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))"},{"id":"/3.6.2","metadata":{"permalink":"/changelog/3.6.2","source":"@site/changelog/source/3.6.2.md","title":"3.6.2","description":"Bug Fix","date":"2024-11-19T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Junior_Gx","alias":"goffxnca","url":"https://github.com/goffxnca","imageURL":"https://github.com/goffxnca.png","key":"goffxnca","page":null},{"name":"Kyle Tsang","alias":"kyletsang","url":"https://github.com/kyletsang","imageURL":"https://github.com/kyletsang.png","key":"kyletsang","page":null},{"name":"Ryoga","alias":"Ryoga-exe","url":"https://github.com/Ryoga-exe","imageURL":"https://github.com/Ryoga-exe.png","key":"Ryoga-exe","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Zwyx","alias":"Zwyx","url":"https://github.com/Zwyx","imageURL":"https://github.com/Zwyx.png","key":"Zwyx","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2024-11-19T20:00","authors":["goffxnca","kyletsang","Ryoga-exe","slorber","Zwyx"]},"unlisted":false,"prevItem":{"title":"3.6.3","permalink":"/changelog/3.6.3"},"nextItem":{"title":"3.6.1","permalink":"/changelog/3.6.1"},"listPageLink":"/changelog/"},"content":"\x3c!-- truncate --\x3e\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-module-type-aliases`\\n - [#10693](https://github.com/facebook/docusaurus/pull/10693) fix(types): add missing ambiant TS declarations for .md / .mdx partials ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-translations`\\n - [#10688](https://github.com/facebook/docusaurus/pull/10688) fix(theme-translation): add and update Japanese translations ([@Ryoga-exe](https://github.com/Ryoga-exe))\\n- `docusaurus`\\n - [#10685](https://github.com/facebook/docusaurus/pull/10685) fix(cli): `docusaurus --help` should print plugin commands using `extendCli()` ([@slorber](https://github.com/slorber))\\n- `docusaurus-bundler`\\n - [#10680](https://github.com/facebook/docusaurus/pull/10680) fix(bundler): allow CSS nesting by default, restore postcss-preset-env ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`\\n - [#10676](https://github.com/facebook/docusaurus/pull/10676) fix(create-docusaurus): add ts exclude to TS init template ([@slorber](https://github.com/slorber))\\n- `docusaurus-bundler`, `docusaurus-faster`, `docusaurus`\\n - [#10648](https://github.com/facebook/docusaurus/pull/10648) fix(faster): Upgrade to Rspack 1.1.1, fix build progress bar display ([@slorber](https://github.com/slorber))\\n\\n## :wrench: Maintenance\\n\\n- [#10691](https://github.com/facebook/docusaurus/pull/10691) chore(ci): retry `yarn install` to ignore temporary network errors ([@slorber](https://github.com/slorber))\\n\\n## Committers: 5\\n\\n- Junior_Gx ([@goffxnca](https://github.com/goffxnca))\\n- Kyle Tsang ([@kyletsang](https://github.com/kyletsang))\\n- Ryoga ([@Ryoga-exe](https://github.com/Ryoga-exe))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Zwyx ([@Zwyx](https://github.com/Zwyx))"},{"id":"/3.6.1","metadata":{"permalink":"/changelog/3.6.1","source":"@site/changelog/source/3.6.1.md","title":"3.6.1","description":"Bug Fix","date":"2024-11-08T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Balthasar Hofer","alias":"lebalz","url":"https://github.com/lebalz","imageURL":"https://github.com/lebalz.png","key":"lebalz","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2024-11-08T20:00","authors":["lebalz","slorber"]},"unlisted":false,"prevItem":{"title":"3.6.2","permalink":"/changelog/3.6.2"},"nextItem":{"title":"3.6.0","permalink":"/changelog/3.6.0"},"listPageLink":"/changelog/"},"content":"\x3c!-- truncate --\x3e\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus`\\n - [#10658](https://github.com/facebook/docusaurus/pull/10658) fix(core): bundler should not minimize static assets ([@slorber](https://github.com/slorber))\\n- `docusaurus-bundler`, `docusaurus-faster`, `docusaurus-utils-common`, `docusaurus-utils`\\n - [#10649](https://github.com/facebook/docusaurus/pull/10649) fix(faster,utils): fix faster/types peerDependencies ([@slorber](https://github.com/slorber))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-bundler`, `docusaurus-types`, `docusaurus`\\n - [#10655](https://github.com/facebook/docusaurus/pull/10655) refactor(faster,bundler,core): improve js loader DX ([@slorber](https://github.com/slorber))\\n\\n## :memo: Documentation\\n\\n- [#10657](https://github.com/facebook/docusaurus/pull/10657) docs: fix old base ts config ref ([@slorber](https://github.com/slorber))\\n\\n## :wrench: Maintenance\\n\\n- `docusaurus-mdx-loader`\\n - [#10651](https://github.com/facebook/docusaurus/pull/10651) refactor(mdx-loader): streamline typescript usage for remark plugin types ([@lebalz](https://github.com/lebalz))\\n- Other\\n - [#10650](https://github.com/facebook/docusaurus/pull/10650) chore: Argos screenshot dogfooding test pages ([@slorber](https://github.com/slorber))\\n\\n## Committers: 2\\n\\n- Balthasar Hofer ([@lebalz](https://github.com/lebalz))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))"},{"id":"/3.6.0","metadata":{"permalink":"/changelog/3.6.0","source":"@site/changelog/source/3.6.0.md","title":"3.6.0","description":"New Feature","date":"2024-11-04T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Andrew Asche","alias":"andrewasche","url":"https://github.com/andrewasche","imageURL":"https://github.com/andrewasche.png","key":"andrewasche","page":null},{"name":"Boris Depoortere","alias":"B0r1sD","url":"https://github.com/B0r1sD","imageURL":"https://github.com/B0r1sD.png","key":"B0r1sD","page":null},{"name":"Chris Cho","alias":"ccho-mongodb","url":"https://github.com/ccho-mongodb","imageURL":"https://github.com/ccho-mongodb.png","key":"ccho-mongodb","page":null},{"name":"Flix","alias":"flixyudh","url":"https://github.com/flixyudh","imageURL":"https://github.com/flixyudh.png","key":"flixyudh","page":null},{"name":"Liviu Ionescu","alias":"ilg-ul","url":"https://github.com/ilg-ul","imageURL":"https://github.com/ilg-ul.png","key":"ilg-ul","page":null},{"name":"jackrabbit128","alias":"jackrabbit128","url":"https://github.com/jackrabbit128","imageURL":"https://github.com/jackrabbit128.png","key":"jackrabbit128","page":null},{"name":"k-seltzer","alias":"k-seltzer","url":"https://github.com/k-seltzer","imageURL":"https://github.com/k-seltzer.png","key":"k-seltzer","page":null},{"name":"Kenrick","alias":"kenrick95","url":"https://github.com/kenrick95","imageURL":"https://github.com/kenrick95.png","key":"kenrick95","page":null},{"name":"moonrailgun","alias":"moonrailgun","url":"https://github.com/moonrailgun","imageURL":"https://github.com/moonrailgun.png","key":"moonrailgun","page":null},{"name":"Kamil Moska\u0142a","alias":"moskalakamil","url":"https://github.com/moskalakamil","imageURL":"https://github.com/moskalakamil.png","key":"moskalakamil","page":null},{"name":"Nguy\u1EC5n Th\xe0nh Nam","alias":"namnguyenthanhwork","url":"https://github.com/namnguyenthanhwork","imageURL":"https://github.com/namnguyenthanhwork.png","key":"namnguyenthanhwork","page":null},{"name":"Olexandr88","alias":"Olexandr88","url":"https://github.com/Olexandr88","imageURL":"https://github.com/Olexandr88.png","key":"Olexandr88","page":null},{"name":"ozaki","alias":"OzakIOne","url":"https://github.com/OzakIOne","imageURL":"https://github.com/OzakIOne.png","key":"OzakIOne","page":null},{"name":"Patrick","alias":"patik123","url":"https://github.com/patik123","imageURL":"https://github.com/patik123.png","key":"patik123","page":null},{"name":"Radovenchyk","alias":"Radovenchyk","url":"https://github.com/Radovenchyk","imageURL":"https://github.com/Radovenchyk.png","key":"Radovenchyk","page":null},{"name":"Raghav","alias":"raghav2005","url":"https://github.com/raghav2005","imageURL":"https://github.com/raghav2005.png","key":"raghav2005","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Joel Campos","alias":"TheMineWay","url":"https://github.com/TheMineWay","imageURL":"https://github.com/TheMineWay.png","key":"TheMineWay","page":null},{"name":"Zenahr Barzani","alias":"Zenahr","url":"https://github.com/Zenahr","imageURL":"https://github.com/Zenahr.png","key":"Zenahr","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2024-11-04T20:00","authors":["andrewasche","B0r1sD","ccho-mongodb","flixyudh","ilg-ul","jackrabbit128","k-seltzer","kenrick95","moonrailgun","moskalakamil","namnguyenthanhwork","Olexandr88","OzakIOne","patik123","Radovenchyk","raghav2005","slorber","TheMineWay","Zenahr"]},"unlisted":false,"prevItem":{"title":"3.6.1","permalink":"/changelog/3.6.1"},"nextItem":{"title":"3.5.2","permalink":"/changelog/3.5.2"},"listPageLink":"/changelog/"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`\\n - [#10586](https://github.com/facebook/docusaurus/pull/10586) feat(blog): Add `frontMatter.title_meta` to override title for SEO ([@ilg-ul](https://github.com/ilg-ul))\\n- `docusaurus`\\n - [#10600](https://github.com/facebook/docusaurus/pull/10600) feat(cli): build/deploy should allow multiple `--locale` options ([@slorber](https://github.com/slorber))\\n- `docusaurus-logger`\\n - [#10590](https://github.com/facebook/docusaurus/pull/10590) feat(core): add Node.js memory perf logging ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-rsdoctor`\\n - [#10588](https://github.com/facebook/docusaurus/pull/10588) feat: new Rsdoctor official plugin ([@slorber](https://github.com/slorber))\\n- `docusaurus-bundler`, `docusaurus-faster`, `docusaurus-theme-classic`, `docusaurus`\\n - [#10402](https://github.com/facebook/docusaurus/pull/10402) feat(core): Replace Webpack with Rspack - `siteConfig.future.experimental_faster.rspackBundler` ([@slorber](https://github.com/slorber))\\n- `docusaurus-bundler`, `docusaurus-faster`, `docusaurus-types`, `docusaurus`\\n - [#10554](https://github.com/facebook/docusaurus/pull/10554) feat(core): faster HTML minimizer - `siteConfig.future.experimental_faster.swcHtmlMinimizer` ([@slorber](https://github.com/slorber))\\n - [#10522](https://github.com/facebook/docusaurus/pull/10522) feat(core): faster CSS minimizer - `siteConfig.future.experimental_faster.lightningCssMinimizer` ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-mermaid`\\n - [#10510](https://github.com/facebook/docusaurus/pull/10510) feat(theme-mermaid): support Mermaid 11+ including new types of diagrams ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-types`, `docusaurus`\\n - [#10479](https://github.com/facebook/docusaurus/pull/10479) feat(core, mdx-loader): deduplicate MDX compilation - `siteConfig.future.experimental_faster.mdxCrossCompilerCache` ([@slorber](https://github.com/slorber))\\n- `docusaurus-faster`, `docusaurus-types`, `docusaurus`\\n - [#10441](https://github.com/facebook/docusaurus/pull/10441) feat(core): faster JS minimizer - `siteConfig.future.experimental_faster.swcJsMinimizer` ([@slorber](https://github.com/slorber))\\n- `docusaurus-faster`, `docusaurus-plugin-content-docs`, `docusaurus-types`, `docusaurus`\\n - [#10435](https://github.com/facebook/docusaurus/pull/10435) feat(core): faster transpiler option - `siteConfig.future.experimental_faster.swcJsLoader` ([@slorber](https://github.com/slorber))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-bundler`, `docusaurus`\\n - [#10632](https://github.com/facebook/docusaurus/pull/10632) fix(core): restore Rspack ProgressBar colors ([@slorber](https://github.com/slorber))\\n - [#10581](https://github.com/facebook/docusaurus/pull/10581) fix(core): fix handling of Swc html minifier warnings ([@slorber](https://github.com/slorber))\\n - [#10573](https://github.com/facebook/docusaurus/pull/10573) fix(core): move @docusaurus/faster to bundler peerDeps ([@slorber](https://github.com/slorber))\\n- `docusaurus-bundler`\\n - [#10617](https://github.com/facebook/docusaurus/pull/10617) fix(faster): allow Rspack + babel-loader ([@slorber](https://github.com/slorber))\\n - [#10614](https://github.com/facebook/docusaurus/pull/10614) fix(faster): fix error message typo + add color ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#10618](https://github.com/facebook/docusaurus/pull/10618) fix(theme): Restore former globalThis.Prism ([@slorber](https://github.com/slorber))\\n - [#10585](https://github.com/facebook/docusaurus/pull/10585) fix(theme): light & dark mode checkbox doesn\'t announce state switches ([@andrewasche](https://github.com/andrewasche))\\n - [#10439](https://github.com/facebook/docusaurus/pull/10439) fix(theme): upgrade infima, fix footer link width bug ([@slorber](https://github.com/slorber))\\n- `docusaurus-faster`\\n - [#10616](https://github.com/facebook/docusaurus/pull/10616) fix(faster): add missing tslib dependency ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#10611](https://github.com/facebook/docusaurus/pull/10611) fix(core): fix DOCUSAURUS_CURRENT_LOCALE = \'undefined\' ([@slorber](https://github.com/slorber))\\n - [#10423](https://github.com/facebook/docusaurus/pull/10423) fix(core): always use hash for CSS module class names ([@slorber](https://github.com/slorber))\\n- `docusaurus-bundler`, `docusaurus-faster`\\n - [#10605](https://github.com/facebook/docusaurus/pull/10605) fix(core): Use proper swc loader options ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-translations`\\n - [#10551](https://github.com/facebook/docusaurus/pull/10551) fix(translations): complete missing slovenian theme translations ([@patik123](https://github.com/patik123))\\n - [#10507](https://github.com/facebook/docusaurus/pull/10507) fix(theme-translations): add missing Vietnamese translations ([@namnguyenthanhwork](https://github.com/namnguyenthanhwork))\\n - [#10413](https://github.com/facebook/docusaurus/pull/10413) fix(translations): fix Spanish translation for \\"breadcrumbs\\" ([@TheMineWay](https://github.com/TheMineWay))\\n- `docusaurus-mdx-loader`\\n - [#10553](https://github.com/facebook/docusaurus/pull/10553) fix(mdx-loader): fix cross-compiler cache randomly loading mdx with client/server envs ([@slorber](https://github.com/slorber))\\n- `docusaurus-tsconfig`\\n - [#10547](https://github.com/facebook/docusaurus/pull/10547) fix(tsconfig): add `@docusaurus/tsconfig` target es2022 ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`\\n - [#10424](https://github.com/facebook/docusaurus/pull/10424) fix(blog): normalize inline authors socials ([@OzakIOne](https://github.com/OzakIOne))\\n - [#10440](https://github.com/facebook/docusaurus/pull/10440) fix(blog): apply baseUrl to relative image in blog authors ([@OzakIOne](https://github.com/OzakIOne))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-translations`\\n - [#10431](https://github.com/facebook/docusaurus/pull/10431) fix(blog): authors count incorrectly rendered ([@OzakIOne](https://github.com/OzakIOne))\\n- `docusaurus-types`, `docusaurus`\\n - [#10420](https://github.com/facebook/docusaurus/pull/10420) fix(types): fix type of PluginModule ([@slorber](https://github.com/slorber))\\n\\n## :running: Performance\\n\\n- `docusaurus-bundler`, `docusaurus-faster`\\n - [#10605](https://github.com/facebook/docusaurus/pull/10605) fix(core): Use proper swc loader options ([@slorber](https://github.com/slorber))\\n- Other\\n - [#10601](https://github.com/facebook/docusaurus/pull/10601) perf(ci): Add CI checks to prevent memory, build-time and build-size regressions ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#10599](https://github.com/facebook/docusaurus/pull/10599) fix(core): fix i18n sites SSG memory leak - require.cache ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`\\n - [#10470](https://github.com/facebook/docusaurus/pull/10470) refactor(mdx-loader): re-export metadata module instead of serializing it ([@slorber](https://github.com/slorber))\\n - [#10457](https://github.com/facebook/docusaurus/pull/10457) refactor(mdx-loader): read metadata from memory (loaded content) instead of fs ([@slorber](https://github.com/slorber))\\n\\n## :memo: Documentation\\n\\n- Other\\n - [#10631](https://github.com/facebook/docusaurus/pull/10631) docs: fix frontMatter.mdx.format docs ([@slorber](https://github.com/slorber))\\n - [#10630](https://github.com/facebook/docusaurus/pull/10630) docs: Add missing API ref docs for Docusaurus Faster options ([@slorber](https://github.com/slorber))\\n - [#10592](https://github.com/facebook/docusaurus/pull/10592) docs: resource add docusaurus-i18n ([@moonrailgun](https://github.com/moonrailgun))\\n - [#10535](https://github.com/facebook/docusaurus/pull/10535) docs: add tip about harmless vulnerabilities ([@ilg-ul](https://github.com/ilg-ul))\\n - [#10545](https://github.com/facebook/docusaurus/pull/10545) docs: clarify component naming for markdown import ([@jackrabbit128](https://github.com/jackrabbit128))\\n - [#10416](https://github.com/facebook/docusaurus/pull/10416) docs: corrected typo in search.mdx ([@B0r1sD](https://github.com/B0r1sD))\\n - [#10405](https://github.com/facebook/docusaurus/pull/10405) docs(website): small spellfix on 3.5 update notes ([@Zenahr](https://github.com/Zenahr))\\n- `create-docusaurus`\\n - [#10608](https://github.com/facebook/docusaurus/pull/10608) docs: mention config/sidebars run in Node.js runtime ([@slorber](https://github.com/slorber))\\n\\n## :robot: Dependencies\\n\\n- Other\\n - [#10623](https://github.com/facebook/docusaurus/pull/10623) chore(deps): bump actions/setup-node from 4.0.4 to 4.1.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#10624](https://github.com/facebook/docusaurus/pull/10624) chore(deps): bump actions/dependency-review-action from 4.3.4 to 4.4.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#10539](https://github.com/facebook/docusaurus/pull/10539) chore(deps): bump preactjs/compressed-size-action from 2.6.0 to 2.7.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#10530](https://github.com/facebook/docusaurus/pull/10530) chore(deps): bump rollup from 2.79.1 to 2.79.2 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#10518](https://github.com/facebook/docusaurus/pull/10518) chore(deps): bump actions/setup-node from 4.0.2 to 4.0.4 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#10505](https://github.com/facebook/docusaurus/pull/10505) chore(deps): bump dompurify from 3.0.5 to 3.1.6 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#10488](https://github.com/facebook/docusaurus/pull/10488) chore(deps): bump express from 4.19.2 to 4.20.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#10449](https://github.com/facebook/docusaurus/pull/10449) chore(deps): bump github/codeql-action from 3.26.3 to 3.26.5 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#10444](https://github.com/facebook/docusaurus/pull/10444) chore(deps): bump micromatch from 4.0.5 to 4.0.8 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#10425](https://github.com/facebook/docusaurus/pull/10425) chore(deps): bump github/codeql-action from 3.26.0 to 3.26.3 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- `docusaurus-plugin-pwa`\\n - [#10455](https://github.com/facebook/docusaurus/pull/10455) chore(deps): bump webpack from 5.88.1 to 5.94.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n\\n## :wrench: Maintenance\\n\\n- Other\\n - [#10612](https://github.com/facebook/docusaurus/pull/10612) chore: fix canary version prefix ([@slorber](https://github.com/slorber))\\n - [#10438](https://github.com/facebook/docusaurus/pull/10438) chore(ci): fix setup-node, use LTS by default ([@slorber](https://github.com/slorber))\\n - [#10418](https://github.com/facebook/docusaurus/pull/10418) chore(website): add Rsdoctor plugin ([@slorber](https://github.com/slorber))\\n- `docusaurus-babel`, `docusaurus-bundler`, `docusaurus-mdx-loader`, `docusaurus-plugin-debug`, `docusaurus-plugin-pwa`, `docusaurus-plugin-rsdoctor`, `docusaurus-theme-live-codeblock`, `docusaurus`\\n - [#10610](https://github.com/facebook/docusaurus/pull/10610) chore: upgrade minor dependencies ([@slorber](https://github.com/slorber))\\n- `docusaurus-bundler`, `docusaurus-faster`\\n - [#10609](https://github.com/facebook/docusaurus/pull/10609) chore: upgrade faster packages ([@slorber](https://github.com/slorber))\\n- `docusaurus-bundler`, `docusaurus-logger`, `docusaurus-types`, `docusaurus`\\n - [#10593](https://github.com/facebook/docusaurus/pull/10593) refactor(core): refactor SSG infrastructure ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#10587](https://github.com/facebook/docusaurus/pull/10587) refactor(core): replace serve-handler fork by official deps ([@slorber](https://github.com/slorber))\\n - [#10579](https://github.com/facebook/docusaurus/pull/10579) refactor(core): remove useless Webpack wait plugin ([@slorber](https://github.com/slorber))\\n - [#10485](https://github.com/facebook/docusaurus/pull/10485) refactor(core): rewrite Webpack ChunkAssetPlugin with RuntimeModule ([@slorber](https://github.com/slorber))\\n - [#10448](https://github.com/facebook/docusaurus/pull/10448) refactor(core): Restore null-loader ([@slorber](https://github.com/slorber))\\n - [#10442](https://github.com/facebook/docusaurus/pull/10442) fix(core): use serve-handler fork to remove annoying punycode warning ([@slorber](https://github.com/slorber))\\n - [#10410](https://github.com/facebook/docusaurus/pull/10410) refactor(core): remove useless build forceTerminate exit ([@slorber](https://github.com/slorber))\\n- `docusaurus-bundler`, `docusaurus-plugin-pwa`, `docusaurus-types`, `docusaurus`\\n - [#10548](https://github.com/facebook/docusaurus/pull/10548) chore: upgrade Webpack to 5.95 and related deps ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`\\n - [#10514](https://github.com/facebook/docusaurus/pull/10514) refactor: remove babel.config.js from init templates + website ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`, `docusaurus-babel`, `docusaurus-bundler`, `docusaurus-mdx-loader`, `docusaurus-plugin-pwa`, `docusaurus-theme-classic`, `docusaurus-theme-translations`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`\\n - [#10511](https://github.com/facebook/docusaurus/pull/10511) refactor: create `@docusaurus/bundler` and `@docusaurus/babel` packages ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`, `docusaurus-plugin-pwa`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-mermaid`, `docusaurus-utils`, `docusaurus`, `eslint-plugin`\\n - [#10509](https://github.com/facebook/docusaurus/pull/10509) chore: Rename Twitter links/labels to X ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`, `docusaurus-types`, `docusaurus`\\n - [#10497](https://github.com/facebook/docusaurus/pull/10497) refactor(core): prepare codebase for swappable bundler ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`, `docusaurus-utils`\\n - [#10486](https://github.com/facebook/docusaurus/pull/10486) chore: upgrade to TS 5.6 + temporarily use skipLibCheck for TS 5.6 ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`, `docusaurus-logger`, `docusaurus-theme-translations`, `docusaurus`\\n - [#10480](https://github.com/facebook/docusaurus/pull/10480) refactor: move PerfLogger from core to @docusaurus/logger ([@slorber](https://github.com/slorber))\\n- `docusaurus-remark-plugin-npm2yarn`\\n - [#10454](https://github.com/facebook/docusaurus/pull/10454) chore: upgrade npm-to-yarn to v3 ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus`\\n - [#10450](https://github.com/facebook/docusaurus/pull/10450) refactor(mdx-loader): refactor mdx-loader, expose loader creation utils ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`, `docusaurus-utils`, `docusaurus`\\n - [#10429](https://github.com/facebook/docusaurus/pull/10429) refactor(core): improve handling of server bundle ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`\\n - [#10422](https://github.com/facebook/docusaurus/pull/10422) refactor(mdx-loader): remove useless usage of mdx loader this.query ([@slorber](https://github.com/slorber))\\n\\n## Committers: 19\\n\\n- Andrew Asche ([@andrewasche](https://github.com/andrewasche))\\n- Boris Depoortere ([@B0r1sD](https://github.com/B0r1sD))\\n- Chris Cho ([@ccho-mongodb](https://github.com/ccho-mongodb))\\n- Flix ([@flixyudh](https://github.com/flixyudh))\\n- Joel Campos ([@TheMineWay](https://github.com/TheMineWay))\\n- Kamil Moska\u0142a ([@moskalakamil](https://github.com/moskalakamil))\\n- Kenrick ([@kenrick95](https://github.com/kenrick95))\\n- Liviu Ionescu ([@ilg-ul](https://github.com/ilg-ul))\\n- Nguy\u1EC5n Th\xe0nh Nam ([@namnguyenthanhwork](https://github.com/namnguyenthanhwork))\\n- Patrick ([@patik123](https://github.com/patik123))\\n- Raghav ([@raghav2005](https://github.com/raghav2005))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Zenahr Barzani ([@Zenahr](https://github.com/Zenahr))\\n- [@Olexandr88](https://github.com/Olexandr88)\\n- [@Radovenchyk](https://github.com/Radovenchyk)\\n- [@jackrabbit128](https://github.com/jackrabbit128)\\n- [@k-seltzer](https://github.com/k-seltzer)\\n- moonrailgun ([@moonrailgun](https://github.com/moonrailgun))\\n- ozaki ([@OzakIOne](https://github.com/OzakIOne))"},{"id":"/3.5.2","metadata":{"permalink":"/changelog/3.5.2","source":"@site/changelog/source/3.5.2.md","title":"3.5.2","description":"Bug Fix","date":"2024-08-13T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Christian Stangerup","alias":"cstangerup","url":"https://github.com/cstangerup","imageURL":"https://github.com/cstangerup.png","key":"cstangerup","page":null},{"name":"Gatien Boquet","alias":"GatienBoquet","url":"https://github.com/GatienBoquet","imageURL":"https://github.com/GatienBoquet.png","key":"GatienBoquet","page":null},{"name":"Josh Wong","alias":"josh-wong","url":"https://github.com/josh-wong","imageURL":"https://github.com/josh-wong.png","key":"josh-wong","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2024-08-13T20:00","authors":["cstangerup","GatienBoquet","josh-wong","slorber"]},"unlisted":false,"prevItem":{"title":"3.6.0","permalink":"/changelog/3.6.0"},"nextItem":{"title":"3.5.1","permalink":"/changelog/3.5.1"},"listPageLink":"/changelog/"},"content":"\x3c!-- truncate --\x3e\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-common`\\n - [#10397](https://github.com/facebook/docusaurus/pull/10397) fix(theme-common): restore useContextualSearchFilters public API for retrocompatibility ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#10391](https://github.com/facebook/docusaurus/pull/10391) fix(core): always alias React/ReactDOM to site dependency so that importing MDX from anywhere works ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`, `docusaurus-plugin-content-blog`\\n - [#10392](https://github.com/facebook/docusaurus/pull/10392) fix(create-docusaurus): Improve init templates blog setup + fix warnings ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#10390](https://github.com/facebook/docusaurus/pull/10390) fix(theme): Adjust blog authors line height to show descenders in lowercase letters (`g`, `j`, `p`, `q`, and `y`) ([@josh-wong](https://github.com/josh-wong))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-translations`\\n - [#10394](https://github.com/facebook/docusaurus/pull/10394) fix(translations): change casing of some en labels ([@cstangerup](https://github.com/cstangerup))\\n\\n## :memo: Documentation\\n\\n- [#10393](https://github.com/facebook/docusaurus/pull/10393) docs(showcase): remove sites not using Docusaurus anymore ([@GatienBoquet](https://github.com/GatienBoquet))\\n\\n## :robot: Dependencies\\n\\n- [#10396](https://github.com/facebook/docusaurus/pull/10396) chore(deps): bump github/codeql-action from 3.25.13 to 3.26.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n\\n## Committers: 4\\n\\n- Christian Stangerup ([@cstangerup](https://github.com/cstangerup))\\n- Gatien Boquet ([@GatienBoquet](https://github.com/GatienBoquet))\\n- Josh Wong ([@josh-wong](https://github.com/josh-wong))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))"},{"id":"/3.5.1","metadata":{"permalink":"/changelog/3.5.1","source":"@site/changelog/source/3.5.1.md","title":"3.5.1","description":"Bug Fix","date":"2024-08-09T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Sunghyun Cho","alias":"anaclumos","url":"https://github.com/anaclumos","imageURL":"https://github.com/anaclumos.png","key":"anaclumos","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2024-08-09T20:00","authors":["anaclumos","slorber"]},"unlisted":false,"prevItem":{"title":"3.5.2","permalink":"/changelog/3.5.2"},"nextItem":{"title":"3.5.0","permalink":"/changelog/3.5.0"},"listPageLink":"/changelog/"},"content":"\x3c!-- truncate --\x3e\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-plugin-content-blog`, `docusaurus-theme-search-algolia`\\n - [#10384](https://github.com/facebook/docusaurus/pull/10384) fix(core): algolia context import ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-search-algolia`\\n - [#10382](https://github.com/facebook/docusaurus/pull/10382) fix(theme-algolia): useDocusaurusContext import error ([@anaclumos](https://github.com/anaclumos))\\n\\n## Committers: 2\\n\\n- Sunghyun Cho ([@anaclumos](https://github.com/anaclumos))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))"},{"id":"/3.5.0","metadata":{"permalink":"/changelog/3.5.0","source":"@site/changelog/source/3.5.0.md","title":"3.5.0","description":"New Feature","date":"2024-08-09T19:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Alice Zhao","alias":"alicelovescake","url":"https://github.com/alicelovescake","imageURL":"https://github.com/alicelovescake.png","key":"alicelovescake","page":null},{"name":"Ashiq Firoz","alias":"ashiq-firoz","url":"https://github.com/ashiq-firoz","imageURL":"https://github.com/ashiq-firoz.png","key":"ashiq-firoz","page":null},{"name":"Mohammad Bagher Abiyat","alias":"Aslemammad","url":"https://github.com/Aslemammad","imageURL":"https://github.com/Aslemammad.png","key":"Aslemammad","page":null},{"name":"Bharatesh","alias":"bharateshwq","url":"https://github.com/bharateshwq","imageURL":"https://github.com/bharateshwq.png","key":"bharateshwq","page":null},{"name":"\uC815\uBCF4\uD604 Bohyun Jung","alias":"bohyunjung","url":"https://github.com/bohyunjung","imageURL":"https://github.com/bohyunjung.png","key":"bohyunjung","page":null},{"name":"Markus Tamm","alias":"chirbard","url":"https://github.com/chirbard","imageURL":"https://github.com/chirbard.png","key":"chirbard","page":null},{"name":"Daniel Li","alias":"d4nyll","url":"https://github.com/d4nyll","imageURL":"https://github.com/d4nyll.png","key":"d4nyll","page":null},{"name":"Dhaya","alias":"dhayab","url":"https://github.com/dhayab","imageURL":"https://github.com/dhayab.png","key":"dhayab","page":null},{"name":"franzd1","alias":"franzd1","url":"https://github.com/franzd1","imageURL":"https://github.com/franzd1.png","key":"franzd1","page":null},{"name":"Robin Otter","alias":"Gekd","url":"https://github.com/Gekd","imageURL":"https://github.com/Gekd.png","key":"Gekd","page":null},{"name":"Hichem Fantar","alias":"hichemfantar","url":"https://github.com/hichemfantar","imageURL":"https://github.com/hichemfantar.png","key":"hichemfantar","page":null},{"name":"John Reilly","alias":"johnnyreilly","url":"https://github.com/johnnyreilly","imageURL":"https://github.com/johnnyreilly.png","key":"johnnyreilly","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Balthasar Hofer","alias":"lebalz","url":"https://github.com/lebalz","imageURL":"https://github.com/lebalz.png","key":"lebalz","page":null},{"name":"Max Schmitt","alias":"mxschmitt","url":"https://github.com/mxschmitt","imageURL":"https://github.com/mxschmitt.png","key":"mxschmitt","page":null},{"name":"ozaki","alias":"OzakIOne","url":"https://github.com/OzakIOne","imageURL":"https://github.com/OzakIOne.png","key":"OzakIOne","page":null},{"name":"Paneedah","alias":"Paneedah","url":"https://github.com/Paneedah","imageURL":"https://github.com/Paneedah.png","key":"Paneedah","page":null},{"name":"Aaron Chen","alias":"pjchender","url":"https://github.com/pjchender","imageURL":"https://github.com/pjchender.png","key":"pjchender","page":null},{"name":"Priyadi Iman Nurcahyo","alias":"priyadi","url":"https://github.com/priyadi","imageURL":"https://github.com/priyadi.png","key":"priyadi","page":null},{"name":"Sergio","alias":"sergioalmela","url":"https://github.com/sergioalmela","imageURL":"https://github.com/sergioalmela.png","key":"sergioalmela","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Tatsunori Uchino","alias":"tats-u","url":"https://github.com/tats-u","imageURL":"https://github.com/tats-u.png","key":"tats-u","page":null},{"name":"Julian V","alias":"ultimate","url":"https://github.com/ultimate","imageURL":"https://github.com/ultimate.png","key":"ultimate","page":null},{"name":"Rohan Thakur","alias":"Xebec19","url":"https://github.com/Xebec19","imageURL":"https://github.com/Xebec19.png","key":"Xebec19","page":null},{"name":"yujonglee","alias":"yujonglee","url":"https://github.com/yujonglee","imageURL":"https://github.com/yujonglee.png","key":"yujonglee","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2024-08-09T19:00","authors":["alicelovescake","ashiq-firoz","Aslemammad","bharateshwq","bohyunjung","chirbard","d4nyll","dhayab","franzd1","Gekd","hichemfantar","johnnyreilly","Josh-Cena","lebalz","mxschmitt","OzakIOne","Paneedah","pjchender","priyadi","sergioalmela","slorber","tats-u","ultimate","Xebec19","yujonglee"]},"unlisted":false,"prevItem":{"title":"3.5.1","permalink":"/changelog/3.5.1"},"nextItem":{"title":"3.4.0","permalink":"/changelog/3.4.0"},"listPageLink":"/changelog/"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-plugin-content-blog`\\n - [#10375](https://github.com/facebook/docusaurus/pull/10375) feat(blog): add `onUntruncatedBlogPosts` blog options ([@OzakIOne](https://github.com/OzakIOne))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-translations`\\n - [#10376](https://github.com/facebook/docusaurus/pull/10376) feat(theme): show unlisted/draft banners in dev mode ([@OzakIOne](https://github.com/OzakIOne))\\n- `create-docusaurus`, `docusaurus-plugin-content-blog`\\n - [#9252](https://github.com/facebook/docusaurus/pull/9252) feat(blog): add feed xlst options to render beautiful RSS and Atom feeds ([@Xebec19](https://github.com/Xebec19))\\n- `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-translations`, `docusaurus-utils`\\n - [#10216](https://github.com/facebook/docusaurus/pull/10216) feat(blog): authors page ([@OzakIOne](https://github.com/OzakIOne))\\n- `docusaurus-theme-translations`\\n - [#10339](https://github.com/facebook/docusaurus/pull/10339) feat(translation): add Estonian default translation ([@chirbard](https://github.com/chirbard))\\n - [#10325](https://github.com/facebook/docusaurus/pull/10325) feat(translations): Indonesian translation ([@priyadi](https://github.com/priyadi))\\n- `docusaurus-mdx-loader`\\n - [#10335](https://github.com/facebook/docusaurus/pull/10335) feat(mdx-loader): wrap mdx content title (`# Title`) in `<header>` for concistency ([@OzakIOne](https://github.com/OzakIOne))\\n- `create-docusaurus`, `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`, `docusaurus-utils`\\n - [#10222](https://github.com/facebook/docusaurus/pull/10222) feat(blog): author header social icons ([@OzakIOne](https://github.com/OzakIOne))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-google-tag-manager`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-plugin-vercel-analytics`, `docusaurus-types`, `docusaurus`\\n - [#10286](https://github.com/facebook/docusaurus/pull/10286) feat(core): allow plugins to self-disable by returning null ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#10252](https://github.com/facebook/docusaurus/pull/10252) feat(blog): group sidebar items by year (`themeConfig.blog.sidebar.groupByYear`) ([@alicelovescake](https://github.com/alicelovescake))\\n- `docusaurus-plugin-content-blog`, `docusaurus-utils`\\n - [#10224](https://github.com/facebook/docusaurus/pull/10224) feat(blog): warn duplicate and inline authors ([@OzakIOne](https://github.com/OzakIOne))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-utils-validation`\\n - [#10241](https://github.com/facebook/docusaurus/pull/10241) feat(mdx): support recma plugins ([@slorber](https://github.com/slorber))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-translations`\\n - [#10344](https://github.com/facebook/docusaurus/pull/10344) fix(translations): fix wrong Estonian (et) translations and typos ([@Gekd](https://github.com/Gekd))\\n - [#10360](https://github.com/facebook/docusaurus/pull/10360) fix(translations): Fix and Improve Spanish translations ([@sergioalmela](https://github.com/sergioalmela))\\n - [#10235](https://github.com/facebook/docusaurus/pull/10235) fix(theme-translation): add missing German (de) theme.admonition translations ([@franzd1](https://github.com/franzd1))\\n- `docusaurus-theme-search-algolia`\\n - [#10342](https://github.com/facebook/docusaurus/pull/10342) fix(search): fix algolia search ignore ctrl + F in search input ([@mxschmitt](https://github.com/mxschmitt))\\n- `docusaurus-plugin-content-docs`\\n - [#10324](https://github.com/facebook/docusaurus/pull/10324) fix(docs): the _category_.json description attribute should display on generated index pages ([@bharateshwq](https://github.com/bharateshwq))\\n - [#10309](https://github.com/facebook/docusaurus/pull/10309) fix(theme): docsVersionDropdown navbar item not showing the appropriate version ([@OzakIOne](https://github.com/OzakIOne))\\n- `docusaurus`\\n - [#10368](https://github.com/facebook/docusaurus/pull/10368) fix(cli): Fix bad docusaurus CLI behavior on for --version, -V, --help, -h ([@ashiq-firoz](https://github.com/ashiq-firoz))\\n - [#10311](https://github.com/facebook/docusaurus/pull/10311) fix(core): revert wrong anchor link implementation change ([@slorber](https://github.com/slorber))\\n - [#10239](https://github.com/facebook/docusaurus/pull/10239) fix(core): fail fast if plugin has no name ([@slorber](https://github.com/slorber))\\n - [#10225](https://github.com/facebook/docusaurus/pull/10225) fix(core): fix sites unable to start/build without a static dir ([@slorber](https://github.com/slorber))\\n - [#10223](https://github.com/facebook/docusaurus/pull/10223) fix: escape period ([@d4nyll](https://github.com/d4nyll))\\n- `docusaurus-theme-classic`\\n - [#10288](https://github.com/facebook/docusaurus/pull/10288) fix(theme): fix DocsVersionDropdownNavbarItem version link target ([@slorber](https://github.com/slorber))\\n - [#10219](https://github.com/facebook/docusaurus/pull/10219) fix(theme): ignored className attribute on lazy loaded TabItem ([@lebalz](https://github.com/lebalz))\\n- `docusaurus-utils`\\n - [#10240](https://github.com/facebook/docusaurus/pull/10240) fix(markdown): mdx-code-block should support intentation ([@slorber](https://github.com/slorber))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-translations`\\n - [#10257](https://github.com/facebook/docusaurus/pull/10257) chore(theme-translations): add more Traditional Chinese(zh-Hant) translations ([@pjchender](https://github.com/pjchender))\\n\\n## :memo: Documentation\\n\\n- Other\\n - [#10361](https://github.com/facebook/docusaurus/pull/10361) docs: rename @getcanary/docusaurus-pagefind in docs ([@yujonglee](https://github.com/yujonglee))\\n - [#10345](https://github.com/facebook/docusaurus/pull/10345) docs: Add @getcanary/docusaurus-pagefind in docs ([@yujonglee](https://github.com/yujonglee))\\n - [#10337](https://github.com/facebook/docusaurus/pull/10337) docs: fix default value for `docRootComponent` ([@ultimate](https://github.com/ultimate))\\n - [#10310](https://github.com/facebook/docusaurus/pull/10310) docs: remove deprecated partial toc warning ([@slorber](https://github.com/slorber))\\n - [#10245](https://github.com/facebook/docusaurus/pull/10245) docs: add emoji for consistency ([@Paneedah](https://github.com/Paneedah))\\n - [#10180](https://github.com/facebook/docusaurus/pull/10180) docs: backport #10173 to v3.3 + v3.4 & revise the content ([@tats-u](https://github.com/tats-u))\\n - [#10233](https://github.com/facebook/docusaurus/pull/10233) docs(search): update docsearch api url ([@dhayab](https://github.com/dhayab))\\n- `docusaurus-plugin-google-gtag`\\n - [#10338](https://github.com/facebook/docusaurus/pull/10338) docs(plugin-google-gtag): replace the broken Google Developers links with valid ones ([@bohyunjung](https://github.com/bohyunjung))\\n\\n## :robot: Dependencies\\n\\n- [#10330](https://github.com/facebook/docusaurus/pull/10330) chore(deps): bump github/codeql-action from 3.25.12 to 3.25.13 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#10299](https://github.com/facebook/docusaurus/pull/10299) chore(deps): bump actions/dependency-review-action from 4.3.3 to 4.3.4 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#10300](https://github.com/facebook/docusaurus/pull/10300) chore(deps): bump github/codeql-action from 3.25.11 to 3.25.12 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#10259](https://github.com/facebook/docusaurus/pull/10259) chore(deps): bump github/codeql-action from 3.25.10 to 3.25.11 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#10247](https://github.com/facebook/docusaurus/pull/10247) chore(deps): bump treosh/lighthouse-ci-action from 11.4.0 to 12.1.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#10226](https://github.com/facebook/docusaurus/pull/10226) chore(deps): bump github/codeql-action from 3.25.8 to 3.25.10 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#10227](https://github.com/facebook/docusaurus/pull/10227) chore(deps): bump ws from 7.5.9 to 7.5.10 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#10210](https://github.com/facebook/docusaurus/pull/10210) chore(deps): bump braces from 3.0.2 to 3.0.3 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#10209](https://github.com/facebook/docusaurus/pull/10209) chore(deps): bump actions/dependency-review-action from 4.3.2 to 4.3.3 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#10208](https://github.com/facebook/docusaurus/pull/10208) chore(deps): bump github/codeql-action from 3.25.7 to 3.25.8 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#10195](https://github.com/facebook/docusaurus/pull/10195) chore(deps): bump github/codeql-action from 3.25.6 to 3.25.7 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n\\n## :wrench: Maintenance\\n\\n- Other\\n - [#10369](https://github.com/facebook/docusaurus/pull/10369) feat(ci): continuous releases for main and PRs with pkg.pr.new ([@Aslemammad](https://github.com/Aslemammad))\\n- `docusaurus-theme-classic`\\n - [#10343](https://github.com/facebook/docusaurus/pull/10343) chore(deps): update infima npm dependency to version 0.2.0-alpha.44 ([@hichemfantar](https://github.com/hichemfantar))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`\\n - [#10316](https://github.com/facebook/docusaurus/pull/10316) refactor(docs): theme-common shouldn\'t depend on docs content ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#10313](https://github.com/facebook/docusaurus/pull/10313) refactor(blog): theme-common shouldn\'t depend on blog content plugins ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`, `docusaurus-cssnano-preset`, `docusaurus-logger`, `docusaurus-mdx-loader`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-google-tag-manager`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-plugin-vercel-analytics`, `docusaurus-preset-classic`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-mermaid`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`, `docusaurus-utils-common`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `eslint-plugin`, `lqip-loader`, `stylelint-copyright`\\n - [#10256](https://github.com/facebook/docusaurus/pull/10256) chore: simplify TypeScript configs, use TS 5.5 configDir placeholder ([@slorber](https://github.com/slorber))\\n\\n## Committers: 25\\n\\n- Aaron Chen ([@pjchender](https://github.com/pjchender))\\n- Alice Zhao ([@alicelovescake](https://github.com/alicelovescake))\\n- Ashiq Firoz ([@ashiq-firoz](https://github.com/ashiq-firoz))\\n- Balthasar Hofer ([@lebalz](https://github.com/lebalz))\\n- Bharatesh ([@bharateshwq](https://github.com/bharateshwq))\\n- Daniel Li ([@d4nyll](https://github.com/d4nyll))\\n- Dhaya ([@dhayab](https://github.com/dhayab))\\n- Hichem Fantar ([@hichemfantar](https://github.com/hichemfantar))\\n- John Reilly ([@johnnyreilly](https://github.com/johnnyreilly))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Julian V ([@ultimate](https://github.com/ultimate))\\n- Markus Tamm ([@chirbard](https://github.com/chirbard))\\n- Max Schmitt ([@mxschmitt](https://github.com/mxschmitt))\\n- Mohammad Bagher Abiyat ([@Aslemammad](https://github.com/Aslemammad))\\n- Paneedah ([@Paneedah](https://github.com/Paneedah))\\n- Priyadi Iman Nurcahyo ([@priyadi](https://github.com/priyadi))\\n- Robin Otter ([@Gekd](https://github.com/Gekd))\\n- Rohan Thakur ([@Xebec19](https://github.com/Xebec19))\\n- Sergio ([@sergioalmela](https://github.com/sergioalmela))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Tatsunori Uchino ([@tats-u](https://github.com/tats-u))\\n- [@franzd1](https://github.com/franzd1)\\n- ozaki ([@OzakIOne](https://github.com/OzakIOne))\\n- yujonglee ([@yujonglee](https://github.com/yujonglee))\\n- \uC815\uBCF4\uD604 Bohyun Jung ([@bohyunjung](https://github.com/bohyunjung))"},{"id":"/3.4.0","metadata":{"permalink":"/changelog/3.4.0","source":"@site/changelog/source/3.4.0.md","title":"3.4.0","description":"New Feature","date":"2024-05-31T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Azzedine E.","alias":"Arsero","url":"https://github.com/Arsero","imageURL":"https://github.com/Arsero.png","key":"Arsero","page":null},{"name":"CodeDoctor","alias":"CodeDoctorDE","url":"https://github.com/CodeDoctorDE","imageURL":"https://github.com/CodeDoctorDE.png","key":"CodeDoctorDE","page":null},{"name":"Mikey O\'Toole","alias":"homotechsual","url":"https://github.com/homotechsual","imageURL":"https://github.com/homotechsual.png","key":"homotechsual","page":null},{"name":"Mahri Ilmedova","alias":"ilmedova","url":"https://github.com/ilmedova","imageURL":"https://github.com/ilmedova.png","key":"ilmedova","page":null},{"name":"Nguy\u1EC5n Th\xe0nh Nam","alias":"namnguyenthanhwork","url":"https://github.com/namnguyenthanhwork","imageURL":"https://github.com/namnguyenthanhwork.png","key":"namnguyenthanhwork","page":null},{"name":"Nick Coughlin","alias":"ncoughlin","url":"https://github.com/ncoughlin","imageURL":"https://github.com/ncoughlin.png","key":"ncoughlin","page":null},{"name":"ozaki","alias":"OzakIOne","url":"https://github.com/OzakIOne","imageURL":"https://github.com/OzakIOne.png","key":"OzakIOne","page":null},{"name":"Petar_mc","alias":"PetarMc1","url":"https://github.com/PetarMc1","imageURL":"https://github.com/PetarMc1.png","key":"PetarMc1","page":null},{"name":"Yongmin Hong","alias":"revi","url":"https://github.com/revi","imageURL":"https://github.com/revi.png","key":"revi","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Tatsunori Uchino","alias":"tats-u","url":"https://github.com/tats-u","imageURL":"https://github.com/tats-u.png","key":"tats-u","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2024-05-31T20:00","authors":["Arsero","CodeDoctorDE","homotechsual","ilmedova","namnguyenthanhwork","ncoughlin","OzakIOne","PetarMc1","revi","slorber","tats-u"]},"unlisted":false,"prevItem":{"title":"3.5.0","permalink":"/changelog/3.5.0"},"nextItem":{"title":"3.3.2","permalink":"/changelog/3.3.2"},"listPageLink":"/changelog/"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `create-docusaurus`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-utils-validation`, `docusaurus-utils`\\n - [#10137](https://github.com/facebook/docusaurus/pull/10137) feat(docs, blog): add support for `tags.yml`, predefined list of tags ([@OzakIOne](https://github.com/OzakIOne))\\n- `docusaurus-theme-translations`\\n - [#10151](https://github.com/facebook/docusaurus/pull/10151) feat(theme-translations): Added Turkmen (tk) default theme translations ([@ilmedova](https://github.com/ilmedova))\\n - [#10111](https://github.com/facebook/docusaurus/pull/10111) feat(theme-translations): Add Bulgarian default theme translations (bg) ([@PetarMc1](https://github.com/PetarMc1))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-theme-search-algolia`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`\\n - [#9859](https://github.com/facebook/docusaurus/pull/9859) feat(core): hash router option - browse site offline (experimental) ([@slorber](https://github.com/slorber))\\n- `docusaurus-module-type-aliases`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-types`, `docusaurus`\\n - [#10121](https://github.com/facebook/docusaurus/pull/10121) feat(core): site storage config options (experimental) ([@slorber](https://github.com/slorber))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-utils`\\n - [#10185](https://github.com/facebook/docusaurus/pull/10185) fix(docs, blog): Markdown link resolution does not support hot reload ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-search-algolia`\\n - [#10178](https://github.com/facebook/docusaurus/pull/10178) fix(theme): SearchPage should respect `contextualSearch: false` setting ([@ncoughlin](https://github.com/ncoughlin))\\n - [#10164](https://github.com/facebook/docusaurus/pull/10164) fix(search): fix algolia search container bug ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-utils`\\n - [#10168](https://github.com/facebook/docusaurus/pull/10168) fix(mdx-loader): resolve Markdown/MDX links with Remark instead of RegExp ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-translations`\\n - [#10165](https://github.com/facebook/docusaurus/pull/10165) fix(theme-translation): add missing Korean (ko) theme translations ([@revi](https://github.com/revi))\\n - [#10157](https://github.com/facebook/docusaurus/pull/10157) fix(theme-translations): complete Vietnamese theme translations ([@namnguyenthanhwork](https://github.com/namnguyenthanhwork))\\n- `docusaurus`\\n - [#10145](https://github.com/facebook/docusaurus/pull/10145) fix(core): fix serve workaround regexp ([@slorber](https://github.com/slorber))\\n - [#10142](https://github.com/facebook/docusaurus/pull/10142) fix(core): fix `docusaurus serve` broken for assets when using trailingSlash ([@slorber](https://github.com/slorber))\\n - [#10130](https://github.com/facebook/docusaurus/pull/10130) fix(core): the broken anchor checker should not be sensitive pathname trailing slashes ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#10144](https://github.com/facebook/docusaurus/pull/10144) fix(theme): fix announcement bar layout shift due to missing storage key namespace ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`, `docusaurus`\\n - [#10132](https://github.com/facebook/docusaurus/pull/10132) fix(core): `configurePostCss()` should run after `configureWebpack()` ([@slorber](https://github.com/slorber))\\n- `docusaurus-utils`, `docusaurus`\\n - [#10131](https://github.com/facebook/docusaurus/pull/10131) fix(core): codegen should generate unique route prop filenames ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-translations`\\n - [#10118](https://github.com/facebook/docusaurus/pull/10118) fix(theme-translations): fix missing pluralization for label DocCard.categoryDescription.plurals ([@slorber](https://github.com/slorber))\\n\\n## :memo: Documentation\\n\\n- [#10176](https://github.com/facebook/docusaurus/pull/10176) docs: add community plugin docusaurus-graph ([@Arsero](https://github.com/Arsero))\\n- [#10173](https://github.com/facebook/docusaurus/pull/10173) docs: improve how to use `<details>` ([@tats-u](https://github.com/tats-u))\\n- [#10167](https://github.com/facebook/docusaurus/pull/10167) docs: suggest using `{<...>...</...>}` if don\'t use Markdown in migra\u2026 ([@tats-u](https://github.com/tats-u))\\n- [#10143](https://github.com/facebook/docusaurus/pull/10143) docs: recommend users to remove hast-util-is-element in migration to v3 ([@tats-u](https://github.com/tats-u))\\n- [#10124](https://github.com/facebook/docusaurus/pull/10124) docs: v3 prepare your site blog post should point users to the upgrade guide ([@homotechsual](https://github.com/homotechsual))\\n\\n## :robot: Dependencies\\n\\n- [#10155](https://github.com/facebook/docusaurus/pull/10155) chore(deps): bump peaceiris/actions-gh-pages from 3 to 4 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#10154](https://github.com/facebook/docusaurus/pull/10154) chore(deps): bump github/codeql-action from 2.13.4 to 3.25.6 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#10112](https://github.com/facebook/docusaurus/pull/10112) chore(deps): bump actions/dependency-review-action from 4.3.1 to 4.3.2 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n\\n## Committers: 11\\n\\n- Azzedine E. ([@Arsero](https://github.com/Arsero))\\n- CodeDoctor ([@CodeDoctorDE](https://github.com/CodeDoctorDE))\\n- Mahri Ilmedova ([@ilmedova](https://github.com/ilmedova))\\n- Mikey O\'Toole ([@homotechsual](https://github.com/homotechsual))\\n- Nguy\u1EC5n Th\xe0nh Nam ([@namnguyenthanhwork](https://github.com/namnguyenthanhwork))\\n- Nick Coughlin ([@ncoughlin](https://github.com/ncoughlin))\\n- Petar_mc ([@PetarMc1](https://github.com/PetarMc1))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Tatsunori Uchino ([@tats-u](https://github.com/tats-u))\\n- Yongmin ([@revi](https://github.com/revi))\\n- ozaki ([@OzakIOne](https://github.com/OzakIOne))"},{"id":"/3.3.2","metadata":{"permalink":"/changelog/3.3.2","source":"@site/changelog/source/3.3.2.md","title":"3.3.2","description":"Bug Fix","date":"2024-05-03T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2024-05-03T20:00","authors":["slorber"]},"unlisted":false,"prevItem":{"title":"3.4.0","permalink":"/changelog/3.4.0"},"nextItem":{"title":"3.3.1","permalink":"/changelog/3.3.1"},"listPageLink":"/changelog/"},"content":"\x3c!-- truncate --\x3e\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-module-type-aliases`, `docusaurus`\\n - [#10103](https://github.com/facebook/docusaurus/pull/10103) fix(core): do not recreate ReactDOM Root, fix React warning on hot reload ([@slorber](https://github.com/slorber))\\n\\n## Committers: 1\\n\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))"},{"id":"/3.3.1","metadata":{"permalink":"/changelog/3.3.1","source":"@site/changelog/source/3.3.1.md","title":"3.3.1","description":"Failed release","date":"2024-05-03T19:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[],"frontMatter":{"mdx":{"format":"md"},"date":"2024-05-03T19:00"},"unlisted":false,"prevItem":{"title":"3.3.2","permalink":"/changelog/3.3.2"},"nextItem":{"title":"3.3.0","permalink":"/changelog/3.3.0"},"listPageLink":"/changelog/"},"content":"\x3c!-- truncate --\x3e\\n\\nFailed release"},{"id":"/3.3.0","metadata":{"permalink":"/changelog/3.3.0","source":"@site/changelog/source/3.3.0.md","title":"3.3.0","description":"New Feature","date":"2024-05-03T18:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Abdullah Saud","alias":"Abdullah-03","url":"https://github.com/Abdullah-03","imageURL":"https://github.com/Abdullah-03.png","key":"Abdullah-03","page":null},{"name":"Andrea Mazzucchelli","alias":"andrmaz","url":"https://github.com/andrmaz","imageURL":"https://github.com/andrmaz.png","key":"andrmaz","page":null},{"name":"Daniel Li","alias":"d4nyll","url":"https://github.com/d4nyll","imageURL":"https://github.com/d4nyll.png","key":"d4nyll","page":null},{"name":"Can Eldem","alias":"eldemcan","url":"https://github.com/eldemcan","imageURL":"https://github.com/eldemcan.png","key":"eldemcan","page":null},{"name":"Guille","alias":"gagdiez","url":"https://github.com/gagdiez","imageURL":"https://github.com/gagdiez.png","key":"gagdiez","page":null},{"name":"H3NR1KE","alias":"h3nr1ke","url":"https://github.com/h3nr1ke","imageURL":"https://github.com/h3nr1ke.png","key":"h3nr1ke","page":null},{"name":"Mikey O\'Toole","alias":"homotechsual","url":"https://github.com/homotechsual","imageURL":"https://github.com/homotechsual.png","key":"homotechsual","page":null},{"name":"Alexey Ivanov","alias":"iAdramelk","url":"https://github.com/iAdramelk","imageURL":"https://github.com/iAdramelk.png","key":"iAdramelk","page":null},{"name":"John Reilly","alias":"johnnyreilly","url":"https://github.com/johnnyreilly","imageURL":"https://github.com/johnnyreilly.png","key":"johnnyreilly","page":null},{"name":"Kai Hoffman","alias":"kaihoffman","url":"https://github.com/kaihoffman","imageURL":"https://github.com/kaihoffman.png","key":"kaihoffman","page":null},{"name":"Balthasar Hofer","alias":"lebalz","url":"https://github.com/lebalz","imageURL":"https://github.com/lebalz.png","key":"lebalz","page":null},{"name":"ozaki","alias":"OzakIOne","url":"https://github.com/OzakIOne","imageURL":"https://github.com/OzakIOne.png","key":"OzakIOne","page":null},{"name":"Bairui Su","alias":"pearmini","url":"https://github.com/pearmini","imageURL":"https://github.com/pearmini.png","key":"pearmini","page":null},{"name":"Alexander Sandor","alias":"SandPod","url":"https://github.com/SandPod","imageURL":"https://github.com/SandPod.png","key":"SandPod","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Tommaso Sotte","alias":"tomsotte","url":"https://github.com/tomsotte","imageURL":"https://github.com/tomsotte.png","key":"tomsotte","page":null},{"name":"Tomy Hsieh","alias":"tomy0000000","url":"https://github.com/tomy0000000","imageURL":"https://github.com/tomy0000000.png","key":"tomy0000000","page":null},{"name":"Virgil993","alias":"Virgil993","url":"https://github.com/Virgil993","imageURL":"https://github.com/Virgil993.png","key":"Virgil993","page":null},{"name":"volcanofr","alias":"volcanofr","url":"https://github.com/volcanofr","imageURL":"https://github.com/volcanofr.png","key":"volcanofr","page":null},{"name":"Zwyx","alias":"Zwyx","url":"https://github.com/Zwyx","imageURL":"https://github.com/Zwyx.png","key":"Zwyx","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2024-05-03T18:00","authors":["Abdullah-03","andrmaz","d4nyll","eldemcan","gagdiez","h3nr1ke","homotechsual","iAdramelk","johnnyreilly","kaihoffman","lebalz","OzakIOne","pearmini","SandPod","slorber","tomsotte","tomy0000000","Virgil993","volcanofr","Zwyx"]},"unlisted":false,"prevItem":{"title":"3.3.1","permalink":"/changelog/3.3.1"},"nextItem":{"title":"3.2.1","permalink":"/changelog/3.2.1"},"listPageLink":"/changelog/"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-plugin-sitemap`\\n - [#10083](https://github.com/facebook/docusaurus/pull/10083) feat: add createSitemapItems hook ([@johnnyreilly](https://github.com/johnnyreilly))\\n- `docusaurus-mdx-loader`, `docusaurus-types`, `docusaurus`\\n - [#10064](https://github.com/facebook/docusaurus/pull/10064) feat(core): add new site config option `siteConfig.markdown.anchors.maintainCase` ([@iAdramelk](https://github.com/iAdramelk))\\n- `docusaurus`\\n - [#9767](https://github.com/facebook/docusaurus/pull/9767) feat(cli): docusaurus deploy should support a --target-dir option ([@SandPod](https://github.com/SandPod))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-types`, `docusaurus`\\n - [#10042](https://github.com/facebook/docusaurus/pull/10042) feat(core): simplify plugin API, support route.props ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#10032](https://github.com/facebook/docusaurus/pull/10032) feat(pages): add LastUpdateAuthor & LastUpdateTime & editUrl ([@OzakIOne](https://github.com/OzakIOne))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-cssnano-preset`, `docusaurus-utils`, `docusaurus`\\n - [#10092](https://github.com/facebook/docusaurus/pull/10092) chore: Upgrade svgr / svgo / cssnano ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#10091](https://github.com/facebook/docusaurus/pull/10091) fix(theme): `<Tabs>` props should allow overriding defaults ([@gagdiez](https://github.com/gagdiez))\\n - [#10080](https://github.com/facebook/docusaurus/pull/10080) fix(theme): `<Admonition>` should render properly without heading/icon ([@andrmaz](https://github.com/andrmaz))\\n- `docusaurus`\\n - [#10090](https://github.com/facebook/docusaurus/pull/10090) fix(core): `docusaurus serve` redirects should include the site `/baseUrl/` prefix ([@slorber](https://github.com/slorber))\\n- `docusaurus-module-type-aliases`, `docusaurus-preset-classic`, `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`, `docusaurus`\\n - [#10079](https://github.com/facebook/docusaurus/pull/10079) fix: handle React v18.3 warnings ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-translations`\\n - [#10070](https://github.com/facebook/docusaurus/pull/10070) fix(theme-translations): add missing theme translations for pt-BR ([@h3nr1ke](https://github.com/h3nr1ke))\\n - [#10051](https://github.com/facebook/docusaurus/pull/10051) fix(theme-translations): correct label for tip admonition in italian ([@tomsotte](https://github.com/tomsotte))\\n- `docusaurus-theme-search-algolia`\\n - [#10048](https://github.com/facebook/docusaurus/pull/10048) fix(algolia): add insights property on Algolia Theme Config object TS definition ([@Virgil993](https://github.com/Virgil993))\\n- `docusaurus-plugin-content-docs`, `docusaurus`\\n - [#10054](https://github.com/facebook/docusaurus/pull/10054) fix(core): sortRoutes shouldn\'t have a default baseUrl value, this led to a bug ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`\\n - [#10025](https://github.com/facebook/docusaurus/pull/10025) fix(docs): sidebar item label impact the pagination label of docs ([@Abdullah-03](https://github.com/Abdullah-03))\\n- `docusaurus-utils`\\n - [#10022](https://github.com/facebook/docusaurus/pull/10022) fix(utils): getFileCommitDate should support `log.showSignature=true` ([@slorber](https://github.com/slorber))\\n\\n## :running: Performance\\n\\n- `docusaurus`\\n - [#10060](https://github.com/facebook/docusaurus/pull/10060) refactor(core): optimize App entrypoint, it should not re-render when navigating ([@slorber](https://github.com/slorber))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#10061](https://github.com/facebook/docusaurus/pull/10061) refactor(theme): simplify CSS solution to solve empty search container ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-common`\\n - [#10023](https://github.com/facebook/docusaurus/pull/10023) refactor(website): refactor showcase components ([@slorber](https://github.com/slorber))\\n\\n## :memo: Documentation\\n\\n- [#10096](https://github.com/facebook/docusaurus/pull/10096) docs: Fix `d\xe9ja` to `d\xe9j\xe0` in `swizzling.mdx` ([@Zwyx](https://github.com/Zwyx))\\n- [#10093](https://github.com/facebook/docusaurus/pull/10093) docs: Fix dead Typesense links ([@kaihoffman](https://github.com/kaihoffman))\\n- [#10085](https://github.com/facebook/docusaurus/pull/10085) docs: make `ThemedImage` example work out of the box ([@lebalz](https://github.com/lebalz))\\n- [#10082](https://github.com/facebook/docusaurus/pull/10082) docs: add note regarding ts extension for config file. ([@homotechsual](https://github.com/homotechsual))\\n- [#9490](https://github.com/facebook/docusaurus/pull/9490) docs: add troubleshooting steps to migration/upgrade page ([@homotechsual](https://github.com/homotechsual))\\n- [#10056](https://github.com/facebook/docusaurus/pull/10056) docs(search): Algolia troubleshooting section for index configuration problems ([@slorber](https://github.com/slorber))\\n- [#10039](https://github.com/facebook/docusaurus/pull/10039) docs: visit is a named export of unist-util-visit ([@pearmini](https://github.com/pearmini))\\n- [#10020](https://github.com/facebook/docusaurus/pull/10020) docs: Fix wrong path example ([@tomy0000000](https://github.com/tomy0000000))\\n- [#10011](https://github.com/facebook/docusaurus/pull/10011) docs: add stormkit as deployment platform ([@eldemcan](https://github.com/eldemcan))\\n\\n## :robot: Dependencies\\n\\n- [#10097](https://github.com/facebook/docusaurus/pull/10097) chore(deps): bump ejs from 3.1.9 to 3.1.10 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#10089](https://github.com/facebook/docusaurus/pull/10089) chore(deps): bump actions/dependency-review-action from 4.2.5 to 4.3.1 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#10088](https://github.com/facebook/docusaurus/pull/10088) chore(deps): bump preactjs/compressed-size-action from 2.5.0 to 2.6.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#10034](https://github.com/facebook/docusaurus/pull/10034) chore(deps): bump semver from 7.3.4 to 7.6.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n\\n## :wrench: Maintenance\\n\\n- `create-docusaurus`, `docusaurus-cssnano-preset`, `docusaurus-logger`, `docusaurus-mdx-loader`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-google-tag-manager`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-plugin-vercel-analytics`, `docusaurus-preset-classic`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-mermaid`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`, `docusaurus-utils-common`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `eslint-plugin`, `lqip-loader`, `stylelint-copyright`\\n - [#10065](https://github.com/facebook/docusaurus/pull/10065) refactor: extract base TS client config + upgrade TS + refactor TS setup ([@slorber](https://github.com/slorber))\\n- Other\\n - [#10063](https://github.com/facebook/docusaurus/pull/10063) test(e2e): TypeCheck website/starter in min/max range of TS versions ([@slorber](https://github.com/slorber))\\n - [#10049](https://github.com/facebook/docusaurus/pull/10049) fix(website): fix website manifest.json name \\"Docusaurus v2\\" to just \\"Docusaurus\\" ([@volcanofr](https://github.com/volcanofr))\\n\\n## Committers: 20\\n\\n- Abdullah Saud ([@Abdullah-03](https://github.com/Abdullah-03))\\n- Alexander Sandor ([@SandPod](https://github.com/SandPod))\\n- Alexey Ivanov ([@iAdramelk](https://github.com/iAdramelk))\\n- Andrea Mazzucchelli ([@andrmaz](https://github.com/andrmaz))\\n- Bairui Su ([@pearmini](https://github.com/pearmini))\\n- Balthasar Hofer ([@lebalz](https://github.com/lebalz))\\n- Can Eldem ([@eldemcan](https://github.com/eldemcan))\\n- Daniel Li ([@d4nyll](https://github.com/d4nyll))\\n- Guille ([@gagdiez](https://github.com/gagdiez))\\n- H3NR1KE ([@h3nr1ke](https://github.com/h3nr1ke))\\n- John Reilly ([@johnnyreilly](https://github.com/johnnyreilly))\\n- Kai Hoffman ([@kaihoffman](https://github.com/kaihoffman))\\n- Mikey O\'Toole ([@homotechsual](https://github.com/homotechsual))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Tommaso Sotte ([@tomsotte](https://github.com/tomsotte))\\n- Tomy Hsieh ([@tomy0000000](https://github.com/tomy0000000))\\n- Zwyx ([@Zwyx](https://github.com/Zwyx))\\n- [@Virgil993](https://github.com/Virgil993)\\n- [@volcanofr](https://github.com/volcanofr)\\n- ozaki ([@OzakIOne](https://github.com/OzakIOne))"},{"id":"/3.2.1","metadata":{"permalink":"/changelog/3.2.1","source":"@site/changelog/source/3.2.1.md","title":"3.2.1","description":"Bug Fix","date":"2024-04-04T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"ozaki","alias":"OzakIOne","url":"https://github.com/OzakIOne","imageURL":"https://github.com/OzakIOne.png","key":"OzakIOne","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2024-04-04T20:00","authors":["OzakIOne","slorber"]},"unlisted":false,"prevItem":{"title":"3.3.0","permalink":"/changelog/3.3.0"},"nextItem":{"title":"3.2.0","permalink":"/changelog/3.2.0"},"listPageLink":"/changelog/"},"content":"\x3c!-- truncate --\x3e\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus`\\n - [#10012](https://github.com/facebook/docusaurus/pull/10012) fix(core): fix configurePostCss v3.2 regression ([@slorber](https://github.com/slorber))\\n\\n## :memo: Documentation\\n\\n- [#9980](https://github.com/facebook/docusaurus/pull/9980) docs: remove old github action description ([@OzakIOne](https://github.com/OzakIOne))\\n- [#10014](https://github.com/facebook/docusaurus/pull/10014) docs(website): fix SEO docs headTags example ([@OzakIOne](https://github.com/OzakIOne))\\n- [#10004](https://github.com/facebook/docusaurus/pull/10004) docs(website): Announce v3.2 on website/homepage ([@slorber](https://github.com/slorber))\\n\\n## :robot: Dependencies\\n\\n- [#10006](https://github.com/facebook/docusaurus/pull/10006) chore(deps): bump actions/dependency-review-action from 4.2.4 to 4.2.5 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n\\n## Committers: 2\\n\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- ozaki ([@OzakIOne](https://github.com/OzakIOne))"},{"id":"/3.2.0","metadata":{"permalink":"/changelog/3.2.0","source":"@site/changelog/source/3.2.0.md","title":"3.2.0","description":"New Feature","date":"2024-03-29T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Josue [4tro] A","alias":"4troDev","url":"https://github.com/4troDev","imageURL":"https://github.com/4troDev.png","key":"4troDev","page":null},{"name":"Anatoly Kopyl","alias":"anatolykopyl","url":"https://github.com/anatolykopyl","imageURL":"https://github.com/anatolykopyl.png","key":"anatolykopyl","page":null},{"name":"axel7083","alias":"axel7083","url":"https://github.com/axel7083","imageURL":"https://github.com/axel7083.png","key":"axel7083","page":null},{"name":"\u041D\u0443\u0440\u0438\u043B\u044C \u0411\u0430\u0440\u0430\u0434\u0443\u0441\u043E\u0432","alias":"baradusov","url":"https://github.com/baradusov","imageURL":"https://github.com/baradusov.png","key":"baradusov","page":null},{"name":"Chris Bateman","alias":"chris-bateman","url":"https://github.com/chris-bateman","imageURL":"https://github.com/chris-bateman.png","key":"chris-bateman","page":null},{"name":"Zed Spencer-Milnes","alias":"GingerGeek","url":"https://github.com/GingerGeek","imageURL":"https://github.com/GingerGeek.png","key":"GingerGeek","page":null},{"name":"Hallbj\xf6rn Magn\xfasson","alias":"Hallinn","url":"https://github.com/Hallinn","imageURL":"https://github.com/Hallinn.png","key":"Hallinn","page":null},{"name":"Liviu Ionescu","alias":"ilg-ul","url":"https://github.com/ilg-ul","imageURL":"https://github.com/ilg-ul.png","key":"ilg-ul","page":null},{"name":"n4n5","alias":"Its-Just-Nans","url":"https://github.com/Its-Just-Nans","imageURL":"https://github.com/Its-Just-Nans.png","key":"Its-Just-Nans","page":null},{"name":"John Reilly","alias":"johnnyreilly","url":"https://github.com/johnnyreilly","imageURL":"https://github.com/johnnyreilly.png","key":"johnnyreilly","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"krinza.eth","alias":"kaymomin","url":"https://github.com/kaymomin","imageURL":"https://github.com/kaymomin.png","key":"kaymomin","page":null},{"name":"Max Schmitt","alias":"mxschmitt","url":"https://github.com/mxschmitt","imageURL":"https://github.com/mxschmitt.png","key":"mxschmitt","page":null},{"name":"Aolin","alias":"Oreoxmt","url":"https://github.com/Oreoxmt","imageURL":"https://github.com/Oreoxmt.png","key":"Oreoxmt","page":null},{"name":"ozaki","alias":"OzakIOne","url":"https://github.com/OzakIOne","imageURL":"https://github.com/OzakIOne.png","key":"OzakIOne","page":null},{"name":"Rafael Martins","alias":"Rafael-Martins","url":"https://github.com/Rafael-Martins","imageURL":"https://github.com/Rafael-Martins.png","key":"Rafael-Martins","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"suenryu","alias":"Suenaga-Ryuya","url":"https://github.com/Suenaga-Ryuya","imageURL":"https://github.com/Suenaga-Ryuya.png","key":"Suenaga-Ryuya","page":null},{"name":"Fafowora Sunkanmi","alias":"sunkanmii","url":"https://github.com/sunkanmii","imageURL":"https://github.com/sunkanmii.png","key":"sunkanmii","page":null},{"name":"Vahid Naderi","alias":"VahidNaderi","url":"https://github.com/VahidNaderi","imageURL":"https://github.com/VahidNaderi.png","key":"VahidNaderi","page":null},{"name":"Vlad Nestorov","alias":"vlad-nestorov","url":"https://github.com/vlad-nestorov","imageURL":"https://github.com/vlad-nestorov.png","key":"vlad-nestorov","page":null},{"name":"\u7FCA\u5C0F\u4E45","alias":"yixiaojiu","url":"https://github.com/yixiaojiu","imageURL":"https://github.com/yixiaojiu.png","key":"yixiaojiu","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2024-03-29T20:00","authors":["4troDev","anatolykopyl","axel7083","baradusov","chris-bateman","GingerGeek","Hallinn","ilg-ul","Its-Just-Nans","johnnyreilly","Josh-Cena","kaymomin","mxschmitt","Oreoxmt","OzakIOne","Rafael-Martins","slorber","Suenaga-Ryuya","sunkanmii","VahidNaderi","vlad-nestorov","yixiaojiu"]},"unlisted":false,"prevItem":{"title":"3.2.1","permalink":"/changelog/3.2.1"},"nextItem":{"title":"3.1.1","permalink":"/changelog/3.1.1"},"listPageLink":"/changelog/"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-sitemap`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`\\n - [#9954](https://github.com/facebook/docusaurus/pull/9954) feat(sitemap): add support for \\"lastmod\\" ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-utils-validation`, `docusaurus-utils`\\n - [#9912](https://github.com/facebook/docusaurus/pull/9912) feat(blog): add LastUpdateAuthor & LastUpdateTime ([@OzakIOne](https://github.com/OzakIOne))\\n- `docusaurus-plugin-debug`, `docusaurus-types`, `docusaurus`\\n - [#9931](https://github.com/facebook/docusaurus/pull/9931) feat(core): add new plugin allContentLoaded lifecycle ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-translations`\\n - [#9928](https://github.com/facebook/docusaurus/pull/9928) feat(theme-translations) Icelandic (is) ([@Hallinn](https://github.com/Hallinn))\\n- `docusaurus-plugin-content-blog`\\n - [#9886](https://github.com/facebook/docusaurus/pull/9886) feat(blog): allow processing blog posts through a processBlogPosts function ([@OzakIOne](https://github.com/OzakIOne))\\n - [#9838](https://github.com/facebook/docusaurus/pull/9838) feat(blog): add blog pageBasePath plugin option ([@ilg-ul](https://github.com/ilg-ul))\\n- `docusaurus`\\n - [#9681](https://github.com/facebook/docusaurus/pull/9681) feat(swizzle): ask user preferred language if no language CLI option provided ([@yixiaojiu](https://github.com/yixiaojiu))\\n- `create-docusaurus`, `docusaurus-utils`\\n - [#9442](https://github.com/facebook/docusaurus/pull/9442) feat(create-docusaurus): ask user for preferred language when no language CLI option provided ([@Rafael-Martins](https://github.com/Rafael-Martins))\\n- `docusaurus-plugin-vercel-analytics`\\n - [#9687](https://github.com/facebook/docusaurus/pull/9687) feat(plugin-vercel-analytics): add new vercel analytics plugin ([@OzakIOne](https://github.com/OzakIOne))\\n- `docusaurus-mdx-loader`\\n - [#9684](https://github.com/facebook/docusaurus/pull/9684) feat(mdx-loader): the table-of-contents should display toc/headings of imported MDX partials ([@anatolykopyl](https://github.com/anatolykopyl))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-mdx-loader`\\n - [#9999](https://github.com/facebook/docusaurus/pull/9999) fix(mdx-loader): Ignore contentTitle coming after Markdown thematicBreak ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-search-algolia`\\n - [#9945](https://github.com/facebook/docusaurus/pull/9945) fix(a11y): move focus algolia-search focus back to search input on Escape ([@mxschmitt](https://github.com/mxschmitt))\\n- `docusaurus-plugin-content-blog`\\n - [#9920](https://github.com/facebook/docusaurus/pull/9920) fix(blog): apply trailing slash to blog feed ([@OzakIOne](https://github.com/OzakIOne))\\n- `docusaurus-theme-classic`\\n - [#9944](https://github.com/facebook/docusaurus/pull/9944) fix(theme): improve a11y of DocSidebarItemCategory expand/collapsed button ([@mxschmitt](https://github.com/mxschmitt))\\n- `docusaurus-theme-translations`\\n - [#9915](https://github.com/facebook/docusaurus/pull/9915) fix(theme-translations): complete and modify Japanese translations ([@Suenaga-Ryuya](https://github.com/Suenaga-Ryuya))\\n - [#9910](https://github.com/facebook/docusaurus/pull/9910) fix(theme-translations): add Japanese translations ([@Suenaga-Ryuya](https://github.com/Suenaga-Ryuya))\\n - [#9872](https://github.com/facebook/docusaurus/pull/9872) fix(theme-translations): complete and improve Spanish theme translations ([@4troDev](https://github.com/4troDev))\\n - [#9812](https://github.com/facebook/docusaurus/pull/9812) fix(i18n): add missing theme translations for fa locale ([@VahidNaderi](https://github.com/VahidNaderi))\\n- `docusaurus-utils`\\n - [#9897](https://github.com/facebook/docusaurus/pull/9897) fix(mdx-loader): mdx-code-block should support CRLF ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#9878](https://github.com/facebook/docusaurus/pull/9878) fix(core): fix default i18n calendar used, infer it from locale if possible ([@slorber](https://github.com/slorber))\\n - [#9852](https://github.com/facebook/docusaurus/pull/9852) fix(core): ensure core error boundary is able to render theme layout ([@slorber](https://github.com/slorber))\\n- `docusaurus-remark-plugin-npm2yarn`\\n - [#9861](https://github.com/facebook/docusaurus/pull/9861) fix(remark-npm2yarn): update npm-to-yarn from 2.0.0 to 2.2.1, fix pnpm extra args syntax ([@OzakIOne](https://github.com/OzakIOne))\\n- `docusaurus-theme-classic`, `docusaurus-theme-translations`\\n - [#9851](https://github.com/facebook/docusaurus/pull/9851) fix(theme-classic): should use plurals for category items description ([@baradusov](https://github.com/baradusov))\\n\\n## :running: Performance\\n\\n- `docusaurus-types`, `docusaurus-utils`, `docusaurus`\\n - [#9975](https://github.com/facebook/docusaurus/pull/9975) refactor(core): improve dev perf, fine-grained site reloads - part 3 ([@slorber](https://github.com/slorber))\\n- `docusaurus-types`, `docusaurus`\\n - [#9968](https://github.com/facebook/docusaurus/pull/9968) refactor(core): improve dev perf, fine-grained site reloads - part2 ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-types`, `docusaurus`\\n - [#9903](https://github.com/facebook/docusaurus/pull/9903) refactor(core): improve dev perf, fine-grained site reloads - part1 ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-utils`\\n - [#9890](https://github.com/facebook/docusaurus/pull/9890) perf: optimize getFileCommitDate, make it async ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#9798](https://github.com/facebook/docusaurus/pull/9798) refactor(core): internalize, simplify and optimize the SSG logic ([@slorber](https://github.com/slorber))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#9868](https://github.com/facebook/docusaurus/pull/9868) refactor(theme): dates should be formatted on the client-side instead of in nodejs code ([@OzakIOne](https://github.com/OzakIOne))\\n- `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-types`\\n - [#9669](https://github.com/facebook/docusaurus/pull/9669) refactor(theme): use JSON-LD instead of microdata for blog structured data ([@johnnyreilly](https://github.com/johnnyreilly))\\n- `docusaurus-plugin-content-docs`\\n - [#9839](https://github.com/facebook/docusaurus/pull/9839) refactor(blog): improve doc global data hook error message + add doc warning to blogOnly mode ([@OzakIOne](https://github.com/OzakIOne))\\n\\n## :memo: Documentation\\n\\n- [#9937](https://github.com/facebook/docusaurus/pull/9937) docs: use official GitHub Action to deploy to GitHub Pages ([@vlad-nestorov](https://github.com/vlad-nestorov))\\n- [#9971](https://github.com/facebook/docusaurus/pull/9971) docs: replace VuePress by VitePress on tool comparison section ([@sunkanmii](https://github.com/sunkanmii))\\n- [#9914](https://github.com/facebook/docusaurus/pull/9914) docs: update legacy MDX v1 links to markdown links ([@OzakIOne](https://github.com/OzakIOne))\\n- [#9913](https://github.com/facebook/docusaurus/pull/9913) docs: update legacy MDX v1 links to markdown links ([@OzakIOne](https://github.com/OzakIOne))\\n- [#9906](https://github.com/facebook/docusaurus/pull/9906) docs: emphasize \\"index slug\\" convention ([@Josh-Cena](https://github.com/Josh-Cena))\\n- [#9877](https://github.com/facebook/docusaurus/pull/9877) docs: fix typos in deployment.mdx ([@Oreoxmt](https://github.com/Oreoxmt))\\n- [#9845](https://github.com/facebook/docusaurus/pull/9845) docs: typo ([@OzakIOne](https://github.com/OzakIOne))\\n- [#9816](https://github.com/facebook/docusaurus/pull/9816) docs: Add docs for Mermaid Component ([@Its-Just-Nans](https://github.com/Its-Just-Nans))\\n\\n## :robot: Dependencies\\n\\n- [#9981](https://github.com/facebook/docusaurus/pull/9981) chore(deps): bump actions/dependency-review-action from 4.1.3 to 4.2.4 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#9982](https://github.com/facebook/docusaurus/pull/9982) chore(deps): bump katex from 0.16.8 to 0.16.10 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#9983](https://github.com/facebook/docusaurus/pull/9983) chore(deps): bump express from 4.18.2 to 4.19.2 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#9977](https://github.com/facebook/docusaurus/pull/9977) chore(deps): bump webpack-dev-middleware from 5.3.3 to 5.3.4 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#9958](https://github.com/facebook/docusaurus/pull/9958) chore(deps): bump follow-redirects from 1.15.4 to 1.15.6 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#9892](https://github.com/facebook/docusaurus/pull/9892) chore(deps): bump actions/dependency-review-action from 4.1.2 to 4.1.3 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#9869](https://github.com/facebook/docusaurus/pull/9869) chore(deps): bump actions/dependency-review-action from 4.0.0 to 4.1.2 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#9874](https://github.com/facebook/docusaurus/pull/9874) chore(deps): bump ip from 2.0.0 to 2.0.1 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#9843](https://github.com/facebook/docusaurus/pull/9843) chore(deps): bump actions/setup-node from 4.0.1 to 4.0.2 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#9824](https://github.com/facebook/docusaurus/pull/9824) chore(deps): bump treosh/lighthouse-ci-action from 10.1.0 to 11.4.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- [#9823](https://github.com/facebook/docusaurus/pull/9823) chore(deps): bump marocchino/sticky-pull-request-comment from 2.8.0 to 2.9.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n\\n## :wrench: Maintenance\\n\\n- `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-docs`, `docusaurus-utils-common`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`\\n - [#9972](https://github.com/facebook/docusaurus/pull/9972) refactor(utils): remove duplicated function ([@OzakIOne](https://github.com/OzakIOne))\\n- Other\\n - [#9965](https://github.com/facebook/docusaurus/pull/9965) refactor(website): organise blog posts by year ([@GingerGeek](https://github.com/GingerGeek))\\n - [#9865](https://github.com/facebook/docusaurus/pull/9865) chore(website): update @crowdin/crowdin-api-client ([@chris-bateman](https://github.com/chris-bateman))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-utils`\\n - [#9963](https://github.com/facebook/docusaurus/pull/9963) refactor(docs,blog): last update timestamp should be in milliseconds instead of seconds ([@slorber](https://github.com/slorber))\\n\\n## Committers: 22\\n\\n- Aolin ([@Oreoxmt](https://github.com/Oreoxmt))\\n- Anatoly Kopyl ([@anatolykopyl](https://github.com/anatolykopyl))\\n- Chris Bateman ([@chris-bateman](https://github.com/chris-bateman))\\n- Fafowora Sunkanmi ([@sunkanmii](https://github.com/sunkanmii))\\n- Hallbj\xf6rn Magn\xfasson ([@Hallinn](https://github.com/Hallinn))\\n- John Reilly ([@johnnyreilly](https://github.com/johnnyreilly))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Josue [4tro] A ([@4troDev](https://github.com/4troDev))\\n- Liviu Ionescu ([@ilg-ul](https://github.com/ilg-ul))\\n- Max Schmitt ([@mxschmitt](https://github.com/mxschmitt))\\n- Rafael Martins ([@Rafael-Martins](https://github.com/Rafael-Martins))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Vahid Naderi ([@VahidNaderi](https://github.com/VahidNaderi))\\n- Vlad Nestorov ([@vlad-nestorov](https://github.com/vlad-nestorov))\\n- Zed Spencer-Milnes ([@GingerGeek](https://github.com/GingerGeek))\\n- axel7083 ([@axel7083](https://github.com/axel7083))\\n- krinza.eth ([@kaymomin](https://github.com/kaymomin))\\n- n4n5 ([@Its-Just-Nans](https://github.com/Its-Just-Nans))\\n- ozaki ([@OzakIOne](https://github.com/OzakIOne))\\n- suenryu ([@Suenaga-Ryuya](https://github.com/Suenaga-Ryuya))\\n- \u041D\u0443\u0440\u0438\u043B\u044C \u0411\u0430\u0440\u0430\u0434\u0443\u0441\u043E\u0432 ([@baradusov](https://github.com/baradusov))\\n- \u7FCA\u5C0F\u4E45 ([@yixiaojiu](https://github.com/yixiaojiu))"},{"id":"/3.1.1","metadata":{"permalink":"/changelog/3.1.1","source":"@site/changelog/source/3.1.1.md","title":"3.1.1","description":"Bug Fix","date":"2024-01-26T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"dawei-wang","alias":"dawei-wang","url":"https://github.com/dawei-wang","imageURL":"https://github.com/dawei-wang.png","key":"dawei-wang","page":null},{"name":"eitsupi","alias":"eitsupi","url":"https://github.com/eitsupi","imageURL":"https://github.com/eitsupi.png","key":"eitsupi","page":null},{"name":"Jack Robson","alias":"jack-robson","url":"https://github.com/jack-robson","imageURL":"https://github.com/jack-robson.png","key":"jack-robson","page":null},{"name":"Sanjaiyan Parthipan","alias":"sanjaiyan-dev","url":"https://github.com/sanjaiyan-dev","imageURL":"https://github.com/sanjaiyan-dev.png","key":"sanjaiyan-dev","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Tatsunori Uchino","alias":"tats-u","url":"https://github.com/tats-u","imageURL":"https://github.com/tats-u.png","key":"tats-u","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2024-01-26T20:00","authors":["dawei-wang","eitsupi","jack-robson","sanjaiyan-dev","slorber","tats-u"]},"unlisted":false,"prevItem":{"title":"3.2.0","permalink":"/changelog/3.2.0"},"nextItem":{"title":"3.1.0","permalink":"/changelog/3.1.0"},"listPageLink":"/changelog/"},"content":"\x3c!-- truncate --\x3e\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-types`, `docusaurus`\\n - [#9791](https://github.com/facebook/docusaurus/pull/9791) fix(core): broken links optimization behaves differently than non-optimized logic ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#9788](https://github.com/facebook/docusaurus/pull/9788) fix(core): links with target \\"\\\\_blank\\" should no be checked by the broken link checker ([@slorber](https://github.com/slorber))\\n - [#9407](https://github.com/facebook/docusaurus/pull/9407) fix(core): conditionally include `hostname` parameter when using\u2026 ([@jack-robson](https://github.com/jack-robson))\\n- `docusaurus-utils`\\n - [#9776](https://github.com/facebook/docusaurus/pull/9776) fix(mdx-loader): allow spaces before `mdx-code-block` info string ([@eitsupi](https://github.com/eitsupi))\\n- `create-docusaurus`\\n - [#9783](https://github.com/facebook/docusaurus/pull/9783) fix(create-docusaurus): fix typo in init template sample docs ([@dawei-wang](https://github.com/dawei-wang))\\n- `docusaurus-theme-common`\\n - [#9727](https://github.com/facebook/docusaurus/pull/9727) fix(theme-common): fix missing code block MagicComments style in Visual Basic (.NET) 16 ([@tats-u](https://github.com/tats-u))\\n- `docusaurus-theme-classic`, `docusaurus-theme-mermaid`\\n - [#9733](https://github.com/facebook/docusaurus/pull/9733) fix: remove old useless mdx typedefs ([@slorber](https://github.com/slorber))\\n- `docusaurus-module-type-aliases`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-utils`, `docusaurus`\\n - [#9732](https://github.com/facebook/docusaurus/pull/9732) fix(core): various broken anchor link fixes ([@slorber](https://github.com/slorber))\\n\\n## :running: Performance\\n\\n- `docusaurus`\\n - [#9778](https://github.com/facebook/docusaurus/pull/9778) perf(core): optimize broken links checker ([@slorber](https://github.com/slorber))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#9470](https://github.com/facebook/docusaurus/pull/9470) polish(theme): MDX images should use async decoding ([@sanjaiyan-dev](https://github.com/sanjaiyan-dev))\\n\\n## Committers: 6\\n\\n- Jack Robson ([@jack-robson](https://github.com/jack-robson))\\n- Sanjaiyan Parthipan ([@sanjaiyan-dev](https://github.com/sanjaiyan-dev))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Tatsunori Uchino ([@tats-u](https://github.com/tats-u))\\n- [@dawei-wang](https://github.com/dawei-wang)\\n- [@eitsupi](https://github.com/eitsupi)"},{"id":"/3.1.0","metadata":{"permalink":"/changelog/3.1.0","source":"@site/changelog/source/3.1.0.md","title":"3.1.0","description":"New Feature","date":"2024-01-05T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"axmmisaka","alias":"axmmisaka","url":"https://github.com/axmmisaka","imageURL":"https://github.com/axmmisaka.png","key":"axmmisaka","page":null},{"name":"c0h1b4","alias":"c0h1b4","url":"https://github.com/c0h1b4","imageURL":"https://github.com/c0h1b4.png","key":"c0h1b4","page":null},{"name":"Janessa Garrow","alias":"jgarrow","url":"https://github.com/jgarrow","imageURL":"https://github.com/jgarrow.png","key":"jgarrow","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"ozaki","alias":"OzakIOne","url":"https://github.com/OzakIOne","imageURL":"https://github.com/OzakIOne.png","key":"OzakIOne","page":null},{"name":"Simen Bekkhus","alias":"SimenB","url":"https://github.com/SimenB","imageURL":"https://github.com/SimenB.png","key":"SimenB","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Tatsunori Uchino","alias":"tats-u","url":"https://github.com/tats-u","imageURL":"https://github.com/tats-u.png","key":"tats-u","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2024-01-05T20:00","authors":["axmmisaka","c0h1b4","jgarrow","Josh-Cena","OzakIOne","SimenB","slorber","tats-u"]},"unlisted":false,"prevItem":{"title":"3.1.1","permalink":"/changelog/3.1.1"},"nextItem":{"title":"3.0.1","permalink":"/changelog/3.0.1"},"listPageLink":"/changelog/"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-mdx-loader`, `docusaurus-module-type-aliases`, `docusaurus-theme-classic`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`\\n - [#9528](https://github.com/facebook/docusaurus/pull/9528) feat(core): make broken link checker detect broken anchors - add `onBrokenAnchors` config ([@OzakIOne](https://github.com/OzakIOne))\\n- `docusaurus-mdx-loader`, `docusaurus-types`, `docusaurus`\\n - [#9674](https://github.com/facebook/docusaurus/pull/9674) feat(mdx-loader): add support for siteConfig.markdown.remarkRehypeOptions ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-common`\\n - [#9671](https://github.com/facebook/docusaurus/pull/9671) feat(theme-common): code block MagicComments support for (Visual) Basic/Batch/Fortran/COBOL/ML ([@tats-u](https://github.com/tats-u))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`\\n - [#9624](https://github.com/facebook/docusaurus/pull/9624) feat: siteConfig.markdown.parseFrontMatter hook ([@slorber](https://github.com/slorber))\\n- `docusaurus-utils`\\n - [#9610](https://github.com/facebook/docusaurus/pull/9610) feat(core): enable port configuration via environment variable ([@OzakIOne](https://github.com/OzakIOne))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`\\n - [#9704](https://github.com/facebook/docusaurus/pull/9704) fix(theme): allow empty code blocks and live playgrounds ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`\\n - [#9696](https://github.com/facebook/docusaurus/pull/9696) fix(create-docusaurus): fix init template code blocks, and little improvements ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-pwa`\\n - [#9668](https://github.com/facebook/docusaurus/pull/9668) fix(pwa-plugin): upgrade workbox ([@SimenB](https://github.com/SimenB))\\n- `docusaurus`\\n - [#9648](https://github.com/facebook/docusaurus/pull/9648) fix(cli): output help when no conventional config + no subcommand ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-live-codeblock`\\n - [#9631](https://github.com/facebook/docusaurus/pull/9631) fix(live-codeblock): stabilize react-live transformCode callback, fix editor/preview desync ([@slorber](https://github.com/slorber))\\n- `docusaurus-utils`\\n - [#9617](https://github.com/facebook/docusaurus/pull/9617) fix(utils): Markdown link replacement with <> but no spaces ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-module-type-aliases`\\n - [#9612](https://github.com/facebook/docusaurus/pull/9612) fix(type-aliases): add `title` prop for imported inline SVG React components ([@axmmisaka](https://github.com/axmmisaka))\\n- `docusaurus-plugin-content-blog`\\n - [#9581](https://github.com/facebook/docusaurus/pull/9581) fix(content-blog): add baseUrl for author.image_url ([@OzakIOne](https://github.com/OzakIOne))\\n- `docusaurus-theme-translations`\\n - [#9477](https://github.com/facebook/docusaurus/pull/9477) fix(i18n): complete translations for theme-common.json Brazilian Portuguese (pt-BR) ([@c0h1b4](https://github.com/c0h1b4))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-common`\\n - [#9335](https://github.com/facebook/docusaurus/pull/9335) refactor(theme-common): allow optional desktopBreakpoint param in useWindowSize ([@jgarrow](https://github.com/jgarrow))\\n\\n## :wrench: Maintenance\\n\\n- `docusaurus-theme-search-algolia`\\n - [#9604](https://github.com/facebook/docusaurus/pull/9604) chore: add lint autofix CI job ([@slorber](https://github.com/slorber))\\n\\n## Committers: 8\\n\\n- Janessa Garrow ([@jgarrow](https://github.com/jgarrow))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Simen Bekkhus ([@SimenB](https://github.com/SimenB))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Tatsunori Uchino ([@tats-u](https://github.com/tats-u))\\n- [@c0h1b4](https://github.com/c0h1b4)\\n- axmmisaka ([@axmmisaka](https://github.com/axmmisaka))\\n- ozaki ([@OzakIOne](https://github.com/OzakIOne))"},{"id":"/3.0.1","metadata":{"permalink":"/changelog/3.0.1","source":"@site/changelog/source/3.0.1.md","title":"3.0.1","description":"Bug Fix","date":"2023-11-30T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Chongyi Zheng","alias":"harryzcy","url":"https://github.com/harryzcy","imageURL":"https://github.com/harryzcy.png","key":"harryzcy","page":null},{"name":"MCR Studio","alias":"mcrstudio","url":"https://github.com/mcrstudio","imageURL":"https://github.com/mcrstudio.png","key":"mcrstudio","page":null},{"name":"Nick Gerleman","alias":"NickGerleman","url":"https://github.com/NickGerleman","imageURL":"https://github.com/NickGerleman.png","key":"NickGerleman","page":null},{"name":"reece-white","alias":"reece-white","url":"https://github.com/reece-white","imageURL":"https://github.com/reece-white.png","key":"reece-white","page":null},{"name":"Shreesh Nautiyal","alias":"Shreesh09","url":"https://github.com/Shreesh09","imageURL":"https://github.com/Shreesh09.png","key":"Shreesh09","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2023-11-30T20:00","authors":["harryzcy","mcrstudio","NickGerleman","reece-white","Shreesh09","slorber"]},"unlisted":false,"prevItem":{"title":"3.1.0","permalink":"/changelog/3.1.0"},"nextItem":{"title":"3.0.0","permalink":"/changelog/3.0.0"},"listPageLink":"/changelog/"},"content":"\x3c!-- truncate --\x3e\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-utils`\\n - [#9570](https://github.com/facebook/docusaurus/pull/9570) fix: add v2 retrocompatible support for quoted admonitions ([@slorber](https://github.com/slorber))\\n - [#9535](https://github.com/facebook/docusaurus/pull/9535) fix: v3 admonitions should support v2 title syntax for nested admonitions ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`, `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#9567](https://github.com/facebook/docusaurus/pull/9567) fix(theme): upgrade prism-react-renderer, fix html script and style tag highlighting ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-common`\\n - [#9531](https://github.com/facebook/docusaurus/pull/9531) fix(theme): docs html sidebar items should always be visible ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#9530](https://github.com/facebook/docusaurus/pull/9530) fix(theme): fix firefox CSS :has() support bug ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`\\n - [#9487](https://github.com/facebook/docusaurus/pull/9487) fix(create-docusaurus): fix readme docusaurus 2 ref ([@slorber](https://github.com/slorber))\\n\\n## :robot: Dependencies\\n\\n- `docusaurus-plugin-debug`\\n - [#9566](https://github.com/facebook/docusaurus/pull/9566) chore(debug-plugin): migrate to a new maintained JSON Viewer ([@mcrstudio](https://github.com/mcrstudio))\\n- `create-docusaurus`, `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#9572](https://github.com/facebook/docusaurus/pull/9572) chore: upgrade prism-react-renderer to 2.3.0 to avoid older clsx ([@harryzcy](https://github.com/harryzcy))\\n - [#9567](https://github.com/facebook/docusaurus/pull/9567) fix(theme): upgrade prism-react-renderer, fix html script and style tag highlighting ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`, `docusaurus-plugin-pwa`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`\\n - [#9464](https://github.com/facebook/docusaurus/pull/9464) chore: Upgrade clsx to 2.0.0 ([@harryzcy](https://github.com/harryzcy))\\n- `docusaurus`\\n - [#9547](https://github.com/facebook/docusaurus/pull/9547) chore(core): replace `wait-on` dependency with custom lighter code ([@NickGerleman](https://github.com/NickGerleman))\\n- `docusaurus-plugin-pwa`, `docusaurus`\\n - [#9529](https://github.com/facebook/docusaurus/pull/9529) chore: ugrade babel dependencies to v7.23.3 ([@reece-white](https://github.com/reece-white))\\n\\n## Committers: 6\\n\\n- Chongyi Zheng ([@harryzcy](https://github.com/harryzcy))\\n- MCR Studio ([@mcrstudio](https://github.com/mcrstudio))\\n- Nick Gerleman ([@NickGerleman](https://github.com/NickGerleman))\\n- Shreesh Nautiyal ([@Shreesh09](https://github.com/Shreesh09))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- [@reece-white](https://github.com/reece-white)"},{"id":"/3.0.0","metadata":{"permalink":"/changelog/3.0.0","source":"@site/changelog/source/3.0.0.md","title":"3.0.0","description":"Breaking Change","date":"2023-10-31T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Wan Sim","alias":"0420syj","url":"https://github.com/0420syj","imageURL":"https://github.com/0420syj.png","key":"0420syj","page":null},{"name":"Abhinandan Wadhwa","alias":"abhinandanwadwa","url":"https://github.com/abhinandanwadwa","imageURL":"https://github.com/abhinandanwadwa.png","key":"abhinandanwadwa","page":null},{"name":"Abinash Satapathy","alias":"Abinashbunty","url":"https://github.com/Abinashbunty","imageURL":"https://github.com/Abinashbunty.png","key":"Abinashbunty","page":null},{"name":"Adam Patterson","alias":"adampatterson","url":"https://github.com/adampatterson","imageURL":"https://github.com/adampatterson.png","key":"adampatterson","page":null},{"name":"Adithya Krishna","alias":"adithyaakrishna","url":"https://github.com/adithyaakrishna","imageURL":"https://github.com/adithyaakrishna.png","key":"adithyaakrishna","page":null},{"name":"Hayden Hong","alias":"AFRUITPIE","url":"https://github.com/AFRUITPIE","imageURL":"https://github.com/AFRUITPIE.png","key":"AFRUITPIE","page":null},{"name":"Craigory Coppola","alias":"AgentEnder","url":"https://github.com/AgentEnder","imageURL":"https://github.com/AgentEnder.png","key":"AgentEnder","page":null},{"name":"Akshay Bhalotia","alias":"akshaybhalotia","url":"https://github.com/akshaybhalotia","imageURL":"https://github.com/akshaybhalotia.png","key":"akshaybhalotia","page":null},{"name":"allyw2002","alias":"allyw2002","url":"https://github.com/allyw2002","imageURL":"https://github.com/allyw2002.png","key":"allyw2002","page":null},{"name":"Ahmad Shrif","alias":"amdshrif","url":"https://github.com/amdshrif","imageURL":"https://github.com/amdshrif.png","key":"amdshrif","page":null},{"name":"Ahmed Mustafa Malik","alias":"amm98d","url":"https://github.com/amm98d","imageURL":"https://github.com/amm98d.png","key":"amm98d","page":null},{"name":"Sunghyun Cho","alias":"anaclumos","url":"https://github.com/anaclumos","imageURL":"https://github.com/anaclumos.png","key":"anaclumos","page":null},{"name":"Andrew Lyons","alias":"andrewnicols","url":"https://github.com/andrewnicols","imageURL":"https://github.com/andrewnicols.png","key":"andrewnicols","page":null},{"name":"Anton Kastritskii","alias":"antonk52","url":"https://github.com/antonk52","imageURL":"https://github.com/antonk52.png","key":"antonk52","page":null},{"name":"Antony Onipko","alias":"antonyoni","url":"https://github.com/antonyoni","imageURL":"https://github.com/antonyoni.png","key":"antonyoni","page":null},{"name":"Aqueeb","alias":"aqueeb","url":"https://github.com/aqueeb","imageURL":"https://github.com/aqueeb.png","key":"aqueeb","page":null},{"name":"Martin Adamko","alias":"attitude","url":"https://github.com/attitude","imageURL":"https://github.com/attitude.png","key":"attitude","page":null},{"name":"Billy Chan","alias":"billy1624","url":"https://github.com/billy1624","imageURL":"https://github.com/billy1624.png","key":"billy1624","page":null},{"name":"biplavmz","alias":"biplavmz","url":"https://github.com/biplavmz","imageURL":"https://github.com/biplavmz.png","key":"biplavmz","page":null},{"name":"bitpredator","alias":"bitpredator","url":"https://github.com/bitpredator","imageURL":"https://github.com/bitpredator.png","key":"bitpredator","page":null},{"name":"Joe Williams","alias":"BubbaJoe","url":"https://github.com/BubbaJoe","imageURL":"https://github.com/BubbaJoe.png","key":"BubbaJoe","page":null},{"name":"Dinh Bao Dang","alias":"chillinPanda","url":"https://github.com/chillinPanda","imageURL":"https://github.com/chillinPanda.png","key":"chillinPanda","page":null},{"name":"Bei Chu","alias":"chubei","url":"https://github.com/chubei","imageURL":"https://github.com/chubei.png","key":"chubei","page":null},{"name":"\u521D\u51AC","alias":"chudongvip","url":"https://github.com/chudongvip","imageURL":"https://github.com/chudongvip.png","key":"chudongvip","page":null},{"name":"Ryosuke Igarashi","alias":"cm-igarashi-ryosuke","url":"https://github.com/cm-igarashi-ryosuke","imageURL":"https://github.com/cm-igarashi-ryosuke.png","key":"cm-igarashi-ryosuke","page":null},{"name":"Colin McDonnell","alias":"colinhacks","url":"https://github.com/colinhacks","imageURL":"https://github.com/colinhacks.png","key":"colinhacks","page":null},{"name":"conlacda","alias":"conlacda","url":"https://github.com/conlacda","imageURL":"https://github.com/conlacda.png","key":"conlacda","page":null},{"name":"Dan Dascalescu","alias":"dandv","url":"https://github.com/dandv","imageURL":"https://github.com/dandv.png","key":"dandv","page":null},{"name":"Danilo Woznica","alias":"danilowoz","url":"https://github.com/danilowoz","imageURL":"https://github.com/danilowoz.png","key":"danilowoz","page":null},{"name":"Dan Roscigno","alias":"DanRoscigno","url":"https://github.com/DanRoscigno","imageURL":"https://github.com/DanRoscigno.png","key":"DanRoscigno","page":null},{"name":"David J. Felix","alias":"DavidJFelix","url":"https://github.com/DavidJFelix","imageURL":"https://github.com/DavidJFelix.png","key":"DavidJFelix","page":null},{"name":"dawei-wang","alias":"dawei-wang","url":"https://github.com/dawei-wang","imageURL":"https://github.com/dawei-wang.png","key":"dawei-wang","page":null},{"name":"Debbie O\'Brien","alias":"debs-obrien","url":"https://github.com/debs-obrien","imageURL":"https://github.com/debs-obrien.png","key":"debs-obrien","page":null},{"name":"Devansu Yadav","alias":"Devansu-Yadav","url":"https://github.com/Devansu-Yadav","imageURL":"https://github.com/Devansu-Yadav.png","key":"Devansu-Yadav","page":null},{"name":"Dongjoon Lee","alias":"Djunnni","url":"https://github.com/Djunnni","imageURL":"https://github.com/Djunnni.png","key":"Djunnni","page":null},{"name":"Dr-Electron","alias":"Dr-Electron","url":"https://github.com/Dr-Electron","imageURL":"https://github.com/Dr-Electron.png","key":"Dr-Electron","page":null},{"name":"Eduardo M\xednguez","alias":"e-minguez","url":"https://github.com/e-minguez","imageURL":"https://github.com/e-minguez.png","key":"e-minguez","page":null},{"name":"Gr\xe9gory Heitz","alias":"edno","url":"https://github.com/edno","imageURL":"https://github.com/edno.png","key":"edno","page":null},{"name":"FlorinaPacurar","alias":"FlorinaPacurar","url":"https://github.com/FlorinaPacurar","imageURL":"https://github.com/FlorinaPacurar.png","key":"FlorinaPacurar","page":null},{"name":"Charles Killer","alias":"Foosballfan","url":"https://github.com/Foosballfan","imageURL":"https://github.com/Foosballfan.png","key":"Foosballfan","page":null},{"name":"Forresst","alias":"forresst","url":"https://github.com/forresst","imageURL":"https://github.com/forresst.png","key":"forresst","page":null},{"name":"Francesco Ciulla","alias":"FrancescoXX","url":"https://github.com/FrancescoXX","imageURL":"https://github.com/FrancescoXX.png","key":"FrancescoXX","page":null},{"name":"Fredrik Stave","alias":"fredrikstave","url":"https://github.com/fredrikstave","imageURL":"https://github.com/fredrikstave.png","key":"fredrikstave","page":null},{"name":"Fxpby","alias":"fxpby","url":"https://github.com/fxpby","imageURL":"https://github.com/fxpby.png","key":"fxpby","page":null},{"name":"Gabriel Csapo","alias":"gabrielcsapo","url":"https://github.com/gabrielcsapo","imageURL":"https://github.com/gabrielcsapo.png","key":"gabrielcsapo","page":null},{"name":"Alexander Nguyen","alias":"GalexyN","url":"https://github.com/GalexyN","imageURL":"https://github.com/GalexyN.png","key":"GalexyN","page":null},{"name":"Gustav Ton\xe9r","alias":"gazab","url":"https://github.com/gazab","imageURL":"https://github.com/gazab.png","key":"gazab","page":null},{"name":"Eunkwang Shin","alias":"gracefullight","url":"https://github.com/gracefullight","imageURL":"https://github.com/gracefullight.png","key":"gracefullight","page":null},{"name":"Greg Berg\xe9","alias":"gregberge","url":"https://github.com/gregberge","imageURL":"https://github.com/gregberge.png","key":"gregberge","page":null},{"name":"Chongyi Zheng","alias":"harryzcy","url":"https://github.com/harryzcy","imageURL":"https://github.com/harryzcy.png","key":"harryzcy","page":null},{"name":"Sujal Gupta","alias":"heysujal","url":"https://github.com/heysujal","imageURL":"https://github.com/heysujal.png","key":"heysujal","page":null},{"name":"Hidde de Vries","alias":"hidde","url":"https://github.com/hidde","imageURL":"https://github.com/hidde.png","key":"hidde","page":null},{"name":"Mikey O\'Toole","alias":"homotechsual","url":"https://github.com/homotechsual","imageURL":"https://github.com/homotechsual.png","key":"homotechsual","page":null},{"name":"Hyunseung","alias":"hslee2008","url":"https://github.com/hslee2008","imageURL":"https://github.com/hslee2008.png","key":"hslee2008","page":null},{"name":"Anna","alias":"HumbleDeer","url":"https://github.com/HumbleDeer","imageURL":"https://github.com/HumbleDeer.png","key":"HumbleDeer","page":null},{"name":"Coupy","alias":"HyeokjinKang","url":"https://github.com/HyeokjinKang","imageURL":"https://github.com/HyeokjinKang.png","key":"HyeokjinKang","page":null},{"name":"Jean Humann","alias":"jean-humann","url":"https://github.com/jean-humann","imageURL":"https://github.com/jean-humann.png","key":"jean-humann","page":null},{"name":"Jesper Engberg","alias":"jeengbe","url":"https://github.com/jeengbe","imageURL":"https://github.com/jeengbe.png","key":"jeengbe","page":null},{"name":"John Cao","alias":"jhcao23","url":"https://github.com/jhcao23","imageURL":"https://github.com/jhcao23.png","key":"jhcao23","page":null},{"name":"JJ Style","alias":"jj-style","url":"https://github.com/jj-style","imageURL":"https://github.com/jj-style.png","key":"jj-style","page":null},{"name":"Jody Heavener","alias":"jodyheavener","url":"https://github.com/jodyheavener","imageURL":"https://github.com/jodyheavener.png","key":"jodyheavener","page":null},{"name":"John Reilly","alias":"johnnyreilly","url":"https://github.com/johnnyreilly","imageURL":"https://github.com/johnnyreilly.png","key":"johnnyreilly","page":null},{"name":"Viktor Malmedal","alias":"JohnVicke","url":"https://github.com/JohnVicke","imageURL":"https://github.com/JohnVicke.png","key":"JohnVicke","page":null},{"name":"Jorens Merenjanu","alias":"JorensM","url":"https://github.com/JorensM","imageURL":"https://github.com/JorensM.png","key":"JorensM","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Juan Picado","alias":"juanpicado","url":"https://github.com/juanpicado","imageURL":"https://github.com/juanpicado.png","key":"juanpicado","page":null},{"name":"0x24Karthick","alias":"KarthickSakthi","url":"https://github.com/KarthickSakthi","imageURL":"https://github.com/KarthickSakthi.png","key":"KarthickSakthi","page":null},{"name":"Serenus","alias":"Kesyau","url":"https://github.com/Kesyau","imageURL":"https://github.com/Kesyau.png","key":"Kesyau","page":null},{"name":"Naffy Dharni","alias":"knownasnaffy","url":"https://github.com/knownasnaffy","imageURL":"https://github.com/knownasnaffy.png","key":"knownasnaffy","page":null},{"name":"la55u","alias":"la55u","url":"https://github.com/la55u","imageURL":"https://github.com/la55u.png","key":"la55u","page":null},{"name":"Lane Goolsby","alias":"lanegoolsby","url":"https://github.com/lanegoolsby","imageURL":"https://github.com/lanegoolsby.png","key":"lanegoolsby","page":null},{"name":"Oleksandr Fediashov","alias":"layershifter","url":"https://github.com/layershifter","imageURL":"https://github.com/layershifter.png","key":"layershifter","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Lorenzo Lewis","alias":"lorenzolewis","url":"https://github.com/lorenzolewis","imageURL":"https://github.com/lorenzolewis.png","key":"lorenzolewis","page":null},{"name":"Silvestar Bistrovi\u0107","alias":"maliMirkec","url":"https://github.com/maliMirkec","imageURL":"https://github.com/maliMirkec.png","key":"maliMirkec","page":null},{"name":"Manuel","alias":"manuel-rw","url":"https://github.com/manuel-rw","imageURL":"https://github.com/manuel-rw.png","key":"manuel-rw","page":null},{"name":"Markshawn","alias":"MarkShawn2020","url":"https://github.com/MarkShawn2020","imageURL":"https://github.com/MarkShawn2020.png","key":"MarkShawn2020","page":null},{"name":"mcallisto","alias":"mcallisto","url":"https://github.com/mcallisto","imageURL":"https://github.com/mcallisto.png","key":"mcallisto","page":null},{"name":"Michael Remediakis","alias":"mickremedi","url":"https://github.com/mickremedi","imageURL":"https://github.com/mickremedi.png","key":"mickremedi","page":null},{"name":"ModupeD","alias":"ModupeD","url":"https://github.com/ModupeD","imageURL":"https://github.com/ModupeD.png","key":"ModupeD","page":null},{"name":"Mogyuchi","alias":"Mogyuchi","url":"https://github.com/Mogyuchi","imageURL":"https://github.com/Mogyuchi.png","key":"Mogyuchi","page":null},{"name":"Mu-Jing-Tsai","alias":"moojing","url":"https://github.com/moojing","imageURL":"https://github.com/moojing.png","key":"moojing","page":null},{"name":"Tom Mrazauskas","alias":"mrazauskas","url":"https://github.com/mrazauskas","imageURL":"https://github.com/mrazauskas.png","key":"mrazauskas","page":null},{"name":"Marco Stroppel","alias":"mstroppel","url":"https://github.com/mstroppel","imageURL":"https://github.com/mstroppel.png","key":"mstroppel","page":null},{"name":"Max Schmitt","alias":"mxschmitt","url":"https://github.com/mxschmitt","imageURL":"https://github.com/mxschmitt.png","key":"mxschmitt","page":null},{"name":"Mysterious_Dev","alias":"Mysterious-Dev","url":"https://github.com/Mysterious-Dev","imageURL":"https://github.com/Mysterious-Dev.png","key":"Mysterious-Dev","page":null},{"name":"Naman Garg","alias":"NamanGarg2075","url":"https://github.com/NamanGarg2075","imageURL":"https://github.com/NamanGarg2075.png","key":"NamanGarg2075","page":null},{"name":"Nathaniel Tucker","alias":"ntucker","url":"https://github.com/ntucker","imageURL":"https://github.com/ntucker.png","key":"ntucker","page":null},{"name":"Oluwatobi Sofela","alias":"oluwatobiss","url":"https://github.com/oluwatobiss","imageURL":"https://github.com/oluwatobiss.png","key":"oluwatobiss","page":null},{"name":"Aolin","alias":"Oreoxmt","url":"https://github.com/Oreoxmt","imageURL":"https://github.com/Oreoxmt.png","key":"Oreoxmt","page":null},{"name":"ozaki","alias":"OzakIOne","url":"https://github.com/OzakIOne","imageURL":"https://github.com/OzakIOne.png","key":"OzakIOne","page":null},{"name":"Maciek Palmowski","alias":"palmiak","url":"https://github.com/palmiak","imageURL":"https://github.com/palmiak.png","key":"palmiak","page":null},{"name":"Paul Razvan Berg","alias":"PaulRBerg","url":"https://github.com/PaulRBerg","imageURL":"https://github.com/PaulRBerg.png","key":"PaulRBerg","page":null},{"name":"Pinaki Bhattacharjee","alias":"pinakipb2","url":"https://github.com/pinakipb2","imageURL":"https://github.com/pinakipb2.png","key":"pinakipb2","page":null},{"name":"prateekbytes","alias":"prateekbytes","url":"https://github.com/prateekbytes","imageURL":"https://github.com/prateekbytes.png","key":"prateekbytes","page":null},{"name":"qwerzl","alias":"qwerzl","url":"https://github.com/qwerzl","imageURL":"https://github.com/qwerzl.png","key":"qwerzl","page":null},{"name":"Rashid","alias":"rashidmya","url":"https://github.com/rashidmya","imageURL":"https://github.com/rashidmya.png","key":"rashidmya","page":null},{"name":"Kolja","alias":"razzeee","url":"https://github.com/razzeee","imageURL":"https://github.com/razzeee.png","key":"razzeee","page":null},{"name":"Rapha\xebl Barbazza","alias":"rbarbazz","url":"https://github.com/rbarbazz","imageURL":"https://github.com/rbarbazz.png","key":"rbarbazz","page":null},{"name":"Bruce Song","alias":"recallwei","url":"https://github.com/recallwei","imageURL":"https://github.com/recallwei.png","key":"recallwei","page":null},{"name":"Chua Chee How","alias":"rojakcoder","url":"https://github.com/rojakcoder","imageURL":"https://github.com/rojakcoder.png","key":"rojakcoder","page":null},{"name":"rsteele6","alias":"rsteele6","url":"https://github.com/rsteele6","imageURL":"https://github.com/rsteele6.png","key":"rsteele6","page":null},{"name":"SADIK KUZU","alias":"sadikkuzu","url":"https://github.com/sadikkuzu","imageURL":"https://github.com/sadikkuzu.png","key":"sadikkuzu","page":null},{"name":"Sainan","alias":"Sainan","url":"https://github.com/Sainan","imageURL":"https://github.com/Sainan.png","key":"Sainan","page":null},{"name":"samatt14","alias":"samatt14","url":"https://github.com/samatt14","imageURL":"https://github.com/samatt14.png","key":"samatt14","page":null},{"name":"Sanjaiyan Parthipan","alias":"sanjaiyan-dev","url":"https://github.com/sanjaiyan-dev","imageURL":"https://github.com/sanjaiyan-dev.png","key":"sanjaiyan-dev","page":null},{"name":"Alex","alias":"sashashura","url":"https://github.com/sashashura","imageURL":"https://github.com/sashashura.png","key":"sashashura","page":null},{"name":"Marie","alias":"schneegansm","url":"https://github.com/schneegansm","imageURL":"https://github.com/schneegansm.png","key":"schneegansm","page":null},{"name":"Marco Kuper","alias":"scubamaggo","url":"https://github.com/scubamaggo","imageURL":"https://github.com/scubamaggo.png","key":"scubamaggo","page":null},{"name":"Shahriar","alias":"ShahriarKh","url":"https://github.com/ShahriarKh","imageURL":"https://github.com/ShahriarKh.png","key":"ShahriarKh","page":null},{"name":"Shashank Kumar","alias":"shawshankkumar","url":"https://github.com/shawshankkumar","imageURL":"https://github.com/shawshankkumar.png","key":"shawshankkumar","page":null},{"name":"Cl\xe9ment Vannicatte","alias":"shortcuts","url":"https://github.com/shortcuts","imageURL":"https://github.com/shortcuts.png","key":"shortcuts","page":null},{"name":"Shun Wakatsuki","alias":"shwaka","url":"https://github.com/shwaka","imageURL":"https://github.com/shwaka.png","key":"shwaka","page":null},{"name":"Gareth Dwyer","alias":"sixhobbits","url":"https://github.com/sixhobbits","imageURL":"https://github.com/sixhobbits.png","key":"sixhobbits","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Surav Shrestha","alias":"suravshrestha","url":"https://github.com/suravshrestha","imageURL":"https://github.com/suravshrestha.png","key":"suravshrestha","page":null},{"name":"sykp241095","alias":"sykp241095","url":"https://github.com/sykp241095","imageURL":"https://github.com/sykp241095.png","key":"sykp241095","page":null},{"name":"Tamal Anwar Chowdhury","alias":"tamalchowdhury","url":"https://github.com/tamalchowdhury","imageURL":"https://github.com/tamalchowdhury.png","key":"tamalchowdhury","page":null},{"name":"Tarun Chauhan","alias":"tarunrajput","url":"https://github.com/tarunrajput","imageURL":"https://github.com/tarunrajput.png","key":"tarunrajput","page":null},{"name":"Tatsunori Uchino","alias":"tats-u","url":"https://github.com/tats-u","imageURL":"https://github.com/tats-u.png","key":"tats-u","page":null},{"name":"Thad Guidry","alias":"thadguidry","url":"https://github.com/thadguidry","imageURL":"https://github.com/thadguidry.png","key":"thadguidry","page":null},{"name":"James Kerrane","alias":"thatrobotdev","url":"https://github.com/thatrobotdev","imageURL":"https://github.com/thatrobotdev.png","key":"thatrobotdev","page":null},{"name":"thedevwonder","alias":"thedevwonder","url":"https://github.com/thedevwonder","imageURL":"https://github.com/thedevwonder.png","key":"thedevwonder","page":null},{"name":"Andr\xe9s Villanueva","alias":"Villanuevand","url":"https://github.com/Villanuevand","imageURL":"https://github.com/Villanuevand.png","key":"Villanuevand","page":null},{"name":"VinceCYLiao","alias":"VinceCYLiao","url":"https://github.com/VinceCYLiao","imageURL":"https://github.com/VinceCYLiao.png","key":"VinceCYLiao","page":null},{"name":"Waldir Pimenta","alias":"waldyrious","url":"https://github.com/waldyrious","imageURL":"https://github.com/waldyrious.png","key":"waldyrious","page":null},{"name":"Will Ceolin","alias":"wceolin","url":"https://github.com/wceolin","imageURL":"https://github.com/wceolin.png","key":"wceolin","page":null},{"name":"Webber Takken","alias":"webbertakken","url":"https://github.com/webbertakken","imageURL":"https://github.com/webbertakken.png","key":"webbertakken","page":null},{"name":"Jordan Manley","alias":"werner33","url":"https://github.com/werner33","imageURL":"https://github.com/werner33.png","key":"werner33","page":null},{"name":"Yangshun Tay","alias":"yangshun","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png","key":"yangshun","page":null},{"name":"yosukekato165","alias":"yosukekato165","url":"https://github.com/yosukekato165","imageURL":"https://github.com/yosukekato165.png","key":"yosukekato165","page":null},{"name":"Zwyx","alias":"Zwyx","url":"https://github.com/Zwyx","imageURL":"https://github.com/Zwyx.png","key":"Zwyx","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2023-10-31T20:00","authors":["0420syj","abhinandanwadwa","Abinashbunty","adampatterson","adithyaakrishna","AFRUITPIE","AgentEnder","akshaybhalotia","allyw2002","amdshrif","amm98d","anaclumos","andrewnicols","antonk52","antonyoni","aqueeb","attitude","billy1624","biplavmz","bitpredator","BubbaJoe","chillinPanda","chubei","chudongvip","cm-igarashi-ryosuke","colinhacks","conlacda","dandv","danilowoz","DanRoscigno","DavidJFelix","dawei-wang","debs-obrien","Devansu-Yadav","Djunnni","Dr-Electron","e-minguez","edno","FlorinaPacurar","Foosballfan","forresst","FrancescoXX","fredrikstave","fxpby","gabrielcsapo","GalexyN","gazab","gracefullight","gregberge","harryzcy","heysujal","hidde","homotechsual","hslee2008","HumbleDeer","HyeokjinKang","jean-humann","jeengbe","jhcao23","jj-style","jodyheavener","johnnyreilly","JohnVicke","JorensM","Josh-Cena","juanpicado","KarthickSakthi","Kesyau","knownasnaffy","la55u","lanegoolsby","layershifter","lex111","lorenzolewis","maliMirkec","manuel-rw","MarkShawn2020","mcallisto","mickremedi","ModupeD","Mogyuchi","moojing","mrazauskas","mstroppel","mxschmitt","Mysterious-Dev","NamanGarg2075","ntucker","oluwatobiss","Oreoxmt","OzakIOne","palmiak","PaulRBerg","pinakipb2","prateekbytes","qwerzl","rashidmya","razzeee","rbarbazz","recallwei","rojakcoder","rsteele6","sadikkuzu","Sainan","samatt14","sanjaiyan-dev","sashashura","schneegansm","scubamaggo","ShahriarKh","shawshankkumar","shortcuts","shwaka","sixhobbits","slorber","suravshrestha","sykp241095","tamalchowdhury","tarunrajput","tats-u","thadguidry","thatrobotdev","thedevwonder","Villanuevand","VinceCYLiao","waldyrious","wceolin","webbertakken","werner33","yangshun","yosukekato165","Zwyx"]},"unlisted":false,"prevItem":{"title":"3.0.1","permalink":"/changelog/3.0.1"},"nextItem":{"title":"2.4.3","permalink":"/changelog/2.4.3"},"listPageLink":"/changelog/"},"content":"\x3c!-- truncate --\x3e\\n\\n## :boom: Breaking Change\\n\\n- `create-docusaurus`, `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`\\n - [#9451](https://github.com/facebook/docusaurus/pull/9451) feat(mdx-loader): upgrade to MDX v3 ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-ideal-image`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`\\n - [#9317](https://github.com/facebook/docusaurus/pull/9317) feat(core): support TypeScript + ESM configuration ([@harryzcy](https://github.com/harryzcy))\\n- `create-docusaurus`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus`\\n - [#9316](https://github.com/facebook/docusaurus/pull/9316) chore: upgrade syntax highlighting dependencies, `prism-react-renderer` to v2, `react-live` to v4 ([@harryzcy](https://github.com/harryzcy))\\n- `create-docusaurus`, `docusaurus-cssnano-preset`, `docusaurus-logger`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-google-tag-manager`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-preset-classic`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-mermaid`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`, `docusaurus-utils-common`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `eslint-plugin`, `lqip-loader`\\n - [#9348](https://github.com/facebook/docusaurus/pull/9348) chore: update node engine version 18 ([@OzakIOne](https://github.com/OzakIOne))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#9310](https://github.com/facebook/docusaurus/pull/9310) chore(plugin-docs): remove legacy versioned prefix on doc ids and sidebar names in versioned sidebars ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-translations`\\n - [#9308](https://github.com/facebook/docusaurus/pull/9308) fix(theme): make warning a first-class admonition, and deprecate caution admonition ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-mermaid`\\n - [#9305](https://github.com/facebook/docusaurus/pull/9305) feat(theme-mermaid): upgrade Mermaid to v10.4 - handle async rendering ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-google-tag-manager`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-mermaid`, `docusaurus-theme-search-algolia`, `docusaurus-tsconfig`, `docusaurus`\\n - [#9258](https://github.com/facebook/docusaurus/pull/9258) feat: Docusaurus v3 upgrades and require TypeScript 5 ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`\\n - [#9189](https://github.com/facebook/docusaurus/pull/9189) feat(blog-plugin): limit option for blog feedOptions ([@johnnyreilly](https://github.com/johnnyreilly))\\n- `create-docusaurus`, `docusaurus-tsconfig`\\n - [#9050](https://github.com/facebook/docusaurus/pull/9050) feat: create official TypeScript base config @docusaurus/tsconfig ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`, `docusaurus-mdx-loader`, `docusaurus-module-type-aliases`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-google-tag-manager`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-preset-classic`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-mermaid`, `docusaurus-theme-search-algolia`, `docusaurus-types`, `docusaurus`\\n - [#8961](https://github.com/facebook/docusaurus/pull/8961) feat: React 18 + automatic JSX runtime + build --dev ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`\\n - [#9026](https://github.com/facebook/docusaurus/pull/9026) chore: remove facebook template ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-content-blog`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-mermaid`, `docusaurus-types`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`\\n - [#8288](https://github.com/facebook/docusaurus/pull/8288) feat: upgrade to MDX v2 ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus`\\n - [#7966](https://github.com/facebook/docusaurus/pull/7966) fix(plugin-docs,theme): refactor docs plugin routes and component tree ([@slorber](https://github.com/slorber))\\n\\n## :rocket: New Feature\\n\\n- `create-docusaurus`, `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`\\n - [#9451](https://github.com/facebook/docusaurus/pull/9451) feat(mdx-loader): upgrade to MDX v3 ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`, `docusaurus-utils`\\n - [#9394](https://github.com/facebook/docusaurus/pull/9394) feat(mdx-loader): Remark plugin to report unused MDX / Markdown directives ([@OzakIOne](https://github.com/OzakIOne))\\n- `create-docusaurus`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-ideal-image`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`\\n - [#9317](https://github.com/facebook/docusaurus/pull/9317) feat(core): support TypeScript + ESM configuration ([@harryzcy](https://github.com/harryzcy))\\n- `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-mermaid`\\n - [#9305](https://github.com/facebook/docusaurus/pull/9305) feat(theme-mermaid): upgrade Mermaid to v10.4 - handle async rendering ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`\\n - [#9241](https://github.com/facebook/docusaurus/pull/9241) feat: support bun package manager in `create-docusaurus` ([@colinhacks](https://github.com/colinhacks))\\n- `docusaurus-plugin-content-blog`\\n - [#9189](https://github.com/facebook/docusaurus/pull/9189) feat(blog-plugin): limit option for blog feedOptions ([@johnnyreilly](https://github.com/johnnyreilly))\\n- `docusaurus-theme-classic`\\n - [#9152](https://github.com/facebook/docusaurus/pull/9152) feat(theme): add support for meta og locale and alternates ([@FlorinaPacurar](https://github.com/FlorinaPacurar))\\n - [#9028](https://github.com/facebook/docusaurus/pull/9028) feat(theme): add ability to inject data attributes from query-string - possibility to create an iframe/embed variant of a page ([@slorber](https://github.com/slorber))\\n - [#8915](https://github.com/facebook/docusaurus/pull/8915) feat(theme): add queryString option to localeDropdown ([@wceolin](https://github.com/wceolin))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-utils-validation`\\n - [#9171](https://github.com/facebook/docusaurus/pull/9171) feat(client-redirects-plugin): support fully qualified urls and querystring/hash in destination/to url ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#9102](https://github.com/facebook/docusaurus/pull/9102) feat(cli): deploy command should allow customizing git config user.name / user.email in deployment branch (#9101) ([@amdshrif](https://github.com/amdshrif))\\n- `docusaurus-mdx-loader`, `docusaurus-types`, `docusaurus`\\n - [#9097](https://github.com/facebook/docusaurus/pull/9097) feat(mdx): add siteConfig.markdown.format to configure the default content parser (MDX / CommonMark) ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`\\n - [#9071](https://github.com/facebook/docusaurus/pull/9071) feat(pages): add support for missing SEO front matter + improve SEO docs ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`, `docusaurus-tsconfig`\\n - [#9050](https://github.com/facebook/docusaurus/pull/9050) feat: create official TypeScript base config @docusaurus/tsconfig ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`, `docusaurus-mdx-loader`, `docusaurus-module-type-aliases`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-google-tag-manager`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-preset-classic`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-mermaid`, `docusaurus-theme-search-algolia`, `docusaurus-types`, `docusaurus`\\n - [#8961](https://github.com/facebook/docusaurus/pull/8961) feat: React 18 + automatic JSX runtime + build --dev ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-common`\\n - [#8982](https://github.com/facebook/docusaurus/pull/8982) feat(theme-common): code block MagicComments support for TeX/LaTeX/Matlab ([@jj-style](https://github.com/jj-style))\\n - [#8870](https://github.com/facebook/docusaurus/pull/8870) feat(theme-common): code block MagicComments support for Lua/Haskell -- and WebAssembly ;; ([@tarunrajput](https://github.com/tarunrajput))\\n- `create-docusaurus`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-content-blog`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-mermaid`, `docusaurus-types`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`\\n - [#8288](https://github.com/facebook/docusaurus/pull/8288) feat: upgrade to MDX v2 ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#8890](https://github.com/facebook/docusaurus/pull/8890) feat(theme): create more generic ThemedComponent util from ThemedImage ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`, `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`, `eslint-plugin`\\n - [#8384](https://github.com/facebook/docusaurus/pull/8384) feat(eslint-plugin): new prefer-docusaurus-heading rule ([@Devansu-Yadav](https://github.com/Devansu-Yadav))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`, `docusaurus`, `eslint-plugin`\\n - [#8156](https://github.com/facebook/docusaurus/pull/8156) feat: add eslint plugin no-html-links ([@JohnVicke](https://github.com/JohnVicke))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-translations`, `docusaurus-utils-validation`, `docusaurus-utils`\\n - [#8004](https://github.com/facebook/docusaurus/pull/8004) feat(docs,blog,pages): add support for \\"unlisted\\" front matter - hide md content in production ([@jodyheavener](https://github.com/jodyheavener))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-common`\\n - [#9446](https://github.com/facebook/docusaurus/pull/9446) fix(theme): fix useWindowSize React hydration issue ([@slorber](https://github.com/slorber))\\n - [#9276](https://github.com/facebook/docusaurus/pull/9276) fix(theme-common): remove useless useSyncExternalStore shim ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`\\n - [#9437](https://github.com/facebook/docusaurus/pull/9437) fix(plugin-blog): blog archive should hide unlisted blog posts ([@slorber](https://github.com/slorber))\\n - [#9151](https://github.com/facebook/docusaurus/pull/9151) fix(content-blog): links in feed should be absolute ([@VinceCYLiao](https://github.com/VinceCYLiao))\\n- `docusaurus`\\n - [#9387](https://github.com/facebook/docusaurus/pull/9387) fix(core): log missing errorInfo in React 18 onRecoverableError callback ([@johnnyreilly](https://github.com/johnnyreilly))\\n - [#9309](https://github.com/facebook/docusaurus/pull/9309) fix(cli): disable vertical borders of the update notification ([@qwerzl](https://github.com/qwerzl))\\n - [#9112](https://github.com/facebook/docusaurus/pull/9112) fix(core): throw error if build folder already exists on initial clean ([@thedevwonder](https://github.com/thedevwonder))\\n - [#9006](https://github.com/facebook/docusaurus/pull/9006) fix(core): docusaurus CLI should detect the correct yarn version when suggesting upgrades ([@0420syj](https://github.com/0420syj))\\n - [#7951](https://github.com/facebook/docusaurus/pull/7951) fix(core): make webpack HMR always listen to current location ([@jeengbe](https://github.com/jeengbe))\\n- `docusaurus-mdx-loader`\\n - [#9386](https://github.com/facebook/docusaurus/pull/9386) fix(mdx-loader): get correct error line numbers, handle front matter + contentTitle with remark ([@slorber](https://github.com/slorber))\\n - [#9262](https://github.com/facebook/docusaurus/pull/9262) fix(mdx-loader): improve mdxJsxTextElementToHtml ([@slorber](https://github.com/slorber))\\n - [#9202](https://github.com/facebook/docusaurus/pull/9202) fix(mdx-loader): ensure heading anchor slugs respect GitHub emoji behavior ([@yosukekato165](https://github.com/yosukekato165))\\n - [#9100](https://github.com/facebook/docusaurus/pull/9100) fix(mdx): fix for html multi-line comments ([@slorber](https://github.com/slorber))\\n - [#9091](https://github.com/facebook/docusaurus/pull/9091) fix(mdx-loader): loader error message should display stacktrace if no extra MDX details ([@slorber](https://github.com/slorber))\\n - [#8960](https://github.com/facebook/docusaurus/pull/8960) fix: allow html syntax in MDX v2 with format md ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#9385](https://github.com/facebook/docusaurus/pull/9385) fix(theme): avoid rendering empty search container if site has no search plugin ([@slorber](https://github.com/slorber))\\n - [#9183](https://github.com/facebook/docusaurus/pull/9183) fix(theme): make Prism code block language / additionalLanguages case insensitive ([@heysujal](https://github.com/heysujal))\\n - [#9216](https://github.com/facebook/docusaurus/pull/9216) fix(theme): fix typo in swizzle component config ([@sixhobbits](https://github.com/sixhobbits))\\n - [#9093](https://github.com/facebook/docusaurus/pull/9093) fix(theme): support details/summary in CommonMark + add md dogfood test cases ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`, `docusaurus-utils`\\n - [#9369](https://github.com/facebook/docusaurus/pull/9369) fix(mdx-loader): prevent Open Graph images from being inserted as base64 ([@Zwyx](https://github.com/Zwyx))\\n- `docusaurus-theme-translations`\\n - [#9362](https://github.com/facebook/docusaurus/pull/9362) fix(theme-translations): add Japanese translation for \\"warning\\" ([@tats-u](https://github.com/tats-u))\\n - [#9321](https://github.com/facebook/docusaurus/pull/9321) fix(theme-translations): add missing zh-Hans messages ([@chudongvip](https://github.com/chudongvip))\\n - [#9338](https://github.com/facebook/docusaurus/pull/9338) fix(theme-translations): complete and fix hungarian translations ([@la55u](https://github.com/la55u))\\n - [#9292](https://github.com/facebook/docusaurus/pull/9292) fix(theme-translations): add missing Spanish theme translations ([@Villanuevand](https://github.com/Villanuevand))\\n - [#9021](https://github.com/facebook/docusaurus/pull/9021) fix(theme-transalations): fix Swedish translation of \\"last updated\\" ([@gazab](https://github.com/gazab))\\n- `docusaurus-theme-classic`, `docusaurus-theme-translations`\\n - [#9308](https://github.com/facebook/docusaurus/pull/9308) fix(theme): make warning a first-class admonition, and deprecate caution admonition ([@slorber](https://github.com/slorber))\\n - [#9269](https://github.com/facebook/docusaurus/pull/9269) fix(theme): improve docs sidebar category caret aria-label accessibility ([@pinakipb2](https://github.com/pinakipb2))\\n- Other\\n - [#9260](https://github.com/facebook/docusaurus/pull/9260) fix(website): fix showcase search input ([@biplavmz](https://github.com/biplavmz))\\n - [#8193](https://github.com/facebook/docusaurus/pull/8193) fix(website): mobile scroll on homepage announcement ([@maliMirkec](https://github.com/maliMirkec))\\n - [#8042](https://github.com/facebook/docusaurus/pull/8042) fix(website): fix blog post social card ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`\\n - [#9217](https://github.com/facebook/docusaurus/pull/9217) fix(create-docusaurus): increase Browserslist support query in dev ([@slorber](https://github.com/slorber))\\n- `docusaurus-utils`, `docusaurus`\\n - [#9160](https://github.com/facebook/docusaurus/pull/9160) fix(core): handle single quotes inside file paths ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-debug`\\n - [#9116](https://github.com/facebook/docusaurus/pull/9116) fix(debug-plugin): upgrade react-json-view to maintained React-18 compatible fork ([@slorber](https://github.com/slorber))\\n- `docusaurus-utils`\\n - [#9046](https://github.com/facebook/docusaurus/pull/9046) fix(utils): better handling of code blocks in link replacement ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#8927](https://github.com/facebook/docusaurus/pull/8927) fix(utils): make Markdown link replacement much more rigorous ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7864](https://github.com/facebook/docusaurus/pull/7864) fix(utils): always match exclusion root dirs as complete folder paths ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7801](https://github.com/facebook/docusaurus/pull/7801) fix(utils): recognize ~~~ as code fences in link replacement ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-pwa`, `docusaurus`\\n - [#8872](https://github.com/facebook/docusaurus/pull/8872) fix(core): better error logging on SSR/dev failures + log stacktraces and error causes ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-utils-validation`, `docusaurus`\\n - [#8258](https://github.com/facebook/docusaurus/pull/8258) fix(docusaurus-utils-validation): baseUrl + routeBasePath: allow empty string, normalized as \\"/\\" ([@Djunnni](https://github.com/Djunnni))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#8319](https://github.com/facebook/docusaurus/pull/8319) fix(docs,theme): auto-generated category index should not display unlisted content ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`\\n - [#8015](https://github.com/facebook/docusaurus/pull/8015) fix(live-codeblock): add error boundary to live code preview ([@rashidmya](https://github.com/rashidmya))\\n- `docusaurus-mdx-loader`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-utils-validation`, `docusaurus`\\n - [#7945](https://github.com/facebook/docusaurus/pull/7945) refactor(theme): split admonitions, make swizzle easier, better retrocompatibility ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus`\\n - [#7966](https://github.com/facebook/docusaurus/pull/7966) fix(plugin-docs,theme): refactor docs plugin routes and component tree ([@slorber](https://github.com/slorber))\\n\\n## :running: Performance\\n\\n- `docusaurus`\\n - [#9051](https://github.com/facebook/docusaurus/pull/9051) perf(core): use React 18 startTransition for hydration ([@sanjaiyan-dev](https://github.com/sanjaiyan-dev))\\n - [#8081](https://github.com/facebook/docusaurus/pull/8081) perf(core): move scripts to document head + defer ([@sanjaiyan-dev](https://github.com/sanjaiyan-dev))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus`\\n - [#8972](https://github.com/facebook/docusaurus/pull/8972) fix: remove useless js-loader in front of mdx-loader ([@slorber](https://github.com/slorber))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#9438](https://github.com/facebook/docusaurus/pull/9438) refactor(blog-plugin): blog archive reverse ordering of posts ([@slorber](https://github.com/slorber))\\n - [#9184](https://github.com/facebook/docusaurus/pull/9184) fix(theme): change schema.org itemType prop urls from http to https ([@thedevwonder](https://github.com/thedevwonder))\\n- `docusaurus`\\n - [#9381](https://github.com/facebook/docusaurus/pull/9381) feat(core): throw error when official docusaurus dependencies use different versions ([@JorensM](https://github.com/JorensM))\\n- `docusaurus-theme-translations`\\n - [#9302](https://github.com/facebook/docusaurus/pull/9302) chore(theme-translations): complete zh-Hant translations ([@qwerzl](https://github.com/qwerzl))\\n - [#9025](https://github.com/facebook/docusaurus/pull/9025) chore(theme-translations): complete it translations ([@bitpredator](https://github.com/bitpredator))\\n- `create-docusaurus`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus`\\n - [#9133](https://github.com/facebook/docusaurus/pull/9133) fix(init): change initial site URL to one that is safe for the future ([@tats-u](https://github.com/tats-u))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#8150](https://github.com/facebook/docusaurus/pull/8150) fix(theme-classic): polish admonition details, render title-only admonitions ([@attitude](https://github.com/attitude))\\n- `docusaurus-plugin-google-gtag`\\n - [#8143](https://github.com/facebook/docusaurus/pull/8143) refactor(plugin-gtag): update gtag plugin to modern SPA recommendations ([@lanegoolsby](https://github.com/lanegoolsby))\\n- `docusaurus-mdx-loader`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-utils-validation`, `docusaurus`\\n - [#7945](https://github.com/facebook/docusaurus/pull/7945) refactor(theme): split admonitions, make swizzle easier, better retrocompatibility ([@slorber](https://github.com/slorber))\\n\\n## :memo: Documentation\\n\\n- Other\\n - [#9452](https://github.com/facebook/docusaurus/pull/9452) docs: v3 upgrade guide should mention MDX v1 compat options ([@slorber](https://github.com/slorber))\\n - [#9430](https://github.com/facebook/docusaurus/pull/9430) docs: update Kinsta deployment documentation ([@palmiak](https://github.com/palmiak))\\n - [#9417](https://github.com/facebook/docusaurus/pull/9417) docs: add Docusaurus v3.0 upgrade guide ([@slorber](https://github.com/slorber))\\n - [#9396](https://github.com/facebook/docusaurus/pull/9396) docs: fix typos in website/docs/i18n/i18n-git.mdx ([@suravshrestha](https://github.com/suravshrestha))\\n - [#9397](https://github.com/facebook/docusaurus/pull/9397) docs: fix typos in website/docs/migration/migration-manual.mdx ([@suravshrestha](https://github.com/suravshrestha))\\n - [#9388](https://github.com/facebook/docusaurus/pull/9388) docs: fix algolia crowler config template link for v3 ([@slorber](https://github.com/slorber))\\n - [#9377](https://github.com/facebook/docusaurus/pull/9377) docs(deployment): add permissions config to github action file in v2.4.3 ([@chillinPanda](https://github.com/chillinPanda))\\n - [#9333](https://github.com/facebook/docusaurus/pull/9333) docs: \\"Preparing your site for Docusaurus v3\\" blog post ([@slorber](https://github.com/slorber))\\n - [#9330](https://github.com/facebook/docusaurus/pull/9330) docs: \\"Upgrading frontend dependencies with confidence\\" blog post ([@slorber](https://github.com/slorber))\\n - [#9288](https://github.com/facebook/docusaurus/pull/9288) docs: fix bad link for create doc ([@forresst](https://github.com/forresst))\\n - [#9267](https://github.com/facebook/docusaurus/pull/9267) docs: fix typo in docs-introduction ([@HyeokjinKang](https://github.com/HyeokjinKang))\\n - [#9247](https://github.com/facebook/docusaurus/pull/9247) docs: Reword comparison between React authoring and CSS authoring ([@hidde](https://github.com/hidde))\\n - [#9223](https://github.com/facebook/docusaurus/pull/9223) docs: fix grammatical error, rewrite sentence to make clearer ([@thatrobotdev](https://github.com/thatrobotdev))\\n - [#9233](https://github.com/facebook/docusaurus/pull/9233) docs(website): Add a \\"clearAll\\" Feature to site showcase ([@biplavmz](https://github.com/biplavmz))\\n - [#9180](https://github.com/facebook/docusaurus/pull/9180) docs: remove \'import type\' declaration in javascript snippet ([@oluwatobiss](https://github.com/oluwatobiss))\\n - [#9177](https://github.com/facebook/docusaurus/pull/9177) docs: improve the opening sentence\'s clarity ([@oluwatobiss](https://github.com/oluwatobiss))\\n - [#9149](https://github.com/facebook/docusaurus/pull/9149) docs: improve yarn deps upgrade command ([@webbertakken](https://github.com/webbertakken))\\n - [#9139](https://github.com/facebook/docusaurus/pull/9139) docs: add Flightcontrol as a deployment option ([@ModupeD](https://github.com/ModupeD))\\n - [#9082](https://github.com/facebook/docusaurus/pull/9082) docs: fix themeConfig.prism.defaultLanguage table api ref docs ([@razzeee](https://github.com/razzeee))\\n - [#9074](https://github.com/facebook/docusaurus/pull/9074) docs: fix filenames in docs/swizzling.mdx ([@shwaka](https://github.com/shwaka))\\n - [#9065](https://github.com/facebook/docusaurus/pull/9065) docs: update link for commonly used languages ([@heysujal](https://github.com/heysujal))\\n - [#9055](https://github.com/facebook/docusaurus/pull/9055) docs: update outdated links in showcase ([@manuel-rw](https://github.com/manuel-rw))\\n - [#9063](https://github.com/facebook/docusaurus/pull/9063) docs: add @markprompt/docusaurus-theme-search ([@schneegansm](https://github.com/schneegansm))\\n - [#9033](https://github.com/facebook/docusaurus/pull/9033) docs: update info for community plugin docusaurus2-graphql-doc-generator ([@edno](https://github.com/edno))\\n - [#9044](https://github.com/facebook/docusaurus/pull/9044) docs: fix prism theme broken link in code blocks docs ([@adithyaakrishna](https://github.com/adithyaakrishna))\\n - [#9043](https://github.com/facebook/docusaurus/pull/9043) docs: fix grammar typo in swizzling.mdx ([@adampatterson](https://github.com/adampatterson))\\n - [#9018](https://github.com/facebook/docusaurus/pull/9018) docs: fix link to rehype ([@Mogyuchi](https://github.com/Mogyuchi))\\n - [#8993](https://github.com/facebook/docusaurus/pull/8993) docs: fix broken link in code blocks docs ([@NamanGarg2075](https://github.com/NamanGarg2075))\\n - [#8975](https://github.com/facebook/docusaurus/pull/8975) docs: update link in md code blocks section ([@rbarbazz](https://github.com/rbarbazz))\\n - [#8976](https://github.com/facebook/docusaurus/pull/8976) docs: update broken links theme configuration page ([@rbarbazz](https://github.com/rbarbazz))\\n - [#8904](https://github.com/facebook/docusaurus/pull/8904) docs: fix broken link to Prism includeLangs.js default list of languages ([@conlacda](https://github.com/conlacda))\\n - [#8951](https://github.com/facebook/docusaurus/pull/8951) docs: mention equivalent config syntaxes ([@thadguidry](https://github.com/thadguidry))\\n - [#8950](https://github.com/facebook/docusaurus/pull/8950) docs: bidirectional link between api config and guide config ([@thadguidry](https://github.com/thadguidry))\\n - [#8953](https://github.com/facebook/docusaurus/pull/8953) docs: mention blog truncating marker edge case ([@allyw2002](https://github.com/allyw2002))\\n - [#8941](https://github.com/facebook/docusaurus/pull/8941) docs: rewrite some docs for mdx v2 ([@slorber](https://github.com/slorber))\\n - [#8943](https://github.com/facebook/docusaurus/pull/8943) docs: mention docusaurus.community site in resources ([@thadguidry](https://github.com/thadguidry))\\n - [#8920](https://github.com/facebook/docusaurus/pull/8920) docs: mdx-js is using v2 for next edition ([@jhcao23](https://github.com/jhcao23))\\n - [#8888](https://github.com/facebook/docusaurus/pull/8888) docs: improve sidebar items custom props docs ([@slorber](https://github.com/slorber))\\n - [#8877](https://github.com/facebook/docusaurus/pull/8877) docs: add \\"permissions.content: write\\" to GH workflow examples ([@e-minguez](https://github.com/e-minguez))\\n - [#8845](https://github.com/facebook/docusaurus/pull/8845) docs: add description on blog post file/folder naming conventions and date extraction patterns ([@rojakcoder](https://github.com/rojakcoder))\\n - [#8865](https://github.com/facebook/docusaurus/pull/8865) docs: correct small grammar error ([@werner33](https://github.com/werner33))\\n - [#8830](https://github.com/facebook/docusaurus/pull/8830) docs: link to mermaid config types ([@PaulRBerg](https://github.com/PaulRBerg))\\n - [#8804](https://github.com/facebook/docusaurus/pull/8804) docs: update suggestion for OSS meta projects ([@antonk52](https://github.com/antonk52))\\n - [#8788](https://github.com/facebook/docusaurus/pull/8788) docs: remove problematic mdx2 anchor id docs for MDX 2 migration ([@slorber](https://github.com/slorber))\\n - [#8780](https://github.com/facebook/docusaurus/pull/8780) docs: fix localhost url without link ([@slorber](https://github.com/slorber))\\n - [#8779](https://github.com/facebook/docusaurus/pull/8779) docs: v2 docs should discourage the usage of a lower-case MDX component (will not work in v3) ([@slorber](https://github.com/slorber))\\n - [#8761](https://github.com/facebook/docusaurus/pull/8761) docs: add mention that themeConfig.footer.copyright supports html strings ([@fxpby](https://github.com/fxpby))\\n - [#8723](https://github.com/facebook/docusaurus/pull/8723) docs: add TypeScript playgrounds to docusaurus.new + Playground page ([@slorber](https://github.com/slorber))\\n - [#8709](https://github.com/facebook/docusaurus/pull/8709) docs: add dark mode version of BrowserStack logo ([@fredrikstave](https://github.com/fredrikstave))\\n - [#8642](https://github.com/facebook/docusaurus/pull/8642) docs: clarify query string behavior ([@homotechsual](https://github.com/homotechsual))\\n - [#8576](https://github.com/facebook/docusaurus/pull/8576) docs(playground): use CodeSandbox cloud sandboxes ([@danilowoz](https://github.com/danilowoz))\\n - [#8543](https://github.com/facebook/docusaurus/pull/8543) docs: add link to pluralization docs ([@homotechsual](https://github.com/homotechsual))\\n - [#8556](https://github.com/facebook/docusaurus/pull/8556) docs: document plugin-content-pages wrapperClassName frontmatter. ([@homotechsual](https://github.com/homotechsual))\\n - [#8548](https://github.com/facebook/docusaurus/pull/8548) docs: fix typo \'validationOptions\' ([@gracefullight](https://github.com/gracefullight))\\n - [#8509](https://github.com/facebook/docusaurus/pull/8509) docs(website): fix broken external links wrongly modified to use the .mdx extension (ex: github README.mdx) ([@Kesyau](https://github.com/Kesyau))\\n - [#8507](https://github.com/facebook/docusaurus/pull/8507) docs: blog + community + dogfood docs should use .mdx extension ([@slorber](https://github.com/slorber))\\n - [#8490](https://github.com/facebook/docusaurus/pull/8490) docs(website): use .mdx extension for every docs ([@slorber](https://github.com/slorber))\\n - [#8484](https://github.com/facebook/docusaurus/pull/8484) docs: `plugin-content-sitemap` -> `plugin-sitemap` ([@chubei](https://github.com/chubei))\\n - [#8454](https://github.com/facebook/docusaurus/pull/8454) fix(docs): Update link for tooljet website(broken) ([@shawshankkumar](https://github.com/shawshankkumar))\\n - [#8443](https://github.com/facebook/docusaurus/pull/8443) docs: fix website home testimonials broken image URLs ([@abhinandanwadwa](https://github.com/abhinandanwadwa))\\n - [#8438](https://github.com/facebook/docusaurus/pull/8438) docs: add hyperlink to swizzling in Search page ([@dandv](https://github.com/dandv))\\n - [#8431](https://github.com/facebook/docusaurus/pull/8431) docs: add diagrams page to 2.2.0 sidebar ([@homotechsual](https://github.com/homotechsual))\\n - [#8307](https://github.com/facebook/docusaurus/pull/8307) docs: clarify additionalLanguages with custom language definitions. ([@homotechsual](https://github.com/homotechsual))\\n - [#8390](https://github.com/facebook/docusaurus/pull/8390) docs: changed actions/checkout version from 2 to 3 ([@cm-igarashi-ryosuke](https://github.com/cm-igarashi-ryosuke))\\n - [#8262](https://github.com/facebook/docusaurus/pull/8262) docs: fix links to external plugin description ([@scubamaggo](https://github.com/scubamaggo))\\n - [#8375](https://github.com/facebook/docusaurus/pull/8375) docs: add Kinsta to deployment page ([@palmiak](https://github.com/palmiak))\\n - [#8417](https://github.com/facebook/docusaurus/pull/8417) docs: document theme-mermaid in API sidebar ([@homotechsual](https://github.com/homotechsual))\\n - [#8392](https://github.com/facebook/docusaurus/pull/8392) docs: add i18n guide doc should link to i18n core config doc ([@mcallisto](https://github.com/mcallisto))\\n - [#8388](https://github.com/facebook/docusaurus/pull/8388) docs: point to where commit types are listed ([@dandv](https://github.com/dandv))\\n - [#8352](https://github.com/facebook/docusaurus/pull/8352) docs: actually demo the zero-width space workaround in MDX ([@waldyrious](https://github.com/waldyrious))\\n - [#8363](https://github.com/facebook/docusaurus/pull/8363) docs: fix unclosed admonition code block ([@Zwyx](https://github.com/Zwyx))\\n - [#8364](https://github.com/facebook/docusaurus/pull/8364) docs: autogenerated page comment does not matching dirName in examples ([@HumbleDeer](https://github.com/HumbleDeer))\\n - [#8359](https://github.com/facebook/docusaurus/pull/8359) docs: fix anchor link `#customFields` ([@Zwyx](https://github.com/Zwyx))\\n - [#8320](https://github.com/facebook/docusaurus/pull/8320) docs: remove blog.johnnyreilly.com Google Analytics tag from docs part 2 ([@johnnyreilly](https://github.com/johnnyreilly))\\n - [#8335](https://github.com/facebook/docusaurus/pull/8335) docs: use Mermaid diagram for routing page ([@Mysterious-Dev](https://github.com/Mysterious-Dev))\\n - [#8313](https://github.com/facebook/docusaurus/pull/8313) docs: link to migration guide from Blogger to Docusaurus / remove blog.johnnyreilly.com Google Analytics tag from docs ([@johnnyreilly](https://github.com/johnnyreilly))\\n - [#8292](https://github.com/facebook/docusaurus/pull/8292) docs: document tag types for insertHtmlContent ([@homotechsual](https://github.com/homotechsual))\\n - [#8272](https://github.com/facebook/docusaurus/pull/8272) docs: fix mermaid theme options typo ([@ntucker](https://github.com/ntucker))\\n - [#8209](https://github.com/facebook/docusaurus/pull/8209) docs: removing community resource docusaurus-plugin-relative-paths ([@ShahriarKh](https://github.com/ShahriarKh))\\n - [#8146](https://github.com/facebook/docusaurus/pull/8146) docs(content-docs): add api doc for displayed_sidebar front matter ([@slorber](https://github.com/slorber))\\n - [#8115](https://github.com/facebook/docusaurus/pull/8115) docs: add caveat about using Translate in string contexts ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#8053](https://github.com/facebook/docusaurus/pull/8053) docs: document usage of docs `frontMatter.custom_edit_url: null` ([@homotechsual](https://github.com/homotechsual))\\n - [#8010](https://github.com/facebook/docusaurus/pull/8010) docs(showcase): add 74 new showcase sites ([@slorber](https://github.com/slorber))\\n - [#7955](https://github.com/facebook/docusaurus/pull/7955) docs: add docusaurus-post-generator to community resource list ([@moojing](https://github.com/moojing))\\n - [#7906](https://github.com/facebook/docusaurus/pull/7906) docs: add TOC heading level options to guide ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7884](https://github.com/facebook/docusaurus/pull/7884) docs: add baseUrl to example tsconfig ([@Foosballfan](https://github.com/Foosballfan))\\n - [#7835](https://github.com/facebook/docusaurus/pull/7835) docs: update workbox doc link ([@hslee2008](https://github.com/hslee2008))\\n - [#7799](https://github.com/facebook/docusaurus/pull/7799) docs: formally document how admonitions can be customized ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7796](https://github.com/facebook/docusaurus/pull/7796) docs: modify the description of deploying to Netlify ([@Oreoxmt](https://github.com/Oreoxmt))\\n- `docusaurus-logger`\\n - [#9210](https://github.com/facebook/docusaurus/pull/9210) docs: add the missing import logger statement ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#8047](https://github.com/facebook/docusaurus/pull/8047) docs: improve alt messages ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`\\n - [#8944](https://github.com/facebook/docusaurus/pull/8944) polish(create-docusaurus): add comment in config to mention different ways to declare config + doc link ([@thadguidry](https://github.com/thadguidry))\\n - [#8323](https://github.com/facebook/docusaurus/pull/8323) docs: fix typo \'internalization\' ([@dandv](https://github.com/dandv))\\n- `docusaurus-plugin-ideal-image`\\n - [#8630](https://github.com/facebook/docusaurus/pull/8630) docs: normalize README for ideal-image plugin ([@Mysterious-Dev](https://github.com/Mysterious-Dev))\\n- `docusaurus-mdx-loader`\\n - [#8419](https://github.com/facebook/docusaurus/pull/8419) docs: document siteConfig.markdown + better mdx-loader retrocompat ([@slorber](https://github.com/slorber))\\n\\n## :robot: Dependencies\\n\\n- Other\\n - [#9440](https://github.com/facebook/docusaurus/pull/9440) chore(deps): bump actions/setup-node from 3 to 4 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#9441](https://github.com/facebook/docusaurus/pull/9441) chore(deps): bump actions/checkout from 4.1.0 to 4.1.1 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#9367](https://github.com/facebook/docusaurus/pull/9367) chore(deps): bump postcss from 8.4.26 to 8.4.31 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#9344](https://github.com/facebook/docusaurus/pull/9344) chore(deps): bump actions/checkout from 4.0.0 to 4.1.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#9298](https://github.com/facebook/docusaurus/pull/9298) chore(deps): bump actions/dependency-review-action from 3.0.8 to 3.1.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#9277](https://github.com/facebook/docusaurus/pull/9277) chore(deps): bump actions/checkout from 3 to 4 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#9251](https://github.com/facebook/docusaurus/pull/9251) chore(deps): bump actions/dependency-review-action from 3.0.7 to 3.0.8 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#9250](https://github.com/facebook/docusaurus/pull/9250) chore(deps): bump marocchino/sticky-pull-request-comment from 2.7.0 to 2.8.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#9227](https://github.com/facebook/docusaurus/pull/9227) chore(deps): bump actions/dependency-review-action from 3.0.6 to 3.0.7 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#9174](https://github.com/facebook/docusaurus/pull/9174) chore(deps): bump marocchino/sticky-pull-request-comment from 2.6.2 to 2.7.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#9096](https://github.com/facebook/docusaurus/pull/9096) chore(deps): bump semver from 7.3.8 to 7.5.2 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#9061](https://github.com/facebook/docusaurus/pull/9061) chore(deps): bump github/codeql-action from 2.3.6 to 2.13.4 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#9038](https://github.com/facebook/docusaurus/pull/9038) chore(deps): bump github/codeql-action from 2.3.5 to 2.3.6 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#9039](https://github.com/facebook/docusaurus/pull/9039) chore(deps): bump actions/dependency-review-action from 3.0.4 to 3.0.6 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#9019](https://github.com/facebook/docusaurus/pull/9019) chore(deps): bump github/codeql-action from 2.3.3 to 2.3.5 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8964](https://github.com/facebook/docusaurus/pull/8964) chore(deps): bump github/codeql-action from 2.3.2 to 2.3.3 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8955](https://github.com/facebook/docusaurus/pull/8955) chore(deps): bump github/codeql-action from 2.3.0 to 2.3.2 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8922](https://github.com/facebook/docusaurus/pull/8922) chore(deps): bump marocchino/sticky-pull-request-comment from 2.5.0 to 2.6.2 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8923](https://github.com/facebook/docusaurus/pull/8923) chore(deps): bump treosh/lighthouse-ci-action from 9.6.8 to 10.1.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8924](https://github.com/facebook/docusaurus/pull/8924) chore(deps): bump github/codeql-action from 2.2.12 to 2.3.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8899](https://github.com/facebook/docusaurus/pull/8899) chore(deps): bump github/codeql-action from 2.2.11 to 2.2.12 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8900](https://github.com/facebook/docusaurus/pull/8900) chore(deps): bump actions/checkout from 3.5.0 to 3.5.2 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8879](https://github.com/facebook/docusaurus/pull/8879) chore(deps): bump actions/github-script from 6.4.0 to 6.4.1 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8878](https://github.com/facebook/docusaurus/pull/8878) chore(deps): bump github/codeql-action from 2.2.9 to 2.2.11 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8836](https://github.com/facebook/docusaurus/pull/8836) chore(deps): bump github/codeql-action from 2.2.7 to 2.2.9 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8837](https://github.com/facebook/docusaurus/pull/8837) chore(deps): bump actions/checkout from 3.4.0 to 3.5.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8797](https://github.com/facebook/docusaurus/pull/8797) chore(deps): bump actions/checkout from 3.3.0 to 3.4.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8796](https://github.com/facebook/docusaurus/pull/8796) chore(deps): bump actions/dependency-review-action from 3.0.3 to 3.0.4 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8795](https://github.com/facebook/docusaurus/pull/8795) chore(deps): bump github/codeql-action from 2.2.6 to 2.2.7 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8766](https://github.com/facebook/docusaurus/pull/8766) chore(deps): bump treosh/lighthouse-ci-action from 9.3.1 to 9.6.8 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8767](https://github.com/facebook/docusaurus/pull/8767) chore(deps): bump github/codeql-action from 2.2.5 to 2.2.6 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8739](https://github.com/facebook/docusaurus/pull/8739) chore(deps): bump github/codeql-action from 2.2.4 to 2.2.5 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8663](https://github.com/facebook/docusaurus/pull/8663) chore(deps): bump marocchino/sticky-pull-request-comment from 2.3.1 to 2.5.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8662](https://github.com/facebook/docusaurus/pull/8662) chore(deps): bump github/codeql-action from 2.2.2 to 2.2.4 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8638](https://github.com/facebook/docusaurus/pull/8638) chore(deps): bump github/codeql-action from 2.2.1 to 2.2.2 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8624](https://github.com/facebook/docusaurus/pull/8624) chore(deps): bump http-cache-semantics from 4.1.0 to 4.1.1 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8604](https://github.com/facebook/docusaurus/pull/8604) chore(deps): bump actions/github-script from 6.3.3 to 6.4.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8605](https://github.com/facebook/docusaurus/pull/8605) chore(deps): bump github/codeql-action from 2.1.39 to 2.2.1 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8572](https://github.com/facebook/docusaurus/pull/8572) chore(deps): bump github/codeql-action from 2.1.38 to 2.1.39 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8553](https://github.com/facebook/docusaurus/pull/8553) chore(deps): bump github/codeql-action from 2.1.37 to 2.1.38 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8531](https://github.com/facebook/docusaurus/pull/8531) chore(deps): bump actions/checkout from 3.2.0 to 3.3.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8532](https://github.com/facebook/docusaurus/pull/8532) chore(deps): bump actions/dependency-review-action from 3.0.2 to 3.0.3 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8533](https://github.com/facebook/docusaurus/pull/8533) chore(deps): bump actions/setup-node from 3.5.1 to 3.6.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8496](https://github.com/facebook/docusaurus/pull/8496) chore(deps): bump jakepartusch/wait-for-netlify-action from 1.3 to 1.4 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8464](https://github.com/facebook/docusaurus/pull/8464) chore(deps): bump actions/dependency-review-action from 3.0.1 to 3.0.2 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8440](https://github.com/facebook/docusaurus/pull/8440) chore(deps): bump github/codeql-action from 2.1.36 to 2.1.37 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8435](https://github.com/facebook/docusaurus/pull/8435) chore(deps): bump github/codeql-action from 2.1.35 to 2.1.36 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8434](https://github.com/facebook/docusaurus/pull/8434) chore(deps): bump actions/checkout from 3.1.0 to 3.2.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8412](https://github.com/facebook/docusaurus/pull/8412) chore(deps): bump github/codeql-action from 2.1.32 to 2.1.35 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8385](https://github.com/facebook/docusaurus/pull/8385) chore(deps): bump marocchino/sticky-pull-request-comment from 2.3.0 to 2.3.1 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8360](https://github.com/facebook/docusaurus/pull/8360) chore(deps): bump actions/dependency-review-action from 3.0.0 to 3.0.1 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8341](https://github.com/facebook/docusaurus/pull/8341) chore(deps): bump github/codeql-action from 2.1.31 to 2.1.32 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8340](https://github.com/facebook/docusaurus/pull/8340) chore(deps): bump actions/dependency-review-action from 2.5.1 to 3.0.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8339](https://github.com/facebook/docusaurus/pull/8339) chore(deps): bump treosh/lighthouse-ci-action from 9.3.0 to 9.3.1 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8295](https://github.com/facebook/docusaurus/pull/8295) chore(deps): bump github/codeql-action from 2.1.29 to 2.1.31 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8271](https://github.com/facebook/docusaurus/pull/8271) chore(deps): bump github/codeql-action from 2.1.28 to 2.1.29 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8270](https://github.com/facebook/docusaurus/pull/8270) chore(deps): bump marocchino/sticky-pull-request-comment from 2.2.1 to 2.3.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8240](https://github.com/facebook/docusaurus/pull/8240) chore(deps): bump actions/dependency-review-action from 2.5.0 to 2.5.1 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8241](https://github.com/facebook/docusaurus/pull/8241) chore(deps): bump github/codeql-action from 2.1.27 to 2.1.28 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8221](https://github.com/facebook/docusaurus/pull/8221) chore(deps): bump marocchino/sticky-pull-request-comment from 2.2.0 to 2.2.1 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8220](https://github.com/facebook/docusaurus/pull/8220) chore(deps): bump actions/dependency-review-action from 2.4.0 to 2.5.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8219](https://github.com/facebook/docusaurus/pull/8219) chore(deps): bump actions/github-script from 6.3.1 to 6.3.3 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8222](https://github.com/facebook/docusaurus/pull/8222) chore(deps): bump actions/setup-node from 3.5.0 to 3.5.1 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8200](https://github.com/facebook/docusaurus/pull/8200) chore(deps): bump github/codeql-action from 2.1.26 to 2.1.27 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8199](https://github.com/facebook/docusaurus/pull/8199) chore(deps): bump actions/checkout from 3.0.2 to 3.1.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8169](https://github.com/facebook/docusaurus/pull/8169) chore(deps): bump github/codeql-action from 2.1.22 to 2.1.26 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8170](https://github.com/facebook/docusaurus/pull/8170) chore(deps): bump actions/setup-node from 3.4.1 to 3.5.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8167](https://github.com/facebook/docusaurus/pull/8167) chore(deps): bump actions/github-script from 6.2.0 to 6.3.1 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8168](https://github.com/facebook/docusaurus/pull/8168) chore(deps): bump actions/dependency-review-action from 2.1.0 to 2.4.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8064](https://github.com/facebook/docusaurus/pull/8064) chore: bump react-medium-image-zoom ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#8051](https://github.com/facebook/docusaurus/pull/8051) chore(deps): bump github/codeql-action from 2.1.21 to 2.1.22 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8019](https://github.com/facebook/docusaurus/pull/8019) chore(deps): bump actions/github-script from 6.1.1 to 6.2.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#8020](https://github.com/facebook/docusaurus/pull/8020) chore(deps): bump github/codeql-action from 2.1.20 to 2.1.21 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#7988](https://github.com/facebook/docusaurus/pull/7988) chore(deps): bump actions/dependency-review-action from 2.0.4 to 2.1.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#7987](https://github.com/facebook/docusaurus/pull/7987) chore(deps): bump github/codeql-action from 2.1.18 to 2.1.20 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#7957](https://github.com/facebook/docusaurus/pull/7957) chore(deps): bump actions/github-script from 6.1.0 to 6.1.1 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#7925](https://github.com/facebook/docusaurus/pull/7925) chore(deps): bump github/codeql-action from 2.1.17 to 2.1.18 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#7879](https://github.com/facebook/docusaurus/pull/7879) chore(deps): bump github/codeql-action from 2.1.16 to 2.1.17 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#7804](https://github.com/facebook/docusaurus/pull/7804) chore(deps): bump github/codeql-action from 2.1.15 to 2.1.16 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#7805](https://github.com/facebook/docusaurus/pull/7805) chore(deps): bump actions/dependency-review-action from 2.0.2 to 2.0.4 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#7806](https://github.com/facebook/docusaurus/pull/7806) chore(deps): bump actions/setup-node from 3.4.0 to 3.4.1 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n- `create-docusaurus`, `docusaurus-cssnano-preset`, `docusaurus-logger`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-google-tag-manager`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-mermaid`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`, `docusaurus-types`, `docusaurus-utils-common`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `eslint-plugin`, `lqip-loader`, `stylelint-copyright`\\n - [#9148](https://github.com/facebook/docusaurus/pull/9148) chore: upgrade dependencies (non-major) ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#8749](https://github.com/facebook/docusaurus/pull/8749) chore: upgrade dependencies (non-major) ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#8534](https://github.com/facebook/docusaurus/pull/8534) chore: upgrade dependencies ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`\\n - [#8926](https://github.com/facebook/docusaurus/pull/8926) chore: upgrade TypeScript to v5.0 ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`, `docusaurus-utils`, `docusaurus`\\n - [#8537](https://github.com/facebook/docusaurus/pull/8537) chore: bump dependencies major versions ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-cssnano-preset`, `docusaurus-logger`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `eslint-plugin`, `lqip-loader`, `stylelint-copyright`\\n - [#7993](https://github.com/facebook/docusaurus/pull/7993) chore: upgrade dependencies ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-theme-search-algolia`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`, `eslint-plugin`\\n - [#7883](https://github.com/facebook/docusaurus/pull/7883) chore: upgrade dependencies ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-pwa`, `docusaurus-theme-search-algolia`, `docusaurus-utils`, `docusaurus`, `eslint-plugin`\\n - [#7822](https://github.com/facebook/docusaurus/pull/7822) chore: upgrade dependencies ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-mdx-loader`, `docusaurus-plugin-pwa`, `docusaurus`, `eslint-plugin`\\n - [#7794](https://github.com/facebook/docusaurus/pull/7794) chore: upgrade dependencies ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :wrench: Maintenance\\n\\n- `docusaurus-migrate`\\n - [#9400](https://github.com/facebook/docusaurus/pull/9400) chore: remove docusaurus-migrate ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-search-algolia`\\n - [#9320](https://github.com/facebook/docusaurus/pull/9320) chore(theme-search-algolia): revert docsearch package range downgrade after bugfix release ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-translations`\\n - [#9304](https://github.com/facebook/docusaurus/pull/9304) chore(theme-translations): complete French translations ([@forresst](https://github.com/forresst))\\n- Other\\n - [#9264](https://github.com/facebook/docusaurus/pull/9264) ci: only install Chromium for Playwright Argos tests ([@mxschmitt](https://github.com/mxschmitt))\\n - [#9245](https://github.com/facebook/docusaurus/pull/9245) chore: bump devcontainer to Ubuntu 22.04 to resolve arm64 incompatibility ([@AFRUITPIE](https://github.com/AFRUITPIE))\\n - [#8947](https://github.com/facebook/docusaurus/pull/8947) test: add visual regression tests with Argos CI ([@slorber](https://github.com/slorber))\\n - [#8911](https://github.com/facebook/docusaurus/pull/8911) chore: migrate website config to createConfigAsync ([@slorber](https://github.com/slorber))\\n - [#8578](https://github.com/facebook/docusaurus/pull/8578) docs: fix dead anchor for issue reporting guidelines in template ([@Sainan](https://github.com/Sainan))\\n - [#8447](https://github.com/facebook/docusaurus/pull/8447) chore: update lerna to v6.2.0 ([@AgentEnder](https://github.com/AgentEnder))\\n - [#7967](https://github.com/facebook/docusaurus/pull/7967) test: improve e2e verdaccio configuration ([@juanpicado](https://github.com/juanpicado))\\n - [#7863](https://github.com/facebook/docusaurus/pull/7863) docs: publish 2.0.0 release blog post + adapt website for the launch ([@slorber](https://github.com/slorber))\\n - [#7828](https://github.com/facebook/docusaurus/pull/7828) misc: change showcase submission process, use GitHub discussion ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`\\n - [#9195](https://github.com/facebook/docusaurus/pull/9195) test(blog-plugin): fix ability to generate proper blog website fixture build snapshot ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`, `docusaurus-theme-classic`\\n - [#9024](https://github.com/facebook/docusaurus/pull/9024) docs: remove Meta Data Policy footer link on website ([@KarthickSakthi](https://github.com/KarthickSakthi))\\n- `docusaurus`\\n - [#8660](https://github.com/facebook/docusaurus/pull/8660) chore: bump update-notifier ([@layershifter](https://github.com/layershifter))\\n\\n## Committers: 132\\n\\n- 0x24Karthick ([@KarthickSakthi](https://github.com/KarthickSakthi))\\n- Abhinandan Wadhwa ([@abhinandanwadwa](https://github.com/abhinandanwadwa))\\n- Abinash Satapathy ([@Abinashbunty](https://github.com/Abinashbunty))\\n- Adam Patterson ([@adampatterson](https://github.com/adampatterson))\\n- Adithya Krishna ([@adithyaakrishna](https://github.com/adithyaakrishna))\\n- Ahmad Shrif ([@amdshrif](https://github.com/amdshrif))\\n- Ahmed Mustafa Malik ([@amm98d](https://github.com/amm98d))\\n- Akshay Bhalotia ([@akshaybhalotia](https://github.com/akshaybhalotia))\\n- Alex ([@sashashura](https://github.com/sashashura))\\n- Alexander Nguyen ([@GalexyN](https://github.com/GalexyN))\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Andrew Lyons ([@andrewnicols](https://github.com/andrewnicols))\\n- Andr\xe9s Villanueva ([@Villanuevand](https://github.com/Villanuevand))\\n- Anna ([@HumbleDeer](https://github.com/HumbleDeer))\\n- Anton Kastritskii ([@antonk52](https://github.com/antonk52))\\n- Antony Onipko ([@antonyoni](https://github.com/antonyoni))\\n- Aolin ([@Oreoxmt](https://github.com/Oreoxmt))\\n- Aqueeb ([@aqueeb](https://github.com/aqueeb))\\n- Bei Chu ([@chubei](https://github.com/chubei))\\n- Billy Chan ([@billy1624](https://github.com/billy1624))\\n- Biplav Kumar Mazumdar ([@biplavmz](https://github.com/biplavmz))\\n- Bruce ([@recallwei](https://github.com/recallwei))\\n- Charles Killer ([@Foosballfan](https://github.com/Foosballfan))\\n- Chongyi Zheng ([@harryzcy](https://github.com/harryzcy))\\n- Chua Chee How ([@rojakcoder](https://github.com/rojakcoder))\\n- Cl\xe9ment Vannicatte ([@shortcuts](https://github.com/shortcuts))\\n- Colin McDonnell ([@colinhacks](https://github.com/colinhacks))\\n- Coupy ([@HyeokjinKang](https://github.com/HyeokjinKang))\\n- Craigory Coppola ([@AgentEnder](https://github.com/AgentEnder))\\n- Dan Dascalescu ([@dandv](https://github.com/dandv))\\n- Dan Roscigno ([@DanRoscigno](https://github.com/DanRoscigno))\\n- Danilo Woznica ([@danilowoz](https://github.com/danilowoz))\\n- David J. Felix ([@DavidJFelix](https://github.com/DavidJFelix))\\n- Debbie O\'Brien ([@debs-obrien](https://github.com/debs-obrien))\\n- Devansu Yadav ([@Devansu-Yadav](https://github.com/Devansu-Yadav))\\n- Dinh Bao Dang ([@chillinPanda](https://github.com/chillinPanda))\\n- Dongjoon Lee ([@Djunnni](https://github.com/Djunnni))\\n- Eduardo M\xednguez ([@e-minguez](https://github.com/e-minguez))\\n- Eunkwang Shin ([@gracefullight](https://github.com/gracefullight))\\n- Forresst ([@forresst](https://github.com/forresst))\\n- Francesco Ciulla ([@FrancescoXX](https://github.com/FrancescoXX))\\n- Fredrik Stave ([@fredrikstave](https://github.com/fredrikstave))\\n- Fxpby ([@fxpby](https://github.com/fxpby))\\n- Gabriel Csapo ([@gabrielcsapo](https://github.com/gabrielcsapo))\\n- Gareth Dwyer ([@sixhobbits](https://github.com/sixhobbits))\\n- Greg Berg\xe9 ([@gregberge](https://github.com/gregberge))\\n- Gr\xe9gory Heitz ([@edno](https://github.com/edno))\\n- Gustav Ton\xe9r ([@gazab](https://github.com/gazab))\\n- Hayden Hong ([@AFRUITPIE](https://github.com/AFRUITPIE))\\n- Hidde de Vries ([@hidde](https://github.com/hidde))\\n- Hyunseung ([@hslee2008](https://github.com/hslee2008))\\n- JJ Style ([@jj-style](https://github.com/jj-style))\\n- James Kerrane ([@thatrobotdev](https://github.com/thatrobotdev))\\n- Jean Humann ([@jean-humann](https://github.com/jean-humann))\\n- Jesper Engberg ([@jeengbe](https://github.com/jeengbe))\\n- Jody Heavener ([@jodyheavener](https://github.com/jodyheavener))\\n- Joe Williams ([@BubbaJoe](https://github.com/BubbaJoe))\\n- John Cao ([@jhcao23](https://github.com/jhcao23))\\n- John Reilly ([@johnnyreilly](https://github.com/johnnyreilly))\\n- Jordan Manley ([@werner33](https://github.com/werner33))\\n- Jorens Merenjanu ([@JorensM](https://github.com/JorensM))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Juan Picado ([@juanpicado](https://github.com/juanpicado))\\n- Kolja ([@razzeee](https://github.com/razzeee))\\n- Lane Goolsby ([@lanegoolsby](https://github.com/lanegoolsby))\\n- Lorenzo Lewis ([@lorenzolewis](https://github.com/lorenzolewis))\\n- Maciek Palmowski ([@palmiak](https://github.com/palmiak))\\n- Manuel ([@manuel-rw](https://github.com/manuel-rw))\\n- Marco Kuper ([@scubamaggo](https://github.com/scubamaggo))\\n- Marco Stroppel ([@mstroppel](https://github.com/mstroppel))\\n- Marie ([@schneegansm](https://github.com/schneegansm))\\n- Markshawn ([@MarkShawn2020](https://github.com/MarkShawn2020))\\n- Martin Adamko ([@attitude](https://github.com/attitude))\\n- Max Schmitt ([@mxschmitt](https://github.com/mxschmitt))\\n- Michael Remediakis ([@mickremedi](https://github.com/mickremedi))\\n- Mikey O\'Toole ([@homotechsual](https://github.com/homotechsual))\\n- ModupeD ([@ModupeD](https://github.com/ModupeD))\\n- Mu-Jing-Tsai ([@moojing](https://github.com/moojing))\\n- Mysterious_Dev ([@Mysterious-Dev](https://github.com/Mysterious-Dev))\\n- Naffy Dharni ([@knownasnaffy](https://github.com/knownasnaffy))\\n- Naman Garg ([@NamanGarg2075](https://github.com/NamanGarg2075))\\n- Nathaniel Tucker ([@ntucker](https://github.com/ntucker))\\n- Oleksandr Fediashov ([@layershifter](https://github.com/layershifter))\\n- Oluwatobi Sofela ([@oluwatobiss](https://github.com/oluwatobiss))\\n- Paul Razvan Berg ([@PaulRBerg](https://github.com/PaulRBerg))\\n- Pinaki Bhattacharjee ([@pinakipb2](https://github.com/pinakipb2))\\n- Rapha\xebl Barbazza ([@rbarbazz](https://github.com/rbarbazz))\\n- Rashid ([@rashidmya](https://github.com/rashidmya))\\n- Ryosuke Igarashi ([@cm-igarashi-ryosuke](https://github.com/cm-igarashi-ryosuke))\\n- SADIK KUZU ([@sadikkuzu](https://github.com/sadikkuzu))\\n- Sanjaiyan Parthipan ([@sanjaiyan-dev](https://github.com/sanjaiyan-dev))\\n- Serenus ([@Kesyau](https://github.com/Kesyau))\\n- Shahriar ([@ShahriarKh](https://github.com/ShahriarKh))\\n- Shashank Kumar ([@shawshankkumar](https://github.com/shawshankkumar))\\n- Shun Wakatsuki ([@shwaka](https://github.com/shwaka))\\n- Silvestar Bistrovi\u0107 ([@maliMirkec](https://github.com/maliMirkec))\\n- Sujal Gupta ([@heysujal](https://github.com/heysujal))\\n- Sunghyun Cho ([@anaclumos](https://github.com/anaclumos))\\n- Surav Shrestha ([@suravshrestha](https://github.com/suravshrestha))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Tamal Anwar Chowdhury ([@tamalchowdhury](https://github.com/tamalchowdhury))\\n- Tarun Chauhan ([@tarunrajput](https://github.com/tarunrajput))\\n- Tatsunori Uchino ([@tats-u](https://github.com/tats-u))\\n- Thad Guidry ([@thadguidry](https://github.com/thadguidry))\\n- Tom Mrazauskas ([@mrazauskas](https://github.com/mrazauskas))\\n- Viktor Malmedal ([@JohnVicke](https://github.com/JohnVicke))\\n- Waldir Pimenta ([@waldyrious](https://github.com/waldyrious))\\n- Wan Sim ([@0420syj](https://github.com/0420syj))\\n- Webber Takken ([@webbertakken](https://github.com/webbertakken))\\n- Will Ceolin ([@wceolin](https://github.com/wceolin))\\n- Yangshun Tay ([@yangshun](https://github.com/yangshun))\\n- Zwyx ([@Zwyx](https://github.com/Zwyx))\\n- [@Dr-Electron](https://github.com/Dr-Electron)\\n- [@FlorinaPacurar](https://github.com/FlorinaPacurar)\\n- [@Mogyuchi](https://github.com/Mogyuchi)\\n- [@Sainan](https://github.com/Sainan)\\n- [@VinceCYLiao](https://github.com/VinceCYLiao)\\n- [@allyw2002](https://github.com/allyw2002)\\n- [@bitpredator](https://github.com/bitpredator)\\n- [@conlacda](https://github.com/conlacda)\\n- [@dawei-wang](https://github.com/dawei-wang)\\n- [@la55u](https://github.com/la55u)\\n- [@mcallisto](https://github.com/mcallisto)\\n- [@prateekbytes](https://github.com/prateekbytes)\\n- [@qwerzl](https://github.com/qwerzl)\\n- [@rsteele6](https://github.com/rsteele6)\\n- [@samatt14](https://github.com/samatt14)\\n- [@thedevwonder](https://github.com/thedevwonder)\\n- [@yosukekato165](https://github.com/yosukekato165)\\n- ozaki ([@OzakIOne](https://github.com/OzakIOne))\\n- sykp241095 ([@sykp241095](https://github.com/sykp241095))\\n- \u521D\u51AC ([@chudongvip](https://github.com/chudongvip))"},{"id":"/2.4.3","metadata":{"permalink":"/changelog/2.4.3","source":"@site/changelog/source/2.4.3.md","title":"2.4.3","description":"Bug Fix","date":"2023-09-20T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Mikey O\'Toole","alias":"homotechsual","url":"https://github.com/homotechsual","imageURL":"https://github.com/homotechsual.png","key":"homotechsual","page":null},{"name":"Ori Shalom","alias":"ori-shalom","url":"https://github.com/ori-shalom","imageURL":"https://github.com/ori-shalom.png","key":"ori-shalom","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"TheCatLady","alias":"TheCatLady","url":"https://github.com/TheCatLady","imageURL":"https://github.com/TheCatLady.png","key":"TheCatLady","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2023-09-20T20:00","authors":["homotechsual","ori-shalom","slorber","TheCatLady"]},"unlisted":false,"prevItem":{"title":"3.0.0","permalink":"/changelog/3.0.0"},"nextItem":{"title":"2.4.2","permalink":"/changelog/2.4.2"},"listPageLink":"/changelog/"},"content":"\x3c!-- truncate --\x3e\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-plugin-content-docs`\\n - [#9107](https://github.com/facebook/docusaurus/pull/9107) fix(content-docs): sidebar generator should return customProps for doc items ([@TheCatLady](https://github.com/TheCatLady))\\n- `docusaurus-theme-classic`\\n - [#9108](https://github.com/facebook/docusaurus/pull/9108) feat(theme-classic): add description & keywords microdata to blog posts ([@TheCatLady](https://github.com/TheCatLady))\\n - [#9099](https://github.com/facebook/docusaurus/pull/9099) fix(theme): only set classname on ul elements if they have an existing class ([@homotechsual](https://github.com/homotechsual))\\n - [#9243](https://github.com/facebook/docusaurus/pull/9243) fix(theme-common): ThemedComponent should display something when JS is disabled ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#9130](https://github.com/facebook/docusaurus/pull/9130) fix(theme): canonical url should be not change after hydration if url accessed with/without trailing slash ([@ori-shalom](https://github.com/ori-shalom))\\n\\n## Committers: 4\\n\\n- Mikey O\'Toole ([@homotechsual](https://github.com/homotechsual))\\n- Ori Shalom ([@ori-shalom](https://github.com/ori-shalom))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- [@TheCatLady](https://github.com/TheCatLady)"},{"id":"/2.4.2","metadata":{"permalink":"/changelog/2.4.2","source":"@site/changelog/source/2.4.2.md","title":"2.4.2","description":"Bad npm publish, please use 2.4.3","date":"2023-09-20T19:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[],"frontMatter":{"mdx":{"format":"md"},"date":"2023-09-20T19:00"},"unlisted":false,"prevItem":{"title":"2.4.3","permalink":"/changelog/2.4.3"},"nextItem":{"title":"2.4.1","permalink":"/changelog/2.4.1"},"listPageLink":"/changelog/"},"content":"\x3c!-- truncate --\x3e\\n\\nBad npm publish, please use 2.4.3"},{"id":"/2.4.1","metadata":{"permalink":"/changelog/2.4.1","source":"@site/changelog/source/2.4.1.md","title":"2.4.1","description":"Bug Fix","date":"2023-05-15T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Andrew Lyons","alias":"andrewnicols","url":"https://github.com/andrewnicols","imageURL":"https://github.com/andrewnicols.png","key":"andrewnicols","page":null},{"name":"Armano","alias":"armano2","url":"https://github.com/armano2","imageURL":"https://github.com/armano2.png","key":"armano2","page":null},{"name":"MetuMortis","alias":"LiberaTeMetuMortis","url":"https://github.com/LiberaTeMetuMortis","imageURL":"https://github.com/LiberaTeMetuMortis.png","key":"LiberaTeMetuMortis","page":null},{"name":"Aleksandr Vladykin","alias":"morsko1","url":"https://github.com/morsko1","imageURL":"https://github.com/morsko1.png","key":"morsko1","page":null},{"name":"Sachin Nanayakkara","alias":"SACHINnANYAKKARA","url":"https://github.com/SACHINnANYAKKARA","imageURL":"https://github.com/SACHINnANYAKKARA.png","key":"SACHINnANYAKKARA","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Tarun Chauhan","alias":"tarunrajput","url":"https://github.com/tarunrajput","imageURL":"https://github.com/tarunrajput.png","key":"tarunrajput","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2023-05-15T20:00","authors":["andrewnicols","armano2","LiberaTeMetuMortis","morsko1","SACHINnANYAKKARA","slorber","tarunrajput"]},"unlisted":false,"prevItem":{"title":"2.4.2","permalink":"/changelog/2.4.2"},"nextItem":{"title":"2.4.0","permalink":"/changelog/2.4.0"},"listPageLink":"/changelog/page/2"},"content":"\x3c!-- truncate --\x3e\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#8971](https://github.com/facebook/docusaurus/pull/8971) fix(theme): fix collapsible sidebar behavior when prefers-reduced-motion ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-translations`\\n - [#8933](https://github.com/facebook/docusaurus/pull/8933) fix(theme-translations): fix Turkish translation for aria label \\"Enter key\\" ([@LiberaTeMetuMortis](https://github.com/LiberaTeMetuMortis))\\n- `docusaurus`\\n - [#8908](https://github.com/facebook/docusaurus/pull/8908) fix(core): Correct yarn upgrade command for yarn 2.x ([@andrewnicols](https://github.com/andrewnicols))\\n- `docusaurus-plugin-content-blog`, `docusaurus-theme-common`, `docusaurus-utils-common`, `docusaurus`\\n - [#8909](https://github.com/facebook/docusaurus/pull/8909) fix(theme): add \\\\_\\\\_ prefix to technical anchors, search crawlers (Algolia) should ignore them ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-common`\\n - [#8906](https://github.com/facebook/docusaurus/pull/8906) fix(theme-common): fix collapsible component with prefers-reduced-motion ([@slorber](https://github.com/slorber))\\n - [#8873](https://github.com/facebook/docusaurus/pull/8873) fix(theme-common): fix confusing theme error message: bad sidebar id suggestions ([@slorber](https://github.com/slorber))\\n- `docusaurus-utils`\\n - [#8874](https://github.com/facebook/docusaurus/pull/8874) fix(utils): handle Markdown links with spaces to route correctly ([@morsko1](https://github.com/morsko1))\\n- `docusaurus-theme-classic`, `docusaurus-theme-translations`\\n - [#8842](https://github.com/facebook/docusaurus/pull/8842) fix(theme-translations): remove redundant navigation text in aria label ([@tarunrajput](https://github.com/tarunrajput))\\n- `create-docusaurus`\\n - [#8831](https://github.com/facebook/docusaurus/pull/8831) fix(create): add missing await ([@SACHINnANYAKKARA](https://github.com/SACHINnANYAKKARA))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#8862](https://github.com/facebook/docusaurus/pull/8862) refactor(theme): expose copy, success and word-wrap icons as standalone components ([@armano2](https://github.com/armano2))\\n\\n## Committers: 7\\n\\n- Aleksandr Vladykin ([@morsko1](https://github.com/morsko1))\\n- Andrew Lyons ([@andrewnicols](https://github.com/andrewnicols))\\n- Armano ([@armano2](https://github.com/armano2))\\n- MetuMortis ([@LiberaTeMetuMortis](https://github.com/LiberaTeMetuMortis))\\n- Sachin Nanayakkara ([@SACHINnANYAKKARA](https://github.com/SACHINnANYAKKARA))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Tarun Chauhan ([@tarunrajput](https://github.com/tarunrajput))"},{"id":"/2.4.0","metadata":{"permalink":"/changelog/2.4.0","source":"@site/changelog/source/2.4.0.md","title":"2.4.0","description":"New Feature","date":"2023-03-23T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Anas","alias":"Anasqx","url":"https://github.com/Anasqx","imageURL":"https://github.com/Anasqx.png","key":"Anasqx","page":null},{"name":"Armano","alias":"armano2","url":"https://github.com/armano2","imageURL":"https://github.com/armano2.png","key":"armano2","page":null},{"name":"biplavmz","alias":"biplavmz","url":"https://github.com/biplavmz","imageURL":"https://github.com/biplavmz.png","key":"biplavmz","page":null},{"name":"Dewansh Thakur","alias":"dewanshDT","url":"https://github.com/dewanshDT","imageURL":"https://github.com/dewanshDT.png","key":"dewanshDT","page":null},{"name":"Petter Dr\xf8nnen","alias":"dr0nn1","url":"https://github.com/dr0nn1","imageURL":"https://github.com/dr0nn1.png","key":"dr0nn1","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Kagan","alias":"kagankan","url":"https://github.com/kagankan","imageURL":"https://github.com/kagankan.png","key":"kagankan","page":null},{"name":"Mysterious_Dev","alias":"Mysterious-Dev","url":"https://github.com/Mysterious-Dev","imageURL":"https://github.com/Mysterious-Dev.png","key":"Mysterious-Dev","page":null},{"name":"Moritz St\xfcckler","alias":"pReya","url":"https://github.com/pReya","imageURL":"https://github.com/pReya.png","key":"pReya","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Tanner Dolby","alias":"tannerdolby","url":"https://github.com/tannerdolby","imageURL":"https://github.com/tannerdolby.png","key":"tannerdolby","page":null},{"name":"TrueQAP","alias":"trueqap","url":"https://github.com/trueqap","imageURL":"https://github.com/trueqap.png","key":"trueqap","page":null},{"name":"Vishruta Patil","alias":"Vishruta-Patil","url":"https://github.com/Vishruta-Patil","imageURL":"https://github.com/Vishruta-Patil.png","key":"Vishruta-Patil","page":null},{"name":"Davide Donadio","alias":"ZarakiKanzaki","url":"https://github.com/ZarakiKanzaki","imageURL":"https://github.com/ZarakiKanzaki.png","key":"ZarakiKanzaki","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2023-03-23T20:00","authors":["Anasqx","armano2","biplavmz","dewanshDT","dr0nn1","Josh-Cena","kagankan","Mysterious-Dev","pReya","slorber","tannerdolby","trueqap","Vishruta-Patil","ZarakiKanzaki"]},"unlisted":false,"prevItem":{"title":"2.4.1","permalink":"/changelog/2.4.1"},"nextItem":{"title":"2.3.1","permalink":"/changelog/2.3.1"},"listPageLink":"/changelog/page/2"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#8236](https://github.com/facebook/docusaurus/pull/8236) feat(content-docs): add support for sidebar item category/link descriptions in generated index page ([@ZarakiKanzaki](https://github.com/ZarakiKanzaki))\\n- `docusaurus-theme-classic`\\n - [#8708](https://github.com/facebook/docusaurus/pull/8708) feat(theme): allow to load a Docusaurus page with theme from query-string: ?docusaurus-theme=dark ([@slorber](https://github.com/slorber))\\n - [#8616](https://github.com/facebook/docusaurus/pull/8616) feat(theme): add ability to translate navbar+footer logo alt text ([@Mysterious-Dev](https://github.com/Mysterious-Dev))\\n- `docusaurus-remark-plugin-npm2yarn`\\n - [#8690](https://github.com/facebook/docusaurus/pull/8690) feat(npm-to-yarn): add support for PnPm and custom converters ([@armano2](https://github.com/armano2))\\n- `docusaurus`\\n - [#8677](https://github.com/facebook/docusaurus/pull/8677) feat(core): add script env variables: NODE_ENV + BABEL_ENV + DOCUSAURUS_CURRENT_LOCALE (temporary i18n workaround) ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#8674](https://github.com/facebook/docusaurus/pull/8674) feat(theme-classic): respect `prefers-reduced-motion: reduce` mediaquery, bump Infima to alpha.43 ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-translations`\\n - [#8668](https://github.com/facebook/docusaurus/pull/8668) feat(theme-translations): add Hungarian theme translations ([@trueqap](https://github.com/trueqap))\\n - [#8631](https://github.com/facebook/docusaurus/pull/8631) feat(theme-translations): add Norwegian (Bokm\xe5l) theme translation ([@dr0nn1](https://github.com/dr0nn1))\\n- `docusaurus-theme-common`\\n - [#8656](https://github.com/facebook/docusaurus/pull/8656) feat(theme-common): allow passing a string for details summary ([@pReya](https://github.com/pReya))\\n- `docusaurus-plugin-google-gtag`\\n - [#8620](https://github.com/facebook/docusaurus/pull/8620) feat(gtag-plugin): gtag should support multiple tracking ids, notably for the UA => GA4 transition ([@slorber](https://github.com/slorber))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`\\n - [#8803](https://github.com/facebook/docusaurus/pull/8803) fix(theme): codeblock buttons should be kept on the right when using RTL locale ([@Vishruta-Patil](https://github.com/Vishruta-Patil))\\n - [#8615](https://github.com/facebook/docusaurus/pull/8615) fix(theme): improve color toggle when using dark navbar ([@dewanshDT](https://github.com/dewanshDT))\\n - [#8699](https://github.com/facebook/docusaurus/pull/8699) fix(theme-classic): fix tab focus bug in dropdown (#8697) ([@kagankan](https://github.com/kagankan))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#8801](https://github.com/facebook/docusaurus/pull/8801) fix(theme): allow tabs children to be falsy ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-common`, `docusaurus-theme-search-algolia`\\n - [#8757](https://github.com/facebook/docusaurus/pull/8757) fix(search): search page should react to querystring changes + cleanup/refactor ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#8746](https://github.com/facebook/docusaurus/pull/8746) fix(core): baseUrl error banner link anchor case ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-translations`\\n - [#8744](https://github.com/facebook/docusaurus/pull/8744) fix(theme-translations): fix wrong arabic words (tip/next) ([@Anasqx](https://github.com/Anasqx))\\n\\n## :nail_care: Polish\\n\\n- `create-docusaurus`\\n - [#8712](https://github.com/facebook/docusaurus/pull/8712) polish(create-docusaurus): the starter template should use a navbar item \\"docSidebar\\" instead of \\"doc\\" (less fragile on updates) ([@biplavmz](https://github.com/biplavmz))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-utils-common`, `docusaurus`\\n - [#8735](https://github.com/facebook/docusaurus/pull/8735) polish(theme): better error messages on navbar item rendering failures + ErrorCauseBoundary API ([@tannerdolby](https://github.com/tannerdolby))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus`\\n - [#8736](https://github.com/facebook/docusaurus/pull/8736) polish(core): better styling for error screens ([@tannerdolby](https://github.com/tannerdolby))\\n\\n## Committers: 14\\n\\n- Anas ([@Anasqx](https://github.com/Anasqx))\\n- Armano ([@armano2](https://github.com/armano2))\\n- Davide Donadio ([@ZarakiKanzaki](https://github.com/ZarakiKanzaki))\\n- Dewansh Thakur ([@dewanshDT](https://github.com/dewanshDT))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Kagan ([@kagankan](https://github.com/kagankan))\\n- Moritz St\xfcckler ([@pReya](https://github.com/pReya))\\n- Mysterious_Dev ([@Mysterious-Dev](https://github.com/Mysterious-Dev))\\n- Petter Dr\xf8nnen ([@dr0nn1](https://github.com/dr0nn1))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Tanner Dolby ([@tannerdolby](https://github.com/tannerdolby))\\n- TrueQAP ([@trueqap](https://github.com/trueqap))\\n- Vishruta Patil ([@Vishruta-Patil](https://github.com/Vishruta-Patil))\\n- [@biplavmz](https://github.com/biplavmz)"},{"id":"/2.3.1","metadata":{"permalink":"/changelog/2.3.1","source":"@site/changelog/source/2.3.1.md","title":"2.3.1","description":"Bug Fix","date":"2023-02-03T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"S\xe9bastien Castiel","alias":"scastiel","url":"https://github.com/scastiel","imageURL":"https://github.com/scastiel.png","key":"scastiel","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2023-02-03T20:00","authors":["Josh-Cena","scastiel","slorber"]},"unlisted":false,"prevItem":{"title":"2.4.0","permalink":"/changelog/2.4.0"},"nextItem":{"title":"2.3.0","permalink":"/changelog/2.3.0"},"listPageLink":"/changelog/page/2"},"content":"\x3c!-- truncate --\x3e\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-common`\\n - [#8628](https://github.com/facebook/docusaurus/pull/8628) fix(theme-common): fix issue in tab scroll position restoration on tab click ([@slorber](https://github.com/slorber))\\n - [#8619](https://github.com/facebook/docusaurus/pull/8619) fix(theme-common): localStorage utils dispatch too many storage events leading to infinite loop ([@slorber](https://github.com/slorber))\\n - [#8618](https://github.com/facebook/docusaurus/pull/8618) fix(theme-common): prepare usage of useSyncExternalStore compatibility with React 18 ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#8593](https://github.com/facebook/docusaurus/pull/8593) fix(theme-classic): allow rendering single tab item ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-utils`\\n - [#8606](https://github.com/facebook/docusaurus/pull/8606) fix(utils): handle CRLF when parsing MDX imports ([@scastiel](https://github.com/scastiel))\\n- `docusaurus-preset-classic`\\n - [#8597](https://github.com/facebook/docusaurus/pull/8597) fix(preset-classic): install the right plugin for googleTagManager ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-translations`\\n - [#8614](https://github.com/facebook/docusaurus/pull/8614) chore(theme-translations): complete zh translations ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :robot: Dependencies\\n\\n- `docusaurus-plugin-client-redirects`, `docusaurus-theme-search-algolia`, `docusaurus`\\n - [#8610](https://github.com/facebook/docusaurus/pull/8610) chore(deps): bump eta from 1.12.3 to 2.0.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n\\n## Committers: 3\\n\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- S\xe9bastien Castiel ([@scastiel](https://github.com/scastiel))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))"},{"id":"/2.3.0","metadata":{"permalink":"/changelog/2.3.0","source":"@site/changelog/source/2.3.0.md","title":"2.3.0","description":"New Feature","date":"2023-01-26T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Danny Kim","alias":"0916dhkim","url":"https://github.com/0916dhkim","imageURL":"https://github.com/0916dhkim.png","key":"0916dhkim","page":null},{"name":"Riccardo","alias":"3v0k4","url":"https://github.com/3v0k4","imageURL":"https://github.com/3v0k4.png","key":"3v0k4","page":null},{"name":"Denis Al-Khelali","alias":"denis-alkhelali","url":"https://github.com/denis-alkhelali","imageURL":"https://github.com/denis-alkhelali.png","key":"denis-alkhelali","page":null},{"name":"Dongjoon Lee","alias":"Djunnni","url":"https://github.com/Djunnni","imageURL":"https://github.com/Djunnni.png","key":"Djunnni","page":null},{"name":"Frieder Bluemle","alias":"friederbluemle","url":"https://github.com/friederbluemle","imageURL":"https://github.com/friederbluemle.png","key":"friederbluemle","page":null},{"name":"John Reilly","alias":"johnnyreilly","url":"https://github.com/johnnyreilly","imageURL":"https://github.com/johnnyreilly.png","key":"johnnyreilly","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Josh Goldberg","alias":"JoshuaKGoldberg","url":"https://github.com/JoshuaKGoldberg","imageURL":"https://github.com/JoshuaKGoldberg.png","key":"JoshuaKGoldberg","page":null},{"name":"Lachlan Heywood","alias":"lachieh","url":"https://github.com/lachieh","imageURL":"https://github.com/lachieh.png","key":"lachieh","page":null},{"name":"Lane Goolsby","alias":"lanegoolsby","url":"https://github.com/lanegoolsby","imageURL":"https://github.com/lanegoolsby.png","key":"lanegoolsby","page":null},{"name":"Matija Sirk","alias":"MatijaSi","url":"https://github.com/MatijaSi","imageURL":"https://github.com/MatijaSi.png","key":"MatijaSi","page":null},{"name":"Muhammad Hammad","alias":"mhnaeem","url":"https://github.com/mhnaeem","imageURL":"https://github.com/mhnaeem.png","key":"mhnaeem","page":null},{"name":"mturoci","alias":"mturoci","url":"https://github.com/mturoci","imageURL":"https://github.com/mturoci.png","key":"mturoci","page":null},{"name":"\u5B8B\u9526\u4E30","alias":"SJFCS","url":"https://github.com/SJFCS","imageURL":"https://github.com/SJFCS.png","key":"SJFCS","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Stefan Norberg","alias":"stnor","url":"https://github.com/stnor","imageURL":"https://github.com/stnor.png","key":"stnor","page":null},{"name":"Thomas.CA","alias":"Thomascogez","url":"https://github.com/Thomascogez","imageURL":"https://github.com/Thomascogez.png","key":"Thomascogez","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2023-01-26T20:00","authors":["0916dhkim","3v0k4","denis-alkhelali","Djunnni","friederbluemle","johnnyreilly","Josh-Cena","JoshuaKGoldberg","lachieh","lanegoolsby","MatijaSi","mhnaeem","mturoci","SJFCS","slorber","stnor","Thomascogez"]},"unlisted":false,"prevItem":{"title":"2.3.1","permalink":"/changelog/2.3.1"},"nextItem":{"title":"2.2.0","permalink":"/changelog/2.2.0"},"listPageLink":"/changelog/page/2"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-theme-translations`\\n - [#8541](https://github.com/facebook/docusaurus/pull/8541) feat(theme-translations): default translations for Slovenian (sl-SI) ([@MatijaSi](https://github.com/MatijaSi))\\n- `docusaurus-plugin-content-blog`\\n - [#8378](https://github.com/facebook/docusaurus/pull/8378) feat(blog): add options.createFeedItems to filter/limit/transform feed items ([@johnnyreilly](https://github.com/johnnyreilly))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus`\\n - [#8225](https://github.com/facebook/docusaurus/pull/8225) feat(theme-classic): store selected tab in query string. ([@mturoci](https://github.com/mturoci))\\n- `docusaurus`\\n - [#8397](https://github.com/facebook/docusaurus/pull/8397) feat(core): deploy CLI - add support for git url \\"insteadOf\\": use \'remote get-url\' to determine source repo url ([@friederbluemle](https://github.com/friederbluemle))\\n- `docusaurus-theme-search-algolia`\\n - [#8428](https://github.com/facebook/docusaurus/pull/8428) feat(theme-algolia): add option.replaceSearchResultPathname to process/replaceAll search result urls\\n- `docusaurus-plugin-google-tag-manager`\\n - [#8470](https://github.com/facebook/docusaurus/pull/8470) feat(plugin-google-tag-manager): add new google-tag-manager plugin + deprecate google-analytics plugin ([@lanegoolsby](https://github.com/lanegoolsby))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-mdx-loader`\\n - [#8303](https://github.com/facebook/docusaurus/pull/8303) fix(mdx-loader): support nested admonitions\\n - [#8282](https://github.com/facebook/docusaurus/pull/8282) fix(mermaid): fix Mermaid integration for v9.2 release\\n- `docusaurus-theme-common`\\n - [#8539](https://github.com/facebook/docusaurus/pull/8539) fix(algolia): make search footer respect searchPagePath ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus`\\n - [#8538](https://github.com/facebook/docusaurus/pull/8538) fix(core): avoid hash collision when generating chunk names ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#8481](https://github.com/facebook/docusaurus/pull/8481) fix(core): explicitly define CopyWebpackPlugin toType: \'dir\' ([@Thomascogez](https://github.com/Thomascogez))\\n - [#8342](https://github.com/facebook/docusaurus/pull/8342) fix(core): normalize input for poll option ([@mhnaeem](https://github.com/mhnaeem))\\n- `docusaurus-theme-classic`, `docusaurus`\\n - [#8445](https://github.com/facebook/docusaurus/pull/8445) fix(theme-classic) extract HomeBreadcrumbItem + fix swizzle bugs ([@3v0k4](https://github.com/3v0k4))\\n- `docusaurus-theme-search-algolia`\\n - [#8462](https://github.com/facebook/docusaurus/pull/8462) fix(search-algolia): pass custom transformItems function to SearchBar ([@mturoci](https://github.com/mturoci))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#8486](https://github.com/facebook/docusaurus/pull/8486) fix(theme): refactor Tabs, make groupId + queryString work fine together ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#8463](https://github.com/facebook/docusaurus/pull/8463) fix(theme-classic): content container grow to take all the available space ([@Djunnni](https://github.com/Djunnni))\\n - [#8328](https://github.com/facebook/docusaurus/pull/8328) fix(theme): preserve sidebar height on collapse ([@0916dhkim](https://github.com/0916dhkim))\\n - [#8350](https://github.com/facebook/docusaurus/pull/8350) fix(theme): forward className prop in theme-classic\'s Heading ([@JoshuaKGoldberg](https://github.com/JoshuaKGoldberg))\\n- `docusaurus-theme-translations`\\n - [#8424](https://github.com/facebook/docusaurus/pull/8424) fix(translations): typo in lastUpdatedAtBy Vietnamese translation ([@slorber](https://github.com/slorber))\\n - [#8289](https://github.com/facebook/docusaurus/pull/8289) fix(theme-translations): complete Turkish theme translations\\n - [#8406](https://github.com/facebook/docusaurus/pull/8406) fix(translations): complete farsi theme translations\\n - [#8450](https://github.com/facebook/docusaurus/pull/8450) fix(theme-translations): complete Vietnamese theme translations\\n - [#8525](https://github.com/facebook/docusaurus/pull/8525) chore(theme-translations): complete pl translations\\n- `docusaurus-plugin-content-blog`\\n - [#8381](https://github.com/facebook/docusaurus/pull/8381) fix(content-blog): blog Atom feed id + RSS feed guid should be fully qualified urls ([@johnnyreilly](https://github.com/johnnyreilly))\\n- `docusaurus-plugin-content-docs`\\n - [#8275](https://github.com/facebook/docusaurus/pull/8275) fix(content-docs): add trailing slash to contentDirs, before passing it to isMDXPartial ([@denis-alkhelali](https://github.com/denis-alkhelali))\\n- `docusaurus-utils`\\n - [#8314](https://github.com/facebook/docusaurus/pull/8314) fix(utils): allow partially backticked markdown h1 contentTitles ([@JoshuaKGoldberg](https://github.com/JoshuaKGoldberg))\\n- `create-docusaurus`, `docusaurus-theme-classic`\\n - [#8279](https://github.com/facebook/docusaurus/pull/8279) fix(create-docusaurus): improve init template misleading doc + add Docuaurus social card ([@slorber](https://github.com/slorber))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`, `docusaurus`\\n - [#8445](https://github.com/facebook/docusaurus/pull/8445) fix(theme-classic) extract HomeBreadcrumbItem + fix swizzle bugs ([@3v0k4](https://github.com/3v0k4))\\n- `docusaurus-theme-translations`\\n - [#8423](https://github.com/facebook/docusaurus/pull/8423) fix(translations): complete Chinese theme translations ([@SJFCS](https://github.com/SJFCS))\\n - [#8312](https://github.com/facebook/docusaurus/pull/8312) fix(theme-translations): complete Swedish theme translations ([@stnor](https://github.com/stnor))\\n- `eslint-plugin`\\n - [#8281](https://github.com/facebook/docusaurus/pull/8281) feat(eslint-plugin): add plugin to exported configs ([@lachieh](https://github.com/lachieh))\\n\\n## Committers: 16\\n\\n- Danny Kim ([@0916dhkim](https://github.com/0916dhkim))\\n- Denis Al-Khelali ([@denis-alkhelali](https://github.com/denis-alkhelali))\\n- Dongjoon Lee ([@Djunnni](https://github.com/Djunnni))\\n- Frieder Bluemle ([@friederbluemle](https://github.com/friederbluemle))\\n- John Reilly ([@johnnyreilly](https://github.com/johnnyreilly))\\n- Josh Goldberg ([@JoshuaKGoldberg](https://github.com/JoshuaKGoldberg))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Lachlan Heywood ([@lachieh](https://github.com/lachieh))\\n- Lane Goolsby ([@lanegoolsby](https://github.com/lanegoolsby))\\n- Matija Sirk ([@MatijaSi](https://github.com/MatijaSi))\\n- Muhammad Hammad ([@mhnaeem](https://github.com/mhnaeem))\\n- Riccardo ([@3v0k4](https://github.com/3v0k4))\\n- Stefan Norberg ([@stnor](https://github.com/stnor))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Thomas.CA ([@Thomascogez](https://github.com/Thomascogez))\\n- [@mturoci](https://github.com/mturoci)\\n- \u5B8B\u9526\u4E30 ([@SJFCS](https://github.com/SJFCS))"},{"id":"/2.2.0","metadata":{"permalink":"/changelog/2.2.0","source":"@site/changelog/source/2.2.0.md","title":"2.2.0","description":"New Feature","date":"2022-10-29T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Adnan Hashmi","alias":"adnanhashmi09","url":"https://github.com/adnanhashmi09","imageURL":"https://github.com/adnanhashmi09.png","key":"adnanhashmi09","page":null},{"name":"Johan Fagerberg","alias":"birjj","url":"https://github.com/birjj","imageURL":"https://github.com/birjj.png","key":"birjj","page":null},{"name":"evan","alias":"e-im","url":"https://github.com/e-im","imageURL":"https://github.com/e-im.png","key":"e-im","page":null},{"name":"forgeRW","alias":"forgeRW","url":"https://github.com/forgeRW","imageURL":"https://github.com/forgeRW.png","key":"forgeRW","page":null},{"name":"Forresst","alias":"forresst","url":"https://github.com/forresst","imageURL":"https://github.com/forresst.png","key":"forresst","page":null},{"name":"Mikey O\'Toole","alias":"homotechsual","url":"https://github.com/homotechsual","imageURL":"https://github.com/homotechsual.png","key":"homotechsual","page":null},{"name":"Jeferson S. Brito","alias":"jeferson-sb","url":"https://github.com/jeferson-sb","imageURL":"https://github.com/jeferson-sb.png","key":"jeferson-sb","page":null},{"name":"John Reilly","alias":"johnnyreilly","url":"https://github.com/johnnyreilly","imageURL":"https://github.com/johnnyreilly.png","key":"johnnyreilly","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Jan Peer St\xf6cklmair","alias":"JPeer264","url":"https://github.com/JPeer264","imageURL":"https://github.com/JPeer264.png","key":"JPeer264","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"LittleboyHarry","alias":"LittleboyHarry","url":"https://github.com/LittleboyHarry","imageURL":"https://github.com/LittleboyHarry.png","key":"LittleboyHarry","page":null},{"name":"mturoci","alias":"mturoci","url":"https://github.com/mturoci","imageURL":"https://github.com/mturoci.png","key":"mturoci","page":null},{"name":"Nguy\u1EC5n Th\xe0nh Nam","alias":"namnguyenthanhwork","url":"https://github.com/namnguyenthanhwork","imageURL":"https://github.com/namnguyenthanhwork.png","key":"namnguyenthanhwork","page":null},{"name":"Masahiko Hara","alias":"pasora","url":"https://github.com/pasora","imageURL":"https://github.com/pasora.png","key":"pasora","page":null},{"name":"Pranav Joglekar","alias":"Pranav2612000","url":"https://github.com/Pranav2612000","imageURL":"https://github.com/Pranav2612000.png","key":"Pranav2612000","page":null},{"name":"Ramazan SANCAR","alias":"ramazansancar","url":"https://github.com/ramazansancar","imageURL":"https://github.com/ramazansancar.png","key":"ramazansancar","page":null},{"name":"Sanjaiyan Parthipan","alias":"sanjaiyan-dev","url":"https://github.com/sanjaiyan-dev","imageURL":"https://github.com/sanjaiyan-dev.png","key":"sanjaiyan-dev","page":null},{"name":"Shanmughapriyan S","alias":"shanpriyan","url":"https://github.com/shanpriyan","imageURL":"https://github.com/shanpriyan.png","key":"shanpriyan","page":null},{"name":"Sam Wall","alias":"sjwall","url":"https://github.com/sjwall","imageURL":"https://github.com/sjwall.png","key":"sjwall","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Xabier Lahuerta Vazquez","alias":"Xabilahu","url":"https://github.com/Xabilahu","imageURL":"https://github.com/Xabilahu.png","key":"Xabilahu","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2022-10-29T20:00","authors":["adnanhashmi09","birjj","e-im","forgeRW","forresst","homotechsual","jeferson-sb","johnnyreilly","Josh-Cena","JPeer264","lex111","LittleboyHarry","mturoci","namnguyenthanhwork","pasora","Pranav2612000","ramazansancar","sanjaiyan-dev","shanpriyan","sjwall","slorber","Xabilahu"]},"unlisted":false,"prevItem":{"title":"2.3.0","permalink":"/changelog/2.3.0"},"nextItem":{"title":"2.1.0","permalink":"/changelog/2.1.0"},"listPageLink":"/changelog/page/2"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-plugin-client-redirects`\\n - [#8227](https://github.com/facebook/docusaurus/pull/8227) feat(plugin-client-redirects): keep the query string + hash ([@Xabilahu](https://github.com/Xabilahu))\\n- `docusaurus`\\n - [#8210](https://github.com/facebook/docusaurus/pull/8210) feat(core): add --config param to swizzle command ([@e-im](https://github.com/e-im))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`, `docusaurus-theme-mermaid`, `docusaurus-types`, `docusaurus`\\n - [#7490](https://github.com/facebook/docusaurus/pull/7490) feat: support mermaid code blocks in Markdown ([@sjwall](https://github.com/sjwall))\\n- `docusaurus-types`, `docusaurus`\\n - [#8151](https://github.com/facebook/docusaurus/pull/8151) feat(core): siteConfig.headTags API to render extra tags in document head ([@johnnyreilly](https://github.com/johnnyreilly))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-plugin-ideal-image`\\n - [#8250](https://github.com/facebook/docusaurus/pull/8250) fix(ideal-image): do not pass down `img` prop ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-common`\\n - [#8246](https://github.com/facebook/docusaurus/pull/8246) fix(mdx-loader): properly unwrap mdxAdmonitionTitle placeholder ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-docs`\\n - [#8234](https://github.com/facebook/docusaurus/pull/8234) fix(plugin-content-docs): fix error message context (error cause) when doc processing fails ([@shanpriyan](https://github.com/shanpriyan))\\n- `docusaurus-theme-classic`, `docusaurus-theme-translations`\\n - [#8207](https://github.com/facebook/docusaurus/pull/8207) fix(theme-classic): hamburger menu control navigation by keyboard ([@jeferson-sb](https://github.com/jeferson-sb))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#8204](https://github.com/facebook/docusaurus/pull/8204) fix(theme-classic): fix SkipToContent without JS , refactor, make it public theming API ([@mturoci](https://github.com/mturoci))\\n - [#8059](https://github.com/facebook/docusaurus/pull/8059) fix(theme): preserve url ?search#hash on navbar version/locale dropdowns navigations ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#8192](https://github.com/facebook/docusaurus/pull/8192) fix(core): throw error for invalid URL in config file ([@forgeRW](https://github.com/forgeRW))\\n- `docusaurus-theme-classic`\\n - [#8174](https://github.com/facebook/docusaurus/pull/8174) fix(theme): announce theme switches ([@mturoci](https://github.com/mturoci))\\n - [#8190](https://github.com/facebook/docusaurus/pull/8190) fix(theme): add more tag names to inline code element set ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#8163](https://github.com/facebook/docusaurus/pull/8163) fix(theme): mobile navbar & skipToContent should cover announcementBar ([@adnanhashmi09](https://github.com/adnanhashmi09))\\n - [#8068](https://github.com/facebook/docusaurus/pull/8068) fix(theme): preserve line breaks when copying code with showLineNumbers in Firefox ([@LittleboyHarry](https://github.com/LittleboyHarry))\\n- `docusaurus-utils`\\n - [#8137](https://github.com/facebook/docusaurus/pull/8137) fix(utils): remove non-ASCII limitation for path normalization ([@birjj](https://github.com/birjj))\\n - [#8158](https://github.com/facebook/docusaurus/pull/8158) fix(content-blog): make RSS feed generation work with slugs with .html extension ([@Pranav2612000](https://github.com/Pranav2612000))\\n- `docusaurus-theme-translations`\\n - [#8105](https://github.com/facebook/docusaurus/pull/8105) fix(theme-translations): complete turkish theme default translations ([@ramazansancar](https://github.com/ramazansancar))\\n - [#8087](https://github.com/facebook/docusaurus/pull/8087) fix(theme-translations): remove extra vi translations ([@namnguyenthanhwork](https://github.com/namnguyenthanhwork))\\n- `docusaurus-plugin-client-redirects`\\n - [#8067](https://github.com/facebook/docusaurus/pull/8067) fix(redirect): tolerate trailing slash difference if config is undefined ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-translations`\\n - [#8253](https://github.com/facebook/docusaurus/pull/8253) chore(theme-translations): complete ru translations ([@lex111](https://github.com/lex111))\\n - [#8243](https://github.com/facebook/docusaurus/pull/8243) chore(theme-translations): complete French translations ([@forresst](https://github.com/forresst))\\n - [#8075](https://github.com/facebook/docusaurus/pull/8075) fix(theme-translation): complete Japanese theme default translation ([@pasora](https://github.com/pasora))\\n- `docusaurus`\\n - [#8159](https://github.com/facebook/docusaurus/pull/8159) fix(core): throw error for invalid URL in config file ([@forgeRW](https://github.com/forgeRW))\\n - [#8109](https://github.com/facebook/docusaurus/pull/8109) feat(core): prefetch on mobile touchstart ([@sanjaiyan-dev](https://github.com/sanjaiyan-dev))\\n- `docusaurus-theme-classic`\\n - [#8161](https://github.com/facebook/docusaurus/pull/8161) fix(theme): do not show tab content when tabbing over it; show after selection only ([@mturoci](https://github.com/mturoci))\\n - [#8062](https://github.com/facebook/docusaurus/pull/8062) refactor(theme): remove hard-coded tag border-radius ([@homotechsual](https://github.com/homotechsual))\\n- `docusaurus-utils-validation`, `docusaurus`\\n - [#8066](https://github.com/facebook/docusaurus/pull/8066) fix(core): normalize slashes for url/baseUrl instead of throwing ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## Committers: 22\\n\\n- Adnan Hashmi ([@adnanhashmi09](https://github.com/adnanhashmi09))\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Forresst ([@forresst](https://github.com/forresst))\\n- Jan Peer St\xf6cklmair ([@JPeer264](https://github.com/JPeer264))\\n- Jeferson S. Brito ([@jeferson-sb](https://github.com/jeferson-sb))\\n- Johan Fagerberg ([@birjj](https://github.com/birjj))\\n- John Reilly ([@johnnyreilly](https://github.com/johnnyreilly))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- LittleboyHarry ([@LittleboyHarry](https://github.com/LittleboyHarry))\\n- Masahiko Hara ([@pasora](https://github.com/pasora))\\n- Mikey O\'Toole ([@homotechsual](https://github.com/homotechsual))\\n- Nguy\u1EC5n Th\xe0nh Nam ([@namnguyenthanhwork](https://github.com/namnguyenthanhwork))\\n- Pranav Joglekar ([@Pranav2612000](https://github.com/Pranav2612000))\\n- Ramazan SANCAR ([@ramazansancar](https://github.com/ramazansancar))\\n- Sam Wall ([@sjwall](https://github.com/sjwall))\\n- Sanjaiyan Parthipan ([@sanjaiyan-dev](https://github.com/sanjaiyan-dev))\\n- Shanmughapriyan S ([@shanpriyan](https://github.com/shanpriyan))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Xabier Lahuerta Vazquez ([@Xabilahu](https://github.com/Xabilahu))\\n- [@forgeRW](https://github.com/forgeRW)\\n- [@mturoci](https://github.com/mturoci)\\n- evan ([@e-im](https://github.com/e-im))"},{"id":"/2.1.0","metadata":{"permalink":"/changelog/2.1.0","source":"@site/changelog/source/2.1.0.md","title":"2.1.0","description":"New Feature","date":"2022-09-01T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"adventure-yunfei","alias":"adventure-yunfei","url":"https://github.com/adventure-yunfei","imageURL":"https://github.com/adventure-yunfei.png","key":"adventure-yunfei","page":null},{"name":"Bagdasar Ovsepyan","alias":"b-ovsepian","url":"https://github.com/b-ovsepian","imageURL":"https://github.com/b-ovsepian.png","key":"b-ovsepian","page":null},{"name":"Ng\xf4 Qu\u1ED1c \u0110\u1EA1t","alias":"datlechin","url":"https://github.com/datlechin","imageURL":"https://github.com/datlechin.png","key":"datlechin","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Kevin \xd8sterkilde","alias":"Kosai106","url":"https://github.com/Kosai106","imageURL":"https://github.com/Kosai106.png","key":"Kosai106","page":null},{"name":"Morgane Dubus","alias":"mdubus","url":"https://github.com/mdubus","imageURL":"https://github.com/mdubus.png","key":"mdubus","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"whiteand","alias":"whiteand","url":"https://github.com/whiteand","imageURL":"https://github.com/whiteand.png","key":"whiteand","page":null},{"name":"Yoni Chechik","alias":"YoniChechik","url":"https://github.com/YoniChechik","imageURL":"https://github.com/YoniChechik.png","key":"YoniChechik","page":null},{"name":"yzhe819","alias":"yzhe819","url":"https://github.com/yzhe819","imageURL":"https://github.com/yzhe819.png","key":"yzhe819","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2022-09-01T20:00","authors":["adventure-yunfei","b-ovsepian","datlechin","Josh-Cena","Kosai106","mdubus","slorber","whiteand","YoniChechik","yzhe819"]},"unlisted":false,"prevItem":{"title":"2.2.0","permalink":"/changelog/2.2.0"},"nextItem":{"title":"2.0.1","permalink":"/changelog/2.0.1"},"listPageLink":"/changelog/page/2"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#8008](https://github.com/facebook/docusaurus/pull/8008) feat(theme): ability to use `<DocCardList>` without items prop, on any doc page ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#7963](https://github.com/facebook/docusaurus/pull/7963) feat(docs): allow to configure noIndex per doc version ([@slorber](https://github.com/slorber))\\n - [#7949](https://github.com/facebook/docusaurus/pull/7949) feat(plugin-docs): docs sidebar item link: support \\"autoAddBaseUrl\\" attribute ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-translations`\\n - [#7953](https://github.com/facebook/docusaurus/pull/7953) feat(theme): adds Ukrainian default theme translations ([@b-ovsepian](https://github.com/b-ovsepian))\\n\\n## :bug: Bug Fix\\n\\n- `create-docusaurus`\\n - [#8032](https://github.com/facebook/docusaurus/pull/8032) fix(create-docusaurus): tutorial and init template improvements ([@slorber](https://github.com/slorber))\\n- `docusaurus-preset-classic`\\n - [#8029](https://github.com/facebook/docusaurus/pull/8029) fix(preset-classic): broken link in \\"unrecognized keys\\" error message ([@mdubus](https://github.com/mdubus))\\n- `docusaurus`\\n - [#7977](https://github.com/facebook/docusaurus/pull/7977) fix(core): preload should support encoded page links ([@adventure-yunfei](https://github.com/adventure-yunfei))\\n - [#7996](https://github.com/facebook/docusaurus/pull/7996) fix(core): CLI command write-translations should extract translations from @docu\u2026 ([@slorber](https://github.com/slorber))\\n - [#7952](https://github.com/facebook/docusaurus/pull/7952) fix(core): allow overriding ssr/dev template meta tags ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-sitemap`\\n - [#7964](https://github.com/facebook/docusaurus/pull/7964) fix(sitemap): filter all routes with robots meta containing noindex ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#7910](https://github.com/facebook/docusaurus/pull/7910) fix(theme-classic): code block line number display with line wrapping ([@yzhe819](https://github.com/yzhe819))\\n - [#7786](https://github.com/facebook/docusaurus/pull/7786) fix: collapse siblings when first category is selected ([@whiteand](https://github.com/whiteand))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#7982](https://github.com/facebook/docusaurus/pull/7982) fix(theme): add aria-label to skip to content link region ([@YoniChechik](https://github.com/YoniChechik))\\n - [#7940](https://github.com/facebook/docusaurus/pull/7940) refactor(theme-classic): split AnnouncementBar, increase z-index, use shadow ([@slorber](https://github.com/slorber))\\n - [#7876](https://github.com/facebook/docusaurus/pull/7876) refactor(theme-classic): make tag text visually certered ([@Kosai106](https://github.com/Kosai106))\\n- `docusaurus-utils`\\n - [#7941](https://github.com/facebook/docusaurus/pull/7941) feat(core): add new Webpack file-loader extensions: avif, mov, mkv, mpg, avi... ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-types`\\n - [#7942](https://github.com/facebook/docusaurus/pull/7942) feat(theme-classic): use lang attribute in navbar locale dropdown items ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-translations`\\n - [#7928](https://github.com/facebook/docusaurus/pull/7928) chore(theme-translations): complete vi translations ([@datlechin](https://github.com/datlechin))\\n\\n## :memo: Documentation\\n\\n- `create-docusaurus`\\n - [#8032](https://github.com/facebook/docusaurus/pull/8032) fix(create-docusaurus): tutorial and init template improvements ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-sitemap`, `docusaurus-theme-classic`\\n - [#7905](https://github.com/facebook/docusaurus/pull/7905) docs: remove mention of beta ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## Committers: 10\\n\\n- Bagdasar Ovsepyan ([@b-ovsepian](https://github.com/b-ovsepian))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Kevin \xd8sterkilde ([@Kosai106](https://github.com/Kosai106))\\n- Morgane Dubus ([@mdubus](https://github.com/mdubus))\\n- Ng\xf4 Qu\u1ED1c \u0110\u1EA1t ([@datlechin](https://github.com/datlechin))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Yoni Chechik ([@YoniChechik](https://github.com/YoniChechik))\\n- [@whiteand](https://github.com/whiteand)\\n- [@yzhe819](https://github.com/yzhe819)\\n- adventure-yunfei ([@adventure-yunfei](https://github.com/adventure-yunfei))"},{"id":"/2.0.1","metadata":{"permalink":"/changelog/2.0.1","source":"@site/changelog/source/2.0.1.md","title":"2.0.1","description":"Fix bad npm publish of 2.0.0","date":"2022-08-01T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2022-08-01T20:00","authors":["slorber"]},"unlisted":false,"prevItem":{"title":"2.1.0","permalink":"/changelog/2.1.0"},"nextItem":{"title":"2.0.0","permalink":"/changelog/2.0.0"},"listPageLink":"/changelog/page/2"},"content":"\x3c!-- truncate --\x3e\\n\\nFix bad npm publish of 2.0.0\\n\\n## Committers: 1\\n\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))"},{"id":"/2.0.0","metadata":{"permalink":"/changelog/2.0.0","source":"@site/changelog/source/2.0.0.md","title":"2.0.0","description":"Bad npm publish, please use 2.0.1","date":"2022-08-01T19:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2022-08-01T19:00","authors":["Josh-Cena","slorber"]},"unlisted":false,"prevItem":{"title":"2.0.1","permalink":"/changelog/2.0.1"},"nextItem":{"title":"2.0.0-rc.1","permalink":"/changelog/2.0.0-rc.1"},"listPageLink":"/changelog/page/2"},"content":"\x3c!-- truncate --\x3e\\n\\nBad npm publish, please use 2.0.1\\n\\n## :nail_care: Polish\\n\\n- `docusaurus`\\n - [#7781](https://github.com/facebook/docusaurus/pull/7781) refactor(core): log Docusaurus & Node version before exiting ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## Committers: 2\\n\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))"},{"id":"/2.0.0-rc.1","metadata":{"permalink":"/changelog/2.0.0-rc.1","source":"@site/changelog/source/2.0.0-rc.1.md","title":"2.0.0-rc.1","description":"Bug Fix","date":"2022-07-14T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Sunghyun Cho","alias":"anaclumos","url":"https://github.com/anaclumos","imageURL":"https://github.com/anaclumos.png","key":"anaclumos","page":null},{"name":"Evan","alias":"DigiPie","url":"https://github.com/DigiPie","imageURL":"https://github.com/DigiPie.png","key":"DigiPie","page":null},{"name":"\u51F1\u6069 Kane","alias":"Gary50613","url":"https://github.com/Gary50613","imageURL":"https://github.com/Gary50613.png","key":"Gary50613","page":null},{"name":"Wes McNamee","alias":"ghostsquad","url":"https://github.com/ghostsquad","imageURL":"https://github.com/ghostsquad.png","key":"ghostsquad","page":null},{"name":"Jeffrey Aven","alias":"jeffreyaven","url":"https://github.com/jeffreyaven","imageURL":"https://github.com/jeffreyaven.png","key":"jeffreyaven","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"LichLord91","alias":"LichLord91","url":"https://github.com/LichLord91","imageURL":"https://github.com/LichLord91.png","key":"LichLord91","page":null},{"name":"Bruce Song","alias":"recallwei","url":"https://github.com/recallwei","imageURL":"https://github.com/recallwei.png","key":"recallwei","page":null},{"name":"Arthur Brugi\xe8re","alias":"RoiArthurB","url":"https://github.com/RoiArthurB","imageURL":"https://github.com/RoiArthurB.png","key":"RoiArthurB","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"The Nguyen","alias":"treoden","url":"https://github.com/treoden","imageURL":"https://github.com/treoden.png","key":"treoden","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2022-07-14T20:00","authors":["anaclumos","DigiPie","Gary50613","ghostsquad","jeffreyaven","Josh-Cena","LichLord91","recallwei","RoiArthurB","slorber","treoden"]},"unlisted":false,"prevItem":{"title":"2.0.0","permalink":"/changelog/2.0.0"},"nextItem":{"title":"2.0.0-beta.22","permalink":"/changelog/2.0.0-beta.22"},"listPageLink":"/changelog/page/2"},"content":"\x3c!-- truncate --\x3e\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus`\\n - [#7776](https://github.com/facebook/docusaurus/pull/7776) fix(core): swizzle --eject js should not copy theme .d.ts files ([@slorber](https://github.com/slorber))\\n - [#7750](https://github.com/facebook/docusaurus/pull/7750) fix(deploy): revert \\"feat(deploy): copy local git config to tmp repo (#7702)\\" ([@ghostsquad](https://github.com/ghostsquad))\\n- `docusaurus-plugin-sitemap`\\n - [#7774](https://github.com/facebook/docusaurus/pull/7774) fix(sitemap): complete gracefully when all pages have noIndex meta ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`\\n - [#7771](https://github.com/facebook/docusaurus/pull/7771) chore: bump Infima to 0.2.0-alpha.42, fix a:hover link bug ([@slorber](https://github.com/slorber))\\n - [#7755](https://github.com/facebook/docusaurus/pull/7755) fix(theme-classic): validate options properly ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7752](https://github.com/facebook/docusaurus/pull/7752) fix(theme-classic): fix Layout theme height CSS ([@LichLord91](https://github.com/LichLord91))\\n- `docusaurus-migrate`\\n - [#7766](https://github.com/facebook/docusaurus/pull/7766) fix(migrate): import siteConfig with file extension ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-search-algolia`\\n - [#7761](https://github.com/facebook/docusaurus/pull/7761) fix(algolia-search): test for canUseIntersectionObserver ([@RoiArthurB](https://github.com/RoiArthurB))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-translations`\\n - [#7762](https://github.com/facebook/docusaurus/pull/7762) chore(theme-translations): complete ko translations ([@anaclumos](https://github.com/anaclumos))\\n\\n## :memo: Documentation\\n\\n- `docusaurus-plugin-content-docs`\\n - [#7706](https://github.com/facebook/docusaurus/pull/7706) docs: release process, versioning, breaking changes, public API surface ([@slorber](https://github.com/slorber))\\n\\n## :wrench: Maintenance\\n\\n- `docusaurus-theme-classic`\\n - [#7777](https://github.com/facebook/docusaurus/pull/7777) refactor(theme): fix duplicate page metadata usage ([@slorber](https://github.com/slorber))\\n - [#7771](https://github.com/facebook/docusaurus/pull/7771) chore: bump Infima to 0.2.0-alpha.42, fix a:hover link bug ([@slorber](https://github.com/slorber))\\n\\n## Committers: 11\\n\\n- Arthur Brugi\xe8re ([@RoiArthurB](https://github.com/RoiArthurB))\\n- Bruce Song ([@recallwei](https://github.com/recallwei))\\n- Evan ([@DigiPie](https://github.com/DigiPie))\\n- Jeffrey Aven ([@jeffreyaven](https://github.com/jeffreyaven))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Sunghyun Cho ([@anaclumos](https://github.com/anaclumos))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- The Nguyen ([@treoden](https://github.com/treoden))\\n- Wes McNamee ([@ghostsquad](https://github.com/ghostsquad))\\n- [@LichLord91](https://github.com/LichLord91)\\n- \u51F1\u6069 Kane ([@Gary50613](https://github.com/Gary50613))"},{"id":"/2.0.0-beta.22","metadata":{"permalink":"/changelog/2.0.0-beta.22","source":"@site/changelog/source/2.0.0-beta.22.md","title":"2.0.0-beta.22","description":"Breaking Change","date":"2022-07-08T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Fl\xe1vio Silva","alias":"201flaviosilva","url":"https://github.com/201flaviosilva","imageURL":"https://github.com/201flaviosilva.png","key":"201flaviosilva","page":null},{"name":"7Wate","alias":"7Wate","url":"https://github.com/7Wate","imageURL":"https://github.com/7Wate.png","key":"7Wate","page":null},{"name":"\u8D64\u57CE\u7ED3\u8863","alias":"AkagiYui","url":"https://github.com/AkagiYui","imageURL":"https://github.com/AkagiYui.png","key":"AkagiYui","page":null},{"name":"alewolf","alias":"alewolf","url":"https://github.com/alewolf","imageURL":"https://github.com/alewolf.png","key":"alewolf","page":null},{"name":"Alexander Nestorov","alias":"alexandernst","url":"https://github.com/alexandernst","imageURL":"https://github.com/alexandernst.png","key":"alexandernst","page":null},{"name":"Ahmed Altomy","alias":"Altomy","url":"https://github.com/Altomy","imageURL":"https://github.com/Altomy.png","key":"Altomy","page":null},{"name":"Sunghyun Cho","alias":"anaclumos","url":"https://github.com/anaclumos","imageURL":"https://github.com/anaclumos.png","key":"anaclumos","page":null},{"name":"Benjamin Cabanes","alias":"bcabanes","url":"https://github.com/bcabanes","imageURL":"https://github.com/bcabanes.png","key":"bcabanes","page":null},{"name":"Ben Myers","alias":"BenDMyers","url":"https://github.com/BenDMyers","imageURL":"https://github.com/BenDMyers.png","key":"BenDMyers","page":null},{"name":"Boulet","alias":"Boulet-","url":"https://github.com/Boulet-","imageURL":"https://github.com/Boulet-.png","key":"Boulet-","page":null},{"name":"Charles Ancheta","alias":"cbebe","url":"https://github.com/cbebe","imageURL":"https://github.com/cbebe.png","key":"cbebe","page":null},{"name":"Clemie McCartney","alias":"clemiee","url":"https://github.com/clemiee","imageURL":"https://github.com/clemiee.png","key":"clemiee","page":null},{"name":"Ng\xf4 Qu\u1ED1c \u0110\u1EA1t","alias":"datlechin","url":"https://github.com/datlechin","imageURL":"https://github.com/datlechin.png","key":"datlechin","page":null},{"name":"Dharsan B","alias":"DharsanB","url":"https://github.com/DharsanB","imageURL":"https://github.com/DharsanB.png","key":"DharsanB","page":null},{"name":"dht","alias":"dht","url":"https://github.com/dht","imageURL":"https://github.com/dht.png","key":"dht","page":null},{"name":"Diego Fran\xe7a","alias":"difranca","url":"https://github.com/difranca","imageURL":"https://github.com/difranca.png","key":"difranca","page":null},{"name":"dpang314","alias":"dpang314","url":"https://github.com/dpang314","imageURL":"https://github.com/dpang314.png","key":"dpang314","page":null},{"name":"emattia","alias":"emattia","url":"https://github.com/emattia","imageURL":"https://github.com/emattia.png","key":"emattia","page":null},{"name":"Forresst","alias":"forresst","url":"https://github.com/forresst","imageURL":"https://github.com/forresst.png","key":"forresst","page":null},{"name":"\u51F1\u6069 Kane","alias":"Gary50613","url":"https://github.com/Gary50613","imageURL":"https://github.com/Gary50613.png","key":"Gary50613","page":null},{"name":"Wes McNamee","alias":"ghostsquad","url":"https://github.com/ghostsquad","imageURL":"https://github.com/ghostsquad.png","key":"ghostsquad","page":null},{"name":"Hyunseung Lee","alias":"HyunseungLee-Travis","url":"https://github.com/HyunseungLee-Travis","imageURL":"https://github.com/HyunseungLee-Travis.png","key":"HyunseungLee-Travis","page":null},{"name":"DOLLE","alias":"JeremyDolle","url":"https://github.com/JeremyDolle","imageURL":"https://github.com/JeremyDolle.png","key":"JeremyDolle","page":null},{"name":"Johnie Hjelm","alias":"johnie","url":"https://github.com/johnie","imageURL":"https://github.com/johnie.png","key":"johnie","page":null},{"name":"John Reilly","alias":"johnnyreilly","url":"https://github.com/johnnyreilly","imageURL":"https://github.com/johnnyreilly.png","key":"johnnyreilly","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"JP","alias":"jpdriver","url":"https://github.com/jpdriver","imageURL":"https://github.com/jpdriver.png","key":"jpdriver","page":null},{"name":"Joshua Schmitt","alias":"jqshuv","url":"https://github.com/jqshuv","imageURL":"https://github.com/jqshuv.png","key":"jqshuv","page":null},{"name":"K\xfcr\u015Fat \u015Eim\u015Fek","alias":"kursatsmsek","url":"https://github.com/kursatsmsek","imageURL":"https://github.com/kursatsmsek.png","key":"kursatsmsek","page":null},{"name":"Lane Goolsby","alias":"lanegoolsby","url":"https://github.com/lanegoolsby","imageURL":"https://github.com/lanegoolsby.png","key":"lanegoolsby","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Matthias Koch","alias":"matkoch","url":"https://github.com/matkoch","imageURL":"https://github.com/matkoch.png","key":"matkoch","page":null},{"name":"\u674E\u5C0F\u96E8","alias":"metal-young","url":"https://github.com/metal-young","imageURL":"https://github.com/metal-young.png","key":"metal-young","page":null},{"name":"Tom Mrazauskas","alias":"mrazauskas","url":"https://github.com/mrazauskas","imageURL":"https://github.com/mrazauskas.png","key":"mrazauskas","page":null},{"name":"pincman","alias":"pincman","url":"https://github.com/pincman","imageURL":"https://github.com/pincman.png","key":"pincman","page":null},{"name":"Redcamel","alias":"redcamel","url":"https://github.com/redcamel","imageURL":"https://github.com/redcamel.png","key":"redcamel","page":null},{"name":"Rein van Haaren","alias":"reinvanhaaren","url":"https://github.com/reinvanhaaren","imageURL":"https://github.com/reinvanhaaren.png","key":"reinvanhaaren","page":null},{"name":"Rudra Sen","alias":"RudraSen2","url":"https://github.com/RudraSen2","imageURL":"https://github.com/RudraSen2.png","key":"RudraSen2","page":null},{"name":"sado","alias":"sado0823","url":"https://github.com/sado0823","imageURL":"https://github.com/sado0823.png","key":"sado0823","page":null},{"name":"Dzung Do","alias":"saosangmo","url":"https://github.com/saosangmo","imageURL":"https://github.com/saosangmo.png","key":"saosangmo","page":null},{"name":"Dima Grossman","alias":"scopsy","url":"https://github.com/scopsy","imageURL":"https://github.com/scopsy.png","key":"scopsy","page":null},{"name":"SheetJSDev","alias":"SheetJSDev","url":"https://github.com/SheetJSDev","imageURL":"https://github.com/SheetJSDev.png","key":"SheetJSDev","page":null},{"name":"Joe Harrison","alias":"sigwinch28","url":"https://github.com/sigwinch28","imageURL":"https://github.com/sigwinch28.png","key":"sigwinch28","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Huy Nguyen","alias":"Smilefounder","url":"https://github.com/Smilefounder","imageURL":"https://github.com/Smilefounder.png","key":"Smilefounder","page":null},{"name":"Steven Serrata","alias":"sserrata","url":"https://github.com/sserrata","imageURL":"https://github.com/sserrata.png","key":"sserrata","page":null},{"name":"Szil\xe1rd D\xf3r\xf3","alias":"szilarddoro","url":"https://github.com/szilarddoro","imageURL":"https://github.com/szilarddoro.png","key":"szilarddoro","page":null},{"name":"Le Thi Van","alias":"vannyle","url":"https://github.com/vannyle","imageURL":"https://github.com/vannyle.png","key":"vannyle","page":null},{"name":"Webber Takken","alias":"webbertakken","url":"https://github.com/webbertakken","imageURL":"https://github.com/webbertakken.png","key":"webbertakken","page":null},{"name":"Yangshun Tay","alias":"yangshun","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png","key":"yangshun","page":null},{"name":"Paul O\u2019Shannessy","alias":"zpao","url":"https://github.com/zpao","imageURL":"https://github.com/zpao.png","key":"zpao","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2022-07-08T20:00","authors":["201flaviosilva","7Wate","AkagiYui","alewolf","alexandernst","Altomy","anaclumos","bcabanes","BenDMyers","Boulet-","cbebe","clemiee","datlechin","DharsanB","dht","difranca","dpang314","emattia","forresst","Gary50613","ghostsquad","HyunseungLee-Travis","JeremyDolle","johnie","johnnyreilly","Josh-Cena","jpdriver","jqshuv","kursatsmsek","lanegoolsby","lex111","matkoch","metal-young","mrazauskas","pincman","redcamel","reinvanhaaren","RudraSen2","sado0823","saosangmo","scopsy","SheetJSDev","sigwinch28","slorber","Smilefounder","sserrata","szilarddoro","vannyle","webbertakken","yangshun","zpao"]},"unlisted":false,"prevItem":{"title":"2.0.0-rc.1","permalink":"/changelog/2.0.0-rc.1"},"nextItem":{"title":"2.0.0-beta.21","permalink":"/changelog/2.0.0-beta.21"},"listPageLink":"/changelog/page/2"},"content":"\x3c!-- truncate --\x3e\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-theme-classic`\\n - [#7740](https://github.com/facebook/docusaurus/pull/7740) refactor(theme): nest theme icons under subfolder @theme/Icon/\\\\* ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#7716](https://github.com/facebook/docusaurus/pull/7716) refactor(theme): split BlogPostItem into smaller theme subcomponents ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`\\n - [#7660](https://github.com/facebook/docusaurus/pull/7660) refactor(theme-common): split package into public/internal API entrypoints ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#7644](https://github.com/facebook/docusaurus/pull/7644) refactor(docs,theme): split DocItem comp, useDoc hook ([@slorber](https://github.com/slorber))\\n- `docusaurus-logger`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`\\n - [#7642](https://github.com/facebook/docusaurus/pull/7642) refactor: remove \\"error\\" reporting level, move reportMessage to logger ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`, `docusaurus-utils-validation`, `docusaurus`\\n - [#7152](https://github.com/facebook/docusaurus/pull/7152) refactor: handle all admonitions via JSX component ([@lex111](https://github.com/lex111))\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-theme-translations`\\n - [#7732](https://github.com/facebook/docusaurus/pull/7732) feat(theme-translations): Dutch translation ([@reinvanhaaren](https://github.com/reinvanhaaren))\\n - [#7715](https://github.com/facebook/docusaurus/pull/7715) feat(theme-translations): Swedish translation ([@johnie](https://github.com/johnie))\\n- `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`\\n - [#7666](https://github.com/facebook/docusaurus/pull/7666) feat(algolia-search): allow translating search modal ([@forresst](https://github.com/forresst))\\n- `create-docusaurus`, `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#7643](https://github.com/facebook/docusaurus/pull/7643) feat(theme-classic): themeConfig navbar/footer logos accept className/style + update Meta Open-Source Logo ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-client-redirects`\\n - [#7649](https://github.com/facebook/docusaurus/pull/7649) feat(client-redirects): make plugin respect onDuplicateRoutes config ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`\\n - [#7624](https://github.com/facebook/docusaurus/pull/7624) feat: allow customizing localization path of each locale ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus`\\n - [#7581](https://github.com/facebook/docusaurus/pull/7581) feat(core): allow opting out of HTML minification ([@alexandernst](https://github.com/alexandernst))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#7557](https://github.com/facebook/docusaurus/pull/7557) feat: allow specifying custom target for FooterLogo ([@vannyle](https://github.com/vannyle))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-translations`\\n - [#7556](https://github.com/facebook/docusaurus/pull/7556) feat: add admonition type title translations ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`\\n - [#7386](https://github.com/facebook/docusaurus/pull/7386) feat(core): allow customizing the i18n directory path ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-live-codeblock`\\n - [#7514](https://github.com/facebook/docusaurus/pull/7514) feat(live-codeblock): add support for noInline to interactive code blocks ([@jpdriver](https://github.com/jpdriver))\\n- `docusaurus-plugin-content-docs`\\n - [#7461](https://github.com/facebook/docusaurus/pull/7461) feat(content-docs): last_update front matter ([@dpang314](https://github.com/dpang314))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`\\n - [#7727](https://github.com/facebook/docusaurus/pull/7727) fix(theme): show blog post edit link even when no tag & not truncated ([@anaclumos](https://github.com/anaclumos))\\n - [#7659](https://github.com/facebook/docusaurus/pull/7659) fix(theme-classic): expose empty string alt text in navbar logos ([@BenDMyers](https://github.com/BenDMyers))\\n - [#7595](https://github.com/facebook/docusaurus/pull/7595) fix(content-pages): add article wrapper around MDXContent ([@matkoch](https://github.com/matkoch))\\n- `docusaurus-theme-translations`\\n - [#7694](https://github.com/facebook/docusaurus/pull/7694) fix(theme-translations): typo in vi locale ([@saosangmo](https://github.com/saosangmo))\\n- `docusaurus-plugin-content-docs`\\n - [#7638](https://github.com/facebook/docusaurus/pull/7638) fix(docs): forward doc frontMatter.sidebar_custom_props to linking sidebar category ([@slorber](https://github.com/slorber))\\n - [#7634](https://github.com/facebook/docusaurus/pull/7634) fix(content-docs): allow translating doc labels in sidebars.js ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-utils`\\n - [#7604](https://github.com/facebook/docusaurus/pull/7604) fix(utils): allow any non-boundary characters in Markdown heading ID ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-cssnano-preset`\\n - [#7593](https://github.com/facebook/docusaurus/pull/7593) fix(cssnano-preset): disable z-index minification ([@dpang314](https://github.com/dpang314))\\n- `docusaurus-theme-common`\\n - [#7551](https://github.com/facebook/docusaurus/pull/7551) fix(theme-classic): code block wrap mode should allow wrapping in the middle of a word ([@slorber](https://github.com/slorber))\\n - [#7485](https://github.com/facebook/docusaurus/pull/7485) fix(theme-classic): inconsistent code block wrapping ([@dpang314](https://github.com/dpang314))\\n- `docusaurus-mdx-loader`, `docusaurus-module-type-aliases`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-preset-classic`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-types`, `docusaurus-utils-common`, `docusaurus-utils`\\n - [#7521](https://github.com/facebook/docusaurus/pull/7521) fix: make type-checking work in Yarn PnP ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-translations`\\n - [#7696](https://github.com/facebook/docusaurus/pull/7696) fix(theme-translations): improve grammar of zh translation ([@AkagiYui](https://github.com/AkagiYui))\\n - [#7691](https://github.com/facebook/docusaurus/pull/7691) chore(theme-translations): complete vi translations ([@datlechin](https://github.com/datlechin))\\n - [#7683](https://github.com/facebook/docusaurus/pull/7683) chore(theme-translations): complete ar translations ([@Altomy](https://github.com/Altomy))\\n - [#7633](https://github.com/facebook/docusaurus/pull/7633) chore(theme-translations): complete ko translations ([@HyunseungLee-Travis](https://github.com/HyunseungLee-Travis))\\n- `docusaurus`\\n - [#7702](https://github.com/facebook/docusaurus/pull/7702) feat(deploy): copy local git config to tmp repo ([@ghostsquad](https://github.com/ghostsquad))\\n - [#7600](https://github.com/facebook/docusaurus/pull/7600) fix: force refresh on chunk preload error ([@yangshun](https://github.com/yangshun))\\n- `docusaurus-plugin-content-docs`\\n - [#7673](https://github.com/facebook/docusaurus/pull/7673) fix(content-docs): format last update date as \\"Jun 19, 2020\\" ([@sigwinch28](https://github.com/sigwinch28))\\n- `docusaurus-theme-common`, `docusaurus-theme-search-algolia`\\n - [#7671](https://github.com/facebook/docusaurus/pull/7671) refactor(theme-common): rename useDynamicCallback to useEvent ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-common`\\n - [#7648](https://github.com/facebook/docusaurus/pull/7648) fix(theme-common): make useShallowMemoObject key-order-insensitive ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`\\n - [#7639](https://github.com/facebook/docusaurus/pull/7639) chore(create): update the facebook template with current assets ([@zpao](https://github.com/zpao))\\n - [#7520](https://github.com/facebook/docusaurus/pull/7520) feat: add engines field to templates\' package.json ([@johnnyreilly](https://github.com/johnnyreilly))\\n- `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-pwa`, `docusaurus-theme-classic`, `docusaurus`\\n - [#7579](https://github.com/facebook/docusaurus/pull/7579) refactor(pwa): simplify registerSW code, fix ESLint errors ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`\\n - [#7545](https://github.com/facebook/docusaurus/pull/7545) feat(analytics): allow query/hash changes to be sent to GA ([@lanegoolsby](https://github.com/lanegoolsby))\\n\\n## :memo: Documentation\\n\\n- Other\\n - [#7739](https://github.com/facebook/docusaurus/pull/7739) docs: swizzle react-live with eject ([@SheetJSDev](https://github.com/SheetJSDev))\\n - [#7723](https://github.com/facebook/docusaurus/pull/7723) docs: add GitHub pages deployment troubleshooting guide ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7705](https://github.com/facebook/docusaurus/pull/7705) docs: mention MDXContent ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7675](https://github.com/facebook/docusaurus/pull/7675) docs: add docusaurus-openapi-docs to resources ([@sserrata](https://github.com/sserrata))\\n - [#7677](https://github.com/facebook/docusaurus/pull/7677) docs: add more info on github cross repo deployment ([@bcabanes](https://github.com/bcabanes))\\n - [#7563](https://github.com/facebook/docusaurus/pull/7563) docs: add awesome-docusaurus resource ([@webbertakken](https://github.com/webbertakken))\\n - [#7665](https://github.com/facebook/docusaurus/pull/7665) docs: add link from every category index page to the guide page ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7519](https://github.com/facebook/docusaurus/pull/7519) docs: multiple documentation elaborations ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7518](https://github.com/facebook/docusaurus/pull/7518) docs: remove useless front matter ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7512](https://github.com/facebook/docusaurus/pull/7512) docs: update Kent C. Dodds Twitter avatar ([@DharsanB](https://github.com/DharsanB))\\n- `create-docusaurus`\\n - [#7611](https://github.com/facebook/docusaurus/pull/7611) docs: advise using Node 18 in deployment ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7582](https://github.com/facebook/docusaurus/pull/7582) docs: make localhost links clickable ([@dht](https://github.com/dht))\\n- `docusaurus-plugin-client-redirects`\\n - [#7607](https://github.com/facebook/docusaurus/pull/7607) refactor(client-redirects): elaborate documentation, minor refactor ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :wrench: Maintenance\\n\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#7676](https://github.com/facebook/docusaurus/pull/7676) refactor(theme): move LayoutProviders to Layout/Provider; composeProviders util ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#7674](https://github.com/facebook/docusaurus/pull/7674) chore: prevent importing theme components with relative paths ([@slorber](https://github.com/slorber))\\n - [#7664](https://github.com/facebook/docusaurus/pull/7664) chore: upgrade Infima to alpha.40 ([@slorber](https://github.com/slorber))\\n- Other\\n - [#7663](https://github.com/facebook/docusaurus/pull/7663) misc: share .vscode/extensions.json ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus`\\n - [#7583](https://github.com/facebook/docusaurus/pull/7583) refactor(cli): make the CLI an even thinner wrapper around command functions ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7547](https://github.com/facebook/docusaurus/pull/7547) chore: update static-site-generator-webpack-plugin ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`, `docusaurus-cssnano-preset`, `docusaurus-logger`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-preset-classic`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`, `docusaurus-types`, `docusaurus-utils-common`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `eslint-plugin`, `lqip-loader`, `stylelint-copyright`\\n - [#7586](https://github.com/facebook/docusaurus/pull/7586) chore: upgrade to TS 4.7, compile with NodeNext ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## Committers: 51\\n\\n- 7Wate ([@7Wate](https://github.com/7Wate))\\n- Ahmed Altomy ([@Altomy](https://github.com/Altomy))\\n- Alexander Nestorov ([@alexandernst](https://github.com/alexandernst))\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Ben Myers ([@BenDMyers](https://github.com/BenDMyers))\\n- Benjamin Cabanes ([@bcabanes](https://github.com/bcabanes))\\n- Boulet ([@Boulet-](https://github.com/Boulet-))\\n- Charles Ancheta ([@cbebe](https://github.com/cbebe))\\n- Clemie McCartney ([@clemiee](https://github.com/clemiee))\\n- DOLLE ([@JeremyDolle](https://github.com/JeremyDolle))\\n- Dharsan B ([@DharsanB](https://github.com/DharsanB))\\n- Diego Fran\xe7a ([@difranca](https://github.com/difranca))\\n- Dima Grossman ([@scopsy](https://github.com/scopsy))\\n- Dzung Do ([@saosangmo](https://github.com/saosangmo))\\n- Fl\xe1vio Silva ([@201flaviosilva](https://github.com/201flaviosilva))\\n- Forresst ([@forresst](https://github.com/forresst))\\n- Huy Nguyen ([@Smilefounder](https://github.com/Smilefounder))\\n- Hyunseung Lee ([@HyunseungLee-Travis](https://github.com/HyunseungLee-Travis))\\n- JP ([@jpdriver](https://github.com/jpdriver))\\n- Joe Harrison ([@sigwinch28](https://github.com/sigwinch28))\\n- John Reilly ([@johnnyreilly](https://github.com/johnnyreilly))\\n- Johnie Hjelm ([@johnie](https://github.com/johnie))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Joshua Schmitt ([@jqshuv](https://github.com/jqshuv))\\n- K\xfcr\u015Fat \u015Eim\u015Fek ([@kursatsmsek](https://github.com/kursatsmsek))\\n- Lane Goolsby ([@lanegoolsby](https://github.com/lanegoolsby))\\n- Le Thi Van ([@vannyle](https://github.com/vannyle))\\n- Matthias Koch ([@matkoch](https://github.com/matkoch))\\n- Ng\xf4 Qu\u1ED1c \u0110\u1EA1t ([@datlechin](https://github.com/datlechin))\\n- Paul O\u2019Shannessy ([@zpao](https://github.com/zpao))\\n- Redcamel ([@redcamel](https://github.com/redcamel))\\n- Rein van Haaren ([@reinvanhaaren](https://github.com/reinvanhaaren))\\n- Rudra Sen ([@RudraSen2](https://github.com/RudraSen2))\\n- Steven Serrata ([@sserrata](https://github.com/sserrata))\\n- Sunghyun Cho ([@anaclumos](https://github.com/anaclumos))\\n- Szil\xe1rd D\xf3r\xf3 ([@szilarddoro](https://github.com/szilarddoro))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Tom Mrazauskas ([@mrazauskas](https://github.com/mrazauskas))\\n- Webber Takken ([@webbertakken](https://github.com/webbertakken))\\n- Wes McNamee ([@ghostsquad](https://github.com/ghostsquad))\\n- Yangshun Tay ([@yangshun](https://github.com/yangshun))\\n- [@SheetJSDev](https://github.com/SheetJSDev)\\n- [@alewolf](https://github.com/alewolf)\\n- [@dpang314](https://github.com/dpang314)\\n- dht ([@dht](https://github.com/dht))\\n- emattia ([@emattia](https://github.com/emattia))\\n- pincman ([@pincman](https://github.com/pincman))\\n- sado ([@sado0823](https://github.com/sado0823))\\n- \u51F1\u6069 Kane ([@Gary50613](https://github.com/Gary50613))\\n- \u674E\u5C0F\u96E8 ([@metal-young](https://github.com/metal-young))\\n- \u8D64\u57CE\u7ED3\u8863 ([@AkagiYui](https://github.com/AkagiYui))"},{"id":"/2.0.0-beta.21","metadata":{"permalink":"/changelog/2.0.0-beta.21","source":"@site/changelog/source/2.0.0-beta.21.md","title":"2.0.0-beta.21","description":"Breaking Change","date":"2022-05-27T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Benjamin Diolez","alias":"BenDz","url":"https://github.com/BenDz","imageURL":"https://github.com/BenDz.png","key":"BenDz","page":null},{"name":"Charles Korn","alias":"charleskorn","url":"https://github.com/charleskorn","imageURL":"https://github.com/charleskorn.png","key":"charleskorn","page":null},{"name":"Ng\xf4 Qu\u1ED1c \u0110\u1EA1t","alias":"datlechin","url":"https://github.com/datlechin","imageURL":"https://github.com/datlechin.png","key":"datlechin","page":null},{"name":"Designatory","alias":"Designatory","url":"https://github.com/Designatory","imageURL":"https://github.com/Designatory.png","key":"Designatory","page":null},{"name":"Forresst","alias":"forresst","url":"https://github.com/forresst","imageURL":"https://github.com/forresst.png","key":"forresst","page":null},{"name":"\u51F1\u6069 Kane","alias":"Gary50613","url":"https://github.com/Gary50613","imageURL":"https://github.com/Gary50613.png","key":"Gary50613","page":null},{"name":"Ggicci","alias":"ggicci","url":"https://github.com/ggicci","imageURL":"https://github.com/ggicci.png","key":"ggicci","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Jan Peer St\xf6cklmair","alias":"JPeer264","url":"https://github.com/JPeer264","imageURL":"https://github.com/JPeer264.png","key":"JPeer264","page":null},{"name":"Jeremy","alias":"jrmyw92","url":"https://github.com/jrmyw92","imageURL":"https://github.com/jrmyw92.png","key":"jrmyw92","page":null},{"name":"Junjie","alias":"junjieweb","url":"https://github.com/junjieweb","imageURL":"https://github.com/junjieweb.png","key":"junjieweb","page":null},{"name":"Lane Goolsby","alias":"lanegoolsby","url":"https://github.com/lanegoolsby","imageURL":"https://github.com/lanegoolsby.png","key":"lanegoolsby","page":null},{"name":"Massoud Maboudi","alias":"massoudmaboudi","url":"https://github.com/massoudmaboudi","imageURL":"https://github.com/massoudmaboudi.png","key":"massoudmaboudi","page":null},{"name":"Matthias Koch","alias":"matkoch","url":"https://github.com/matkoch","imageURL":"https://github.com/matkoch.png","key":"matkoch","page":null},{"name":"Akara","alias":"Messiahhh","url":"https://github.com/Messiahhh","imageURL":"https://github.com/Messiahhh.png","key":"Messiahhh","page":null},{"name":"Michael Hughes","alias":"mhughes2k","url":"https://github.com/mhughes2k","imageURL":"https://github.com/mhughes2k.png","key":"mhughes2k","page":null},{"name":"Nitya Narasimhan","alias":"nitya","url":"https://github.com/nitya","imageURL":"https://github.com/nitya.png","key":"nitya","page":null},{"name":"Oluwatobi Sofela","alias":"oluwatobiss","url":"https://github.com/oluwatobiss","imageURL":"https://github.com/oluwatobiss.png","key":"oluwatobiss","page":null},{"name":"Ori Shalom","alias":"ori-shalom","url":"https://github.com/ori-shalom","imageURL":"https://github.com/ori-shalom.png","key":"ori-shalom","page":null},{"name":"Pranab Das","alias":"pranabdas","url":"https://github.com/pranabdas","imageURL":"https://github.com/pranabdas.png","key":"pranabdas","page":null},{"name":"Rui Peres","alias":"RuiAAPeres","url":"https://github.com/RuiAAPeres","imageURL":"https://github.com/RuiAAPeres.png","key":"RuiAAPeres","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"James","alias":"Zamiell","url":"https://github.com/Zamiell","imageURL":"https://github.com/Zamiell.png","key":"Zamiell","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2022-05-27T20:00","authors":["BenDz","charleskorn","datlechin","Designatory","forresst","Gary50613","ggicci","Josh-Cena","JPeer264","jrmyw92","junjieweb","lanegoolsby","massoudmaboudi","matkoch","Messiahhh","mhughes2k","nitya","oluwatobiss","ori-shalom","pranabdas","RuiAAPeres","slorber","Zamiell"]},"unlisted":false,"prevItem":{"title":"2.0.0-beta.22","permalink":"/changelog/2.0.0-beta.22"},"nextItem":{"title":"2.0.0-beta.20","permalink":"/changelog/2.0.0-beta.20"},"listPageLink":"/changelog/page/2"},"content":"\x3c!-- truncate --\x3e\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-plugin-pwa`\\n - [#7422](https://github.com/facebook/docusaurus/pull/7422) refactor(pwa): remove reloadPopup option in favor of swizzling ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-cssnano-preset`, `docusaurus-logger`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-preset-classic`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`, `docusaurus-utils-common`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `eslint-plugin`, `lqip-loader`\\n - [#7501](https://github.com/facebook/docusaurus/pull/7501) chore: require Node 16.14 ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-plugin-sitemap`\\n - [#7469](https://github.com/facebook/docusaurus/pull/7469) feat(sitemap): allow customizing the output name ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-utils`, `docusaurus`\\n - [#7371](https://github.com/facebook/docusaurus/pull/7371) feat(core): support docusaurus.config.cjs as default file name ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus`\\n - [#7500](https://github.com/facebook/docusaurus/pull/7500) feat: make docusaurus serve automatically open in browser ([@Zamiell](https://github.com/Zamiell))\\n - [#7452](https://github.com/facebook/docusaurus/pull/7452) feat: add --no-minify flag to docusaurus start ([@lanegoolsby](https://github.com/lanegoolsby))\\n- `docusaurus-theme-classic`\\n - [#7357](https://github.com/facebook/docusaurus/pull/7357) feat(theme-classic): allow className as option for type: \\"search\\" ([@JPeer264](https://github.com/JPeer264))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus`\\n - [#7362](https://github.com/facebook/docusaurus/pull/7362) fix: always emit SEO title + og:title meta ([@charleskorn](https://github.com/charleskorn))\\n - [#7453](https://github.com/facebook/docusaurus/pull/7453) fix(core): avoid using logger and fs.readJSON in SSR ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7369](https://github.com/facebook/docusaurus/pull/7369) fix(cli): output correct path when swizzling bare-file component in subfolder ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7360](https://github.com/facebook/docusaurus/pull/7360) fix(core): allow githubPort in config validation ([@mhughes2k](https://github.com/mhughes2k))\\n- `docusaurus-plugin-google-gtag`\\n - [#7424](https://github.com/facebook/docusaurus/pull/7424) fix(gtag): send the newly rendered page\'s title instead of the old one\'s ([@ori-shalom](https://github.com/ori-shalom))\\n- `create-docusaurus`, `docusaurus-utils`\\n - [#7507](https://github.com/facebook/docusaurus/pull/7507) fix(create-docusaurus): potential security issue with command injection ([@slorber](https://github.com/slorber))\\n- `docusaurus-module-type-aliases`, `docusaurus-theme-classic`, `docusaurus`\\n - [#7492](https://github.com/facebook/docusaurus/pull/7492) fix(core): always treat error boundary fallback as a callback ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`\\n - [#7438](https://github.com/facebook/docusaurus/pull/7438) fix(theme-classic): allow nested task lists to preserve the indent ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7430](https://github.com/facebook/docusaurus/pull/7430) fix(theme-classic): consistently apply the right active class name for all navbar items ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7411](https://github.com/facebook/docusaurus/pull/7411) fix(theme-classic): autocollapse sidebar categories when navigating with paginator ([@pranabdas](https://github.com/pranabdas))\\n - [#7363](https://github.com/facebook/docusaurus/pull/7363) fix(theme-classic): resolve customCss from site dir ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-utils`\\n - [#7464](https://github.com/facebook/docusaurus/pull/7464) fix(utils): fix Markdown link replacement when link text is same as href ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7458](https://github.com/facebook/docusaurus/pull/7458) fix(utils): avoid replacing Markdown links missing the directly next link ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`\\n - [#7392](https://github.com/facebook/docusaurus/pull/7392) fix(mdx-loader): use React.Fragment as fragment factory ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-docs`\\n - [#7385](https://github.com/facebook/docusaurus/pull/7385) fix(content-docs): restore functionality when a category only has index page ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-translations`\\n - [#7493](https://github.com/facebook/docusaurus/pull/7493) chore(theme-translations): complete French translations ([@forresst](https://github.com/forresst))\\n - [#7474](https://github.com/facebook/docusaurus/pull/7474) chore(theme-translations): complete zh translations ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7400](https://github.com/facebook/docusaurus/pull/7400) chore(theme-translations): complete Farsi translations ([@massoudmaboudi](https://github.com/massoudmaboudi))\\n- `docusaurus`\\n - [#7499](https://github.com/facebook/docusaurus/pull/7499) fix: avoid printing period after localhost URL ([@Zamiell](https://github.com/Zamiell))\\n- `create-docusaurus`\\n - [#7374](https://github.com/facebook/docusaurus/pull/7374) refactor(create): clean up logic when prompting for unspecified arguments ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :memo: Documentation\\n\\n- [#7503](https://github.com/facebook/docusaurus/pull/7503) docs: document MDXComponents scope ([@Josh-Cena](https://github.com/Josh-Cena))\\n- [#7497](https://github.com/facebook/docusaurus/pull/7497) docs: link every reference of types in API table to the type definition ([@Zamiell](https://github.com/Zamiell))\\n- [#7407](https://github.com/facebook/docusaurus/pull/7407) docs: add Azure SWA as deployment option ([@nitya](https://github.com/nitya))\\n- [#7390](https://github.com/facebook/docusaurus/pull/7390) fix(website): use react-lite-youtube-embed for lazy YouTube video ([@matkoch](https://github.com/matkoch))\\n\\n## :wrench: Maintenance\\n\\n- `create-docusaurus`, `docusaurus-logger`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-module-type-aliases`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `lqip-loader`, `stylelint-copyright`\\n - [#7477](https://github.com/facebook/docusaurus/pull/7477) refactor: fix a lot of errors in type-aware linting ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`, `docusaurus-theme-translations`\\n - [#7447](https://github.com/facebook/docusaurus/pull/7447) refactor(theme-classic): migrate to tsc for build ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `stylelint-copyright`\\n - [#7441](https://github.com/facebook/docusaurus/pull/7441) refactor(stylelint-copyright): migrate to TS ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-cssnano-preset`\\n - [#7440](https://github.com/facebook/docusaurus/pull/7440) refactor(cssnano-preset): migrate to TS ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-logger`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-preset-classic`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`, `docusaurus-utils-common`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `eslint-plugin`, `lqip-loader`\\n - [#7437](https://github.com/facebook/docusaurus/pull/7437) refactor: use TS project references instead of running tsc multiple times ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-pwa`\\n - [#7421](https://github.com/facebook/docusaurus/pull/7421) refactor(pwa): migrate client modules to TS ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`\\n - [#7415](https://github.com/facebook/docusaurus/pull/7415) refactor(theme-classic): always collocate stylesheets with components in one folder ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus`\\n - [#7405](https://github.com/facebook/docusaurus/pull/7405) refactor(core): properly code-split NotFound page ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## Committers: 23\\n\\n- Akara ([@Messiahhh](https://github.com/Messiahhh))\\n- Benjamin Diolez ([@BenDz](https://github.com/BenDz))\\n- Charles Korn ([@charleskorn](https://github.com/charleskorn))\\n- Designatory ([@Designatory](https://github.com/Designatory))\\n- Forresst ([@forresst](https://github.com/forresst))\\n- Ggicci ([@ggicci](https://github.com/ggicci))\\n- James ([@Zamiell](https://github.com/Zamiell))\\n- Jan Peer St\xf6cklmair ([@JPeer264](https://github.com/JPeer264))\\n- Jeremy ([@jrmyw92](https://github.com/jrmyw92))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Junjie ([@junjieweb](https://github.com/junjieweb))\\n- Lane Goolsby ([@lanegoolsby](https://github.com/lanegoolsby))\\n- Massoud Maboudi ([@massoudmaboudi](https://github.com/massoudmaboudi))\\n- Matthias Koch ([@matkoch](https://github.com/matkoch))\\n- Michael Hughes ([@mhughes2k](https://github.com/mhughes2k))\\n- Ng\xf4 Qu\u1ED1c \u0110\u1EA1t ([@datlechin](https://github.com/datlechin))\\n- Nitya Narasimhan ([@nitya](https://github.com/nitya))\\n- Oluwatobi Sofela ([@oluwatobiss](https://github.com/oluwatobiss))\\n- Ori Shalom ([@ori-shalom](https://github.com/ori-shalom))\\n- Pranab Das ([@pranabdas](https://github.com/pranabdas))\\n- Rui Peres ([@RuiAAPeres](https://github.com/RuiAAPeres))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- \u51F1\u6069 Kane ([@Gary50613](https://github.com/Gary50613))"},{"id":"/2.0.0-beta.20","metadata":{"permalink":"/changelog/2.0.0-beta.20","source":"@site/changelog/source/2.0.0-beta.20.md","title":"2.0.0-beta.20","description":"Bug Fix","date":"2022-05-05T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Steven Hicks","alias":"pepopowitz","url":"https://github.com/pepopowitz","imageURL":"https://github.com/pepopowitz.png","key":"pepopowitz","page":null},{"name":"Reece Dunham","alias":"RDIL","url":"https://github.com/RDIL","imageURL":"https://github.com/RDIL.png","key":"RDIL","page":null},{"name":"Sergey Gromkov","alias":"sgromkov","url":"https://github.com/sgromkov","imageURL":"https://github.com/sgromkov.png","key":"sgromkov","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2022-05-05T20:00","authors":["Josh-Cena","lex111","pepopowitz","RDIL","sgromkov","slorber"]},"unlisted":false,"prevItem":{"title":"2.0.0-beta.21","permalink":"/changelog/2.0.0-beta.21"},"nextItem":{"title":"2.0.0-beta.19","permalink":"/changelog/2.0.0-beta.19"},"listPageLink":"/changelog/page/2"},"content":"\x3c!-- truncate --\x3e\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus`\\n - [#7342](https://github.com/facebook/docusaurus/pull/7342) fix: avoid flash of page scrolling to top on refresh ([@slorber](https://github.com/slorber))\\n - [#7329](https://github.com/facebook/docusaurus/pull/7329) fix(core): inject docusaurus version into SSR as local ([@RDIL](https://github.com/RDIL))\\n- `docusaurus-theme-classic`\\n - [#7341](https://github.com/facebook/docusaurus/pull/7341) fix(theme-classic): properly highlight code block line numbers ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :memo: Documentation\\n\\n- [#7334](https://github.com/facebook/docusaurus/pull/7334) feat(website): make canary release page display actual canary version name ([@Josh-Cena](https://github.com/Josh-Cena))\\n- [#7343](https://github.com/facebook/docusaurus/pull/7343) docs: add page for create-docusaurus API documentation ([@Josh-Cena](https://github.com/Josh-Cena))\\n- [#7340](https://github.com/facebook/docusaurus/pull/7340) docs: add Yandex Metrika plugin to community plugins ([@sgromkov](https://github.com/sgromkov))\\n- [#7336](https://github.com/facebook/docusaurus/pull/7336) fix(website): fix multiple accessibility issues around color contrast ([@Josh-Cena](https://github.com/Josh-Cena))\\n- [#7327](https://github.com/facebook/docusaurus/pull/7327) docs: add clarity to versioning behavior ([@pepopowitz](https://github.com/pepopowitz))\\n\\n## Committers: 6\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Reece Dunham ([@RDIL](https://github.com/RDIL))\\n- Sergey Gromkov ([@sgromkov](https://github.com/sgromkov))\\n- Steven Hicks ([@pepopowitz](https://github.com/pepopowitz))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))"},{"id":"/2.0.0-beta.19","metadata":{"permalink":"/changelog/2.0.0-beta.19","source":"@site/changelog/source/2.0.0-beta.19.md","title":"2.0.0-beta.19","description":"New Feature","date":"2022-05-04T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Aaron Nwabuoku","alias":"aerovulpe","url":"https://github.com/aerovulpe","imageURL":"https://github.com/aerovulpe.png","key":"aerovulpe","page":null},{"name":"AkiraVoid","alias":"AkiraVoid","url":"https://github.com/AkiraVoid","imageURL":"https://github.com/AkiraVoid.png","key":"AkiraVoid","page":null},{"name":"Andrew Lyons","alias":"andrewnicols","url":"https://github.com/andrewnicols","imageURL":"https://github.com/andrewnicols.png","key":"andrewnicols","page":null},{"name":"apq","alias":"AntonPalmqvist","url":"https://github.com/AntonPalmqvist","imageURL":"https://github.com/AntonPalmqvist.png","key":"AntonPalmqvist","page":null},{"name":"ApsarasX","alias":"ApsarasX","url":"https://github.com/ApsarasX","imageURL":"https://github.com/ApsarasX.png","key":"ApsarasX","page":null},{"name":"chelproc","alias":"chelproc","url":"https://github.com/chelproc","imageURL":"https://github.com/chelproc.png","key":"chelproc","page":null},{"name":"Viktor Chernodub","alias":"chernodub","url":"https://github.com/chernodub","imageURL":"https://github.com/chernodub.png","key":"chernodub","page":null},{"name":"curatorcat.pcc.eth","alias":"CuratorCat","url":"https://github.com/CuratorCat","imageURL":"https://github.com/CuratorCat.png","key":"CuratorCat","page":null},{"name":"Cwen Yin","alias":"cwen0","url":"https://github.com/cwen0","imageURL":"https://github.com/cwen0.png","key":"cwen0","page":null},{"name":"Fusang\u2740","alias":"cxOrz","url":"https://github.com/cxOrz","imageURL":"https://github.com/cxOrz.png","key":"cxOrz","page":null},{"name":"Dan Roscigno","alias":"DanRoscigno","url":"https://github.com/DanRoscigno","imageURL":"https://github.com/DanRoscigno.png","key":"DanRoscigno","page":null},{"name":"Andrei Canta","alias":"deiucanta","url":"https://github.com/deiucanta","imageURL":"https://github.com/deiucanta.png","key":"deiucanta","page":null},{"name":"deployn","alias":"deployn","url":"https://github.com/deployn","imageURL":"https://github.com/deployn.png","key":"deployn","page":null},{"name":"Dr-Electron","alias":"Dr-Electron","url":"https://github.com/Dr-Electron","imageURL":"https://github.com/Dr-Electron.png","key":"Dr-Electron","page":null},{"name":"Chinazaekpere Ngubo","alias":"dr-ngubo","url":"https://github.com/dr-ngubo","imageURL":"https://github.com/dr-ngubo.png","key":"dr-ngubo","page":null},{"name":"duanwilliam","alias":"duanwilliam","url":"https://github.com/duanwilliam","imageURL":"https://github.com/duanwilliam.png","key":"duanwilliam","page":null},{"name":"Elias Papavasileiou","alias":"elias-pap","url":"https://github.com/elias-pap","imageURL":"https://github.com/elias-pap.png","key":"elias-pap","page":null},{"name":"Indermohan Singh","alias":"imsingh","url":"https://github.com/imsingh","imageURL":"https://github.com/imsingh.png","key":"imsingh","page":null},{"name":"Jeffrey Aven","alias":"jeffreyaven","url":"https://github.com/jeffreyaven","imageURL":"https://github.com/jeffreyaven.png","key":"jeffreyaven","page":null},{"name":"Jody Heavener","alias":"jodyheavener","url":"https://github.com/jodyheavener","imageURL":"https://github.com/jodyheavener.png","key":"jodyheavener","page":null},{"name":"JMW","alias":"JohnnyMcWeed","url":"https://github.com/JohnnyMcWeed","imageURL":"https://github.com/JohnnyMcWeed.png","key":"JohnnyMcWeed","page":null},{"name":"John Reilly","alias":"johnnyreilly","url":"https://github.com/johnnyreilly","imageURL":"https://github.com/johnnyreilly.png","key":"johnnyreilly","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Kayce Basques","alias":"kaycebasques","url":"https://github.com/kaycebasques","imageURL":"https://github.com/kaycebasques.png","key":"kaycebasques","page":null},{"name":"kgolubic","alias":"kgolubic","url":"https://github.com/kgolubic","imageURL":"https://github.com/kgolubic.png","key":"kgolubic","page":null},{"name":"loic","alias":"layerzzzio","url":"https://github.com/layerzzzio","imageURL":"https://github.com/layerzzzio.png","key":"layerzzzio","page":null},{"name":"Leedom","alias":"leedom92","url":"https://github.com/leedom92","imageURL":"https://github.com/leedom92.png","key":"leedom92","page":null},{"name":"Martin Blom","alias":"LeviticusMB","url":"https://github.com/LeviticusMB","imageURL":"https://github.com/LeviticusMB.png","key":"LeviticusMB","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Lukas Bach","alias":"lukasbach","url":"https://github.com/lukasbach","imageURL":"https://github.com/lukasbach.png","key":"lukasbach","page":null},{"name":"Karl Ward","alias":"mjau-mjau","url":"https://github.com/mjau-mjau","imageURL":"https://github.com/mjau-mjau.png","key":"mjau-mjau","page":null},{"name":"mehdim","alias":"mxhdx","url":"https://github.com/mxhdx","imageURL":"https://github.com/mxhdx.png","key":"mxhdx","page":null},{"name":"Chau Tran","alias":"nartc","url":"https://github.com/nartc","imageURL":"https://github.com/nartc.png","key":"nartc","page":null},{"name":"Naveen","alias":"naveensrinivasan","url":"https://github.com/naveensrinivasan","imageURL":"https://github.com/naveensrinivasan.png","key":"naveensrinivasan","page":null},{"name":"Pablo Cordon","alias":"pcordon","url":"https://github.com/pcordon","imageURL":"https://github.com/pcordon.png","key":"pcordon","page":null},{"name":"Lenz Weber-Tronic","alias":"phryneas","url":"https://github.com/phryneas","imageURL":"https://github.com/phryneas.png","key":"phryneas","page":null},{"name":"Pierre-Gilles Leymarie","alias":"Pierre-Gilles","url":"https://github.com/Pierre-Gilles","imageURL":"https://github.com/Pierre-Gilles.png","key":"Pierre-Gilles","page":null},{"name":"redhat123456","alias":"redhat123456","url":"https://github.com/redhat123456","imageURL":"https://github.com/redhat123456.png","key":"redhat123456","page":null},{"name":"rev","alias":"rev4324","url":"https://github.com/rev4324","imageURL":"https://github.com/rev4324.png","key":"rev4324","page":null},{"name":"Zac A","alias":"sandypockets","url":"https://github.com/sandypockets","imageURL":"https://github.com/sandypockets.png","key":"sandypockets","page":null},{"name":"czhen","alias":"shczhen","url":"https://github.com/shczhen","imageURL":"https://github.com/shczhen.png","key":"shczhen","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Evan","alias":"sulu5890","url":"https://github.com/sulu5890","imageURL":"https://github.com/sulu5890.png","key":"sulu5890","page":null},{"name":"surendran82","alias":"surendran82","url":"https://github.com/surendran82","imageURL":"https://github.com/surendran82.png","key":"surendran82","page":null},{"name":"svix-ken","alias":"svix-ken","url":"https://github.com/svix-ken","imageURL":"https://github.com/svix-ken.png","key":"svix-ken","page":null},{"name":"sykp241095","alias":"sykp241095","url":"https://github.com/sykp241095","imageURL":"https://github.com/sykp241095.png","key":"sykp241095","page":null},{"name":"Qi Zhang","alias":"zzzhangqi","url":"https://github.com/zzzhangqi","imageURL":"https://github.com/zzzhangqi.png","key":"zzzhangqi","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2022-05-04T20:00","authors":["aerovulpe","AkiraVoid","andrewnicols","AntonPalmqvist","ApsarasX","chelproc","chernodub","CuratorCat","cwen0","cxOrz","DanRoscigno","deiucanta","deployn","Dr-Electron","dr-ngubo","duanwilliam","elias-pap","imsingh","jeffreyaven","jodyheavener","JohnnyMcWeed","johnnyreilly","Josh-Cena","kaycebasques","kgolubic","layerzzzio","leedom92","LeviticusMB","lex111","lukasbach","mjau-mjau","mxhdx","nartc","naveensrinivasan","pcordon","phryneas","Pierre-Gilles","redhat123456","rev4324","sandypockets","shczhen","slorber","sulu5890","surendran82","svix-ken","sykp241095","zzzhangqi"]},"unlisted":false,"prevItem":{"title":"2.0.0-beta.20","permalink":"/changelog/2.0.0-beta.20"},"nextItem":{"title":"2.0.0-beta.18","permalink":"/changelog/2.0.0-beta.18"},"listPageLink":"/changelog/page/2"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#7178](https://github.com/facebook/docusaurus/pull/7178) feat(theme-classic): extensible code block magic comment system ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7007](https://github.com/facebook/docusaurus/pull/7007) feat(theme-classic): code block showLineNumbers ([@lex111](https://github.com/lex111))\\n - [#7012](https://github.com/facebook/docusaurus/pull/7012) feat(theme-classic): show blog sidebar on mobile ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`, `docusaurus`, `eslint-plugin`\\n - [#7206](https://github.com/facebook/docusaurus/pull/7206) feat: Docusaurus ESLint plugin to enforce best Docusaurus practices ([@elias-pap](https://github.com/elias-pap))\\n- `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-theme-classic`, `docusaurus-types`, `docusaurus`\\n - [#6732](https://github.com/facebook/docusaurus/pull/6732) feat(core): rework client modules lifecycles, officially make API public ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`\\n - [#7231](https://github.com/facebook/docusaurus/pull/7231) feat: allow custom navbarItem types to pass through validation ([@slorber](https://github.com/slorber))\\n - [#7058](https://github.com/facebook/docusaurus/pull/7058) feat(theme-classic): new \'html\' type navbar item ([@lex111](https://github.com/lex111))\\n - [#7079](https://github.com/facebook/docusaurus/pull/7079) feat: allow using pure HTML as label in navbar links ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-translations`\\n - [#7036](https://github.com/facebook/docusaurus/pull/7036) feat(theme-classic): toggle code wrap button ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#6457](https://github.com/facebook/docusaurus/pull/6457) feat(content-docs): draft docs excluded from build & sidebars ([@jodyheavener](https://github.com/jodyheavener))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-types`, `docusaurus`\\n - [#6430](https://github.com/facebook/docusaurus/pull/6430) feat: allow setting calendar for i18n date formatting ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-module-type-aliases`, `docusaurus-plugin-content-docs`, `docusaurus-types`, `docusaurus`\\n - [#7083](https://github.com/facebook/docusaurus/pull/7083) feat(core): fail-safe global data fetching ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-docs`\\n - [#7106](https://github.com/facebook/docusaurus/pull/7106) feat(content-docs): make docs:version command work on localized docs ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-types`, `docusaurus`\\n - [#7082](https://github.com/facebook/docusaurus/pull/7082) feat(core): allow plugins to declare custom route context ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7124](https://github.com/facebook/docusaurus/pull/7124) feat(core): allow plugin/preset config to contain false/null ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-sitemap`, `docusaurus-utils`\\n - [#6979](https://github.com/facebook/docusaurus/pull/6979) feat(sitemap): add ignorePatterns option ([@ApsarasX](https://github.com/ApsarasX))\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-types`, `docusaurus`\\n - [#7257](https://github.com/facebook/docusaurus/pull/7257) refactor: remove long-deprecated routesLoaded lifecycle ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#7277](https://github.com/facebook/docusaurus/pull/7277) refactor(theme-classic): move all sidebar-related config under themeConfig.docs.sidebar ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-theme-classic`, `docusaurus-types`, `docusaurus`\\n - [#6732](https://github.com/facebook/docusaurus/pull/6732) feat(core): rework client modules lifecycles, officially make API public ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-theme-classic`\\n - [#7176](https://github.com/facebook/docusaurus/pull/7176) refactor: customize code block line highlight color via CSS var ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-types`, `docusaurus-utils-validation`, `docusaurus-utils`\\n - [#7117](https://github.com/facebook/docusaurus/pull/7117) refactor(content-{blog,docs}): unify handling of tags ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`\\n - [#7027](https://github.com/facebook/docusaurus/pull/7027) refactor(content-docs): deduplicate types, JSDoc for some APIs ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`\\n - [#7304](https://github.com/facebook/docusaurus/pull/7304) fix(theme-classic): remove breadcrumb items without href from microdata ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7179](https://github.com/facebook/docusaurus/pull/7179) fix(theme-classic): do not add microdata item prop to trailing breadcrumb ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7173](https://github.com/facebook/docusaurus/pull/7173) fix(theme-classic): admonition title: disable text-transform on inline code blocks ([@chelproc](https://github.com/chelproc))\\n - [#7048](https://github.com/facebook/docusaurus/pull/7048) fix(theme-classic): add caret for dropdown on mobile ([@lex111](https://github.com/lex111))\\n - [#7025](https://github.com/facebook/docusaurus/pull/7025) fix: make docs page wrapper take full height ([@lex111](https://github.com/lex111))\\n - [#7013](https://github.com/facebook/docusaurus/pull/7013) fix(theme-classic): adjust shadow on code block ([@chernodub](https://github.com/chernodub))\\n - [#7015](https://github.com/facebook/docusaurus/pull/7015) fix(theme-classic): do not add caret for non-collapsible categories ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-sitemap`, `docusaurus-preset-classic`, `docusaurus-theme-classic`\\n - [#7294](https://github.com/facebook/docusaurus/pull/7294) fix(\\\\*): make TypeScript realize that each plugin package has a default export ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus`\\n - [#7285](https://github.com/facebook/docusaurus/pull/7285) fix(core): allow empty static directories ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7180](https://github.com/facebook/docusaurus/pull/7180) fix: pass pollOptions to webpack ([@JohnnyMcWeed](https://github.com/JohnnyMcWeed))\\n - [#7184](https://github.com/facebook/docusaurus/pull/7184) fix(core): prevent 404 when accessing /page.html ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7225](https://github.com/facebook/docusaurus/pull/7225) fix: allow swizzling a component\'s parent folder ([@slorber](https://github.com/slorber))\\n - [#7066](https://github.com/facebook/docusaurus/pull/7066) fix(core): all plugin lifecycles should receive translated content ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-docs`\\n - [#7233](https://github.com/facebook/docusaurus/pull/7233) fix(content-docs): make category index text translatable ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-common`\\n - [#7200](https://github.com/facebook/docusaurus/pull/7200) fix(theme-common): do not persist color mode for OS-triggered changes ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7057](https://github.com/facebook/docusaurus/pull/7057) fix(theme-common): use native scrolling when smooth behavior set in CSS ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7033](https://github.com/facebook/docusaurus/pull/7033) fix(theme): only parse HTML- and JSX-style comments in MD code ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-blog`\\n - [#7212](https://github.com/facebook/docusaurus/pull/7212) fix(content-blog): make footnote reference DOM ID unique on post listing page ([@AkiraVoid](https://github.com/AkiraVoid))\\n- `docusaurus-utils`, `docusaurus`\\n - [#7187](https://github.com/facebook/docusaurus/pull/7187) fix(core): handle case where package.json is not available at CWD ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-translations`\\n - [#7222](https://github.com/facebook/docusaurus/pull/7222) fix(theme-translations): fix invalid pluralization in cs ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7166](https://github.com/facebook/docusaurus/pull/7166) fix(theme-translations): always try all possible locale resolutions ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`\\n - [#7164](https://github.com/facebook/docusaurus/pull/7164) fix: adjust spacing for custom search properly ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-debug`, `docusaurus-plugin-sitemap`, `docusaurus-preset-classic`, `docusaurus-types`, `docusaurus`\\n - [#7143](https://github.com/facebook/docusaurus/pull/7143) fix(sitemap): exclude pages with robots noindex from sitemap ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-types`\\n - [#7078](https://github.com/facebook/docusaurus/pull/7078) fix(create): install types for JS template as well ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-utils`\\n - [#7043](https://github.com/facebook/docusaurus/pull/7043) fix(utils): parse Markdown headings with CRLF line break ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-utils`, `docusaurus`\\n - [#7023](https://github.com/facebook/docusaurus/pull/7023) refactor: fix a few places of path handling ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-types`\\n - [#7014](https://github.com/facebook/docusaurus/pull/7014) fix(types): declare history and react-loadable as dependencies ([@sulu5890](https://github.com/sulu5890))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`, `docusaurus-theme-translations`\\n - [#7299](https://github.com/facebook/docusaurus/pull/7299) refactor: minor improvements for breadcrumbs ([@lex111](https://github.com/lex111))\\n- `create-docusaurus`\\n - [#7290](https://github.com/facebook/docusaurus/pull/7290) refactor(create): add i18n config in init template ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7286](https://github.com/facebook/docusaurus/pull/7286) refactor(create): update screenshots in quick start tutorial ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7223](https://github.com/facebook/docusaurus/pull/7223) refactor: use generated-index in init templates ([@slorber](https://github.com/slorber))\\n - [#7118](https://github.com/facebook/docusaurus/pull/7118) refactor(create): mention that the edit links can be removed ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-debug`, `docusaurus-theme-classic`\\n - [#7306](https://github.com/facebook/docusaurus/pull/7306) chore: upgrade Infima to alpha.39 ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-debug`, `docusaurus-types`, `docusaurus`\\n - [#7291](https://github.com/facebook/docusaurus/pull/7291) feat(types): JSDoc for docusaurus config fields ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#7267](https://github.com/facebook/docusaurus/pull/7267) fix(theme-common): allow details to not provide a summary ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7172](https://github.com/facebook/docusaurus/pull/7172) refactor: control base styling of code blocks via CSS vars ([@lex111](https://github.com/lex111))\\n - [#7129](https://github.com/facebook/docusaurus/pull/7129) refactor(theme-classic): fix a few margin inconsistencies ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-docs`, `docusaurus-utils`\\n - [#7248](https://github.com/facebook/docusaurus/pull/7248) refactor: normalize Markdown linkification behavior, elaborate in documentation ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`\\n - [#7244](https://github.com/facebook/docusaurus/pull/7244) refactor: semantic markup improvement, fix validation warnings ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7183](https://github.com/facebook/docusaurus/pull/7183) refactor: use SVG icon for home breadcrumb ([@Dr-Electron](https://github.com/Dr-Electron))\\n - [#7139](https://github.com/facebook/docusaurus/pull/7139) fix: proper spacing between generated card items on mobiles ([@lex111](https://github.com/lex111))\\n - [#7134](https://github.com/facebook/docusaurus/pull/7134) fix(theme-classic): fix docs sidebar layout shifts when expanding categories ([@slorber](https://github.com/slorber))\\n - [#7068](https://github.com/facebook/docusaurus/pull/7068) refactor(theme-classic): blog mobile secondary menu use consistent styles ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7004](https://github.com/facebook/docusaurus/pull/7004) fix(theme-classic): shrink title size on mobile ([@Pierre-Gilles](https://github.com/Pierre-Gilles))\\n- `docusaurus-theme-translations`\\n - [#7214](https://github.com/facebook/docusaurus/pull/7214) chore(theme-translations): complete Polish translations ([@rev4324](https://github.com/rev4324))\\n - [#7031](https://github.com/facebook/docusaurus/pull/7031) chore(theme-translations): complete German translations ([@deployn](https://github.com/deployn))\\n- `create-docusaurus`, `docusaurus-theme-classic`\\n - [#7176](https://github.com/facebook/docusaurus/pull/7176) refactor: customize code block line highlight color via CSS var ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#7218](https://github.com/facebook/docusaurus/pull/7218) fix(cli): always show error stack to unhandled rejection ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7142](https://github.com/facebook/docusaurus/pull/7142) refactor(core): lower timeout before rendering progress bar to 200ms ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7103](https://github.com/facebook/docusaurus/pull/7103) fix(core): preserve Interpolate children semantics ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7029](https://github.com/facebook/docusaurus/pull/7029) refactor: console output improvements ([@lex111](https://github.com/lex111))\\n - [#7017](https://github.com/facebook/docusaurus/pull/7017) refactor: remove copyright comment from swizzled components ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-docs`, `docusaurus-preset-classic`, `docusaurus-theme-classic`\\n - [#7148](https://github.com/facebook/docusaurus/pull/7148) feat(preset-classic, content-docs/client): JSDoc ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-debug`, `docusaurus-preset-classic`\\n - [#7122](https://github.com/facebook/docusaurus/pull/7122) feat(preset-classic): exclude debug plugin routes from sitemap ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-common`, `docusaurus-utils`, `docusaurus`\\n - [#7113](https://github.com/facebook/docusaurus/pull/7113) test: improve test coverage ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-module-type-aliases`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-ideal-image`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-types`, `docusaurus-utils-validation`, `docusaurus`\\n - [#7080](https://github.com/facebook/docusaurus/pull/7080) refactor: replace non-prop interface with type; allow plugin lifecycles to have sync type ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-logger`, `docusaurus-plugin-content-docs`, `docusaurus`\\n - [#7019](https://github.com/facebook/docusaurus/pull/7019) feat(logger): new \\"url\\" format, add double quotes around paths ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#7006](https://github.com/facebook/docusaurus/pull/7006) refactor: split and cleanup theme/DocPage ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#7005](https://github.com/facebook/docusaurus/pull/7005) refactor: split DocSidebarItem by item type ([@slorber](https://github.com/slorber))\\n\\n## :memo: Documentation\\n\\n- `docusaurus-logger`\\n - [#7305](https://github.com/facebook/docusaurus/pull/7305) docs: update docs for logger, add API docs to website ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Other\\n - [#7284](https://github.com/facebook/docusaurus/pull/7284) docs: add a paragraph about SSR as an optimization technique ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7278](https://github.com/facebook/docusaurus/pull/7278) docs: enhance docs about Markdown TOC and metadata ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7271](https://github.com/facebook/docusaurus/pull/7271) docs: specify Node version requirement to a minor ([@DanRoscigno](https://github.com/DanRoscigno))\\n - [#7252](https://github.com/facebook/docusaurus/pull/7252) docs: update gtag docs to reflect what a GA4 tag looks like ([@johnnyreilly](https://github.com/johnnyreilly))\\n - [#7240](https://github.com/facebook/docusaurus/pull/7240) docs: add PCC Archive site to showcase ([@CuratorCat](https://github.com/CuratorCat))\\n - [#7239](https://github.com/facebook/docusaurus/pull/7239) docs: add Chaos mesh site to showcase ([@cwen0](https://github.com/cwen0))\\n - [#7235](https://github.com/facebook/docusaurus/pull/7235) docs: add TiDB community books to showcase ([@shczhen](https://github.com/shczhen))\\n - [#7236](https://github.com/facebook/docusaurus/pull/7236) docs: add documentation about pluralization ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7230](https://github.com/facebook/docusaurus/pull/7230) docs: add OSS Insight to showcase ([@sykp241095](https://github.com/sykp241095))\\n - [#7208](https://github.com/facebook/docusaurus/pull/7208) docs: remove mention of \\"template\\" from README installation guide ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7159](https://github.com/facebook/docusaurus/pull/7159) docs: explain more clearly the purpose of a ref sidebar type ([@andrewnicols](https://github.com/andrewnicols))\\n - [#7126](https://github.com/facebook/docusaurus/pull/7126) docs: multiple documentation improvements ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7123](https://github.com/facebook/docusaurus/pull/7123) refactor(showcase): enforce descriptions with maximum length of 120 characters ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7026](https://github.com/facebook/docusaurus/pull/7026) docs: correct plugin example filename ([@mxhdx](https://github.com/mxhdx))\\n - [#7110](https://github.com/facebook/docusaurus/pull/7110) docs: add a note about additional languages needing to be Prism component names ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6746](https://github.com/facebook/docusaurus/pull/6746) fix(website): lazy-load YT iframe ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7061](https://github.com/facebook/docusaurus/pull/7061) docs: add docusaurus-plugin-typedoc to resources ([@nartc](https://github.com/nartc))\\n - [#7059](https://github.com/facebook/docusaurus/pull/7059) docs: add firelordjs to showcase ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7050](https://github.com/facebook/docusaurus/pull/7050) docs: add import React statement in JSX file example ([@kaycebasques](https://github.com/kaycebasques))\\n - [#7022](https://github.com/facebook/docusaurus/pull/7022) docs: add Easypanel to showcase ([@deiucanta](https://github.com/deiucanta))\\n - [#7016](https://github.com/facebook/docusaurus/pull/7016) docs: consistently use sidebars.js filename ([@leedom92](https://github.com/leedom92))\\n - [#7020](https://github.com/facebook/docusaurus/pull/7020) docs: add Divine WSF and Ghostly to showcase ([@LeviticusMB](https://github.com/LeviticusMB))\\n - [#7000](https://github.com/facebook/docusaurus/pull/7000) docs: remove unnecessary semicolon ([@imsingh](https://github.com/imsingh))\\n- `docusaurus-plugin-content-docs`, `docusaurus-utils`\\n - [#7248](https://github.com/facebook/docusaurus/pull/7248) refactor: normalize Markdown linkification behavior, elaborate in documentation ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-utils`\\n - [#7081](https://github.com/facebook/docusaurus/pull/7081) docs: fix some casing inconsistencies ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :wrench: Maintenance\\n\\n- Other\\n - [#7309](https://github.com/facebook/docusaurus/pull/7309) chore: use \\"Maintenance\\" instead of \\"Internal\\" in changelog ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7300](https://github.com/facebook/docusaurus/pull/7300) misc: check doc page by Lighthouse CI ([@lex111](https://github.com/lex111))\\n - [#7266](https://github.com/facebook/docusaurus/pull/7266) misc: add links section to PR template ([@slorber](https://github.com/slorber))\\n - [#7224](https://github.com/facebook/docusaurus/pull/7224) chore: GitHub Actions cancel-in-progress ([@slorber](https://github.com/slorber))\\n - [#7216](https://github.com/facebook/docusaurus/pull/7216) chore: remove netlify-cli from devDependencies ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7211](https://github.com/facebook/docusaurus/pull/7211) chore: replace node 17 with 18 in CI matrix ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7168](https://github.com/facebook/docusaurus/pull/7168) misc: add CI actions/dependency-review-action for security ([@slorber](https://github.com/slorber))\\n - [#6984](https://github.com/facebook/docusaurus/pull/6984) misc: pin actions to a full-length commit SHA ([@naveensrinivasan](https://github.com/naveensrinivasan))\\n - [#7002](https://github.com/facebook/docusaurus/pull/7002) chore: regen examples for 2.0 beta.18 ([@slorber](https://github.com/slorber))\\n- `docusaurus-logger`, `docusaurus-remark-plugin-npm2yarn`\\n - [#7295](https://github.com/facebook/docusaurus/pull/7295) refactor: use export = syntax for Node utility packages ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-types`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`\\n - [#7293](https://github.com/facebook/docusaurus/pull/7293) refactor(types): move non-core, non-public types out of the types package ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-types`, `docusaurus`\\n - [#7292](https://github.com/facebook/docusaurus/pull/7292) refactor(core): collocate CLI commands and their option types ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7084](https://github.com/facebook/docusaurus/pull/7084) refactor(core): code cleanup ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-module-type-aliases`, `docusaurus`\\n - [#7282](https://github.com/facebook/docusaurus/pull/7282) refactor(core): prefetch/preload refactor ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#7273](https://github.com/facebook/docusaurus/pull/7273) refactor(theme-classic): multiple re-arrangements ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7268](https://github.com/facebook/docusaurus/pull/7268) refactor(theme-classic): DocPage theme refactors polish ([@slorber](https://github.com/slorber))\\n - [#7269](https://github.com/facebook/docusaurus/pull/7269) refactor: extract useSkipToContent() ([@slorber](https://github.com/slorber))\\n - [#7175](https://github.com/facebook/docusaurus/pull/7175) refactor(theme-classic): split CodeBlock ([@slorber](https://github.com/slorber))\\n - [#7067](https://github.com/facebook/docusaurus/pull/7067) refactor(theme-classic): extract doc-related navbar items\' logic to theme-common ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7021](https://github.com/facebook/docusaurus/pull/7021) refactor(theme): extract plumbing code of BTT button into theme-common ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`\\n - [#7270](https://github.com/facebook/docusaurus/pull/7270) refactor(theme-classic): refactor TOC-related theme components ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#7220](https://github.com/facebook/docusaurus/pull/7220) refactor(cli): normalize the application of default option values ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7141](https://github.com/facebook/docusaurus/pull/7141) refactor(core): minor PendingNavigation refactor ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-docs`\\n - [#7243](https://github.com/facebook/docusaurus/pull/7243) chore: upgrade Jest to 28; add GitHub-actions reporter ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#7140](https://github.com/facebook/docusaurus/pull/7140) refactor(content-docs): split version handling into several files ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-theme-live-codeblock`, `docusaurus`\\n - [#7194](https://github.com/facebook/docusaurus/pull/7194) fix: fix a few internal declaration semantic errors ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-migrate`, `docusaurus-theme-translations`, `docusaurus`\\n - [#7186](https://github.com/facebook/docusaurus/pull/7186) refactor: prefer fs.readJSON over readFile.then(JSON.parse) ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`\\n - [#7145](https://github.com/facebook/docusaurus/pull/7145) refactor: unify how MDX content types are represented ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`, `lqip-loader`\\n - [#7138](https://github.com/facebook/docusaurus/pull/7138) chore: upgrade dependencies + upgrade React types ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-logger`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-sitemap`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`\\n - [#7131](https://github.com/facebook/docusaurus/pull/7131) chore: disable string escaping in snapshots ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-module-type-aliases`, `docusaurus-plugin-content-blog`, `docusaurus-theme-common`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`\\n - [#7054](https://github.com/facebook/docusaurus/pull/7054) refactor(core): refactor routes generation logic ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-module-type-aliases`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-types`, `docusaurus`\\n - [#7042](https://github.com/facebook/docusaurus/pull/7042) refactor(core): reorganize files ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-docs`, `docusaurus-utils`, `docusaurus`\\n - [#7037](https://github.com/facebook/docusaurus/pull/7037) refactor(core): reorganize functions ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`\\n - [#7027](https://github.com/facebook/docusaurus/pull/7027) refactor(content-docs): deduplicate types, JSDoc for some APIs ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :running: Performance\\n\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-utils-common`\\n - [#7085](https://github.com/facebook/docusaurus/pull/7085) refactor: mark a few client-side packages as side-effect-free ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-remark-plugin-npm2yarn`\\n - [#4997](https://github.com/facebook/docusaurus/pull/4997) perf(mdx-loader): cache mdx/remark compiler instances ([@phryneas](https://github.com/phryneas))\\n\\n## Committers: 47\\n\\n- Aaron Nwabuoku ([@aerovulpe](https://github.com/aerovulpe))\\n- AkiraVoid ([@AkiraVoid](https://github.com/AkiraVoid))\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Andrei Canta ([@deiucanta](https://github.com/deiucanta))\\n- Andrew Lyons ([@andrewnicols](https://github.com/andrewnicols))\\n- ApsarasX ([@ApsarasX](https://github.com/ApsarasX))\\n- Chau Tran ([@nartc](https://github.com/nartc))\\n- Chinazaekpere Ngubo ([@dr-ngubo](https://github.com/dr-ngubo))\\n- Cwen Yin ([@cwen0](https://github.com/cwen0))\\n- Dan Roscigno ([@DanRoscigno](https://github.com/DanRoscigno))\\n- Elias Papavasileiou ([@elias-pap](https://github.com/elias-pap))\\n- Evan ([@sulu5890](https://github.com/sulu5890))\\n- Fusang\u2740 ([@cxOrz](https://github.com/cxOrz))\\n- Indermohan Singh ([@imsingh](https://github.com/imsingh))\\n- JMW ([@JohnnyMcWeed](https://github.com/JohnnyMcWeed))\\n- Jeffrey Aven ([@jeffreyaven](https://github.com/jeffreyaven))\\n- Jody Heavener ([@jodyheavener](https://github.com/jodyheavener))\\n- John Reilly ([@johnnyreilly](https://github.com/johnnyreilly))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Karl Ward ([@mjau-mjau](https://github.com/mjau-mjau))\\n- Kayce Basques ([@kaycebasques](https://github.com/kaycebasques))\\n- Leedom ([@leedom92](https://github.com/leedom92))\\n- Lenz Weber-Tronic ([@phryneas](https://github.com/phryneas))\\n- Lukas Bach ([@lukasbach](https://github.com/lukasbach))\\n- Martin Blom ([@LeviticusMB](https://github.com/LeviticusMB))\\n- Naveen ([@naveensrinivasan](https://github.com/naveensrinivasan))\\n- Pablo Cordon ([@pcordon](https://github.com/pcordon))\\n- Pierre-Gilles Leymarie ([@Pierre-Gilles](https://github.com/Pierre-Gilles))\\n- Qi Zhang ([@zzzhangqi](https://github.com/zzzhangqi))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Viktor Chernodub ([@chernodub](https://github.com/chernodub))\\n- Zac A ([@sandypockets](https://github.com/sandypockets))\\n- [@Dr-Electron](https://github.com/Dr-Electron)\\n- [@chelproc](https://github.com/chelproc)\\n- [@deployn](https://github.com/deployn)\\n- [@duanwilliam](https://github.com/duanwilliam)\\n- [@kgolubic](https://github.com/kgolubic)\\n- [@redhat123456](https://github.com/redhat123456)\\n- [@surendran82](https://github.com/surendran82)\\n- [@svix-ken](https://github.com/svix-ken)\\n- apq ([@AntonPalmqvist](https://github.com/AntonPalmqvist))\\n- curatorcat.pcc.eth ([@CuratorCat](https://github.com/CuratorCat))\\n- czhen ([@shczhen](https://github.com/shczhen))\\n- loic ([@layerzzzio](https://github.com/layerzzzio))\\n- mehdim ([@mxhdx](https://github.com/mxhdx))\\n- rev ([@rev4324](https://github.com/rev4324))\\n- sykp241095 ([@sykp241095](https://github.com/sykp241095))"},{"id":"/2.0.0-beta.18","metadata":{"permalink":"/changelog/2.0.0-beta.18","source":"@site/changelog/source/2.0.0-beta.18.md","title":"2.0.0-beta.18","description":"New Feature","date":"2022-03-25T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Afonso Jorge Ramos","alias":"afonsojramos","url":"https://github.com/afonsojramos","imageURL":"https://github.com/afonsojramos.png","key":"afonsojramos","page":null},{"name":"Alessandro Festa","alias":"alefesta","url":"https://github.com/alefesta","imageURL":"https://github.com/alefesta.png","key":"alefesta","page":null},{"name":"Alois Klink","alias":"aloisklink","url":"https://github.com/aloisklink","imageURL":"https://github.com/aloisklink.png","key":"aloisklink","page":null},{"name":"Ariful Alam","alias":"arifszn","url":"https://github.com/arifszn","imageURL":"https://github.com/arifszn.png","key":"arifszn","page":null},{"name":"Billy Chan","alias":"billy1624","url":"https://github.com/billy1624","imageURL":"https://github.com/billy1624.png","key":"billy1624","page":null},{"name":"Ng\xf4 Qu\u1ED1c \u0110\u1EA1t","alias":"datlechin","url":"https://github.com/datlechin","imageURL":"https://github.com/datlechin.png","key":"datlechin","page":null},{"name":"Evan","alias":"DigiPie","url":"https://github.com/DigiPie","imageURL":"https://github.com/DigiPie.png","key":"DigiPie","page":null},{"name":"Bugo","alias":"dragomano","url":"https://github.com/dragomano","imageURL":"https://github.com/dragomano.png","key":"dragomano","page":null},{"name":"Felipe Santos","alias":"felipecrs","url":"https://github.com/felipecrs","imageURL":"https://github.com/felipecrs.png","key":"felipecrs","page":null},{"name":"Kyohei Fukuda","alias":"hand-dot","url":"https://github.com/hand-dot","imageURL":"https://github.com/hand-dot.png","key":"hand-dot","page":null},{"name":"WonChul Heo","alias":"heowc","url":"https://github.com/heowc","imageURL":"https://github.com/heowc.png","key":"heowc","page":null},{"name":"Jadon N","alias":"jadonn","url":"https://github.com/jadonn","imageURL":"https://github.com/jadonn.png","key":"jadonn","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Roberto Vidal","alias":"jrvidal","url":"https://github.com/jrvidal","imageURL":"https://github.com/jrvidal.png","key":"jrvidal","page":null},{"name":"Kayce Basques","alias":"kaycebasques","url":"https://github.com/kaycebasques","imageURL":"https://github.com/kaycebasques.png","key":"kaycebasques","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"moonrailgun","alias":"moonrailgun","url":"https://github.com/moonrailgun","imageURL":"https://github.com/moonrailgun.png","key":"moonrailgun","page":null},{"name":"nate contino","alias":"nathan-contino-mongo","url":"https://github.com/nathan-contino-mongo","imageURL":"https://github.com/nathan-contino-mongo.png","key":"nathan-contino-mongo","page":null},{"name":"Odarpi","alias":"odarpi","url":"https://github.com/odarpi","imageURL":"https://github.com/odarpi.png","key":"odarpi","page":null},{"name":"Nayan Patel","alias":"PatelN123","url":"https://github.com/PatelN123","imageURL":"https://github.com/PatelN123.png","key":"PatelN123","page":null},{"name":"Pawel Kowaluk","alias":"pkowaluk","url":"https://github.com/pkowaluk","imageURL":"https://github.com/pkowaluk.png","key":"pkowaluk","page":null},{"name":"Tsz W. TAM","alias":"rccttwd","url":"https://github.com/rccttwd","imageURL":"https://github.com/rccttwd.png","key":"rccttwd","page":null},{"name":"Sam Gutentag","alias":"samgutentag","url":"https://github.com/samgutentag","imageURL":"https://github.com/samgutentag.png","key":"samgutentag","page":null},{"name":"seladb","alias":"seladb","url":"https://github.com/seladb","imageURL":"https://github.com/seladb.png","key":"seladb","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"tae","alias":"taejs","url":"https://github.com/taejs","imageURL":"https://github.com/taejs.png","key":"taejs","page":null},{"name":"Begula","alias":"vedantmgoyal2009","url":"https://github.com/vedantmgoyal2009","imageURL":"https://github.com/vedantmgoyal2009.png","key":"vedantmgoyal2009","page":null},{"name":"Yorkie Liu","alias":"yorkie","url":"https://github.com/yorkie","imageURL":"https://github.com/yorkie.png","key":"yorkie","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2022-03-25T20:00","authors":["afonsojramos","alefesta","aloisklink","arifszn","billy1624","datlechin","DigiPie","dragomano","felipecrs","hand-dot","heowc","jadonn","Josh-Cena","jrvidal","kaycebasques","lex111","moonrailgun","nathan-contino-mongo","odarpi","PatelN123","pkowaluk","rccttwd","samgutentag","seladb","slorber","taejs","vedantmgoyal2009","yorkie"]},"unlisted":false,"prevItem":{"title":"2.0.0-beta.19","permalink":"/changelog/2.0.0-beta.19"},"nextItem":{"title":"2.0.0-beta.17","permalink":"/changelog/2.0.0-beta.17"},"listPageLink":"/changelog/page/2"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-mdx-loader`, `docusaurus-theme-classic`\\n - [#6990](https://github.com/facebook/docusaurus/pull/6990) feat: lazy-load external images + ability to customize image display ([@slorber](https://github.com/slorber))\\n- `docusaurus-module-type-aliases`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-types`, `docusaurus`\\n - [#6933](https://github.com/facebook/docusaurus/pull/6933) feat(core,theme): useRouteContext + HtmlClassNameProvider ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-types`, `docusaurus`\\n - [#6921](https://github.com/facebook/docusaurus/pull/6921) feat(core): allow plugin lifecycles to return relative paths ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`\\n - [#6697](https://github.com/facebook/docusaurus/pull/6697) feat: add SEO microdata for doc breadcrumbs ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6842](https://github.com/facebook/docusaurus/pull/6842) feat(theme-classic): MDXContent wrapper component ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`\\n - [#6780](https://github.com/facebook/docusaurus/pull/6780) feat(content-docs): allow custom props through _category_.json ([@taejs](https://github.com/taejs))\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-plugin-content-docs`\\n - [#6859](https://github.com/facebook/docusaurus/pull/6859) feat(content-docs): autogenerate category with linked doc metadata as fallback ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`\\n - [#6989](https://github.com/facebook/docusaurus/pull/6989) refactor: extract MDX components ([@slorber](https://github.com/slorber))\\n- `docusaurus-module-type-aliases`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`, `docusaurus`\\n - [#6925](https://github.com/facebook/docusaurus/pull/6925) refactor(theme-{classic,common}): refactor site/page/search metadata + apply className on html element ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#6895](https://github.com/facebook/docusaurus/pull/6895) refactor(theme-{classic,common}): split navbar into smaller components + cleanup + swizzle config ([@slorber](https://github.com/slorber))\\n - [#6930](https://github.com/facebook/docusaurus/pull/6930) refactor(theme-{classic,common}): refactor ColorModeToggle + useColorMode() hook ([@lex111](https://github.com/lex111))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus`\\n - [#6993](https://github.com/facebook/docusaurus/pull/6993) fix(core): prevent useBaseUrl returning /base/base when on /base ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6936](https://github.com/facebook/docusaurus/pull/6936) fix: remove semicolon from HTML output ([@lex111](https://github.com/lex111))\\n - [#6849](https://github.com/facebook/docusaurus/pull/6849) fix(cli): write-heading-id should not generate colliding slugs when not overwriting ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`\\n - [#6983](https://github.com/facebook/docusaurus/pull/6983) fix(search): bump Infima, fix search issue due to broken CSS selector ([@slorber](https://github.com/slorber))\\n- `docusaurus-utils-validation`\\n - [#6977](https://github.com/facebook/docusaurus/pull/6977) fix(validation): allow non-object params to remark/rehype plugins ([@aloisklink](https://github.com/aloisklink))\\n- `docusaurus-plugin-content-docs`, `docusaurus-utils`\\n - [#6973](https://github.com/facebook/docusaurus/pull/6973) fix(content-docs): suppress git error on multiple occurrences ([@felipecrs](https://github.com/felipecrs))\\n- `docusaurus-plugin-content-blog`\\n - [#6947](https://github.com/facebook/docusaurus/pull/6947) fix(content-blog): only create archive route if there are blog posts ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6918](https://github.com/facebook/docusaurus/pull/6918) fix(content-blog): remove double leading slash in blog-only paginated view ([@heowc](https://github.com/heowc))\\n- `docusaurus-theme-search-algolia`\\n - [#6888](https://github.com/facebook/docusaurus/pull/6888) fix(theme-algolia): declare content-docs as dependency ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-translations`\\n - [#6847](https://github.com/facebook/docusaurus/pull/6847) fix: minor Chinese translation fixes ([@rccttwd](https://github.com/rccttwd))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-plugin-content-docs`\\n - [#6859](https://github.com/facebook/docusaurus/pull/6859) feat(content-docs): autogenerate category with linked doc metadata as fallback ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6887](https://github.com/facebook/docusaurus/pull/6887) fix(content-docs): give context about sidebar loading failure ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-docs`, `docusaurus-utils-validation`, `docusaurus`\\n - [#6997](https://github.com/facebook/docusaurus/pull/6997) fix(validation): improve error messages for a few schemas ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`\\n - [#6971](https://github.com/facebook/docusaurus/pull/6971) refactor: improve a11y of dropdown menu ([@lex111](https://github.com/lex111))\\n - [#6987](https://github.com/facebook/docusaurus/pull/6987) refactor(theme-classic): cleanup of code blocks ([@lex111](https://github.com/lex111))\\n - [#6950](https://github.com/facebook/docusaurus/pull/6950) refactor(theme-classic): clean up CSS of doc cards ([@lex111](https://github.com/lex111))\\n - [#6994](https://github.com/facebook/docusaurus/pull/6994) refactor: better external link icon positioning ([@lex111](https://github.com/lex111))\\n - [#6989](https://github.com/facebook/docusaurus/pull/6989) refactor: extract MDX components ([@slorber](https://github.com/slorber))\\n - [#6985](https://github.com/facebook/docusaurus/pull/6985) refactor(theme-classic): remove span wrappers from layout links ([@lex111](https://github.com/lex111))\\n - [#6986](https://github.com/facebook/docusaurus/pull/6986) fix(theme-classic): minor code copy button improvements ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6964](https://github.com/facebook/docusaurus/pull/6964) refactor: replace text-based copy code button with icons ([@lex111](https://github.com/lex111))\\n - [#6932](https://github.com/facebook/docusaurus/pull/6932) refactor(theme-classic): little breadcrumbs improvements ([@lex111](https://github.com/lex111))\\n - [#6914](https://github.com/facebook/docusaurus/pull/6914) feat(theme-classic): set aria-expanded on expandable sidebar categories ([@pkowaluk](https://github.com/pkowaluk))\\n - [#6844](https://github.com/facebook/docusaurus/pull/6844) refactor(theme-classic): split sidebar into smaller parts ([@slorber](https://github.com/slorber))\\n - [#6846](https://github.com/facebook/docusaurus/pull/6846) refactor(theme-classic): consistently add span wrapper for layout links ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`\\n - [#6980](https://github.com/facebook/docusaurus/pull/6980) feat(utils): JSDoc for all APIs ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-common`\\n - [#6974](https://github.com/facebook/docusaurus/pull/6974) feat(theme-common): JSDoc for all APIs ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus`\\n - [#6784](https://github.com/facebook/docusaurus/pull/6784) feat(core): allow configureWebpack to return undefined ([@yorkie](https://github.com/yorkie))\\n - [#6941](https://github.com/facebook/docusaurus/pull/6941) refactor(core): improve error message when a page has no default-export ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6878](https://github.com/facebook/docusaurus/pull/6878) fix(core): ensure stable webpack theme aliases sorting ([@jrvidal](https://github.com/jrvidal))\\n - [#6854](https://github.com/facebook/docusaurus/pull/6854) fix(core): fix swizzle legend typo ([@DigiPie](https://github.com/DigiPie))\\n - [#6850](https://github.com/facebook/docusaurus/pull/6850) fix(core): make plugin lifecycles consistently bound to the plugin instance ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-utils`\\n - [#6937](https://github.com/facebook/docusaurus/pull/6937) fix(content-docs): warn when files are not tracked ([@felipecrs](https://github.com/felipecrs))\\n- `docusaurus-module-type-aliases`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`, `docusaurus`\\n - [#6925](https://github.com/facebook/docusaurus/pull/6925) refactor(theme-{classic,common}): refactor site/page/search metadata + apply className on html element ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#6895](https://github.com/facebook/docusaurus/pull/6895) refactor(theme-{classic,common}): split navbar into smaller components + cleanup + swizzle config ([@slorber](https://github.com/slorber))\\n - [#6930](https://github.com/facebook/docusaurus/pull/6930) refactor(theme-{classic,common}): refactor ColorModeToggle + useColorMode() hook ([@lex111](https://github.com/lex111))\\n - [#6894](https://github.com/facebook/docusaurus/pull/6894) refactor(theme-classic): split theme footer into smaller components + swizzle config ([@slorber](https://github.com/slorber))\\n- `docusaurus-types`, `docusaurus`\\n - [#6929](https://github.com/facebook/docusaurus/pull/6929) refactor(core): minor routes type improvement ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`\\n - [#6928](https://github.com/facebook/docusaurus/pull/6928) chore(pwa, sitemap, client-redirects, ideal-image): JSDoc for types ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`, `docusaurus-utils`\\n - [#6922](https://github.com/facebook/docusaurus/pull/6922) refactor(content-blog): clean up type definitions; in-code documentation ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-translations`\\n - [#6781](https://github.com/facebook/docusaurus/pull/6781) feat(theme-translations): complete Russian translations ([@dragomano](https://github.com/dragomano))\\n - [#6877](https://github.com/facebook/docusaurus/pull/6877) chore(theme-translations): complete Vietnamese translations ([@datlechin](https://github.com/datlechin))\\n- `docusaurus-plugin-content-blog`\\n - [#6909](https://github.com/facebook/docusaurus/pull/6909) refactor(content-blog): improve error message of authors map validation ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`\\n - [#6860](https://github.com/facebook/docusaurus/pull/6860) fix(create): load entry file after node version checking ([@taejs](https://github.com/taejs))\\n\\n## :memo: Documentation\\n\\n- Other\\n - [#6988](https://github.com/facebook/docusaurus/pull/6988) docs: fix example admonition syntax ([@kaycebasques](https://github.com/kaycebasques))\\n - [#6978](https://github.com/facebook/docusaurus/pull/6978) docs: npm run tsc -> npx tsc ([@jadonn](https://github.com/jadonn))\\n - [#6952](https://github.com/facebook/docusaurus/pull/6952) docs: add K3ai to showcase ([@alefesta](https://github.com/alefesta))\\n - [#6948](https://github.com/facebook/docusaurus/pull/6948) docs: add pdfme docs to showcase ([@hand-dot](https://github.com/hand-dot))\\n - [#6943](https://github.com/facebook/docusaurus/pull/6943) docs: add SeaORM docs to showcase ([@billy1624](https://github.com/billy1624))\\n - [#6926](https://github.com/facebook/docusaurus/pull/6926) docs: clarify the usage of slug ([@kaycebasques](https://github.com/kaycebasques))\\n - [#6911](https://github.com/facebook/docusaurus/pull/6911) docs: add Reactive Button site to showcase ([@arifszn](https://github.com/arifszn))\\n - [#6904](https://github.com/facebook/docusaurus/pull/6904) docs: update image for digital support services ([@PatelN123](https://github.com/PatelN123))\\n - [#6892](https://github.com/facebook/docusaurus/pull/6892) docs: add EduLinks site to showcase ([@odarpi](https://github.com/odarpi))\\n - [#6889](https://github.com/facebook/docusaurus/pull/6889) docs: editorial fixes ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6883](https://github.com/facebook/docusaurus/pull/6883) docs(cli): add info about development on github codespaces ([@vedantmgoyal2009](https://github.com/vedantmgoyal2009))\\n - [#6856](https://github.com/facebook/docusaurus/pull/6856) docs: add Reddit Image Fetcher site to showcase ([@arifszn](https://github.com/arifszn))\\n - [#6875](https://github.com/facebook/docusaurus/pull/6875) docs: update TRPG Engine showcase ([@moonrailgun](https://github.com/moonrailgun))\\n - [#6871](https://github.com/facebook/docusaurus/pull/6871) docs: mark clutch and gulp as open-source ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6862](https://github.com/facebook/docusaurus/pull/6862) docs: update showcase data ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6837](https://github.com/facebook/docusaurus/pull/6837) docs: add PcapPlusPlus to showcase ([@seladb](https://github.com/seladb))\\n - [#6832](https://github.com/facebook/docusaurus/pull/6832) docs: add Spicetify site to showcase ([@afonsojramos](https://github.com/afonsojramos))\\n - [#6830](https://github.com/facebook/docusaurus/pull/6830) docs: simplify imported code blocks syntax ([@nathan-contino-mongo](https://github.com/nathan-contino-mongo))\\n- `docusaurus-types`\\n - [#6881](https://github.com/facebook/docusaurus/pull/6881) docs: mention configureWebpack devServer return value ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`\\n - [#6833](https://github.com/facebook/docusaurus/pull/6833) docs: make tutorial code block directly copyable ([@samgutentag](https://github.com/samgutentag))\\n\\n## :house: Internal\\n\\n- `create-docusaurus`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-module-type-aliases`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`, `docusaurus-types`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `lqip-loader`\\n - [#6995](https://github.com/facebook/docusaurus/pull/6995) refactor: ensure all types are using index signature instead of Record ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-cssnano-preset`, `docusaurus-plugin-pwa`, `docusaurus-theme-search-algolia`, `docusaurus-utils`, `docusaurus`, `lqip-loader`\\n - [#6991](https://github.com/facebook/docusaurus/pull/6991) chore: upgrade dependencies ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `lqip-loader`\\n - [#6992](https://github.com/facebook/docusaurus/pull/6992) refactor(lqip-loader): remove unused palette option ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus`\\n - [#6975](https://github.com/facebook/docusaurus/pull/6975) chore: update static-site-generator-webpack-plugin ([@slorber](https://github.com/slorber))\\n- `stylelint-copyright`\\n - [#6967](https://github.com/facebook/docusaurus/pull/6967) chore: publish stylelint-copyright again ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-types`, `docusaurus-utils-validation`, `docusaurus`\\n - [#6961](https://github.com/facebook/docusaurus/pull/6961) refactor: unify how validateOptions is handled ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-types`\\n - [#6957](https://github.com/facebook/docusaurus/pull/6957) chore(types): remove querystring from dependencies ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-common`, `docusaurus`\\n - [#6956](https://github.com/facebook/docusaurus/pull/6956) test: improve test coverage; reorder theme-common files ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6955](https://github.com/facebook/docusaurus/pull/6955) refactor(core): move browserContext and docusaurusContext out of client exports ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6944](https://github.com/facebook/docusaurus/pull/6944) chore: migrate Jest and website to SWC ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-utils`\\n - [#6951](https://github.com/facebook/docusaurus/pull/6951) test: fix Windows test for gitUtils ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-pwa`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-translations`, `docusaurus-utils`, `docusaurus`, `stylelint-copyright`\\n - [#6931](https://github.com/facebook/docusaurus/pull/6931) chore: tighten ESLint config ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-module-type-aliases`, `docusaurus-plugin-client-redirects`\\n - [#6924](https://github.com/facebook/docusaurus/pull/6924) refactor(client-redirects): migrate validation to validateOptions lifecycle ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-cssnano-preset`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`, `docusaurus-utils`, `docusaurus`, `lqip-loader`\\n - [#6916](https://github.com/facebook/docusaurus/pull/6916) chore: upgrade dependencies ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-plugin-content-docs`, `docusaurus-theme-translations`, `docusaurus-types`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `stylelint-copyright`\\n - [#6912](https://github.com/facebook/docusaurus/pull/6912) test: improve test coverage; multiple internal refactors ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Other\\n - [#6910](https://github.com/facebook/docusaurus/pull/6910) refactor: convert Jest infrastructure to TS ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6838](https://github.com/facebook/docusaurus/pull/6838) fix(website): changelog plugin leads to CI bugs on release ([@slorber](https://github.com/slorber))\\n- `docusaurus-logger`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-utils`, `docusaurus`\\n - [#6908](https://github.com/facebook/docusaurus/pull/6908) chore: do not print prototype in jest snapshot ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-migrate`, `docusaurus-plugin-content-docs`, `docusaurus-theme-common`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`\\n - [#6906](https://github.com/facebook/docusaurus/pull/6906) refactor: install eslint-plugin-regexp ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-docs`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`, `docusaurus-utils`, `docusaurus`\\n - [#6905](https://github.com/facebook/docusaurus/pull/6905) test: improve test coverage; properly test core client APIs ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-logger`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-sitemap`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-translations`, `docusaurus-utils`, `docusaurus`\\n - [#6903](https://github.com/facebook/docusaurus/pull/6903) chore: spell-check test files ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-migrate`, `docusaurus-module-type-aliases`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-common`, `docusaurus-types`, `docusaurus-utils-common`, `docusaurus-utils`, `docusaurus`, `lqip-loader`\\n - [#6902](https://github.com/facebook/docusaurus/pull/6902) test(theme-common): improve test coverage ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-cssnano-preset`, `docusaurus-logger`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-sitemap`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`, `docusaurus-utils-common`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `lqip-loader`, `stylelint-copyright`\\n - [#6900](https://github.com/facebook/docusaurus/pull/6900) test: enable a few jest eslint rules ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-logger`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-translations`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `lqip-loader`\\n - [#6898](https://github.com/facebook/docusaurus/pull/6898) refactor: import jest as global; unify import style of some modules ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#6891](https://github.com/facebook/docusaurus/pull/6891) refactor(theme-classic): avoid using clsx class dict with CSS modules ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-translations`, `docusaurus-utils`, `docusaurus`\\n - [#6880](https://github.com/facebook/docusaurus/pull/6880) refactor: prefer fs.outputFile to ensureDir + writeFile ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-pwa`, `docusaurus-types`, `docusaurus`\\n - [#6866](https://github.com/facebook/docusaurus/pull/6866) refactor: improve types ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-pwa`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-types`, `docusaurus`, `lqip-loader`\\n - [#6864](https://github.com/facebook/docusaurus/pull/6864) refactor: remove unnecessary default values normalized during validation ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-migrate`, `docusaurus`\\n - [#6861](https://github.com/facebook/docusaurus/pull/6861) refactor: make JS executables included in the tsconfig for editor hints ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-types`, `docusaurus`\\n - [#6857](https://github.com/facebook/docusaurus/pull/6857) test: improve test coverage ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-logger`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`, `docusaurus-utils-common`, `docusaurus-utils`, `docusaurus`, `lqip-loader`\\n - [#6852](https://github.com/facebook/docusaurus/pull/6852) refactor: enable a few TS flags ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## Committers: 28\\n\\n- Afonso Jorge Ramos ([@afonsojramos](https://github.com/afonsojramos))\\n- Alessandro Festa ([@alefesta](https://github.com/alefesta))\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Alois Klink ([@aloisklink](https://github.com/aloisklink))\\n- Ariful Alam ([@arifszn](https://github.com/arifszn))\\n- Begula ([@vedantmgoyal2009](https://github.com/vedantmgoyal2009))\\n- Billy Chan ([@billy1624](https://github.com/billy1624))\\n- Bugo ([@dragomano](https://github.com/dragomano))\\n- Evan ([@DigiPie](https://github.com/DigiPie))\\n- Felipe Santos ([@felipecrs](https://github.com/felipecrs))\\n- Jadon N ([@jadonn](https://github.com/jadonn))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Kayce Basques ([@kaycebasques](https://github.com/kaycebasques))\\n- Kyohei Fukuda ([@hand-dot](https://github.com/hand-dot))\\n- Nayan Patel ([@PatelN123](https://github.com/PatelN123))\\n- Ng\xf4 Qu\u1ED1c \u0110\u1EA1t ([@datlechin](https://github.com/datlechin))\\n- Odarpi ([@odarpi](https://github.com/odarpi))\\n- Pawel Kowaluk ([@pkowaluk](https://github.com/pkowaluk))\\n- Roberto Vidal ([@jrvidal](https://github.com/jrvidal))\\n- Sam Gutentag ([@samgutentag](https://github.com/samgutentag))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Tsz W. TAM ([@rccttwd](https://github.com/rccttwd))\\n- WonChul Heo ([@heowc](https://github.com/heowc))\\n- Yorkie Liu ([@yorkie](https://github.com/yorkie))\\n- [@seladb](https://github.com/seladb)\\n- moonrailgun ([@moonrailgun](https://github.com/moonrailgun))\\n- nate contino ([@nathan-contino-mongo](https://github.com/nathan-contino-mongo))\\n- tae ([@taejs](https://github.com/taejs))"},{"id":"/2.0.0-beta.17","metadata":{"permalink":"/changelog/2.0.0-beta.17","source":"@site/changelog/source/2.0.0-beta.17.md","title":"2.0.0-beta.17","description":"New Feature","date":"2022-03-03T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Alex Nicholls","alias":"anicholls","url":"https://github.com/anicholls","imageURL":"https://github.com/anicholls.png","key":"anicholls","page":null},{"name":"Ariful Alam","alias":"arifszn","url":"https://github.com/arifszn","imageURL":"https://github.com/arifszn.png","key":"arifszn","page":null},{"name":"Dmitry Vinnik","alias":"dmitryvinn","url":"https://github.com/dmitryvinn","imageURL":"https://github.com/dmitryvinn.png","key":"dmitryvinn","page":null},{"name":"David Stotijn","alias":"dstotijn","url":"https://github.com/dstotijn","imageURL":"https://github.com/dstotijn.png","key":"dstotijn","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Nayan Patel","alias":"PatelN123","url":"https://github.com/PatelN123","imageURL":"https://github.com/PatelN123.png","key":"PatelN123","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Vaibhav Shinde","alias":"vaibhavshn","url":"https://github.com/vaibhavshn","imageURL":"https://github.com/vaibhavshn.png","key":"vaibhavshn","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2022-03-03T20:00","authors":["anicholls","arifszn","dmitryvinn","dstotijn","Josh-Cena","PatelN123","slorber","vaibhavshn"]},"unlisted":false,"prevItem":{"title":"2.0.0-beta.18","permalink":"/changelog/2.0.0-beta.18"},"nextItem":{"title":"2.0.0-beta.16","permalink":"/changelog/2.0.0-beta.16"},"listPageLink":"/changelog/page/2"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`\\n - [#6783](https://github.com/facebook/docusaurus/pull/6783) feat: allow blog authors email ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#6771](https://github.com/facebook/docusaurus/pull/6771) refactor(theme-classic): replace color mode toggle with button; remove switchConfig ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`\\n - [#6827](https://github.com/facebook/docusaurus/pull/6827) fix(theme-classic): restore docusaurus search meta ([@slorber](https://github.com/slorber))\\n - [#6767](https://github.com/facebook/docusaurus/pull/6767) fix(theme-classic): allow code tags containing inline elements to stay inline ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-common`\\n - [#6824](https://github.com/facebook/docusaurus/pull/6824) fix(theme-common): breadcrumbs home bug in docs-only ([@slorber](https://github.com/slorber))\\n - [#6816](https://github.com/facebook/docusaurus/pull/6816) fix(theme-common): docs breadcrumbs not working with baseUrl ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`\\n - [#6700](https://github.com/facebook/docusaurus/pull/6700) fix(content-docs): always sort autogenerated sidebar items by file/folder name by default ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus`\\n - [#6812](https://github.com/facebook/docusaurus/pull/6812) fix(core): remove hash/query when filtering existing files for broken link check ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`\\n - [#6779](https://github.com/facebook/docusaurus/pull/6779) fix(mdx-loader): suppress image reading warning in Yarn PnP; log warning instead of error ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`\\n - [#6762](https://github.com/facebook/docusaurus/pull/6762) fix(create): update broken SVG paths in templates ([@anicholls](https://github.com/anicholls))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-common`\\n - [#6826](https://github.com/facebook/docusaurus/pull/6826) refactor(theme-common): unify missing context errors ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#6771](https://github.com/facebook/docusaurus/pull/6771) refactor(theme-classic): replace color mode toggle with button; remove switchConfig ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`\\n - [#6769](https://github.com/facebook/docusaurus/pull/6769) refactor(theme-classic): use Material icon for language dropdown ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`\\n - [#6792](https://github.com/facebook/docusaurus/pull/6792) fix(mdx-loader): allow image paths to be URL encoded ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :memo: Documentation\\n\\n- Other\\n - [#6825](https://github.com/facebook/docusaurus/pull/6825) docs: Adds Netlify one click deploy to README ([@PatelN123](https://github.com/PatelN123))\\n - [#6818](https://github.com/facebook/docusaurus/pull/6818) docs: add deploy with vercel button to README ([@PatelN123](https://github.com/PatelN123))\\n - [#6817](https://github.com/facebook/docusaurus/pull/6817) docs: fix broken links ([@PatelN123](https://github.com/PatelN123))\\n - [#6811](https://github.com/facebook/docusaurus/pull/6811) docs: add homepage banner in support of Ukraine ([@dmitryvinn](https://github.com/dmitryvinn))\\n - [#6813](https://github.com/facebook/docusaurus/pull/6813) docs: mark dyte as opensource in showcase ([@vaibhavshn](https://github.com/vaibhavshn))\\n - [#6776](https://github.com/facebook/docusaurus/pull/6776) docs: make GitHub actions explanation aligned with the code ([@arifszn](https://github.com/arifszn))\\n - [#6772](https://github.com/facebook/docusaurus/pull/6772) docs: add basic documentation about client modules ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`\\n - [#6815](https://github.com/facebook/docusaurus/pull/6815) fix: consistently use `max-width: 996px` in media queries ([@dstotijn](https://github.com/dstotijn))\\n\\n## :house: Internal\\n\\n- `docusaurus-plugin-content-docs`\\n - [#6821](https://github.com/facebook/docusaurus/pull/6821) test(content-docs): refactor navigation test snapshot ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Other\\n - [#6768](https://github.com/facebook/docusaurus/pull/6768) test: add TypeScript template to E2E test matrix ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-utils`\\n - [#6773](https://github.com/facebook/docusaurus/pull/6773) refactor(utils): categorize functions into separate files ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-migrate`\\n - [#6761](https://github.com/facebook/docusaurus/pull/6761) chore: various internal fixes ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## Committers: 8\\n\\n- Alex Nicholls ([@anicholls](https://github.com/anicholls))\\n- Ariful Alam ([@arifszn](https://github.com/arifszn))\\n- David Stotijn ([@dstotijn](https://github.com/dstotijn))\\n- Dmitry Vinnik ([@dmitryvinn](https://github.com/dmitryvinn))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Nayan Patel ([@PatelN123](https://github.com/PatelN123))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Vaibhav Shinde ([@vaibhavshn](https://github.com/vaibhavshn))"},{"id":"/2.0.0-beta.16","metadata":{"permalink":"/changelog/2.0.0-beta.16","source":"@site/changelog/source/2.0.0-beta.16.md","title":"2.0.0-beta.16","description":"New Feature","date":"2022-02-25T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Gaurish","alias":"apidev234","url":"https://github.com/apidev234","imageURL":"https://github.com/apidev234.png","key":"apidev234","page":null},{"name":"Artem Kovalov","alias":"artemkovalyov","url":"https://github.com/artemkovalyov","imageURL":"https://github.com/artemkovalyov.png","key":"artemkovalyov","page":null},{"name":"BigDataWriter","alias":"BigDataWriter","url":"https://github.com/BigDataWriter","imageURL":"https://github.com/BigDataWriter.png","key":"BigDataWriter","page":null},{"name":"Clement Demonchy","alias":"cdemonchy-pro","url":"https://github.com/cdemonchy-pro","imageURL":"https://github.com/cdemonchy-pro.png","key":"cdemonchy-pro","page":null},{"name":"CodeDoctor","alias":"CodeDoctorDE","url":"https://github.com/CodeDoctorDE","imageURL":"https://github.com/CodeDoctorDE.png","key":"CodeDoctorDE","page":null},{"name":"CookieJarApps","alias":"CookieJarApps","url":"https://github.com/CookieJarApps","imageURL":"https://github.com/CookieJarApps.png","key":"CookieJarApps","page":null},{"name":"Dmitry Vinnik","alias":"dmitryvinn","url":"https://github.com/dmitryvinn","imageURL":"https://github.com/dmitryvinn.png","key":"dmitryvinn","page":null},{"name":"Dmitry Vinnik | Meta","alias":"dmitryvinn-fb","url":"https://github.com/dmitryvinn-fb","imageURL":"https://github.com/dmitryvinn-fb.png","key":"dmitryvinn-fb","page":null},{"name":"Everardo J. Barojas M.","alias":"ebarojas","url":"https://github.com/ebarojas","imageURL":"https://github.com/ebarojas.png","key":"ebarojas","page":null},{"name":"Erick Zhao","alias":"erickzhao","url":"https://github.com/erickzhao","imageURL":"https://github.com/erickzhao.png","key":"erickzhao","page":null},{"name":"Felipe Santos","alias":"felipecrs","url":"https://github.com/felipecrs","imageURL":"https://github.com/felipecrs.png","key":"felipecrs","page":null},{"name":"Mikey O\'Toole","alias":"homotechsual","url":"https://github.com/homotechsual","imageURL":"https://github.com/homotechsual.png","key":"homotechsual","page":null},{"name":"Jody Heavener","alias":"jodyheavener","url":"https://github.com/jodyheavener","imageURL":"https://github.com/jodyheavener.png","key":"jodyheavener","page":null},{"name":"John Reilly","alias":"johnnyreilly","url":"https://github.com/johnnyreilly","imageURL":"https://github.com/johnnyreilly.png","key":"johnnyreilly","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Daniel Kalevski","alias":"kalevski","url":"https://github.com/kalevski","imageURL":"https://github.com/kalevski.png","key":"kalevski","page":null},{"name":"Kishan Gajera","alias":"kgajera","url":"https://github.com/kgajera","imageURL":"https://github.com/kgajera.png","key":"kgajera","page":null},{"name":"Konstantin Tarkus","alias":"koistya","url":"https://github.com/koistya","imageURL":"https://github.com/koistya.png","key":"koistya","page":null},{"name":"Balthasar Hofer","alias":"lebalz","url":"https://github.com/lebalz","imageURL":"https://github.com/lebalz.png","key":"lebalz","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Miles Johnson","alias":"milesj","url":"https://github.com/milesj","imageURL":"https://github.com/milesj.png","key":"milesj","page":null},{"name":"Matheus Ricardo Brunelli","alias":"mrbrunelli","url":"https://github.com/mrbrunelli","imageURL":"https://github.com/mrbrunelli.png","key":"mrbrunelli","page":null},{"name":"Naseel Niyas","alias":"NaseelNiyas","url":"https://github.com/NaseelNiyas","imageURL":"https://github.com/NaseelNiyas.png","key":"NaseelNiyas","page":null},{"name":"nick-verida","alias":"nick-verida","url":"https://github.com/nick-verida","imageURL":"https://github.com/nick-verida.png","key":"nick-verida","page":null},{"name":"Nick Schonning","alias":"nschonni","url":"https://github.com/nschonni","imageURL":"https://github.com/nschonni.png","key":"nschonni","page":null},{"name":"Pranab Das","alias":"pranabdas","url":"https://github.com/pranabdas","imageURL":"https://github.com/pranabdas.png","key":"pranabdas","page":null},{"name":"Muhammad Redho Ayassa","alias":"redhoyasa","url":"https://github.com/redhoyasa","imageURL":"https://github.com/redhoyasa.png","key":"redhoyasa","page":null},{"name":"Yongmin Hong","alias":"revi","url":"https://github.com/revi","imageURL":"https://github.com/revi.png","key":"revi","page":null},{"name":"Ruben Arushanyan","alias":"Ruben-Arushanyan","url":"https://github.com/Ruben-Arushanyan","imageURL":"https://github.com/Ruben-Arushanyan.png","key":"Ruben-Arushanyan","page":null},{"name":"seyoon20087","alias":"seyoon20087","url":"https://github.com/seyoon20087","imageURL":"https://github.com/seyoon20087.png","key":"seyoon20087","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Tamal Web","alias":"tamalweb","url":"https://github.com/tamalweb","imageURL":"https://github.com/tamalweb.png","key":"tamalweb","page":null},{"name":"TheCatLady","alias":"TheCatLady","url":"https://github.com/TheCatLady","imageURL":"https://github.com/TheCatLady.png","key":"TheCatLady","page":null},{"name":"Daniel Hanke","alias":"thedanielhanke","url":"https://github.com/thedanielhanke","imageURL":"https://github.com/thedanielhanke.png","key":"thedanielhanke","page":null},{"name":"toto6038","alias":"toto6038","url":"https://github.com/toto6038","imageURL":"https://github.com/toto6038.png","key":"toto6038","page":null},{"name":"Matthew Ailes","alias":"vidarc","url":"https://github.com/vidarc","imageURL":"https://github.com/vidarc.png","key":"vidarc","page":null},{"name":"\uC774\uC815\uD658","alias":"winterlood","url":"https://github.com/winterlood","imageURL":"https://github.com/winterlood.png","key":"winterlood","page":null},{"name":"Yangshun Tay","alias":"yangshun","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png","key":"yangshun","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2022-02-25T20:00","authors":["apidev234","artemkovalyov","BigDataWriter","cdemonchy-pro","CodeDoctorDE","CookieJarApps","dmitryvinn","dmitryvinn-fb","ebarojas","erickzhao","felipecrs","homotechsual","jodyheavener","johnnyreilly","Josh-Cena","kalevski","kgajera","koistya","lebalz","lex111","milesj","mrbrunelli","NaseelNiyas","nick-verida","nschonni","pranabdas","redhoyasa","revi","Ruben-Arushanyan","seyoon20087","slorber","tamalweb","TheCatLady","thedanielhanke","toto6038","vidarc","winterlood","yangshun"]},"unlisted":false,"prevItem":{"title":"2.0.0-beta.17","permalink":"/changelog/2.0.0-beta.17"},"nextItem":{"title":"2.0.0-beta.15","permalink":"/changelog/2.0.0-beta.15"},"listPageLink":"/changelog/page/2"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-logger`, `docusaurus-module-type-aliases`, `docusaurus-plugin-debug`, `docusaurus-plugin-pwa`, `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`, `docusaurus-types`, `docusaurus`\\n - [#6243](https://github.com/facebook/docusaurus/pull/6243) feat(core): brand new swizzle CLI experience ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`\\n - [#6750](https://github.com/facebook/docusaurus/pull/6750) feat(create): new --package-manager option; interactive package manager selection ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6610](https://github.com/facebook/docusaurus/pull/6610) feat(create): allow specifying a git clone strategy ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#6723](https://github.com/facebook/docusaurus/pull/6723) feat: sync color mode between browser tabs ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-search-algolia`\\n - [#6692](https://github.com/facebook/docusaurus/pull/6692) feat(search-algolia): allow disabling search page and configuring path ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#6517](https://github.com/facebook/docusaurus/pull/6517) feat(docs,theme-classic): docs breadcrumbs ([@jodyheavener](https://github.com/jodyheavener))\\n - [#6519](https://github.com/facebook/docusaurus/pull/6519) feat(content-docs): sidebar item type \\"html\\" for rendering pure markup ([@jodyheavener](https://github.com/jodyheavener))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-utils`\\n - [#6593](https://github.com/facebook/docusaurus/pull/6593) feat(content-blog): infer blog post date from git history ([@felipecrs](https://github.com/felipecrs))\\n- `docusaurus-plugin-content-docs`\\n - [#6619](https://github.com/facebook/docusaurus/pull/6619) feat(content-docs): add custom props front matter ([@TheCatLady](https://github.com/TheCatLady))\\n - [#6452](https://github.com/facebook/docusaurus/pull/6452) feat(content-docs): allow explicitly disabling index page for generated category ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-blog`\\n - [#6603](https://github.com/facebook/docusaurus/pull/6603) feat(content-blog): allow customizing blog archive component through option ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`\\n - [#6221](https://github.com/facebook/docusaurus/pull/6221) feat(content-blog): Allow pagination for BlogTagsPostsPage ([@redhoyasa](https://github.com/redhoyasa))\\n\\n## :boom: Breaking Change\\n\\n- `create-docusaurus`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`, `docusaurus-utils`, `docusaurus`, `stylelint-copyright`\\n - [#6752](https://github.com/facebook/docusaurus/pull/6752) chore: upgrade docsearch-react to v3 stable, bump dependencies ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-types`\\n - [#6729](https://github.com/facebook/docusaurus/pull/6729) refactor: make MDX export a flat TOC list instead of tree ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-types`, `docusaurus-utils-validation`, `docusaurus`\\n - [#6740](https://github.com/facebook/docusaurus/pull/6740) refactor: remove deprecated Webpack utils & validation escape hatch ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`\\n - [#6707](https://github.com/facebook/docusaurus/pull/6707) refactor(theme-classic): bias again search metadata toward Algolia DocSearch ([@slorber](https://github.com/slorber))\\n- `docusaurus-module-type-aliases`, `docusaurus-theme-common`, `docusaurus`\\n - [#6651](https://github.com/facebook/docusaurus/pull/6651) refactor: reduce exported members of docusaurus router ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-common`\\n - [#6758](https://github.com/facebook/docusaurus/pull/6758) fix(theme-common): isSamePath should be case-insensitive ([@slorber](https://github.com/slorber))\\n - [#6748](https://github.com/facebook/docusaurus/pull/6748) fix(theme-classic): temporarily disable toc heading autoscrolling ([@slorber](https://github.com/slorber))\\n - [#6696](https://github.com/facebook/docusaurus/pull/6696) fix(theme-common): do not run useLocationChange when hot reloading ([@lex111](https://github.com/lex111))\\n - [#6490](https://github.com/facebook/docusaurus/pull/6490) fix(theme-classic): do not switch color modes when printing ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-module-type-aliases`, `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#6749](https://github.com/facebook/docusaurus/pull/6749) fix(theme-classic): fix breadcrumb home link bug with new useHomePageRoute() hook ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`\\n - [#6720](https://github.com/facebook/docusaurus/pull/6720) fix(content-docs): create assets for frontmatter images ([@lebalz](https://github.com/lebalz))\\n - [#6592](https://github.com/facebook/docusaurus/pull/6592) fix(content-docs): read last update from inner git repositories ([@felipecrs](https://github.com/felipecrs))\\n - [#6477](https://github.com/facebook/docusaurus/pull/6477) fix(content-docs): export versioning utils ([@milesj](https://github.com/milesj))\\n- `docusaurus-mdx-loader`\\n - [#6712](https://github.com/facebook/docusaurus/pull/6712) fix(mdx-loader): make headings containing links properly formatted in ToC ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus`\\n - [#6701](https://github.com/facebook/docusaurus/pull/6701) fix(cli): disable directory listing in serve ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6607](https://github.com/facebook/docusaurus/pull/6607) fix(cli): log error itself on unhandled rejection ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6500](https://github.com/facebook/docusaurus/pull/6500) fix(cli): allow passing a list of file names to write-heading-ids ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6496](https://github.com/facebook/docusaurus/pull/6496) fix(core): configValidation should allow inline theme functions ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#6652](https://github.com/facebook/docusaurus/pull/6652) fix(theme-classic): minor BTT button fixes ([@lex111](https://github.com/lex111))\\n - [#6612](https://github.com/facebook/docusaurus/pull/6612) fix(theme-classic): make Prism additional languages properly server-side rendered ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6599](https://github.com/facebook/docusaurus/pull/6599) fix(theme-classic): add docSidebar as allowed item in dropdown ([@homotechsual](https://github.com/homotechsual))\\n - [#6531](https://github.com/facebook/docusaurus/pull/6531) fix(theme-classic): highlight active collapsible doc category properly ([@lex111](https://github.com/lex111))\\n - [#6515](https://github.com/facebook/docusaurus/pull/6515) fix(theme-classic): add key prop for SimpleLinks map ([@kgajera](https://github.com/kgajera))\\n - [#6508](https://github.com/facebook/docusaurus/pull/6508) fix(theme-classic): apply width/height for footer logos without href ([@kgajera](https://github.com/kgajera))\\n- `docusaurus-utils`\\n - [#6617](https://github.com/facebook/docusaurus/pull/6617) fix(utils): convert Markdown links in reference-style links with multiple spaces ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6489](https://github.com/facebook/docusaurus/pull/6489) fix(utils): do not resolve Markdown paths with @site prefix ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6478](https://github.com/facebook/docusaurus/pull/6478) fix(utils): Markdown linkification match local paths beginning with http ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#6495](https://github.com/facebook/docusaurus/pull/6495) fix(content-docs): render category with no subitems as a normal link ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`, `docusaurus-utils`, `docusaurus`, `lqip-loader`\\n - [#6755](https://github.com/facebook/docusaurus/pull/6755) refactor: unify error handling behavior ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`\\n - [#6679](https://github.com/facebook/docusaurus/pull/6679) feat(create): better detection of package manager preference ([@lex111](https://github.com/lex111))\\n - [#6481](https://github.com/facebook/docusaurus/pull/6481) refactor(init): promote good practices; use site alias ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-docs`\\n - [#6745](https://github.com/facebook/docusaurus/pull/6745) fix(content-docs): improve sidebar shorthand normalization error message ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6602](https://github.com/facebook/docusaurus/pull/6602) feat(content-docs): allow omitting enclosing array consistently for category shorthand ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6596](https://github.com/facebook/docusaurus/pull/6596) refactor(content-docs): clean up sidebars logic; validate generator returns ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6586](https://github.com/facebook/docusaurus/pull/6586) refactor(content-docs): read category metadata files before autogenerating ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-module-type-aliases`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-theme-classic`, `docusaurus`\\n - [#6730](https://github.com/facebook/docusaurus/pull/6730) refactor: declare all props as interfaces ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-translations`\\n - [#6711](https://github.com/facebook/docusaurus/pull/6711) chore(theme-translations): complete Korean translations ([@revi](https://github.com/revi))\\n - [#6686](https://github.com/facebook/docusaurus/pull/6686) fix(theme-translations): improve Korean translations ([@winterlood](https://github.com/winterlood))\\n - [#6635](https://github.com/facebook/docusaurus/pull/6635) refactor(theme-translation): improve Traditional Chinese translation quality ([@toto6038](https://github.com/toto6038))\\n- `docusaurus-theme-classic`, `docusaurus-theme-translations`\\n - [#6674](https://github.com/facebook/docusaurus/pull/6674) fix(theme-classic): improve aria label of color mode toggle ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-theme-classic`\\n - [#6668](https://github.com/facebook/docusaurus/pull/6668) refactor: recommend using data-theme without html element selector ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`\\n - [#6622](https://github.com/facebook/docusaurus/pull/6622) refactor(theme-classic): clean up CSS of doc sidebar item ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#6644](https://github.com/facebook/docusaurus/pull/6644) fix(core): forward ref to Link\'s anchor element ([@koistya](https://github.com/koistya))\\n - [#6646](https://github.com/facebook/docusaurus/pull/6646) fix(cli): make docusaurus clear also remove .yarn/.cache folder ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6306](https://github.com/facebook/docusaurus/pull/6306) feat(core): use react-helmet-async ([@seyoon20087](https://github.com/seyoon20087))\\n- `docusaurus-utils-validation`\\n - [#6656](https://github.com/facebook/docusaurus/pull/6656) feat: allow numbers in plugin ID ([@cdemonchy-pro](https://github.com/cdemonchy-pro))\\n- `docusaurus-mdx-loader`, `docusaurus-utils`, `lqip-loader`\\n - [#6650](https://github.com/facebook/docusaurus/pull/6650) refactor(utils): replace hash with contenthash for file loader ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-preset-classic`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`, `docusaurus-utils-validation`, `docusaurus-utils`\\n - [#6615](https://github.com/facebook/docusaurus/pull/6615) fix: remove more peer dependency warnings ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`\\n - [#6598](https://github.com/facebook/docusaurus/pull/6598) feat: make Markdown images lazy loaded ([@johnnyreilly](https://github.com/johnnyreilly))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#6505](https://github.com/facebook/docusaurus/pull/6505) fix(theme-classic): make focused link outlined with JS disabled ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`\\n - [#6507](https://github.com/facebook/docusaurus/pull/6507) refactor: improve internal typing ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-sitemap`, `docusaurus-preset-classic`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`, `docusaurus-utils-validation`, `docusaurus-utils`\\n - [#6498](https://github.com/facebook/docusaurus/pull/6498) fix: updating peerDependency fields for yarn berry ([@vidarc](https://github.com/vidarc))\\n- `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`\\n - [#6482](https://github.com/facebook/docusaurus/pull/6482) feat: mark some text labels as translatable ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :memo: Documentation\\n\\n- Other\\n - [#6727](https://github.com/facebook/docusaurus/pull/6727) docs: add Blog Matheus Brunelli site to showcase ([@mrbrunelli](https://github.com/mrbrunelli))\\n - [#6721](https://github.com/facebook/docusaurus/pull/6721) docs: add Butterfly Documentation to showcase ([@CodeDoctorDE](https://github.com/CodeDoctorDE))\\n - [#6710](https://github.com/facebook/docusaurus/pull/6710) docs(website): Add techharvesting to showcase ([@NaseelNiyas](https://github.com/NaseelNiyas))\\n - [#6708](https://github.com/facebook/docusaurus/pull/6708) docs: add doc for generated-index keyword/image metadata ([@slorber](https://github.com/slorber))\\n - [#6709](https://github.com/facebook/docusaurus/pull/6709) docs(website): fix video responsiveness ([@lex111](https://github.com/lex111))\\n - [#6687](https://github.com/facebook/docusaurus/pull/6687) docs: add deep dive video for Docusaurus ([@dmitryvinn](https://github.com/dmitryvinn))\\n - [#6704](https://github.com/facebook/docusaurus/pull/6704) docs(website): search doc typo searchParameters ([@slorber](https://github.com/slorber))\\n - [#6682](https://github.com/facebook/docusaurus/pull/6682) docs: add redux-cool site to showcase ([@Ruben-Arushanyan](https://github.com/Ruben-Arushanyan))\\n - [#6677](https://github.com/facebook/docusaurus/pull/6677) docs: add Rivalis to showcase ([@kalevski](https://github.com/kalevski))\\n - [#6676](https://github.com/facebook/docusaurus/pull/6676) docs: add SmartCookieWeb site to showcase ([@CookieJarApps](https://github.com/CookieJarApps))\\n - [#6675](https://github.com/facebook/docusaurus/pull/6675) docs: mention that all official themes are TypeScript-covered ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6673](https://github.com/facebook/docusaurus/pull/6673) docs: mention about blog date in front matter ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6672](https://github.com/facebook/docusaurus/pull/6672) refactor(website): extract homepage data from UI; feature text updates ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6670](https://github.com/facebook/docusaurus/pull/6670) docs: add CyberDrain Improved Partner Portal (CIPP) to showcase ([@homotechsual](https://github.com/homotechsual))\\n - [#6667](https://github.com/facebook/docusaurus/pull/6667) fix(website): make YT iframe responsive ([@lex111](https://github.com/lex111))\\n - [#6659](https://github.com/facebook/docusaurus/pull/6659) docs: add eli5 video to home page ([@dmitryvinn-fb](https://github.com/dmitryvinn-fb))\\n - [#6633](https://github.com/facebook/docusaurus/pull/6633) docs: improve wording of using Markdown file paths ([@BigDataWriter](https://github.com/BigDataWriter))\\n - [#6624](https://github.com/facebook/docusaurus/pull/6624) docs: add Resoto & Some Engineering Inc. to showcase ([@TheCatLady](https://github.com/TheCatLady))\\n - [#6611](https://github.com/facebook/docusaurus/pull/6611) docs: fix bad anchor link syntax ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6591](https://github.com/facebook/docusaurus/pull/6591) docs: improve GitHub Actions example jobs ([@ebarojas](https://github.com/ebarojas))\\n - [#6426](https://github.com/facebook/docusaurus/pull/6426) feat(website): add Tweets section ([@yangshun](https://github.com/yangshun))\\n - [#6532](https://github.com/facebook/docusaurus/pull/6532) docs: add SAP Cloud SDK to showcase ([@artemkovalyov](https://github.com/artemkovalyov))\\n - [#6513](https://github.com/facebook/docusaurus/pull/6513) docs: clean up CONTRIBUTING ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6501](https://github.com/facebook/docusaurus/pull/6501) docs: add Cloudflare pages deployment guide ([@apidev234](https://github.com/apidev234))\\n - [#6499](https://github.com/facebook/docusaurus/pull/6499) docs: mention how env vars can be read ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6492](https://github.com/facebook/docusaurus/pull/6492) docs: mention where to find the sitemap ([@tamalweb](https://github.com/tamalweb))\\n - [#6491](https://github.com/facebook/docusaurus/pull/6491) docs: add developers.verida to showcase ([@nick-verida](https://github.com/nick-verida))\\n - [#6414](https://github.com/facebook/docusaurus/pull/6414) feat(website): new plugin to load CHANGELOG and render as blog ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6404](https://github.com/facebook/docusaurus/pull/6404) docs: elaborate on Markdown asset linking; document pathname:// protocol ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6484](https://github.com/facebook/docusaurus/pull/6484) docs: remove mention that CDN resources are cached cross-domain ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6429](https://github.com/facebook/docusaurus/pull/6429) refactor: self-host KaTeX assets ([@pranabdas](https://github.com/pranabdas))\\n - [#6483](https://github.com/facebook/docusaurus/pull/6483) docs: mark a lot of website texts as translatable ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-preset-classic`\\n - [#6627](https://github.com/facebook/docusaurus/pull/6627) docs: fix presets documentation link ([@thedanielhanke](https://github.com/thedanielhanke))\\n\\n## :house: Internal\\n\\n- `docusaurus-theme-classic`\\n - [#6759](https://github.com/facebook/docusaurus/pull/6759) refactor(theme-classic): merge CSS files for Heading ([@slorber](https://github.com/slorber))\\n - [#6584](https://github.com/facebook/docusaurus/pull/6584) misc: enable jsx-key eslint rule ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-migrate`\\n - [#6756](https://github.com/facebook/docusaurus/pull/6756) test: sort migration test FS mock calls ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6609](https://github.com/facebook/docusaurus/pull/6609) refactor(migrate): change internal methods\' parameter style ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6476](https://github.com/facebook/docusaurus/pull/6476) chore: fix Stylelint globs for editor support ([@nschonni](https://github.com/nschonni))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#6744](https://github.com/facebook/docusaurus/pull/6744) fix(content-docs): properly display collocated social card image ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-module-type-aliases`, `docusaurus-types`, `docusaurus`\\n - [#6742](https://github.com/facebook/docusaurus/pull/6742) refactor: improve client modules types ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-module-type-aliases`\\n - [#6741](https://github.com/facebook/docusaurus/pull/6741) chore(module-type-aliases): add react as peer dependency ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6658](https://github.com/facebook/docusaurus/pull/6658) refactor(module-aliases): remove react-helmet dependency ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Other\\n - [#6726](https://github.com/facebook/docusaurus/pull/6726) misc: improve bug report template ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6512](https://github.com/facebook/docusaurus/pull/6512) misc: configure linguist behavior to show better language stats ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6487](https://github.com/facebook/docusaurus/pull/6487) chore: fix codesandbox example link + mention npm publish recovery ([@slorber](https://github.com/slorber))\\n - [#6486](https://github.com/facebook/docusaurus/pull/6486) chore: update examples for beta.15 ([@slorber](https://github.com/slorber))\\n - [#6485](https://github.com/facebook/docusaurus/pull/6485) fix(website): bad translate tags without default translation ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`, `docusaurus-utils`, `docusaurus`, `lqip-loader`\\n - [#6716](https://github.com/facebook/docusaurus/pull/6716) refactor: ensure lodash is default-imported ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-logger`, `docusaurus-migrate`, `docusaurus`\\n - [#6661](https://github.com/facebook/docusaurus/pull/6661) refactor: convert CLI entry points to ESM; migrate create-docusaurus to ESM ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-module-type-aliases`, `docusaurus-theme-common`, `docusaurus`\\n - [#6651](https://github.com/facebook/docusaurus/pull/6651) refactor: reduce exported members of docusaurus router ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#6629](https://github.com/facebook/docusaurus/pull/6629) refactor: move module declarations for non-route components to theme-classic ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-pwa`, `docusaurus-theme-classic`\\n - [#6614](https://github.com/facebook/docusaurus/pull/6614) refactor: remove Babel plugins that are included in preset-env ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-module-type-aliases`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-translations`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`\\n - [#6605](https://github.com/facebook/docusaurus/pull/6605) chore: fix ESLint warnings, restrict export all syntax ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`\\n - [#6583](https://github.com/facebook/docusaurus/pull/6583) refactor(live-codeblock): migrate theme to TS ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-migrate`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-theme-common`, `docusaurus-utils`, `docusaurus`, `lqip-loader`\\n - [#6524](https://github.com/facebook/docusaurus/pull/6524) refactor: enforce named capture groups; clean up regexes ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-migrate`, `docusaurus-plugin-content-docs`, `docusaurus`\\n - [#6521](https://github.com/facebook/docusaurus/pull/6521) refactor: mark all functions that import external modules as async ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-cssnano-preset`, `docusaurus-logger`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-module-type-aliases`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`, `docusaurus-types`, `docusaurus-utils-common`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `stylelint-copyright`\\n - [#6514](https://github.com/facebook/docusaurus/pull/6514) chore: clean up ESLint config, enable a few rules ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-types`, `docusaurus`\\n - [#6511](https://github.com/facebook/docusaurus/pull/6511) refactor(core): convert theme-fallback to TS ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-utils`\\n - [#6506](https://github.com/facebook/docusaurus/pull/6506) test: add test for readOutputHTMLFile ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-migrate`, `docusaurus-theme-common`\\n - [#6502](https://github.com/facebook/docusaurus/pull/6502) refactor: fix all eslint warnings ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus`\\n - [#6474](https://github.com/facebook/docusaurus/pull/6474) test: rename \'fixtures\' to \'**fixtures**\' ([@nschonni](https://github.com/nschonni))\\n\\n## :running: Performance\\n\\n- `create-docusaurus`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`, `docusaurus-utils`, `docusaurus`\\n - [#6725](https://github.com/facebook/docusaurus/pull/6725) refactor: convert all fs methods to async ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## Committers: 38\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Artem Kovalov ([@artemkovalyov](https://github.com/artemkovalyov))\\n- Balthasar Hofer ([@lebalz](https://github.com/lebalz))\\n- Clement Demonchy ([@cdemonchy-pro](https://github.com/cdemonchy-pro))\\n- CodeDoctor ([@CodeDoctorDE](https://github.com/CodeDoctorDE))\\n- Daniel Hanke ([@thedanielhanke](https://github.com/thedanielhanke))\\n- Daniel Kalevski ([@kalevski](https://github.com/kalevski))\\n- Dmitry Vinnik ([@dmitryvinn](https://github.com/dmitryvinn))\\n- Dmitry Vinnik | Meta ([@dmitryvinn-fb](https://github.com/dmitryvinn-fb))\\n- Erick Zhao ([@erickzhao](https://github.com/erickzhao))\\n- Everardo J. Barojas M. ([@ebarojas](https://github.com/ebarojas))\\n- Felipe Santos ([@felipecrs](https://github.com/felipecrs))\\n- Gaurish ([@apidev234](https://github.com/apidev234))\\n- Hong Yongmin ([@revi](https://github.com/revi))\\n- Jody Heavener ([@jodyheavener](https://github.com/jodyheavener))\\n- John Reilly ([@johnnyreilly](https://github.com/johnnyreilly))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Kishan Gajera ([@kgajera](https://github.com/kgajera))\\n- Konstantin Tarkus ([@koistya](https://github.com/koistya))\\n- Matheus Ricardo Brunelli ([@mrbrunelli](https://github.com/mrbrunelli))\\n- Matthew Ailes ([@vidarc](https://github.com/vidarc))\\n- Mikey O\'Toole ([@homotechsual](https://github.com/homotechsual))\\n- Miles Johnson ([@milesj](https://github.com/milesj))\\n- Muhammad Redho Ayassa ([@redhoyasa](https://github.com/redhoyasa))\\n- Naseel Niyas ([@NaseelNiyas](https://github.com/NaseelNiyas))\\n- Nick Schonning ([@nschonni](https://github.com/nschonni))\\n- Pranab Das ([@pranabdas](https://github.com/pranabdas))\\n- Ruben Arushanyan ([@Ruben-Arushanyan](https://github.com/Ruben-Arushanyan))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Tamal Web ([@tamalweb](https://github.com/tamalweb))\\n- Yangshun Tay ([@yangshun](https://github.com/yangshun))\\n- [@BigDataWriter](https://github.com/BigDataWriter)\\n- [@CookieJarApps](https://github.com/CookieJarApps)\\n- [@TheCatLady](https://github.com/TheCatLady)\\n- [@nick-verida](https://github.com/nick-verida)\\n- [@seyoon20087](https://github.com/seyoon20087)\\n- [@toto6038](https://github.com/toto6038)\\n- \uC774\uC815\uD658 ([@winterlood](https://github.com/winterlood))"},{"id":"/2.0.0-beta.15","metadata":{"permalink":"/changelog/2.0.0-beta.15","source":"@site/changelog/source/2.0.0-beta.15.md","title":"2.0.0-beta.15","description":"New Feature","date":"2022-01-26T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"\u4E45\u67D3 | JiuRan","alias":"1084350607","url":"https://github.com/1084350607","imageURL":"https://github.com/1084350607.png","key":"1084350607","page":null},{"name":"Abdelrahman Ahmed","alias":"abahmed","url":"https://github.com/abahmed","imageURL":"https://github.com/abahmed.png","key":"abahmed","page":null},{"name":"AJ Rice","alias":"ajrice6713","url":"https://github.com/ajrice6713","imageURL":"https://github.com/ajrice6713.png","key":"ajrice6713","page":null},{"name":"Alexandru Grigoras","alias":"alexgrigoras","url":"https://github.com/alexgrigoras","imageURL":"https://github.com/alexgrigoras.png","key":"alexgrigoras","page":null},{"name":"Filipe Guerra","alias":"alias-mac","url":"https://github.com/alias-mac","imageURL":"https://github.com/alias-mac.png","key":"alias-mac","page":null},{"name":"Amir M. Mohamadi","alias":"amir2mi","url":"https://github.com/amir2mi","imageURL":"https://github.com/amir2mi.png","key":"amir2mi","page":null},{"name":"Anthony McCaigue","alias":"antmcc49","url":"https://github.com/antmcc49","imageURL":"https://github.com/antmcc49.png","key":"antmcc49","page":null},{"name":"Armano","alias":"armano2","url":"https://github.com/armano2","imageURL":"https://github.com/armano2.png","key":"armano2","page":null},{"name":"Brendan Nee","alias":"brendannee","url":"https://github.com/brendannee","imageURL":"https://github.com/brendannee.png","key":"brendannee","page":null},{"name":"Devtato","alias":"cerkiewny","url":"https://github.com/cerkiewny","imageURL":"https://github.com/cerkiewny.png","key":"cerkiewny","page":null},{"name":"Davide Bianchi","alias":"davidebianchi","url":"https://github.com/davidebianchi","imageURL":"https://github.com/davidebianchi.png","key":"davidebianchi","page":null},{"name":"Edouard Bonlieu","alias":"edouardb","url":"https://github.com/edouardb","imageURL":"https://github.com/edouardb.png","key":"edouardb","page":null},{"name":"Feodor Fitsner","alias":"FeodorFitsner","url":"https://github.com/FeodorFitsner","imageURL":"https://github.com/FeodorFitsner.png","key":"FeodorFitsner","page":null},{"name":"Gabriel Csapo","alias":"gabrielcsapo","url":"https://github.com/gabrielcsapo","imageURL":"https://github.com/gabrielcsapo.png","key":"gabrielcsapo","page":null},{"name":"Chen","alias":"HiChen404","url":"https://github.com/HiChen404","imageURL":"https://github.com/HiChen404.png","key":"HiChen404","page":null},{"name":"Mikey O\'Toole","alias":"homotechsual","url":"https://github.com/homotechsual","imageURL":"https://github.com/homotechsual.png","key":"homotechsual","page":null},{"name":"Jeffrey Aven","alias":"jeffreyaven","url":"https://github.com/jeffreyaven","imageURL":"https://github.com/jeffreyaven.png","key":"jeffreyaven","page":null},{"name":"Jody Heavener","alias":"jodyheavener","url":"https://github.com/jodyheavener","imageURL":"https://github.com/jodyheavener.png","key":"jodyheavener","page":null},{"name":"John Reilly","alias":"johnnyreilly","url":"https://github.com/johnnyreilly","imageURL":"https://github.com/johnnyreilly.png","key":"johnnyreilly","page":null},{"name":"Joseph","alias":"josephriosIO","url":"https://github.com/josephriosIO","imageURL":"https://github.com/josephriosIO.png","key":"josephriosIO","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Josh Goldberg","alias":"JoshuaKGoldberg","url":"https://github.com/JoshuaKGoldberg","imageURL":"https://github.com/JoshuaKGoldberg.png","key":"JoshuaKGoldberg","page":null},{"name":"Jake Witz","alias":"jwitz","url":"https://github.com/jwitz","imageURL":"https://github.com/jwitz.png","key":"jwitz","page":null},{"name":"Kaustubh Kulkarni","alias":"kaustubhk24","url":"https://github.com/kaustubhk24","imageURL":"https://github.com/kaustubhk24.png","key":"kaustubhk24","page":null},{"name":"kuizuo","alias":"kuizuo","url":"https://github.com/kuizuo","imageURL":"https://github.com/kuizuo.png","key":"kuizuo","page":null},{"name":"Minh Pham","alias":"lmpham1","url":"https://github.com/lmpham1","imageURL":"https://github.com/lmpham1.png","key":"lmpham1","page":null},{"name":"Lars Mikkelsen","alias":"ltm","url":"https://github.com/ltm","imageURL":"https://github.com/ltm.png","key":"ltm","page":null},{"name":"mcallisto","alias":"mcallisto","url":"https://github.com/mcallisto","imageURL":"https://github.com/mcallisto.png","key":"mcallisto","page":null},{"name":"Sanjay Soundarajan","alias":"megasanjay","url":"https://github.com/megasanjay","imageURL":"https://github.com/megasanjay.png","key":"megasanjay","page":null},{"name":"Morooka Kotaro","alias":"MorookaKotaro","url":"https://github.com/MorookaKotaro","imageURL":"https://github.com/MorookaKotaro.png","key":"MorookaKotaro","page":null},{"name":"Yaroslav Serhieiev","alias":"noomorph","url":"https://github.com/noomorph","imageURL":"https://github.com/noomorph.png","key":"noomorph","page":null},{"name":"Nick Schonning","alias":"nschonni","url":"https://github.com/nschonni","imageURL":"https://github.com/nschonni.png","key":"nschonni","page":null},{"name":"\xd6mer Faruk APLAK","alias":"omeraplak","url":"https://github.com/omeraplak","imageURL":"https://github.com/omeraplak.png","key":"omeraplak","page":null},{"name":"Nayan Patel","alias":"PatelN123","url":"https://github.com/PatelN123","imageURL":"https://github.com/PatelN123.png","key":"PatelN123","page":null},{"name":"Pranab Das","alias":"pranabdas","url":"https://github.com/pranabdas","imageURL":"https://github.com/pranabdas.png","key":"pranabdas","page":null},{"name":"Reece Dunham","alias":"RDIL","url":"https://github.com/RDIL","imageURL":"https://github.com/RDIL.png","key":"RDIL","page":null},{"name":"Rishi Raj Jain","alias":"rishi-raj-jain","url":"https://github.com/rishi-raj-jain","imageURL":"https://github.com/rishi-raj-jain.png","key":"rishi-raj-jain","page":null},{"name":"roydukkey","alias":"roydukkey","url":"https://github.com/roydukkey","imageURL":"https://github.com/roydukkey.png","key":"roydukkey","page":null},{"name":"ruanqizhen","alias":"ruanqizhen","url":"https://github.com/ruanqizhen","imageURL":"https://github.com/ruanqizhen.png","key":"ruanqizhen","page":null},{"name":"sgenoud","alias":"sgenoud","url":"https://github.com/sgenoud","imageURL":"https://github.com/sgenoud.png","key":"sgenoud","page":null},{"name":"Shun Wakatsuki","alias":"shwaka","url":"https://github.com/shwaka","imageURL":"https://github.com/shwaka.png","key":"shwaka","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Tapan Chudasama","alias":"tapanchudasama","url":"https://github.com/tapanchudasama","imageURL":"https://github.com/tapanchudasama.png","key":"tapanchudasama","page":null},{"name":"Vaibhav Shinde","alias":"vaibhavshn","url":"https://github.com/vaibhavshn","imageURL":"https://github.com/vaibhavshn.png","key":"vaibhavshn","page":null},{"name":"Vandr\xe9 Leal","alias":"vandreleal","url":"https://github.com/vandreleal","imageURL":"https://github.com/vandreleal.png","key":"vandreleal","page":null},{"name":"wood3n","alias":"wood3n","url":"https://github.com/wood3n","imageURL":"https://github.com/wood3n.png","key":"wood3n","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2022-01-26T20:00","authors":["1084350607","abahmed","ajrice6713","alexgrigoras","alias-mac","amir2mi","antmcc49","armano2","brendannee","cerkiewny","davidebianchi","edouardb","FeodorFitsner","gabrielcsapo","HiChen404","homotechsual","jeffreyaven","jodyheavener","johnnyreilly","josephriosIO","Josh-Cena","JoshuaKGoldberg","jwitz","kaustubhk24","kuizuo","lmpham1","ltm","mcallisto","megasanjay","MorookaKotaro","noomorph","nschonni","omeraplak","PatelN123","pranabdas","RDIL","rishi-raj-jain","roydukkey","ruanqizhen","sgenoud","shwaka","slorber","tapanchudasama","vaibhavshn","vandreleal","wood3n"]},"unlisted":false,"prevItem":{"title":"2.0.0-beta.16","permalink":"/changelog/2.0.0-beta.16"},"nextItem":{"title":"2.0.0-beta.14","permalink":"/changelog/2.0.0-beta.14"},"listPageLink":"/changelog/page/2"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-plugin-content-docs`\\n - [#6451](https://github.com/facebook/docusaurus/pull/6451) feat(content-docs): expose isCategoryIndex matcher to customize conventions ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5782](https://github.com/facebook/docusaurus/pull/5782) feat(content-docs): displayed_sidebar front matter ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#6466](https://github.com/facebook/docusaurus/pull/6466) feat(theme-classic): add stable class for DocSidebarContainer ([@homotechsual](https://github.com/homotechsual))\\n - [#3811](https://github.com/facebook/docusaurus/pull/3811) feat(theme-classic): auto-collapse sibling categories in doc sidebar ([@josephriosIO](https://github.com/josephriosIO))\\n - [#6216](https://github.com/facebook/docusaurus/pull/6216) feat(theme-classic): usable CodeBlock outside markdown ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`\\n - [#6416](https://github.com/facebook/docusaurus/pull/6416) feat(content-blog): allow authors list to contain images only ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-blog`\\n - [#6415](https://github.com/facebook/docusaurus/pull/6415) feat(content-blog): allow disabling generating archive ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6245](https://github.com/facebook/docusaurus/pull/6245) feat(content-blog): parse date from middle of file path ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6388](https://github.com/facebook/docusaurus/pull/6388) feat(content-blog): include tags in feed ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-module-type-aliases`, `docusaurus-theme-classic`, `docusaurus-types`, `docusaurus`\\n - [#6371](https://github.com/facebook/docusaurus/pull/6371) feat(core, theme-classic): allow overriding htmlLang ([@noomorph](https://github.com/noomorph))\\n- `docusaurus-mdx-loader`\\n - [#6323](https://github.com/facebook/docusaurus/pull/6323) feat(mdx-loader): preserve hash in image src; support GH themed images ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#6139](https://github.com/facebook/docusaurus/pull/6139) feat(theme-classic): new navbar item linking to a sidebar ([@lmpham1](https://github.com/lmpham1))\\n - [#6239](https://github.com/facebook/docusaurus/pull/6239) feat(content-docs): allow SEO metadata for category index pages ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-sitemap`\\n - [#6248](https://github.com/facebook/docusaurus/pull/6248) feat(sitemap): remove trailingSlash option; respect noIndex config ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-ideal-image`, `docusaurus-theme-translations`\\n - [#6173](https://github.com/facebook/docusaurus/pull/6173) feat(ideal-image): allow translating status messages ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-ideal-image`\\n - [#6155](https://github.com/facebook/docusaurus/pull/6155) feat(ideal-image): new option disableInDev ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-translations`\\n - [#6169](https://github.com/facebook/docusaurus/pull/6169) feat(theme-translations): add Italian translations ([@mcallisto](https://github.com/mcallisto))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-types`, `docusaurus`\\n - [#6166](https://github.com/facebook/docusaurus/pull/6166) feat: async plugin creator functions ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#6165](https://github.com/facebook/docusaurus/pull/6165) feat(core): async docusaurus.config.js creator function ([@slorber](https://github.com/slorber))\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-theme-search-algolia`\\n - [#6407](https://github.com/facebook/docusaurus/pull/6407) feat(search): enable contextual search by default ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`\\n - [#6289](https://github.com/facebook/docusaurus/pull/6289) refactor: move @theme/hooks to @docusaurus/theme-common ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#6283](https://github.com/facebook/docusaurus/pull/6283) refactor(theme-classic): apply import/no-named-export eslint rule ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-sitemap`\\n - [#6248](https://github.com/facebook/docusaurus/pull/6248) feat(sitemap): remove trailingSlash option; respect noIndex config ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`, `docusaurus-types`, `docusaurus-utils-common`, `docusaurus-utils`, `docusaurus`\\n - [#6454](https://github.com/facebook/docusaurus/pull/6454) fix(content-blog): generate feed by reading build output ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`\\n - [#6468](https://github.com/facebook/docusaurus/pull/6468) fix(init): cd to correct path when installing ([@gabrielcsapo](https://github.com/gabrielcsapo))\\n- `docusaurus-mdx-loader`\\n - [#4827](https://github.com/facebook/docusaurus/pull/4827) fix: allow links to JSON in .md files to be transformed as asset links ([@antmcc49](https://github.com/antmcc49))\\n- `docusaurus-plugin-content-docs`\\n - [#6435](https://github.com/facebook/docusaurus/pull/6435) fix(content-docs): make getActivePlugin match plugin paths more exactly ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6310](https://github.com/facebook/docusaurus/pull/6310) fix: highlight appropriate navItem when browsing generated category index ([@tapanchudasama](https://github.com/tapanchudasama))\\n - [#6202](https://github.com/facebook/docusaurus/pull/6202) fix(content-docs): quotify path when retrieving git history ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus`\\n - [#6424](https://github.com/facebook/docusaurus/pull/6424) fix(core): fix css url(\\"image.png\\"), use css-loader v6 with esModules: false ([@slorber](https://github.com/slorber))\\n - [#6378](https://github.com/facebook/docusaurus/pull/6378) fix(core): do not coerce webpack warning to string ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6197](https://github.com/facebook/docusaurus/pull/6197) fix(cli): quotify temp path in deploy command ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6168](https://github.com/facebook/docusaurus/pull/6168) fix(core): update webpack-dev-server + fix deprecation warning ([@slorber](https://github.com/slorber))\\n- `docusaurus-logger`, `docusaurus-utils`\\n - [#6384](https://github.com/facebook/docusaurus/pull/6384) fix(logger): properly stringify objects for logging ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-module-type-aliases`, `docusaurus-theme-classic`, `docusaurus`\\n - [#6338](https://github.com/facebook/docusaurus/pull/6338) fix(core): error boundary should allow no children ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#6314](https://github.com/facebook/docusaurus/pull/6314) fix(theme-classic): fix mobile version dropdown label with only one version ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6288](https://github.com/facebook/docusaurus/pull/6288) fix(theme-classic): add missing role=region to SkipToContent ([@JoshuaKGoldberg](https://github.com/JoshuaKGoldberg))\\n - [#6213](https://github.com/facebook/docusaurus/pull/6213) refactor(theme-classic): extract common PaginatorNavLink component ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6177](https://github.com/facebook/docusaurus/pull/6177) fix(theme-classic): make React elements in pre render correctly ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-preset-classic`, `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`\\n - [#6300](https://github.com/facebook/docusaurus/pull/6300) refactor: move exported type definitions to declaration file ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-migrate`\\n - [#6276](https://github.com/facebook/docusaurus/pull/6276) fix(migrate): migration CLI should correctly migrate gtag options ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-blog`\\n - [#6244](https://github.com/facebook/docusaurus/pull/6244) fix(content-blog): always convert front matter date as UTC ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-utils`, `docusaurus`\\n - [#6190](https://github.com/facebook/docusaurus/pull/6190) fix(utils): properly escape Windows paths ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-module-type-aliases`\\n - [#6469](https://github.com/facebook/docusaurus/pull/6469) fix(module-type-aliases): fix type def for translate params ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-search-algolia`\\n - [#6407](https://github.com/facebook/docusaurus/pull/6407) feat(search): enable contextual search by default ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`\\n - [#6443](https://github.com/facebook/docusaurus/pull/6443) refactor(mdx-loader): use vfile.path to access Markdown file path ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`\\n - [#6427](https://github.com/facebook/docusaurus/pull/6427) feat(theme-classic): add aria-current to sidebar category link ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6391](https://github.com/facebook/docusaurus/pull/6391) refactor(theme-classic): add comments to Prism setup; minor refactor ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6240](https://github.com/facebook/docusaurus/pull/6240) refactor(theme-classic): use front matter from metadata for BlogPostPage ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus`\\n - [#6419](https://github.com/facebook/docusaurus/pull/6419) feat(core): warn users about hand-modifying generated files ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6405](https://github.com/facebook/docusaurus/pull/6405) feat(core): check imported API name when extracting translations ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6291](https://github.com/facebook/docusaurus/pull/6291) feat(core): improve error message for BrowserOnly; better docs ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`\\n - [#5822](https://github.com/facebook/docusaurus/pull/5822) feat: update website & init template palette to pass WCAG test; include contrast check in ColorGenerator ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6368](https://github.com/facebook/docusaurus/pull/6368) fix(create-docusaurus): add useBaseUrl for image URLs ([@alias-mac](https://github.com/alias-mac))\\n- `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`\\n - [#6400](https://github.com/facebook/docusaurus/pull/6400) feat(content-pages): front matter validation, include front matter in metadata ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-theme-classic`\\n - [#6339](https://github.com/facebook/docusaurus/pull/6339) feat(mdx-loader): read image dimensions when processing Markdown ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-blog`\\n - [#6388](https://github.com/facebook/docusaurus/pull/6388) feat(content-blog): include tags in feed ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6189](https://github.com/facebook/docusaurus/pull/6189) feat(content-blog): include front matter in loaded content metadata ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-common`\\n - [#6317](https://github.com/facebook/docusaurus/pull/6317) feat(theme-classic): autoscroll TOC with active link ([@cerkiewny](https://github.com/cerkiewny))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-theme-search-algolia`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`\\n - [#6303](https://github.com/facebook/docusaurus/pull/6303) test(utils, mdx-loader, core): improve coverage ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-preset-classic`\\n - [#6284](https://github.com/facebook/docusaurus/pull/6284) fix(preset-classic): throw if preset finds GA options in theme config ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus`\\n - [#6186](https://github.com/facebook/docusaurus/pull/6186) refactor: print trailing new line when outputting JSON ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :memo: Documentation\\n\\n- Other\\n - [#6296](https://github.com/facebook/docusaurus/pull/6296) docs: add advanced guides ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6459](https://github.com/facebook/docusaurus/pull/6459) docs: add replicad to showcase ([@sgenoud](https://github.com/sgenoud))\\n - [#6334](https://github.com/facebook/docusaurus/pull/6334) docs: 2021 recap blog post ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6458](https://github.com/facebook/docusaurus/pull/6458) docs: add Kuizuo\'s Personal Website to showcase ([@kuizuo](https://github.com/kuizuo))\\n - [#6431](https://github.com/facebook/docusaurus/pull/6431) docs: add Koyeb as a deployment option ([@edouardb](https://github.com/edouardb))\\n - [#6455](https://github.com/facebook/docusaurus/pull/6455) docs: add Sass Fairy to showcase ([@roydukkey](https://github.com/roydukkey))\\n - [#6453](https://github.com/facebook/docusaurus/pull/6453) docs: document embedding generated index in doc page ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6450](https://github.com/facebook/docusaurus/pull/6450) docs: split sidebar documentation into sections ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6449](https://github.com/facebook/docusaurus/pull/6449) docs: multiple doc improvements ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6448](https://github.com/facebook/docusaurus/pull/6448) fix(website): update colors correctly when palette is only customized in one color mode ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6385](https://github.com/facebook/docusaurus/pull/6385) chore: add height/width for front page images ([@nschonni](https://github.com/nschonni))\\n - [#6445](https://github.com/facebook/docusaurus/pull/6445) docs: update showcase data of InfraQL ([@jeffreyaven](https://github.com/jeffreyaven))\\n - [#6433](https://github.com/facebook/docusaurus/pull/6433) docs: add kube-green to showcase ([@davidebianchi](https://github.com/davidebianchi))\\n - [#6428](https://github.com/facebook/docusaurus/pull/6428) docs: elaborate on i18n tutorial ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6422](https://github.com/facebook/docusaurus/pull/6422) docs: add 404Lab wiki to showcase ([@HiChen404](https://github.com/HiChen404))\\n - [#6420](https://github.com/facebook/docusaurus/pull/6420) fix(website): restore some site CSS in light mode ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6410](https://github.com/facebook/docusaurus/pull/6410) docs: add SODA for SPARC to showcase ([@megasanjay](https://github.com/megasanjay))\\n - [#6417](https://github.com/facebook/docusaurus/pull/6417) docs: fix accessibility of search modal ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6406](https://github.com/facebook/docusaurus/pull/6406) docs(i18n): add docs for htmlLang config ([@noomorph](https://github.com/noomorph))\\n - [#6393](https://github.com/facebook/docusaurus/pull/6393) docs: update Algolia docs for new DocSearch infra ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6383](https://github.com/facebook/docusaurus/pull/6383) docs: elaborate on different CSS class names ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6348](https://github.com/facebook/docusaurus/pull/6348) docs: add KaustubhK24\'s site to showcase ([@kaustubhk24](https://github.com/kaustubhk24))\\n - [#6333](https://github.com/facebook/docusaurus/pull/6333) feat(website): search in showcase ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6344](https://github.com/facebook/docusaurus/pull/6344) fix(website): make ColorGenerator functional ([@shwaka](https://github.com/shwaka))\\n - [#6340](https://github.com/facebook/docusaurus/pull/6340) docs: minor fix in the sample config for ESM ([@pranabdas](https://github.com/pranabdas))\\n - [#6336](https://github.com/facebook/docusaurus/pull/6336) docs: make upgrade guide always show the latest version ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6320](https://github.com/facebook/docusaurus/pull/6320) chore: upgrade rehype-katex with ESM support, update docs ([@pranabdas](https://github.com/pranabdas))\\n - [#6335](https://github.com/facebook/docusaurus/pull/6335) docs: add Pglet website to showcase ([@FeodorFitsner](https://github.com/FeodorFitsner))\\n - [#6327](https://github.com/facebook/docusaurus/pull/6327) docs: remove typo bracket ([@MorookaKotaro](https://github.com/MorookaKotaro))\\n - [#6316](https://github.com/facebook/docusaurus/pull/6316) docs: add bandwidth.com to showcase ([@ajrice6713](https://github.com/ajrice6713))\\n - [#6313](https://github.com/facebook/docusaurus/pull/6313) docs: add Refine site to showcase ([@omeraplak](https://github.com/omeraplak))\\n - [#6318](https://github.com/facebook/docusaurus/pull/6318) fix(website): various anchor link fixes ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6308](https://github.com/facebook/docusaurus/pull/6308) fix(website): wrap details in mdx-code-block ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6307](https://github.com/facebook/docusaurus/pull/6307) docs: document MD and JSX interoperability issues ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6299](https://github.com/facebook/docusaurus/pull/6299) docs: add icodex to showcase ([@wood3n](https://github.com/wood3n))\\n - [#6297](https://github.com/facebook/docusaurus/pull/6297) docs: mention setup in monorepo ([@PatelN123](https://github.com/PatelN123))\\n - [#6293](https://github.com/facebook/docusaurus/pull/6293) docs: remove GraphQL mesh from showcase ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6231](https://github.com/facebook/docusaurus/pull/6231) docs: update showcase images; remove GraphQL Code Generator site ([@PatelN123](https://github.com/PatelN123))\\n - [#6285](https://github.com/facebook/docusaurus/pull/6285) refactor(website): further optimize showcase images ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6281](https://github.com/facebook/docusaurus/pull/6281) docs: Add kwatch to showcase ([@abahmed](https://github.com/abahmed))\\n - [#6280](https://github.com/facebook/docusaurus/pull/6280) docs: elaborate on doc versioning ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6043](https://github.com/facebook/docusaurus/pull/6043) fix(website): resize showcase images, tighten CI check ([@armano2](https://github.com/armano2))\\n - [#6274](https://github.com/facebook/docusaurus/pull/6274) docs: add dyte docs to showcase ([@vaibhavshn](https://github.com/vaibhavshn))\\n - [#6278](https://github.com/facebook/docusaurus/pull/6278) docs: add Khyron Realm to showcase ([@alexgrigoras](https://github.com/alexgrigoras))\\n - [#6271](https://github.com/facebook/docusaurus/pull/6271) docs: add FlatifyCSS to showcase ([@amir2mi](https://github.com/amir2mi))\\n - [#6275](https://github.com/facebook/docusaurus/pull/6275) fix(website): fix config-tabs breaking after translation ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6269](https://github.com/facebook/docusaurus/pull/6269) docs: add Ionic to showcase ([@ltm](https://github.com/ltm))\\n - [#6272](https://github.com/facebook/docusaurus/pull/6272) docs: make tsconfig work OOTB in typescript guide ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6265](https://github.com/facebook/docusaurus/pull/6265) docs: add Eric JiuRan\'s blog to showcase ([@1084350607](https://github.com/1084350607))\\n - [#6242](https://github.com/facebook/docusaurus/pull/6242) docs(showcase): update oxidizer website url ([@vandreleal](https://github.com/vandreleal))\\n - [#6226](https://github.com/facebook/docusaurus/pull/6226) docs: update showcase data for digital support notes ([@PatelN123](https://github.com/PatelN123))\\n - [#6224](https://github.com/facebook/docusaurus/pull/6224) docs: add TalentBrick to showcase ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6223](https://github.com/facebook/docusaurus/pull/6223) docs: normalize CodeBlock highlighting ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6214](https://github.com/facebook/docusaurus/pull/6214) feat(website): improve prism themes ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6215](https://github.com/facebook/docusaurus/pull/6215) docs: use BrowserWindow for Markdown demos ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6193](https://github.com/facebook/docusaurus/pull/6193) docs: normalize plugin API documentation ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6209](https://github.com/facebook/docusaurus/pull/6209) docs: elaborate on static asset resolution ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6207](https://github.com/facebook/docusaurus/pull/6207) docs: add default value for BrowserWindow URL field ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6206](https://github.com/facebook/docusaurus/pull/6206) docs: fix highlighting of YAML front matter ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6191](https://github.com/facebook/docusaurus/pull/6191) docs: fix react live scope button color in dark mode ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6188](https://github.com/facebook/docusaurus/pull/6188) docs: add Layer0 to deployment guide ([@rishi-raj-jain](https://github.com/rishi-raj-jain))\\n - [#6184](https://github.com/facebook/docusaurus/pull/6184) docs: remove mention of \'UA-\' in gtag ([@johnnyreilly](https://github.com/johnnyreilly))\\n - [#6181](https://github.com/facebook/docusaurus/pull/6181) docs: add GTFS-to-HTML to showcase ([@brendannee](https://github.com/brendannee))\\n - [#6178](https://github.com/facebook/docusaurus/pull/6178) docs: add Digital Support Notes to showcase ([@PatelN123](https://github.com/PatelN123))\\n - [#6170](https://github.com/facebook/docusaurus/pull/6170) docs: add LabVIEW coding experience to showcase ([@ruanqizhen](https://github.com/ruanqizhen))\\n - [#6164](https://github.com/facebook/docusaurus/pull/6164) docs: fix import module name of theme/Admonition ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6158](https://github.com/facebook/docusaurus/pull/6158) docs: add Astronomer to showcase ([@jwitz](https://github.com/jwitz))\\n- `create-docusaurus`\\n - [#5822](https://github.com/facebook/docusaurus/pull/5822) feat: update website & init template palette to pass WCAG test; include contrast check in ColorGenerator ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6187](https://github.com/facebook/docusaurus/pull/6187) docs: make installation guide more beginner-friendly ([@PatelN123](https://github.com/PatelN123))\\n- `docusaurus-utils`\\n - [#6204](https://github.com/facebook/docusaurus/pull/6204) docs: recommend highlighting with comments than number range ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-theme-classic`\\n - [#6203](https://github.com/facebook/docusaurus/pull/6203) docs: audit grammar issues ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :house: Internal\\n\\n- `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`\\n - [#6456](https://github.com/facebook/docusaurus/pull/6456) chore: add cSpell for spell checking ([@nschonni](https://github.com/nschonni))\\n- Other\\n - [#6444](https://github.com/facebook/docusaurus/pull/6444) misc: update nvmrc to 14.17.0 to meet dependency requirements ([@jodyheavener](https://github.com/jodyheavener))\\n - [#6441](https://github.com/facebook/docusaurus/pull/6441) misc: fix stylelint erroring when lint-staged passed ignored file ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6421](https://github.com/facebook/docusaurus/pull/6421) chore: fix yarn build:website:fast ([@slorber](https://github.com/slorber))\\n - [#6381](https://github.com/facebook/docusaurus/pull/6381) chore(website): set cache-control for static assets ([@nschonni](https://github.com/nschonni))\\n - [#6364](https://github.com/facebook/docusaurus/pull/6364) chore: remove Intl polyfills for Jest ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6325](https://github.com/facebook/docusaurus/pull/6325) chore: add Dependabot for dependency updates ([@nschonni](https://github.com/nschonni))\\n - [#6328](https://github.com/facebook/docusaurus/pull/6328) chore(ci): upgrade actions/github-script to v5 ([@nschonni](https://github.com/nschonni))\\n - [#6332](https://github.com/facebook/docusaurus/pull/6332) chore(deps): bump follow-redirects from 1.14.5 to 1.14.7 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#6326](https://github.com/facebook/docusaurus/pull/6326) misc(ci): remove redundant \\"CI: true\\" env ([@nschonni](https://github.com/nschonni))\\n - [#6304](https://github.com/facebook/docusaurus/pull/6304) chore: upgrade to Husky 7 ([@nschonni](https://github.com/nschonni))\\n - [#6222](https://github.com/facebook/docusaurus/pull/6222) test: ensure consistent CSS ordering ([@slorber](https://github.com/slorber))\\n - [#6159](https://github.com/facebook/docusaurus/pull/6159) docs: remove useless comment ([@slorber](https://github.com/slorber))\\n - [#6148](https://github.com/facebook/docusaurus/pull/6148) chore(examples): update examples to 2.0.0-beta.14 ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-debug`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus`\\n - [#6442](https://github.com/facebook/docusaurus/pull/6442) chore: enable stylelint standard config ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-ideal-image`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus`\\n - [#6440](https://github.com/facebook/docusaurus/pull/6440) chore: remove some unused dependencies from package.json ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`\\n - [#6436](https://github.com/facebook/docusaurus/pull/6436) refactor(theme-classic): render BlogPostItem as one JSX element ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6283](https://github.com/facebook/docusaurus/pull/6283) refactor(theme-classic): apply import/no-named-export eslint rule ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-pages`\\n - [#6413](https://github.com/facebook/docusaurus/pull/6413) fix(content-pages): declare hide_table_of_contents as boolean ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-migrate`, `docusaurus-module-type-aliases`, `docusaurus-theme-classic`, `docusaurus`\\n - [#6399](https://github.com/facebook/docusaurus/pull/6399) refactor: clean up TODO comments ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-cssnano-preset`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-common`, `docusaurus-theme-translations`, `docusaurus`\\n - [#6387](https://github.com/facebook/docusaurus/pull/6387) test: improve test coverage ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-utils`\\n - [#6380](https://github.com/facebook/docusaurus/pull/6380) chore: enable a few fixable ESLint rules ([@nschonni](https://github.com/nschonni))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-docs`, `docusaurus-utils`, `docusaurus`\\n - [#6377](https://github.com/facebook/docusaurus/pull/6377) refactor: use findAsyncSequential in a few places ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`, `docusaurus-utils-common`, `docusaurus-utils`, `docusaurus`, `stylelint-copyright`\\n - [#6375](https://github.com/facebook/docusaurus/pull/6375) chore: enable eslint-plugin-jest ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`\\n - [#6373](https://github.com/facebook/docusaurus/pull/6373) chore: enable react/jsx-closing-bracket-location ([@nschonni](https://github.com/nschonni))\\n- `docusaurus-theme-classic`, `stylelint-copyright`\\n - [#6374](https://github.com/facebook/docusaurus/pull/6374) feat(stylelint-copyright): autofix, stricter config ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-cssnano-preset`, `docusaurus-theme-classic`\\n - [#6372](https://github.com/facebook/docusaurus/pull/6372) chore: add baseline stylelint rules ([@nschonni](https://github.com/nschonni))\\n- `create-docusaurus`, `docusaurus-plugin-debug`, `docusaurus-theme-classic`\\n - [#6369](https://github.com/facebook/docusaurus/pull/6369) chore: upgrade lint-staged and globs ([@nschonni](https://github.com/nschonni))\\n- `docusaurus-theme-search-algolia`, `docusaurus-utils-validation`, `docusaurus`\\n - [#6341](https://github.com/facebook/docusaurus/pull/6341) chore: regenerate yarn.lock ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-pages`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus`\\n - [#6324](https://github.com/facebook/docusaurus/pull/6324) chore: minor typo cleanup ([@nschonni](https://github.com/nschonni))\\n- `create-docusaurus`, `docusaurus-logger`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-preset-classic`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`, `docusaurus-utils-common`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `lqip-loader`, `stylelint-copyright`\\n - [#6286](https://github.com/facebook/docusaurus/pull/6286) misc: convert all internal scripts to ESM ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`\\n - [#6289](https://github.com/facebook/docusaurus/pull/6289) refactor: move @theme/hooks to @docusaurus/theme-common ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`\\n - [#6287](https://github.com/facebook/docusaurus/pull/6287) refactor: new @docusaurus/plugin-content-docs/client interface ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#6279](https://github.com/facebook/docusaurus/pull/6279) refactor(core): use native types from webpack-dev-server ([@RDIL](https://github.com/RDIL))\\n- `docusaurus-plugin-content-docs`\\n - [#6277](https://github.com/facebook/docusaurus/pull/6277) refactor(content-docs): make readVersionsMetadata async ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-types`, `docusaurus`\\n - [#6237](https://github.com/facebook/docusaurus/pull/6237) refactor(core): convert serverEntry.js to TS ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-logger`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-module-type-aliases`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-utils-common`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `lqip-loader`\\n - [#6230](https://github.com/facebook/docusaurus/pull/6230) refactor: enforce type import specifiers ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-plugin-content-blog`, `docusaurus-utils`, `docusaurus`\\n - [#6229](https://github.com/facebook/docusaurus/pull/6229) refactor(utils): reorganize functions; move authors file resolution to utils ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-translations`\\n - [#6225](https://github.com/facebook/docusaurus/pull/6225) refactor(theme-translations): improve typing for update script ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6174](https://github.com/facebook/docusaurus/pull/6174) misc(theme-translations): multiple improvements to the update CLI ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## Committers: 46\\n\\n- AJ Rice ([@ajrice6713](https://github.com/ajrice6713))\\n- Abdelrahman Ahmed ([@abahmed](https://github.com/abahmed))\\n- Alexandru Grigoras ([@alexgrigoras](https://github.com/alexgrigoras))\\n- Amir M. Mohamadi ([@amir2mi](https://github.com/amir2mi))\\n- Anthony McCaigue ([@antmcc49](https://github.com/antmcc49))\\n- Armano ([@armano2](https://github.com/armano2))\\n- Brendan Nee ([@brendannee](https://github.com/brendannee))\\n- Chen ([@HiChen404](https://github.com/HiChen404))\\n- Davide Bianchi ([@davidebianchi](https://github.com/davidebianchi))\\n- Devtato ([@cerkiewny](https://github.com/cerkiewny))\\n- Edouard Bonlieu ([@edouardb](https://github.com/edouardb))\\n- Feodor Fitsner ([@FeodorFitsner](https://github.com/FeodorFitsner))\\n- Filipe Guerra ([@alias-mac](https://github.com/alias-mac))\\n- Gabriel Csapo ([@gabrielcsapo](https://github.com/gabrielcsapo))\\n- Jake Witz ([@jwitz](https://github.com/jwitz))\\n- Jeffrey Aven ([@jeffreyaven](https://github.com/jeffreyaven))\\n- Jody Heavener ([@jodyheavener](https://github.com/jodyheavener))\\n- John Reilly ([@johnnyreilly](https://github.com/johnnyreilly))\\n- Joseph ([@josephriosIO](https://github.com/josephriosIO))\\n- Josh Goldberg ([@JoshuaKGoldberg](https://github.com/JoshuaKGoldberg))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Kaustubh Kulkarni ([@kaustubhk24](https://github.com/kaustubhk24))\\n- Lars Mikkelsen ([@ltm](https://github.com/ltm))\\n- Mikey O\'Toole ([@homotechsual](https://github.com/homotechsual))\\n- Minh Pham ([@lmpham1](https://github.com/lmpham1))\\n- Morooka Kotaro ([@MorookaKotaro](https://github.com/MorookaKotaro))\\n- Nayan Patel ([@PatelN123](https://github.com/PatelN123))\\n- Nick Schonning ([@nschonni](https://github.com/nschonni))\\n- Pranab Das ([@pranabdas](https://github.com/pranabdas))\\n- Reece Dunham ([@RDIL](https://github.com/RDIL))\\n- Rishi Raj Jain ([@rishi-raj-jain](https://github.com/rishi-raj-jain))\\n- Sanjay Soundarajan ([@megasanjay](https://github.com/megasanjay))\\n- Shun Wakatsuki ([@shwaka](https://github.com/shwaka))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Tapan Chudasama ([@tapanchudasama](https://github.com/tapanchudasama))\\n- Vaibhav Shinde ([@vaibhavshn](https://github.com/vaibhavshn))\\n- Vandr\xe9 Leal ([@vandreleal](https://github.com/vandreleal))\\n- Yaroslav Serhieiev ([@noomorph](https://github.com/noomorph))\\n- [@mcallisto](https://github.com/mcallisto)\\n- [@ruanqizhen](https://github.com/ruanqizhen)\\n- [@wood3n](https://github.com/wood3n)\\n- kuizuo ([@kuizuo](https://github.com/kuizuo))\\n- sgenoud ([@sgenoud](https://github.com/sgenoud))\\n- trent ([@roydukkey](https://github.com/roydukkey))\\n- \xd6mer Faruk APLAK ([@omeraplak](https://github.com/omeraplak))\\n- \u4E45\u67D3 | JiuRan ([@1084350607](https://github.com/1084350607))"},{"id":"/2.0.0-beta.14","metadata":{"permalink":"/changelog/2.0.0-beta.14","source":"@site/changelog/source/2.0.0-beta.14.md","title":"2.0.0-beta.14","description":"New Feature","date":"2021-12-21T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"6543","alias":"6543","url":"https://github.com/6543","imageURL":"https://github.com/6543.png","key":"6543","page":null},{"name":"Christopher Klint","alias":"christopherklint97","url":"https://github.com/christopherklint97","imageURL":"https://github.com/christopherklint97.png","key":"christopherklint97","page":null},{"name":"colton","alias":"cmpadden","url":"https://github.com/cmpadden","imageURL":"https://github.com/cmpadden.png","key":"cmpadden","page":null},{"name":"Drylozu","alias":"Drylozu","url":"https://github.com/Drylozu","imageURL":"https://github.com/Drylozu.png","key":"Drylozu","page":null},{"name":"Jeroen Claassens","alias":"favna","url":"https://github.com/favna","imageURL":"https://github.com/favna.png","key":"favna","page":null},{"name":"Harsh Mishra","alias":"HarshCasper","url":"https://github.com/HarshCasper","imageURL":"https://github.com/HarshCasper.png","key":"HarshCasper","page":null},{"name":"Himanshu","alias":"himanshu007-creator","url":"https://github.com/himanshu007-creator","imageURL":"https://github.com/himanshu007-creator.png","key":"himanshu007-creator","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Kristoffer K.","alias":"merceyz","url":"https://github.com/merceyz","imageURL":"https://github.com/merceyz.png","key":"merceyz","page":null},{"name":"Yaroslav Serhieiev","alias":"noomorph","url":"https://github.com/noomorph","imageURL":"https://github.com/noomorph.png","key":"noomorph","page":null},{"name":"\u4E0D\u90D1","alias":"notzheng","url":"https://github.com/notzheng","imageURL":"https://github.com/notzheng.png","key":"notzheng","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Ziv","alias":"wewoor","url":"https://github.com/wewoor","imageURL":"https://github.com/wewoor.png","key":"wewoor","page":null},{"name":"Shubhendra Singh Chauhan","alias":"withshubh","url":"https://github.com/withshubh","imageURL":"https://github.com/withshubh.png","key":"withshubh","page":null},{"name":"Wout Vandesompele","alias":"wowtvds","url":"https://github.com/wowtvds","imageURL":"https://github.com/wowtvds.png","key":"wowtvds","page":null},{"name":"Yangshun Tay","alias":"yangshun","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png","key":"yangshun","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2021-12-21T20:00","authors":["6543","christopherklint97","cmpadden","Drylozu","favna","HarshCasper","himanshu007-creator","Josh-Cena","lex111","merceyz","noomorph","notzheng","slorber","wewoor","withshubh","wowtvds","yangshun"]},"unlisted":false,"prevItem":{"title":"2.0.0-beta.15","permalink":"/changelog/2.0.0-beta.15"},"nextItem":{"title":"2.0.0-beta.13","permalink":"/changelog/2.0.0-beta.13"},"listPageLink":"/changelog/page/2"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#6132](https://github.com/facebook/docusaurus/pull/6132) feat(theme-classic): new configuration syntax for a simple footer ([@christopherklint97](https://github.com/christopherklint97))\\n - [#6125](https://github.com/facebook/docusaurus/pull/6125) feat(theme-common): stable classname for code blocks ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`\\n - [#5848](https://github.com/facebook/docusaurus/pull/5848) feat(theme-classic): standalone Admonition component ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6082](https://github.com/facebook/docusaurus/pull/6082) feat(theme-classic): allow passing additional attributes to tab headings ([@Drylozu](https://github.com/Drylozu))\\n- `docusaurus-plugin-content-blog`\\n - [#6126](https://github.com/facebook/docusaurus/pull/6126) feat(content-blog): support json feed ([@notzheng](https://github.com/notzheng))\\n- `docusaurus`\\n - [#6107](https://github.com/facebook/docusaurus/pull/6107) feat(core): allow plugins to customize/override Webpack devServer config ([@slorber](https://github.com/slorber))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-migrate`\\n - [#6146](https://github.com/facebook/docusaurus/pull/6146) fix(migrate): do not modify non-MD files ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`\\n - [#6128](https://github.com/facebook/docusaurus/pull/6128) fix: do not use aria-hidden in heading anchor links ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-docs`\\n - [#6124](https://github.com/facebook/docusaurus/pull/6124) fix(content-docs): restore behavior when pagination front matter is null ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6085](https://github.com/facebook/docusaurus/pull/6085) fix(content-docs): getMainDocId should return doc with both versioned or unversioned id ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-utils-validation`\\n - [#6097](https://github.com/facebook/docusaurus/pull/6097) fix: declare missing dependencies ([@merceyz](https://github.com/merceyz))\\n- `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-pwa`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `lqip-loader`\\n - [#6094](https://github.com/facebook/docusaurus/pull/6094) fix: add missing dependencies on tslib ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-translations`\\n - [#6088](https://github.com/facebook/docusaurus/pull/6088) fix(theme-translations): publish theme-translation lib, including typedef ([@slorber](https://github.com/slorber))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#6053](https://github.com/facebook/docusaurus/pull/6053) feat(theme-classic): allow stylizing doc paginator arrows ([@noomorph](https://github.com/noomorph))\\n - [#6121](https://github.com/facebook/docusaurus/pull/6121) fix(theme-classic): add outline to focused code blocks ([@christopherklint97](https://github.com/christopherklint97))\\n - [#6118](https://github.com/facebook/docusaurus/pull/6118) refactor: remove some useless code ([@lex111](https://github.com/lex111))\\n- `create-docusaurus`, `docusaurus-logger`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`\\n - [#5994](https://github.com/facebook/docusaurus/pull/5994) refactor: unify log format with new logger utility ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`\\n - [#6119](https://github.com/facebook/docusaurus/pull/6119) fix(create-docusaurus): make initial editUrl functional ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6095](https://github.com/facebook/docusaurus/pull/6095) fix(create-docusaurus): give a clearer message when installation failed ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :memo: Documentation\\n\\n- [#6142](https://github.com/facebook/docusaurus/pull/6142) docs: normalize usage of placeholders ([@Josh-Cena](https://github.com/Josh-Cena))\\n- [#5918](https://github.com/facebook/docusaurus/pull/5918) docs: refactor & refine lifecycle API docs ([@Josh-Cena](https://github.com/Josh-Cena))\\n- [#6138](https://github.com/facebook/docusaurus/pull/6138) docs: add Smart Docs to showcase ([@wowtvds](https://github.com/wowtvds))\\n- [#6137](https://github.com/facebook/docusaurus/pull/6137) docs: add ToolJet to showcase ([@withshubh](https://github.com/withshubh))\\n- [#6141](https://github.com/facebook/docusaurus/pull/6141) docs: add WoodpeckerCI to showcase ([@6543](https://github.com/6543))\\n- [#6135](https://github.com/facebook/docusaurus/pull/6135) docs: mention admonition quirks with Prettier ([@yangshun](https://github.com/yangshun))\\n- [#6131](https://github.com/facebook/docusaurus/pull/6131) docs: elaborate on \\"docs-only\\" and \\"blog-only\\" ([@himanshu007-creator](https://github.com/himanshu007-creator))\\n- [#6134](https://github.com/facebook/docusaurus/pull/6134) docs: update link to init template README.md ([@cmpadden](https://github.com/cmpadden))\\n- [#6130](https://github.com/facebook/docusaurus/pull/6130) docs: refactor docs sidebar doc ([@Josh-Cena](https://github.com/Josh-Cena))\\n- [#6129](https://github.com/facebook/docusaurus/pull/6129) docs: refactor styling/theming docs ([@Josh-Cena](https://github.com/Josh-Cena))\\n- [#6112](https://github.com/facebook/docusaurus/pull/6112) docs: mention that SEO through front matter is better than head tag ([@Josh-Cena](https://github.com/Josh-Cena))\\n- [#6120](https://github.com/facebook/docusaurus/pull/6120) refactor(website): make deploy preview open next version docs by default ([@Josh-Cena](https://github.com/Josh-Cena))\\n- [#6111](https://github.com/facebook/docusaurus/pull/6111) docs: add Molecule website to showcase ([@wewoor](https://github.com/wewoor))\\n- [#6089](https://github.com/facebook/docusaurus/pull/6089) docs: add Enarx website to showcase ([@HarshCasper](https://github.com/HarshCasper))\\n- [#6090](https://github.com/facebook/docusaurus/pull/6090) docs: add sapphire to showcase ([@favna](https://github.com/favna))\\n- [#6091](https://github.com/facebook/docusaurus/pull/6091) docs(showcase): \\"much more pages\\" => \\"many more pages\\" ([@favna](https://github.com/favna))\\n\\n## :house: Internal\\n\\n- `docusaurus-theme-classic`\\n - [#6144](https://github.com/facebook/docusaurus/pull/6144) fix(theme-classic): fix translation when footer has no links ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-docs`\\n - [#6143](https://github.com/facebook/docusaurus/pull/6143) test: fix async tests resolved in random order ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6123](https://github.com/facebook/docusaurus/pull/6123) test: use snapshots for sidebar tests ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Other\\n - [#6122](https://github.com/facebook/docusaurus/pull/6122) fix(website): fix yarn build:website:fast ([@slorber](https://github.com/slorber))\\n - [#6080](https://github.com/facebook/docusaurus/pull/6080) chore: add npm and pnpm to E2E tests ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-cssnano-preset`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-preset-classic`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`, `docusaurus-types`, `docusaurus-utils-common`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `lqip-loader`\\n - [#6092](https://github.com/facebook/docusaurus/pull/6092) misc: ignore some files during npm publish ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## Committers: 17\\n\\n- 6543 ([@6543](https://github.com/6543))\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Christopher Klint ([@christopherklint97](https://github.com/christopherklint97))\\n- Harsh Mishra ([@HarshCasper](https://github.com/HarshCasper))\\n- Himanshu ([@himanshu007-creator](https://github.com/himanshu007-creator))\\n- Jeroen Claassens ([@favna](https://github.com/favna))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Kristoffer K. ([@merceyz](https://github.com/merceyz))\\n- Shubhendra Singh Chauhan ([@withshubh](https://github.com/withshubh))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Wout Vandesompele ([@wowtvds](https://github.com/wowtvds))\\n- Yangshun Tay ([@yangshun](https://github.com/yangshun))\\n- Yaroslav Serhieiev ([@noomorph](https://github.com/noomorph))\\n- Ziv ([@wewoor](https://github.com/wewoor))\\n- [@Drylozu](https://github.com/Drylozu)\\n- colton ([@cmpadden](https://github.com/cmpadden))\\n- \u4E0D\u90D1 ([@notzheng](https://github.com/notzheng))"},{"id":"/2.0.0-beta.13","metadata":{"permalink":"/changelog/2.0.0-beta.13","source":"@site/changelog/source/2.0.0-beta.13.md","title":"2.0.0-beta.13","description":"Good npm publish, same code as beta.11","date":"2021-12-10T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[],"frontMatter":{"mdx":{"format":"md"},"date":"2021-12-10T20:00"},"unlisted":false,"prevItem":{"title":"2.0.0-beta.14","permalink":"/changelog/2.0.0-beta.14"},"nextItem":{"title":"2.0.0-beta.12","permalink":"/changelog/2.0.0-beta.12"},"listPageLink":"/changelog/page/2"},"content":"\x3c!-- truncate --\x3e\\n\\nGood npm publish, same code as beta.11"},{"id":"/2.0.0-beta.12","metadata":{"permalink":"/changelog/2.0.0-beta.12","source":"@site/changelog/source/2.0.0-beta.12.md","title":"2.0.0-beta.12","description":"Bad npm publish, use beta.13 instead","date":"2021-12-10T19:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[],"frontMatter":{"mdx":{"format":"md"},"date":"2021-12-10T19:00"},"unlisted":false,"prevItem":{"title":"2.0.0-beta.13","permalink":"/changelog/2.0.0-beta.13"},"nextItem":{"title":"2.0.0-beta.11","permalink":"/changelog/2.0.0-beta.11"},"listPageLink":"/changelog/page/2"},"content":"\x3c!-- truncate --\x3e\\n\\nBad npm publish, use beta.13 instead"},{"id":"/2.0.0-beta.11","metadata":{"permalink":"/changelog/2.0.0-beta.11","source":"@site/changelog/source/2.0.0-beta.11.md","title":"2.0.0-beta.11","description":"Bug Fix","date":"2021-12-10T18:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Pranab Das","alias":"pranabdas","url":"https://github.com/pranabdas","imageURL":"https://github.com/pranabdas.png","key":"pranabdas","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2021-12-10T18:00","authors":["pranabdas","slorber"]},"unlisted":false,"prevItem":{"title":"2.0.0-beta.12","permalink":"/changelog/2.0.0-beta.12"},"nextItem":{"title":"2.0.0-beta.10","permalink":"/changelog/2.0.0-beta.10"},"listPageLink":"/changelog/page/3"},"content":"\x3c!-- truncate --\x3e\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-preset-classic`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`\\n - [#6078](https://github.com/facebook/docusaurus/pull/6078) fix: move docusaurus core back to hard dependencies ([@pranabdas](https://github.com/pranabdas))\\n\\n## Committers: 2\\n\\n- Pranab Das ([@pranabdas](https://github.com/pranabdas))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))"},{"id":"/2.0.0-beta.10","metadata":{"permalink":"/changelog/2.0.0-beta.10","source":"@site/changelog/source/2.0.0-beta.10.md","title":"2.0.0-beta.10","description":"New Feature","date":"2021-12-09T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Afshin Mehrabani","alias":"afshinm","url":"https://github.com/afshinm","imageURL":"https://github.com/afshinm.png","key":"afshinm","page":null},{"name":"Rohit Agrawal","alias":"agrawal-rohit","url":"https://github.com/agrawal-rohit","imageURL":"https://github.com/agrawal-rohit.png","key":"agrawal-rohit","page":null},{"name":"Armano","alias":"armano2","url":"https://github.com/armano2","imageURL":"https://github.com/armano2.png","key":"armano2","page":null},{"name":"Christophe Chaudier","alias":"cchaudier","url":"https://github.com/cchaudier","imageURL":"https://github.com/cchaudier.png","key":"cchaudier","page":null},{"name":"Devtato","alias":"cerkiewny","url":"https://github.com/cerkiewny","imageURL":"https://github.com/cerkiewny.png","key":"cerkiewny","page":null},{"name":"chima ilo","alias":"chimailo","url":"https://github.com/chimailo","imageURL":"https://github.com/chimailo.png","key":"chimailo","page":null},{"name":"Shoaib Sajid","alias":"dexbiobot","url":"https://github.com/dexbiobot","imageURL":"https://github.com/dexbiobot.png","key":"dexbiobot","page":null},{"name":"Don","alias":"dsmmcken","url":"https://github.com/dsmmcken","imageURL":"https://github.com/dsmmcken.png","key":"dsmmcken","page":null},{"name":"duanwilliam","alias":"duanwilliam","url":"https://github.com/duanwilliam","imageURL":"https://github.com/duanwilliam.png","key":"duanwilliam","page":null},{"name":"Dmitriy Fishman","alias":"fishmandev","url":"https://github.com/fishmandev","imageURL":"https://github.com/fishmandev.png","key":"fishmandev","page":null},{"name":"Fernando Maia","alias":"fsmaia","url":"https://github.com/fsmaia","imageURL":"https://github.com/fsmaia.png","key":"fsmaia","page":null},{"name":"Hendrik Bulens","alias":"hbulens","url":"https://github.com/hbulens","imageURL":"https://github.com/hbulens.png","key":"hbulens","page":null},{"name":"Hemant Sachdeva","alias":"HemantSachdeva","url":"https://github.com/HemantSachdeva","imageURL":"https://github.com/HemantSachdeva.png","key":"HemantSachdeva","page":null},{"name":"Jarar","alias":"JararvisQ","url":"https://github.com/JararvisQ","imageURL":"https://github.com/JararvisQ.png","key":"JararvisQ","page":null},{"name":"Jeff Shillitto","alias":"jeffski","url":"https://github.com/jeffski","imageURL":"https://github.com/jeffski.png","key":"jeffski","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Matej Jellus","alias":"juffalow","url":"https://github.com/juffalow","imageURL":"https://github.com/juffalow.png","key":"juffalow","page":null},{"name":"\u741A\u81F4\u8FDC","alias":"juzhiyuan","url":"https://github.com/juzhiyuan","imageURL":"https://github.com/juzhiyuan.png","key":"juzhiyuan","page":null},{"name":"Konstantin Popov","alias":"KonstHardy","url":"https://github.com/KonstHardy","imageURL":"https://github.com/KonstHardy.png","key":"KonstHardy","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Ludovico Fischer","alias":"ludofischer","url":"https://github.com/ludofischer","imageURL":"https://github.com/ludofischer.png","key":"ludofischer","page":null},{"name":"Martin \u0160o\u0161i\u0107","alias":"Martinsos","url":"https://github.com/Martinsos","imageURL":"https://github.com/Martinsos.png","key":"Martinsos","page":null},{"name":"Matthijs Groen","alias":"matthijsgroen","url":"https://github.com/matthijsgroen","imageURL":"https://github.com/matthijsgroen.png","key":"matthijsgroen","page":null},{"name":"MisterFISHUP","alias":"MisterFISHUP","url":"https://github.com/MisterFISHUP","imageURL":"https://github.com/MisterFISHUP.png","key":"MisterFISHUP","page":null},{"name":"Molly White","alias":"molly","url":"https://github.com/molly","imageURL":"https://github.com/molly.png","key":"molly","page":null},{"name":"Morooka Kotaro","alias":"MorookaKotaro","url":"https://github.com/MorookaKotaro","imageURL":"https://github.com/MorookaKotaro.png","key":"MorookaKotaro","page":null},{"name":"Oliver Ullman","alias":"oriooctopus","url":"https://github.com/oriooctopus","imageURL":"https://github.com/oriooctopus.png","key":"oriooctopus","page":null},{"name":"pal-sig","alias":"pal-sig","url":"https://github.com/pal-sig","imageURL":"https://github.com/pal-sig.png","key":"pal-sig","page":null},{"name":"Patitotective","alias":"Patitotective","url":"https://github.com/Patitotective","imageURL":"https://github.com/Patitotective.png","key":"Patitotective","page":null},{"name":"Patrik M\xe4siar","alias":"patrikmasiar","url":"https://github.com/patrikmasiar","imageURL":"https://github.com/patrikmasiar.png","key":"patrikmasiar","page":null},{"name":"Paul Biggar","alias":"pbiggar","url":"https://github.com/pbiggar","imageURL":"https://github.com/pbiggar.png","key":"pbiggar","page":null},{"name":"Brennan Kinney","alias":"polarathene","url":"https://github.com/polarathene","imageURL":"https://github.com/polarathene.png","key":"polarathene","page":null},{"name":"Yongmin Hong","alias":"revi","url":"https://github.com/revi","imageURL":"https://github.com/revi.png","key":"revi","page":null},{"name":"Robin M\xe9tral","alias":"robinmetral","url":"https://github.com/robinmetral","imageURL":"https://github.com/robinmetral.png","key":"robinmetral","page":null},{"name":"Ronny Roeller","alias":"ronnyroeller","url":"https://github.com/ronnyroeller","imageURL":"https://github.com/ronnyroeller.png","key":"ronnyroeller","page":null},{"name":"Ivan Boothe","alias":"rootwork","url":"https://github.com/rootwork","imageURL":"https://github.com/rootwork.png","key":"rootwork","page":null},{"name":"Rey","alias":"rsapkf","url":"https://github.com/rsapkf","imageURL":"https://github.com/rsapkf.png","key":"rsapkf","page":null},{"name":"Sergio Moreno","alias":"semoal","url":"https://github.com/semoal","imageURL":"https://github.com/semoal.png","key":"semoal","page":null},{"name":"Can Olcer","alias":"shafy","url":"https://github.com/shafy","imageURL":"https://github.com/shafy.png","key":"shafy","page":null},{"name":"Varun Sivapalan","alias":"sivapalan","url":"https://github.com/sivapalan","imageURL":"https://github.com/sivapalan.png","key":"sivapalan","page":null},{"name":"Sharon Koech","alias":"skoech","url":"https://github.com/skoech","imageURL":"https://github.com/skoech.png","key":"skoech","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Soham Shah","alias":"sohamsshah","url":"https://github.com/sohamsshah","imageURL":"https://github.com/sohamsshah.png","key":"sohamsshah","page":null},{"name":"Paden Clayton","alias":"spyke01","url":"https://github.com/spyke01","imageURL":"https://github.com/spyke01.png","key":"spyke01","page":null},{"name":"Stan Kocken","alias":"StanKocken","url":"https://github.com/StanKocken","imageURL":"https://github.com/StanKocken.png","key":"StanKocken","page":null},{"name":"Swalah Amani","alias":"swalahamani","url":"https://github.com/swalahamani","imageURL":"https://github.com/swalahamani.png","key":"swalahamani","page":null},{"name":"Swapnil M Mane","alias":"swapnilmmane","url":"https://github.com/swapnilmmane","imageURL":"https://github.com/swapnilmmane.png","key":"swapnilmmane","page":null},{"name":"William Poetra Yoga","alias":"wpyoga","url":"https://github.com/wpyoga","imageURL":"https://github.com/wpyoga.png","key":"wpyoga","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2021-12-09T20:00","authors":["afshinm","agrawal-rohit","armano2","cchaudier","cerkiewny","chimailo","dexbiobot","dsmmcken","duanwilliam","fishmandev","fsmaia","hbulens","HemantSachdeva","JararvisQ","jeffski","Josh-Cena","juffalow","juzhiyuan","KonstHardy","lex111","ludofischer","Martinsos","matthijsgroen","MisterFISHUP","molly","MorookaKotaro","oriooctopus","pal-sig","Patitotective","patrikmasiar","pbiggar","polarathene","revi","robinmetral","ronnyroeller","rootwork","rsapkf","semoal","shafy","sivapalan","skoech","slorber","sohamsshah","spyke01","StanKocken","swalahamani","swapnilmmane","wpyoga"]},"unlisted":false,"prevItem":{"title":"2.0.0-beta.11","permalink":"/changelog/2.0.0-beta.11"},"nextItem":{"title":"2.0.0-beta.9","permalink":"/changelog/2.0.0-beta.9"},"listPageLink":"/changelog/page/3"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `create-docusaurus`, `docusaurus-types`, `docusaurus`\\n - [#5930](https://github.com/facebook/docusaurus/pull/5930) feat: shorthands for themes/plugins/presets configuration ([@fsmaia](https://github.com/fsmaia))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-translations`, `docusaurus-utils`, `docusaurus`\\n - [#5830](https://github.com/facebook/docusaurus/pull/5830) feat(content-docs): sidebar category linking to document or auto-generated index page ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-types`, `docusaurus`\\n - [#4095](https://github.com/facebook/docusaurus/pull/4095) feat(core): allow sourcing from multiple static directories ([@oriooctopus](https://github.com/oriooctopus))\\n- `create-docusaurus`\\n - [#3458](https://github.com/facebook/docusaurus/pull/3458) feat(create-docusaurus): allow using local folder as template ([@afshinm](https://github.com/afshinm))\\n- `docusaurus-plugin-content-blog`\\n - [#5787](https://github.com/facebook/docusaurus/pull/5787) feat(content-blog): allow sorting posts in ascending order ([@cerkiewny](https://github.com/cerkiewny))\\n- `docusaurus-module-type-aliases`, `docusaurus-theme-classic`, `docusaurus`\\n - [#3104](https://github.com/facebook/docusaurus/pull/3104) feat(core): Add React ErrorBoundary component + theme default boundaries ([@spyke01](https://github.com/spyke01))\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-plugin-content-blog`\\n - [#6061](https://github.com/facebook/docusaurus/pull/6061) fix(content-blog): make post ID unique ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-migrate`, `docusaurus-plugin-content-docs`\\n - [#6065](https://github.com/facebook/docusaurus/pull/6065) refactor: remove deprecated docs homePageId option ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-docs`\\n - [#6056](https://github.com/facebook/docusaurus/pull/6056) refactor: remove unused metadata field for homepage ([@lex111](https://github.com/lex111))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-translations`, `docusaurus-utils`, `docusaurus`\\n - [#5830](https://github.com/facebook/docusaurus/pull/5830) feat(content-docs): sidebar category linking to document or auto-generated index page ([@slorber](https://github.com/slorber))\\n- `docusaurus-module-type-aliases`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-preset-classic`\\n - [#5832](https://github.com/facebook/docusaurus/pull/5832) refactor(ganalytics, gtag): move options out of themeConfig ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`, `docusaurus-utils`\\n - [#5871](https://github.com/facebook/docusaurus/pull/5871) misc: replace all \\"Metadatas\\" with \\"Metadata\\" ([@swalahamani](https://github.com/swalahamani))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-common`\\n - [#6070](https://github.com/facebook/docusaurus/pull/6070) fix(theme-common): useLocationChange fire un-necessarily twice ([@slorber](https://github.com/slorber))\\n - [#6040](https://github.com/facebook/docusaurus/pull/6040) fix: browser storage (localStorage) is unreliable: api should fail-safe ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`, `docusaurus-mdx-loader`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-preset-classic`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`\\n - [#6047](https://github.com/facebook/docusaurus/pull/6047) fix: make Docusaurus PnP strict mode compatible ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`, `docusaurus`\\n - [#6052](https://github.com/facebook/docusaurus/pull/6052) fix(core): fix error boundary import disrupting CSS order ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-blog`\\n - [#6061](https://github.com/facebook/docusaurus/pull/6061) fix(content-blog): make post ID unique ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus`\\n - [#5983](https://github.com/facebook/docusaurus/pull/5983) fix(core): do not apply theme-init alias to user component ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5798](https://github.com/facebook/docusaurus/pull/5798) fix(cli): update notifier should be shown if current is less than latest ([@semoal](https://github.com/semoal))\\n - [#5864](https://github.com/facebook/docusaurus/pull/5864) fix: respect base URL when serving content by webpack dev server ([@lex111](https://github.com/lex111))\\n- `docusaurus-module-type-aliases`\\n - [#5945](https://github.com/facebook/docusaurus/pull/5945) fix(module-type-aliases): add svg declaration ([@MisterFISHUP](https://github.com/MisterFISHUP))\\n- `docusaurus-theme-classic`\\n - [#5873](https://github.com/facebook/docusaurus/pull/5873) fix(theme-classic): fix announcementBar css ([@slorber](https://github.com/slorber))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#6003](https://github.com/facebook/docusaurus/pull/6003) fix(theme-classic): make nav dropdowns focusable ([@robinmetral](https://github.com/robinmetral))\\n - [#6000](https://github.com/facebook/docusaurus/pull/6000) fix(theme-classic): make hash link in heading not selectable ([@JararvisQ](https://github.com/JararvisQ))\\n - [#5944](https://github.com/facebook/docusaurus/pull/5944) fix: translate all remaining english sentence in French ([@StanKocken](https://github.com/StanKocken))\\n- `docusaurus-theme-classic`, `docusaurus`\\n - [#6048](https://github.com/facebook/docusaurus/pull/6048) refactor: capitalize locales when creating i18n config ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-translations`\\n - [#5976](https://github.com/facebook/docusaurus/pull/5976) feat(theme-translations): add extra Korean translation, fix typo ([@revi](https://github.com/revi))\\n - [#6060](https://github.com/facebook/docusaurus/pull/6060) chore(theme-translations): complete Chinese translations ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-migrate`, `docusaurus-plugin-content-docs`\\n - [#6065](https://github.com/facebook/docusaurus/pull/6065) refactor: remove deprecated docs homePageId option ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-docs`\\n - [#6056](https://github.com/facebook/docusaurus/pull/6056) refactor: remove unused metadata field for homepage ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#6049](https://github.com/facebook/docusaurus/pull/6049) refactor: simplify Toggle component ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`, `docusaurus-types`\\n - [#5981](https://github.com/facebook/docusaurus/pull/5981) refactor: minor ESLint improvements ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-pwa`\\n - [#5995](https://github.com/facebook/docusaurus/pull/5995) chore(plugin-pwa): change core-js version in package.json to v3 ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-pwa`, `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-theme-translations`, `docusaurus-utils`\\n - [#5849](https://github.com/facebook/docusaurus/pull/5849) refactor: define own translations in other themes ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-types`\\n - [#5959](https://github.com/facebook/docusaurus/pull/5959) refactor(types): correct HtmlTags types ([@armano2](https://github.com/armano2))\\n- `docusaurus`\\n - [#5829](https://github.com/facebook/docusaurus/pull/5829) refactor: optimize clone and checkout in deploy command ([@sivapalan](https://github.com/sivapalan))\\n - [#5899](https://github.com/facebook/docusaurus/pull/5899) feat(core): give more hints when plugins have duplicate IDs ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-module-type-aliases`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-preset-classic`\\n - [#5832](https://github.com/facebook/docusaurus/pull/5832) refactor(ganalytics, gtag): move options out of themeConfig ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus`\\n - [#5840](https://github.com/facebook/docusaurus/pull/5840) feat: allow GIT_USER env var to be unset if SSH is used ([@wpyoga](https://github.com/wpyoga))\\n- `create-docusaurus`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`, `docusaurus-utils`\\n - [#5871](https://github.com/facebook/docusaurus/pull/5871) misc: replace all \\"Metadatas\\" with \\"Metadata\\" ([@swalahamani](https://github.com/swalahamani))\\n\\n## :memo: Documentation\\n\\n- Other\\n - [#6063](https://github.com/facebook/docusaurus/pull/6063) docs: add moja global to showcase ([@sohamsshah](https://github.com/sohamsshah))\\n - [#6069](https://github.com/facebook/docusaurus/pull/6069) docs: update CONTRIBUTING for website ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6062](https://github.com/facebook/docusaurus/pull/6062) refactor(website): improve wording in comments of showcase data ([@sohamsshah](https://github.com/sohamsshah))\\n - [#6045](https://github.com/facebook/docusaurus/pull/6045) docs: add \\"discord resources\\" to showcase ([@dexbiobot](https://github.com/dexbiobot))\\n - [#6026](https://github.com/facebook/docusaurus/pull/6026) docs(deployment): add cost-benefit analysis with different options ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5955](https://github.com/facebook/docusaurus/pull/5955) docs: add Pearl UI website to showcase ([@agrawal-rohit](https://github.com/agrawal-rohit))\\n - [#5989](https://github.com/facebook/docusaurus/pull/5989) misc: update CONTRIBUTING to reflect status quo ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5845](https://github.com/facebook/docusaurus/pull/5845) docs(admin): update repo testing instructions to reflect v2 ([@wpyoga](https://github.com/wpyoga))\\n - [#6019](https://github.com/facebook/docusaurus/pull/6019) docs: update Netlify url config option in deployment instructions ([@rsapkf](https://github.com/rsapkf))\\n - [#6015](https://github.com/facebook/docusaurus/pull/6015) docs: add Tremor website to showcase page ([@skoech](https://github.com/skoech))\\n - [#5997](https://github.com/facebook/docusaurus/pull/5997) refactor(website): various fixes and improvements on Showcase page ([@lex111](https://github.com/lex111))\\n - [#6008](https://github.com/facebook/docusaurus/pull/6008) docs: improve algolia integration instructions ([@shafy](https://github.com/shafy))\\n - [#6006](https://github.com/facebook/docusaurus/pull/6006) docs: improve explanation for url config in GH Pages ([@Martinsos](https://github.com/Martinsos))\\n - [#6001](https://github.com/facebook/docusaurus/pull/6001) docs: add Dime.Scheduler SDK to showcase ([@hbulens](https://github.com/hbulens))\\n - [#5984](https://github.com/facebook/docusaurus/pull/5984) docs: add PREFS website to showcase ([@Patitotective](https://github.com/Patitotective))\\n - [#5967](https://github.com/facebook/docusaurus/pull/5967) docs(website): Add docsearch migration blog post ([@slorber](https://github.com/slorber))\\n - [#5968](https://github.com/facebook/docusaurus/pull/5968) refactor(website): shadow on showcase toggle ([@dsmmcken](https://github.com/dsmmcken))\\n - [#5979](https://github.com/facebook/docusaurus/pull/5979) docs: update links to default translations dir ([@lex111](https://github.com/lex111))\\n - [#5969](https://github.com/facebook/docusaurus/pull/5969) refactor(website): polish on Showcase page ([@slorber](https://github.com/slorber))\\n - [#5966](https://github.com/facebook/docusaurus/pull/5966) docs: add Darklang to showcase ([@pbiggar](https://github.com/pbiggar))\\n - [#5970](https://github.com/facebook/docusaurus/pull/5970) docs: add Remirror to showcase ([@ronnyroeller](https://github.com/ronnyroeller))\\n - [#5971](https://github.com/facebook/docusaurus/pull/5971) docs: add Webiny docs to showcase page ([@swapnilmmane](https://github.com/swapnilmmane))\\n - [#5953](https://github.com/facebook/docusaurus/pull/5953) docs: fix BrowserOnly return statement ([@MorookaKotaro](https://github.com/MorookaKotaro))\\n - [#5949](https://github.com/facebook/docusaurus/pull/5949) docs: update Signoz showcase details ([@pal-sig](https://github.com/pal-sig))\\n - [#5948](https://github.com/facebook/docusaurus/pull/5948) fix(website): fix APITable anchor ID having extra hash ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5947](https://github.com/facebook/docusaurus/pull/5947) fix(website): fix APITable anchor link ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5925](https://github.com/facebook/docusaurus/pull/5925) docs: add Froggit site to showcase page ([@cchaudier](https://github.com/cchaudier))\\n - [#5928](https://github.com/facebook/docusaurus/pull/5928) docs: Add Shotstack showcase user ([@jeffski](https://github.com/jeffski))\\n - [#5934](https://github.com/facebook/docusaurus/pull/5934) docs: fix a typo in CHANGELOG ([@KonstHardy](https://github.com/KonstHardy))\\n - [#5921](https://github.com/facebook/docusaurus/pull/5921) docs: add Signoz site to showcase site ([@pal-sig](https://github.com/pal-sig))\\n - [#5891](https://github.com/facebook/docusaurus/pull/5891) docs: new APITable comp to render large tables ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5917](https://github.com/facebook/docusaurus/pull/5917) docs: make API sidebar partially autogenerated ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5903](https://github.com/facebook/docusaurus/pull/5903) docs: refer to deployed branch as deployment rather than target ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5902](https://github.com/facebook/docusaurus/pull/5902) fix(website): fix i18n routes for Canny board ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5900](https://github.com/facebook/docusaurus/pull/5900) docs: document global variables in MDX scope ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#4409](https://github.com/facebook/docusaurus/pull/4409) docs: add example for GitHub Pages deployment; rewrite deployment section ([@polarathene](https://github.com/polarathene))\\n - [#5888](https://github.com/facebook/docusaurus/pull/5888) docs: update GitHub deployment instructions ([@rootwork](https://github.com/rootwork))\\n - [#5895](https://github.com/facebook/docusaurus/pull/5895) docs: Add juffalow.com to Docusaurus showcase ([@juffalow](https://github.com/juffalow))\\n - [#5881](https://github.com/facebook/docusaurus/pull/5881) docs: fix wrong code sample in docusaurus-core ([@matthijsgroen](https://github.com/matthijsgroen))\\n - [#5875](https://github.com/facebook/docusaurus/pull/5875) docs: add patrikmasiar website showcase ([@patrikmasiar](https://github.com/patrikmasiar))\\n - [#5876](https://github.com/facebook/docusaurus/pull/5876) docs: \'5 minutes tutorial\' -> \'5-minute tutorial\' ([@molly](https://github.com/molly))\\n - [#5759](https://github.com/facebook/docusaurus/pull/5759) docs: create SEO documentation page ([@cerkiewny](https://github.com/cerkiewny))\\n - [#5869](https://github.com/facebook/docusaurus/pull/5869) docs: remove duplicated appId property ([@juzhiyuan](https://github.com/juzhiyuan))\\n - [#5868](https://github.com/facebook/docusaurus/pull/5868) docs: fix a typo in using-themes.md ([@fishmandev](https://github.com/fishmandev))\\n - [#5862](https://github.com/facebook/docusaurus/pull/5862) misc: show only latest archive alpha/beta versions dropdown ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#5742](https://github.com/facebook/docusaurus/pull/5742) feat(website): redesign of showcase page ([@chimailo](https://github.com/chimailo))\\n\\n## :house: Internal\\n\\n- `create-docusaurus`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-theme-common`, `docusaurus-theme-translations`, `docusaurus-utils-validation`, `docusaurus`\\n - [#6071](https://github.com/facebook/docusaurus/pull/6071) refactor: add blank lines below all copyright headers ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Other\\n - [#6068](https://github.com/facebook/docusaurus/pull/6068) chore: add prefix to needs triage label; separate Windows test workflow ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6031](https://github.com/facebook/docusaurus/pull/6031) chore: upgrade netlify-cli ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6012](https://github.com/facebook/docusaurus/pull/6012) chore(website): enable strict compiler option ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#6002](https://github.com/facebook/docusaurus/pull/6002) chore(ci): add GitHub action for showcase testing ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5977](https://github.com/facebook/docusaurus/pull/5977) chore: generate dogfooding test for long pathname during CI ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5950](https://github.com/facebook/docusaurus/pull/5950) misc(codeowners): add @Josh-Cena to CODEOWNERS ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5919](https://github.com/facebook/docusaurus/pull/5919) misc(workflow): E2E tests should not be run with website changes ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5907](https://github.com/facebook/docusaurus/pull/5907) chore(workflow): merge jobs into one workflow & give each job a name ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5889](https://github.com/facebook/docusaurus/pull/5889) chore(website): enable eslint in website ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5870](https://github.com/facebook/docusaurus/pull/5870) chore(README): fix broken GitHub Actions Workflow Status icon ([@HemantSachdeva](https://github.com/HemantSachdeva))\\n- `docusaurus-module-type-aliases`, `docusaurus-types`, `docusaurus`\\n - [#6064](https://github.com/facebook/docusaurus/pull/6064) refactor(core): fix types for client code ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-theme-translations`, `docusaurus-utils`, `docusaurus`\\n - [#6055](https://github.com/facebook/docusaurus/pull/6055) chore: clean up dev dependency declarations ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus-plugin-ideal-image`, `docusaurus-theme-classic`\\n - [#6010](https://github.com/facebook/docusaurus/pull/6010) chore: upgrade prettier; rename prettier scripts as format ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`, `docusaurus`\\n - [#5958](https://github.com/facebook/docusaurus/pull/5958) chore: update @svgr/webpack to version 6 ([@ludofischer](https://github.com/ludofischer))\\n- `docusaurus`\\n - [#5998](https://github.com/facebook/docusaurus/pull/5998) chore: upgrade webpack-dev-server to v4.5.0 ([@lex111](https://github.com/lex111))\\n - [#5965](https://github.com/facebook/docusaurus/pull/5965) fix(core): apply staticDirectories to base webpack config ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-ideal-image`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-utils-common`, `docusaurus-utils`, `docusaurus`\\n - [#5985](https://github.com/facebook/docusaurus/pull/5985) chore: cleanup dependency declaration in package.json ([@armano2](https://github.com/armano2))\\n- `create-docusaurus`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-sitemap`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-utils`, `docusaurus`, `lqip-loader`, `stylelint-copyright`\\n - [#5963](https://github.com/facebook/docusaurus/pull/5963) chore: upgrade TypeScript & other ESLint related deps ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-docs`\\n - [#5962](https://github.com/facebook/docusaurus/pull/5962) refactor(content-docs): move isCategoriesShorthand to utils ([@armano2](https://github.com/armano2))\\n - [#5906](https://github.com/facebook/docusaurus/pull/5906) fix(content-docs): do not echo git history to console ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5905](https://github.com/facebook/docusaurus/pull/5905) misc(plugin-docs): fix Windows test snapshot for git history retrieval ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5904](https://github.com/facebook/docusaurus/pull/5904) refactor(content-docs): use shelljs instead of execa ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-ideal-image`\\n - [#5940](https://github.com/facebook/docusaurus/pull/5940) refactor(plugin-ideal-image): migrate package to TS ([@armano2](https://github.com/armano2))\\n- `docusaurus-plugin-pwa`, `docusaurus-theme-classic`\\n - [#5941](https://github.com/facebook/docusaurus/pull/5941) refactor(plugin-pwa): migrate package to TS ([@armano2](https://github.com/armano2))\\n- `docusaurus-plugin-ideal-image`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`\\n - [#5935](https://github.com/facebook/docusaurus/pull/5935) refactor(theme-search-algolia): migrate package to TS ([@armano2](https://github.com/armano2))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`\\n - [#5946](https://github.com/facebook/docusaurus/pull/5946) refactor: move deps declarations into src ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-utils-common`, `docusaurus-utils`, `docusaurus`\\n - [#5914](https://github.com/facebook/docusaurus/pull/5914) refactor: improve setup of type declaration files ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#5922](https://github.com/facebook/docusaurus/pull/5922) refactor(theme-classic): move some logic of CodeBlock to theme-common ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-remark-plugin-npm2yarn`\\n - [#5931](https://github.com/facebook/docusaurus/pull/5931) refactor(remark-plugin-npm2yarn): migrate package to TS ([@duanwilliam](https://github.com/duanwilliam))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-utils`\\n - [#5806](https://github.com/facebook/docusaurus/pull/5806) refactor: use js-yaml to parse both JSON and YAML ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## Committers: 48\\n\\n- Afshin Mehrabani ([@afshinm](https://github.com/afshinm))\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Armano ([@armano2](https://github.com/armano2))\\n- Brennan Kinney ([@polarathene](https://github.com/polarathene))\\n- Can Olcer ([@shafy](https://github.com/shafy))\\n- Christophe Chaudier ([@cchaudier](https://github.com/cchaudier))\\n- Devtato ([@cerkiewny](https://github.com/cerkiewny))\\n- Dmitriy Fishman ([@fishmandev](https://github.com/fishmandev))\\n- Don ([@dsmmcken](https://github.com/dsmmcken))\\n- FISH UP ([@MisterFISHUP](https://github.com/MisterFISHUP))\\n- Fernando Maia ([@fsmaia](https://github.com/fsmaia))\\n- Hemant Sachdeva ([@HemantSachdeva](https://github.com/HemantSachdeva))\\n- Hendrik Bulens ([@hbulens](https://github.com/hbulens))\\n- Ivan Boothe ([@rootwork](https://github.com/rootwork))\\n- Jarar ([@JararvisQ](https://github.com/JararvisQ))\\n- Jeff Shillitto ([@jeffski](https://github.com/jeffski))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Konstantin Popov ([@KonstHardy](https://github.com/KonstHardy))\\n- Ludovico Fischer ([@ludofischer](https://github.com/ludofischer))\\n- Martin \u0160o\u0161i\u0107 ([@Martinsos](https://github.com/Martinsos))\\n- Matej Jellus ([@juffalow](https://github.com/juffalow))\\n- Matthijs Groen ([@matthijsgroen](https://github.com/matthijsgroen))\\n- Molly White ([@molly](https://github.com/molly))\\n- Morooka Kotaro ([@MorookaKotaro](https://github.com/MorookaKotaro))\\n- Oliver Ullman ([@oriooctopus](https://github.com/oriooctopus))\\n- Paden Clayton ([@spyke01](https://github.com/spyke01))\\n- Patitotective ([@Patitotective](https://github.com/Patitotective))\\n- Patrik M\xe4siar ([@patrikmasiar](https://github.com/patrikmasiar))\\n- Paul Biggar ([@pbiggar](https://github.com/pbiggar))\\n- Rey ([@rsapkf](https://github.com/rsapkf))\\n- Robin M\xe9tral ([@robinmetral](https://github.com/robinmetral))\\n- Rohit Agrawal ([@agrawal-rohit](https://github.com/agrawal-rohit))\\n- Ronny Roeller ([@ronnyroeller](https://github.com/ronnyroeller))\\n- Sergio Moreno ([@semoal](https://github.com/semoal))\\n- Sharon Koech ([@skoech](https://github.com/skoech))\\n- Shoaib Sajid ([@dexbiobot](https://github.com/dexbiobot))\\n- Soham Shah ([@sohamsshah](https://github.com/sohamsshah))\\n- Stan Kocken ([@StanKocken](https://github.com/StanKocken))\\n- Swalah Amani ([@swalahamani](https://github.com/swalahamani))\\n- Swapnil M Mane ([@swapnilmmane](https://github.com/swapnilmmane))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Varun Sivapalan ([@sivapalan](https://github.com/sivapalan))\\n- William Poetra Yoga ([@wpyoga](https://github.com/wpyoga))\\n- Yongmin Hong ([@revi](https://github.com/revi))\\n- [@duanwilliam](https://github.com/duanwilliam)\\n- [@pal-sig](https://github.com/pal-sig)\\n- chima ilo ([@chimailo](https://github.com/chimailo))\\n- \u741A\u81F4\u8FDC ([@juzhiyuan](https://github.com/juzhiyuan))"},{"id":"/2.0.0-beta.9","metadata":{"permalink":"/changelog/2.0.0-beta.9","source":"@site/changelog/source/2.0.0-beta.9.md","title":"2.0.0-beta.9","description":"New Feature","date":"2021-11-02T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Avi Vahl","alias":"AviVahl","url":"https://github.com/AviVahl","imageURL":"https://github.com/AviVahl.png","key":"AviVahl","page":null},{"name":"Devtato","alias":"cerkiewny","url":"https://github.com/cerkiewny","imageURL":"https://github.com/cerkiewny.png","key":"cerkiewny","page":null},{"name":"Ng\xf4 Qu\u1ED1c \u0110\u1EA1t","alias":"datlechin","url":"https://github.com/datlechin","imageURL":"https://github.com/datlechin.png","key":"datlechin","page":null},{"name":"Dominik Meyer","alias":"dominikmeyersap","url":"https://github.com/dominikmeyersap","imageURL":"https://github.com/dominikmeyersap.png","key":"dominikmeyersap","page":null},{"name":"Dmitriy Fishman","alias":"fishmandev","url":"https://github.com/fishmandev","imageURL":"https://github.com/fishmandev.png","key":"fishmandev","page":null},{"name":"Gabriel Falc\xe3o","alias":"gabrielfalcao","url":"https://github.com/gabrielfalcao","imageURL":"https://github.com/gabrielfalcao.png","key":"gabrielfalcao","page":null},{"name":"Jeffrey Aven","alias":"jeffreyaven","url":"https://github.com/jeffreyaven","imageURL":"https://github.com/jeffreyaven.png","key":"jeffreyaven","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"\u741A\u81F4\u8FDC","alias":"juzhiyuan","url":"https://github.com/juzhiyuan","imageURL":"https://github.com/juzhiyuan.png","key":"juzhiyuan","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Oscar Dominguez","alias":"oscard0m","url":"https://github.com/oscard0m","imageURL":"https://github.com/oscard0m.png","key":"oscard0m","page":null},{"name":"Robbie Averill","alias":"robbieaverill","url":"https://github.com/robbieaverill","imageURL":"https://github.com/robbieaverill.png","key":"robbieaverill","page":null},{"name":"Sergio Moreno","alias":"semoal","url":"https://github.com/semoal","imageURL":"https://github.com/semoal.png","key":"semoal","page":null},{"name":"Varun Sivapalan","alias":"sivapalan","url":"https://github.com/sivapalan","imageURL":"https://github.com/sivapalan.png","key":"sivapalan","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Vladimir Tasic","alias":"utajum","url":"https://github.com/utajum","imageURL":"https://github.com/utajum.png","key":"utajum","page":null},{"name":"Ying Wang","alias":"wingclover","url":"https://github.com/wingclover","imageURL":"https://github.com/wingclover.png","key":"wingclover","page":null},{"name":"William Poetra Yoga","alias":"wpyoga","url":"https://github.com/wpyoga","imageURL":"https://github.com/wpyoga.png","key":"wpyoga","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2021-11-02T20:00","authors":["AviVahl","cerkiewny","datlechin","dominikmeyersap","fishmandev","gabrielfalcao","jeffreyaven","Josh-Cena","juzhiyuan","lex111","oscard0m","robbieaverill","semoal","sivapalan","slorber","utajum","wingclover","wpyoga"]},"unlisted":false,"prevItem":{"title":"2.0.0-beta.10","permalink":"/changelog/2.0.0-beta.10"},"nextItem":{"title":"2.0.0-beta.8","permalink":"/changelog/2.0.0-beta.8"},"listPageLink":"/changelog/page/3"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#5770](https://github.com/facebook/docusaurus/pull/5770) feat(theme-classic): allow specifying width/height in logo ([@cerkiewny](https://github.com/cerkiewny))\\n- `docusaurus-types`, `docusaurus`\\n - [#5841](https://github.com/facebook/docusaurus/pull/5841) feat: allow user to specify deploymentBranch property in docusaurus.config.js ([@wpyoga](https://github.com/wpyoga))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`\\n - [#5795](https://github.com/facebook/docusaurus/pull/5795) feat(search-algolia): algolia externalUrl regex to navigate with window.href ([@semoal](https://github.com/semoal))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-types`, `docusaurus`\\n - [#5814](https://github.com/facebook/docusaurus/pull/5814) feat: Support Node 17 ([@slorber](https://github.com/slorber))\\n - [#5420](https://github.com/facebook/docusaurus/pull/5420) feat(core): upgrade to webpack-dev-server@4 ([@AviVahl](https://github.com/AviVahl))\\n- `docusaurus-theme-classic`\\n - [#5791](https://github.com/facebook/docusaurus/pull/5791) feat(theme-classic): add Serbian Cyrillic translation ([@utajum](https://github.com/utajum))\\n\\n## :boom: Breaking Change\\n\\n- `create-docusaurus`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-sitemap`, `docusaurus-preset-classic`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-utils-common`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `lqip-loader`\\n - [#5812](https://github.com/facebook/docusaurus/pull/5812) chore: require Node 14 ([@slorber](https://github.com/slorber))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-plugin-content-blog`\\n - [#5835](https://github.com/facebook/docusaurus/pull/5835) fix(content-blog): Fix blog feeds not generated ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#5828](https://github.com/facebook/docusaurus/pull/5828) fix: include all branch tips for shallow clone in deploy command ([@sivapalan](https://github.com/sivapalan))\\n - [#5824](https://github.com/facebook/docusaurus/pull/5824) fix: baseUrl passed to sortConfig ([@semoal](https://github.com/semoal))\\n - [#5813](https://github.com/facebook/docusaurus/pull/5813) fix: handle SIGTERM in build command ([@slorber](https://github.com/slorber))\\n- `docusaurus-module-type-aliases`, `docusaurus`\\n - [#5819](https://github.com/facebook/docusaurus/pull/5819) fix: use @docusaurus/react-loadable as package alias + include types ([@slorber](https://github.com/slorber))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-preset-classic`\\n - [#5831](https://github.com/facebook/docusaurus/pull/5831) feat(preset-classic): guard against unknown keys in options ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus`\\n - [#5815](https://github.com/facebook/docusaurus/pull/5815) refactor: some improvements for webpack-dev-server ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-utils`, `docusaurus`\\n - [#5788](https://github.com/facebook/docusaurus/pull/5788) refactor: fix a few type inconsistencies ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`\\n - [#5781](https://github.com/facebook/docusaurus/pull/5781) refactor: Vietnamese translations ([@datlechin](https://github.com/datlechin))\\n\\n## :memo: Documentation\\n\\n- Other\\n - [#5853](https://github.com/facebook/docusaurus/pull/5853) docs: Fix a typo in CONTRIBUTING.md ([@fishmandev](https://github.com/fishmandev))\\n - [#5852](https://github.com/facebook/docusaurus/pull/5852) docs: Fix a typo in versioning.md ([@fishmandev](https://github.com/fishmandev))\\n - [#5847](https://github.com/facebook/docusaurus/pull/5847) docs: add InfraQL product docs website to showcase ([@jeffreyaven](https://github.com/jeffreyaven))\\n - [#5843](https://github.com/facebook/docusaurus/pull/5843) docs: fix i18n routes to feature requests ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5766](https://github.com/facebook/docusaurus/pull/5766) docs: elaborate on the usage of MDX plugins ([@cerkiewny](https://github.com/cerkiewny))\\n - [#5826](https://github.com/facebook/docusaurus/pull/5826) docs: fix lint issue ([@slorber](https://github.com/slorber))\\n - [#5801](https://github.com/facebook/docusaurus/pull/5801) docs: Update Drone Deployment docs ([@gabrielfalcao](https://github.com/gabrielfalcao))\\n - [#5821](https://github.com/facebook/docusaurus/pull/5821) docs: include navbar item type in the API table ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5820](https://github.com/facebook/docusaurus/pull/5820) docs: add @Josh-Cena to the team ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5818](https://github.com/facebook/docusaurus/pull/5818) doc: fix typo in \\"create a doc\\" ([@dominikmeyersap](https://github.com/dominikmeyersap))\\n - [#5797](https://github.com/facebook/docusaurus/pull/5797) docs: use \\"npx create-docusaurus\\" for init ([@slorber](https://github.com/slorber))\\n - [#5771](https://github.com/facebook/docusaurus/pull/5771) docs: Minor update to grammar in plugins overview page ([@robbieaverill](https://github.com/robbieaverill))\\n - [#5774](https://github.com/facebook/docusaurus/pull/5774) docs: update ssrTemplate ([@juzhiyuan](https://github.com/juzhiyuan))\\n - [#5784](https://github.com/facebook/docusaurus/pull/5784) docs: fix link for apply to DocSearch program ([@lex111](https://github.com/lex111))\\n- `create-docusaurus`\\n - [#5792](https://github.com/facebook/docusaurus/pull/5792) docs: fix typo ([@wingclover](https://github.com/wingclover))\\n\\n## :house: Internal\\n\\n- Other\\n - [#5842](https://github.com/facebook/docusaurus/pull/5842) misc: add \\"name\\" field for root package.json ([@wpyoga](https://github.com/wpyoga))\\n - [#5836](https://github.com/facebook/docusaurus/pull/5836) chore: switch to GitHub issue forms ([@lex111](https://github.com/lex111))\\n - [#5834](https://github.com/facebook/docusaurus/pull/5834) chore(issue templ): add \\"self service\\" section in templates ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5833](https://github.com/facebook/docusaurus/pull/5833) chore(workflow): remove v2 prefix from titles ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5697](https://github.com/facebook/docusaurus/pull/5697) chore(workflow): add cache to workflows using actions/setup-node ([@oscard0m](https://github.com/oscard0m))\\n - [#5825](https://github.com/facebook/docusaurus/pull/5825) chore: fix Crowdin again ([@slorber](https://github.com/slorber))\\n - [#5823](https://github.com/facebook/docusaurus/pull/5823) chore: replace doc sample .pdf file by .xlsx to solve Crowdin issue ([@slorber](https://github.com/slorber))\\n - [#5763](https://github.com/facebook/docusaurus/pull/5763) chore: update examples for beta.8 ([@slorber](https://github.com/slorber))\\n- `create-docusaurus`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-sitemap`, `docusaurus-preset-classic`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-utils-common`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `lqip-loader`\\n - [#5812](https://github.com/facebook/docusaurus/pull/5812) chore: require Node 14 ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`, `docusaurus`\\n - [#5807](https://github.com/facebook/docusaurus/pull/5807) refactor: remove a few Lodash usages & ESLint enforcement ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-module-type-aliases`, `docusaurus-plugin-client-redirects`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-utils`, `docusaurus`\\n - [#5808](https://github.com/facebook/docusaurus/pull/5808) refactor: clear a few ESLint warnings ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `lqip-loader`\\n - [#5779](https://github.com/facebook/docusaurus/pull/5779) refactor: migrate lqip-loader to TS, fix typing for Webpack Loaders ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## Committers: 18\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Avi Vahl ([@AviVahl](https://github.com/AviVahl))\\n- Devtato ([@cerkiewny](https://github.com/cerkiewny))\\n- Dmitriy Fishman ([@fishmandev](https://github.com/fishmandev))\\n- Dominik Meyer ([@dominikmeyersap](https://github.com/dominikmeyersap))\\n- Gabriel Falc\xe3o ([@gabrielfalcao](https://github.com/gabrielfalcao))\\n- Jeffrey Aven ([@jeffreyaven](https://github.com/jeffreyaven))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Ng\xf4 Qu\u1ED1c \u0110\u1EA1t ([@datlechin](https://github.com/datlechin))\\n- Oscar Dominguez ([@oscard0m](https://github.com/oscard0m))\\n- Robbie Averill ([@robbieaverill](https://github.com/robbieaverill))\\n- Sergio Moreno ([@semoal](https://github.com/semoal))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Varun Sivapalan ([@sivapalan](https://github.com/sivapalan))\\n- Vladimir Tasic ([@utajum](https://github.com/utajum))\\n- William Poetra Yoga ([@wpyoga](https://github.com/wpyoga))\\n- Ying Wang ([@wingclover](https://github.com/wingclover))\\n- \u741A\u81F4\u8FDC ([@juzhiyuan](https://github.com/juzhiyuan))"},{"id":"/2.0.0-beta.8","metadata":{"permalink":"/changelog/2.0.0-beta.8","source":"@site/changelog/source/2.0.0-beta.8.md","title":"2.0.0-beta.8","description":"New Feature","date":"2021-10-21T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Andrew Taft","alias":"ataft","url":"https://github.com/ataft","imageURL":"https://github.com/ataft.png","key":"ataft","page":null},{"name":"Caner Canbaz","alias":"canercanbaz","url":"https://github.com/canercanbaz","imageURL":"https://github.com/canercanbaz.png","key":"canercanbaz","page":null},{"name":"Ng\xf4 Qu\u1ED1c \u0110\u1EA1t","alias":"datlechin","url":"https://github.com/datlechin","imageURL":"https://github.com/datlechin.png","key":"datlechin","page":null},{"name":"Dimi Mikadze","alias":"DimiMikadze","url":"https://github.com/DimiMikadze","imageURL":"https://github.com/DimiMikadze.png","key":"DimiMikadze","page":null},{"name":"Ilija Pavlic","alias":"ipavlic","url":"https://github.com/ipavlic","imageURL":"https://github.com/ipavlic.png","key":"ipavlic","page":null},{"name":"John Reilly","alias":"johnnyreilly","url":"https://github.com/johnnyreilly","imageURL":"https://github.com/johnnyreilly.png","key":"johnnyreilly","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Nathaniel Furniss","alias":"nlfurniss","url":"https://github.com/nlfurniss","imageURL":"https://github.com/nlfurniss.png","key":"nlfurniss","page":null},{"name":"philipp985","alias":"philipp985","url":"https://github.com/philipp985","imageURL":"https://github.com/philipp985.png","key":"philipp985","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Thanasis Katsadas","alias":"thanasis00","url":"https://github.com/thanasis00","imageURL":"https://github.com/thanasis00.png","key":"thanasis00","page":null},{"name":"Xuqian","alias":"zxuqian","url":"https://github.com/zxuqian","imageURL":"https://github.com/zxuqian.png","key":"zxuqian","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2021-10-21T20:00","authors":["ataft","canercanbaz","datlechin","DimiMikadze","ipavlic","johnnyreilly","Josh-Cena","lex111","nlfurniss","philipp985","slorber","thanasis00","zxuqian"]},"unlisted":false,"prevItem":{"title":"2.0.0-beta.9","permalink":"/changelog/2.0.0-beta.9"},"nextItem":{"title":"2.0.0-beta.7","permalink":"/changelog/2.0.0-beta.7"},"listPageLink":"/changelog/page/3"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-plugin-content-blog`\\n - [#5702](https://github.com/facebook/docusaurus/pull/5702) feat(content-blog): new readingTime plugin option ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus`\\n - [#5740](https://github.com/facebook/docusaurus/pull/5740) feat(core): write-heading-ids options maintainCasing, overwrite ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-docs`\\n - [#5705](https://github.com/facebook/docusaurus/pull/5705) feat(content-docs): new front matter options to customize pagination ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-theme-search-algolia`\\n - [#5751](https://github.com/facebook/docusaurus/pull/5751) fix: stable callbacks in useSearchQuery + refactor ([@slorber](https://github.com/slorber))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-plugin-ideal-image`\\n - [#5760](https://github.com/facebook/docusaurus/pull/5760) fix(ideal-image): fix IdealImage in dev not handling ES import images properly ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#5732](https://github.com/facebook/docusaurus/pull/5732) fix(theme-classic): allow tabs with number as value ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5721](https://github.com/facebook/docusaurus/pull/5721) fix: handle rubber band scrolling in hideable navbar ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-search-algolia`\\n - [#5751](https://github.com/facebook/docusaurus/pull/5751) fix: stable callbacks in useSearchQuery + refactor ([@slorber](https://github.com/slorber))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#5717](https://github.com/facebook/docusaurus/pull/5717) refactor: Polish de translation ([@philipp985](https://github.com/philipp985))\\n - [#5725](https://github.com/facebook/docusaurus/pull/5725) refactor: add missing Turkish translations to theme-classic ([@canercanbaz](https://github.com/canercanbaz))\\n - [#5723](https://github.com/facebook/docusaurus/pull/5723) refactor(v2): update Vietnamese translations ([@datlechin](https://github.com/datlechin))\\n- `docusaurus-module-type-aliases`, `docusaurus-plugin-ideal-image`, `docusaurus-theme-classic`, `docusaurus`\\n - [#5726](https://github.com/facebook/docusaurus/pull/5726) refactor(module-type-aliases): remove fallback aliases ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :memo: Documentation\\n\\n- Other\\n - [#5755](https://github.com/facebook/docusaurus/pull/5755) docs: rename docusaurus.config.js route + redirects cleanup ([@slorber](https://github.com/slorber))\\n - [#5750](https://github.com/facebook/docusaurus/pull/5750) docs(v2): Fix typo in using-plugins.md ([@thanasis00](https://github.com/thanasis00))\\n - [#5727](https://github.com/facebook/docusaurus/pull/5727) docs(v2): Add Fenghua Frontend Developer site to showcase page ([@zxuqian](https://github.com/zxuqian))\\n - [#5746](https://github.com/facebook/docusaurus/pull/5746) docs: Add plugin-image-zoom ([@ataft](https://github.com/ataft))\\n - [#5728](https://github.com/facebook/docusaurus/pull/5728) docs: add h4 into toc on certain pages ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5737](https://github.com/facebook/docusaurus/pull/5737) docs: Add Apex FP to showcase ([@ipavlic](https://github.com/ipavlic))\\n- `docusaurus-plugin-content-blog`\\n - [#5753](https://github.com/facebook/docusaurus/pull/5753) fix(content-blog): temporarily swallow feed mdxToHtml errors + feed refactor ([@slorber](https://github.com/slorber))\\n\\n## :house: Internal\\n\\n- `docusaurus`\\n - [#5761](https://github.com/facebook/docusaurus/pull/5761) chore: upgrade html-webpack-plugin, remove terser 4 ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`, `docusaurus`\\n - [#5714](https://github.com/facebook/docusaurus/pull/5714) chore: Enable ESLint rules of hooks + fix new lint errors ([@slorber](https://github.com/slorber))\\n- Other\\n - [#5722](https://github.com/facebook/docusaurus/pull/5722) chore: fix gen script to support TS template ([@lex111](https://github.com/lex111))\\n - [#5730](https://github.com/facebook/docusaurus/pull/5730) chore: fix typos / casing in issue template ([@johnnyreilly](https://github.com/johnnyreilly))\\n - [#5720](https://github.com/facebook/docusaurus/pull/5720) chore: regenerate beta.7 examples ([@lex111](https://github.com/lex111))\\n - [#5719](https://github.com/facebook/docusaurus/pull/5719) chore: remove beta.5 docs ([@lex111](https://github.com/lex111))\\n\\n## :running: Performance\\n\\n- `docusaurus`\\n - [#5748](https://github.com/facebook/docusaurus/pull/5748) refactor: perform shallow clone during deploy ([@nlfurniss](https://github.com/nlfurniss))\\n\\n## Committers: 13\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Andrew Taft ([@ataft](https://github.com/ataft))\\n- Caner Canbaz ([@canercanbaz](https://github.com/canercanbaz))\\n- Dimi Mikadze ([@DimiMikadze](https://github.com/DimiMikadze))\\n- Ilija Pavlic ([@ipavlic](https://github.com/ipavlic))\\n- John Reilly ([@johnnyreilly](https://github.com/johnnyreilly))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Nathaniel Furniss ([@nlfurniss](https://github.com/nlfurniss))\\n- Ng\xf4 Qu\u1ED1c \u0110\u1EA1t ([@datlechin](https://github.com/datlechin))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Thanasis Katsadas ([@thanasis00](https://github.com/thanasis00))\\n- Xuqian ([@zxuqian](https://github.com/zxuqian))\\n- [@philipp985](https://github.com/philipp985)"},{"id":"/2.0.0-beta.7","metadata":{"permalink":"/changelog/2.0.0-beta.7","source":"@site/changelog/source/2.0.0-beta.7.md","title":"2.0.0-beta.7","description":"New Feature","date":"2021-10-15T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Aditya Kajla","alias":"akajla09","url":"https://github.com/akajla09","imageURL":"https://github.com/akajla09.png","key":"akajla09","page":null},{"name":"Andrew Nguyen","alias":"Andrewnt219","url":"https://github.com/Andrewnt219","imageURL":"https://github.com/Andrewnt219.png","key":"Andrewnt219","page":null},{"name":"Palash Shrivastava","alias":"BattleOfPlassey","url":"https://github.com/BattleOfPlassey","imageURL":"https://github.com/BattleOfPlassey.png","key":"BattleOfPlassey","page":null},{"name":"Bharat Middha","alias":"bmiddha","url":"https://github.com/bmiddha","imageURL":"https://github.com/bmiddha.png","key":"bmiddha","page":null},{"name":"David Callizaya","alias":"caleeli","url":"https://github.com/caleeli","imageURL":"https://github.com/caleeli.png","key":"caleeli","page":null},{"name":"Chris Chinchilla","alias":"ChrisChinchilla","url":"https://github.com/ChrisChinchilla","imageURL":"https://github.com/ChrisChinchilla.png","key":"ChrisChinchilla","page":null},{"name":"djamaile","alias":"djamaile","url":"https://github.com/djamaile","imageURL":"https://github.com/djamaile.png","key":"djamaile","page":null},{"name":"Dr-Electron","alias":"Dr-Electron","url":"https://github.com/Dr-Electron","imageURL":"https://github.com/Dr-Electron.png","key":"Dr-Electron","page":null},{"name":"Darshan Gada","alias":"dr5hn","url":"https://github.com/dr5hn","imageURL":"https://github.com/dr5hn.png","key":"dr5hn","page":null},{"name":"Don","alias":"dsmmcken","url":"https://github.com/dsmmcken","imageURL":"https://github.com/dsmmcken.png","key":"dsmmcken","page":null},{"name":"Ekaterina Mozheiko","alias":"EkaterinaMozheiko","url":"https://github.com/EkaterinaMozheiko","imageURL":"https://github.com/EkaterinaMozheiko.png","key":"EkaterinaMozheiko","page":null},{"name":"Erick Zhao","alias":"erickzhao","url":"https://github.com/erickzhao","imageURL":"https://github.com/erickzhao.png","key":"erickzhao","page":null},{"name":"Forresst","alias":"forresst","url":"https://github.com/forresst","imageURL":"https://github.com/forresst.png","key":"forresst","page":null},{"name":"Gabriel T. Nardy","alias":"gtnardy","url":"https://github.com/gtnardy","imageURL":"https://github.com/gtnardy.png","key":"gtnardy","page":null},{"name":"headline-design","alias":"headline-design","url":"https://github.com/headline-design","imageURL":"https://github.com/headline-design.png","key":"headline-design","page":null},{"name":"Hugh Lilly","alias":"hughlilly","url":"https://github.com/hughlilly","imageURL":"https://github.com/hughlilly.png","key":"hughlilly","page":null},{"name":"Ivar Conradi \xd8sthus","alias":"ivarconr","url":"https://github.com/ivarconr","imageURL":"https://github.com/ivarconr.png","key":"ivarconr","page":null},{"name":"Jason Bosco","alias":"jasonbosco","url":"https://github.com/jasonbosco","imageURL":"https://github.com/jasonbosco.png","key":"jasonbosco","page":null},{"name":"Jeffrey Aven","alias":"jeffreyaven","url":"https://github.com/jeffreyaven","imageURL":"https://github.com/jeffreyaven.png","key":"jeffreyaven","page":null},{"name":"Jordan Lee","alias":"jkhaui","url":"https://github.com/jkhaui","imageURL":"https://github.com/jkhaui.png","key":"jkhaui","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Robert Kingston","alias":"kingo55","url":"https://github.com/kingo55","imageURL":"https://github.com/kingo55.png","key":"kingo55","page":null},{"name":"Kyriet","alias":"KyrietS","url":"https://github.com/KyrietS","imageURL":"https://github.com/KyrietS.png","key":"KyrietS","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"moonrailgun","alias":"moonrailgun","url":"https://github.com/moonrailgun","imageURL":"https://github.com/moonrailgun.png","key":"moonrailgun","page":null},{"name":"Mahdi Hamldar","alias":"MrTechHunter","url":"https://github.com/MrTechHunter","imageURL":"https://github.com/MrTechHunter.png","key":"MrTechHunter","page":null},{"name":"Nathaniel Tucker","alias":"ntucker","url":"https://github.com/ntucker","imageURL":"https://github.com/ntucker.png","key":"ntucker","page":null},{"name":"Daniel Costrasel","alias":"ohkimur","url":"https://github.com/ohkimur","imageURL":"https://github.com/ohkimur.png","key":"ohkimur","page":null},{"name":"Ana Carolina","alias":"printf-ana","url":"https://github.com/printf-ana","imageURL":"https://github.com/printf-ana.png","key":"printf-ana","page":null},{"name":"Shrugsy","alias":"Shrugsy","url":"https://github.com/Shrugsy","imageURL":"https://github.com/Shrugsy.png","key":"Shrugsy","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Stefan Norberg","alias":"stnor","url":"https://github.com/stnor","imageURL":"https://github.com/stnor.png","key":"stnor","page":null},{"name":"swyx","alias":"sw-yx","url":"https://github.com/sw-yx","imageURL":"https://github.com/sw-yx.png","key":"sw-yx","page":null},{"name":"Vincent","alias":"vinckr","url":"https://github.com/vinckr","imageURL":"https://github.com/vinckr.png","key":"vinckr","page":null},{"name":"Whirl","alias":"Whirl21","url":"https://github.com/Whirl21","imageURL":"https://github.com/Whirl21.png","key":"Whirl21","page":null},{"name":"Paul O\u2019Shannessy","alias":"zpao","url":"https://github.com/zpao","imageURL":"https://github.com/zpao.png","key":"zpao","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2021-10-15T20:00","authors":["akajla09","Andrewnt219","BattleOfPlassey","bmiddha","caleeli","ChrisChinchilla","djamaile","Dr-Electron","dr5hn","dsmmcken","EkaterinaMozheiko","erickzhao","forresst","gtnardy","headline-design","hughlilly","ivarconr","jasonbosco","jeffreyaven","jkhaui","Josh-Cena","kingo55","KyrietS","lex111","moonrailgun","MrTechHunter","ntucker","ohkimur","printf-ana","Shrugsy","slorber","stnor","sw-yx","vinckr","Whirl21","zpao"]},"unlisted":false,"prevItem":{"title":"2.0.0-beta.8","permalink":"/changelog/2.0.0-beta.8"},"nextItem":{"title":"2.0.0-beta.6","permalink":"/changelog/2.0.0-beta.6"},"listPageLink":"/changelog/page/3"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-module-type-aliases`, `docusaurus`\\n - [#5683](https://github.com/facebook/docusaurus/pull/5683) feat: make Translate children optional ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#5674](https://github.com/facebook/docusaurus/pull/5674) polish(theme-classic): guard against potential definition mistakes in Tabs ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5618](https://github.com/facebook/docusaurus/pull/5618) feat: maintain page position for clicked grouped tabs ([@Shrugsy](https://github.com/Shrugsy))\\n- `docusaurus-plugin-content-blog`, `docusaurus-utils`\\n - [#4330](https://github.com/facebook/docusaurus/pull/4330) feat(content-blog): add full blog post html into RSS/Atom feeds ([@moonrailgun](https://github.com/moonrailgun))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#5642](https://github.com/facebook/docusaurus/pull/5642) feat(theme-classic, plugin-docs): sidebar item level-specific className + allow customization ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `create-docusaurus`\\n - [#5635](https://github.com/facebook/docusaurus/pull/5635) feat: npm init docusaurus, yarn create docusaurus ([@slorber](https://github.com/slorber))\\n- `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-sitemap`, `docusaurus-preset-classic`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-types`\\n - [#5589](https://github.com/facebook/docusaurus/pull/5589) feat: properly type-check the Docusaurus config of new sites ([@bmiddha](https://github.com/bmiddha))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-types`, `docusaurus-utils-validation`\\n - [#5578](https://github.com/facebook/docusaurus/pull/5578) feat(v2): allow specifying TOC max depth (themeConfig + frontMatter) ([@erickzhao](https://github.com/erickzhao))\\n- `docusaurus`\\n - [#5498](https://github.com/facebook/docusaurus/pull/5498) feat: make Webpack url-loader limit configurable (env variable) ([@stnor](https://github.com/stnor))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`\\n - [#5545](https://github.com/facebook/docusaurus/pull/5545) feat: make tags route path configurable ([@lex111](https://github.com/lex111))\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#5674](https://github.com/facebook/docusaurus/pull/5674) polish(theme-classic): guard against potential definition mistakes in Tabs ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5618](https://github.com/facebook/docusaurus/pull/5618) feat: maintain page position for clicked grouped tabs ([@Shrugsy](https://github.com/Shrugsy))\\n- `docusaurus-init`, `docusaurus-preset-bootstrap`, `docusaurus-theme-bootstrap`\\n - [#5634](https://github.com/facebook/docusaurus/pull/5634) chore: remove unused Bootstrap theme ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-types`, `docusaurus-utils-validation`\\n - [#5578](https://github.com/facebook/docusaurus/pull/5578) feat(v2): allow specifying TOC max depth (themeConfig + frontMatter) ([@erickzhao](https://github.com/erickzhao))\\n- `docusaurus-theme-classic`\\n - [#5592](https://github.com/facebook/docusaurus/pull/5592) refactor: use CSS Modules for toggle styles ([@lex111](https://github.com/lex111))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-common`\\n - [#5694](https://github.com/facebook/docusaurus/pull/5694) fix: proper collapsing of long element ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#5684](https://github.com/facebook/docusaurus/pull/5684) fix: use realpath for site dir to resolve symlink ([@lex111](https://github.com/lex111))\\n - [#5645](https://github.com/facebook/docusaurus/pull/5645) fix: place root route at the end ([@lex111](https://github.com/lex111))\\n - [#5629](https://github.com/facebook/docusaurus/pull/5629) fix: text/link hydration bug ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#5699](https://github.com/facebook/docusaurus/pull/5699) fix: apply announcement bar class if only needed ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`\\n - [#5667](https://github.com/facebook/docusaurus/pull/5667) fix: expand tag column on truncated post ([@lex111](https://github.com/lex111))\\n - [#5668](https://github.com/facebook/docusaurus/pull/5668) fix: preserve line breaks when copy code in Firefox ([@lex111](https://github.com/lex111))\\n - [#5647](https://github.com/facebook/docusaurus/pull/5647) feat(theme-classic): make first tab the default tab ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5652](https://github.com/facebook/docusaurus/pull/5652) fix: restore duplicate Tabs rendering to fix hydration issue ([@slorber](https://github.com/slorber))\\n - [#5643](https://github.com/facebook/docusaurus/pull/5643) fix(theme-classic): reset default style for task lists ([@EkaterinaMozheiko](https://github.com/EkaterinaMozheiko))\\n - [#5571](https://github.com/facebook/docusaurus/pull/5571) fix: highlight active item in recent post list ([@lex111](https://github.com/lex111))\\n - [#5481](https://github.com/facebook/docusaurus/pull/5481) fix: use heading itself as anchor for better crawling ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-live-codeblock`\\n - [#5677](https://github.com/facebook/docusaurus/pull/5677) fix: Don\'t ignore options.transforms for buble ([@ntucker](https://github.com/ntucker))\\n - [#5556](https://github.com/facebook/docusaurus/pull/5556) fix: pin react-live due to possible mismatch React ([@lex111](https://github.com/lex111))\\n- `docusaurus-mdx-loader`\\n - [#5690](https://github.com/facebook/docusaurus/pull/5690) fix: preserve hash in asset link ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-ideal-image`\\n - [#5540](https://github.com/facebook/docusaurus/pull/5540) fix: do not use ideal image plugin in dev env ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-docs`\\n - [#5606](https://github.com/facebook/docusaurus/pull/5606) fix(docs): create tags route if only tags exists ([@lex111](https://github.com/lex111))\\n- `docusaurus-init`, `docusaurus-module-type-aliases`, `docusaurus-types`\\n - [#5601](https://github.com/facebook/docusaurus/pull/5601) fix(module-type-aliases): move @type packages to dependencies ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-utils`\\n - [#5495](https://github.com/facebook/docusaurus/pull/5495) fix: ignore code block lines when creating excerpt ([@lex111](https://github.com/lex111))\\n- `docusaurus-init`\\n - [#5490](https://github.com/facebook/docusaurus/pull/5490) fix: install deps for new project via Yarn on Windows properly ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-utils-validation`\\n - [#5479](https://github.com/facebook/docusaurus/pull/5479) fix: add docs tag validation to solve #5478 ([@sw-yx](https://github.com/sw-yx))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#5709](https://github.com/facebook/docusaurus/pull/5709) refactor: cleanup scroll handlers ([@lex111](https://github.com/lex111))\\n - [#5627](https://github.com/facebook/docusaurus/pull/5627) refactor: various TOC improvements ([@lex111](https://github.com/lex111))\\n - [#5469](https://github.com/facebook/docusaurus/pull/5469) refactor: Adjust styling of back top top button ([@dsmmcken](https://github.com/dsmmcken))\\n- `docusaurus-theme-classic`\\n - [#5708](https://github.com/facebook/docusaurus/pull/5708) refactor: hide hash link from crawlers ([@lex111](https://github.com/lex111))\\n - [#5649](https://github.com/facebook/docusaurus/pull/5649) refactor: improve pt-BR translation for classic theme ([@printf-ana](https://github.com/printf-ana))\\n - [#5646](https://github.com/facebook/docusaurus/pull/5646) refactor: complete missing and fix ES translations ([@caleeli](https://github.com/caleeli))\\n - [#5640](https://github.com/facebook/docusaurus/pull/5640) style: update Persian language translations ([@MrTechHunter](https://github.com/MrTechHunter))\\n - [#5630](https://github.com/facebook/docusaurus/pull/5630) refactor: standardize using media queries ([@lex111](https://github.com/lex111))\\n - [#5487](https://github.com/facebook/docusaurus/pull/5487) refactor: use only one close SVG icon ([@lex111](https://github.com/lex111))\\n - [#5592](https://github.com/facebook/docusaurus/pull/5592) refactor: use CSS Modules for toggle styles ([@lex111](https://github.com/lex111))\\n - [#5485](https://github.com/facebook/docusaurus/pull/5485) polish: prevent pop navigation on back if navbar sidebar is open ([@slorber](https://github.com/slorber))\\n - [#5472](https://github.com/facebook/docusaurus/pull/5472) polish(theme-classic): add Chinese translations ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-module-type-aliases`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-theme-classic`, `docusaurus-types`, `docusaurus`\\n - [#5636](https://github.com/facebook/docusaurus/pull/5636) refactor: make all Props defined as interface + readonly ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus`\\n - [#5560](https://github.com/facebook/docusaurus/pull/5560) polish: remove unused eslint-disable ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus`\\n - [#5580](https://github.com/facebook/docusaurus/pull/5580) refactor(core): type improvements for `PendingNavigation` ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`, `docusaurus`\\n - [#5496](https://github.com/facebook/docusaurus/pull/5496) refactor: remove deprecated createRequireFromPath ([@lex111](https://github.com/lex111))\\n\\n## :memo: Documentation\\n\\n- [#5681](https://github.com/facebook/docusaurus/pull/5681) docs(v2): Add CountryStateCityAPI site to showcase page ([@dr5hn](https://github.com/dr5hn))\\n- [#5661](https://github.com/facebook/docusaurus/pull/5661) docs: updated cloudywithachanceofbigdata.com blog showcase ([@jeffreyaven](https://github.com/jeffreyaven))\\n- [#5658](https://github.com/facebook/docusaurus/pull/5658) docs: Algolia plugin must be enabled before crawling the site ([@slorber](https://github.com/slorber))\\n- [#5654](https://github.com/facebook/docusaurus/pull/5654) docs: Add Warrant Docs site to showcase page ([@akajla09](https://github.com/akajla09))\\n- [#5655](https://github.com/facebook/docusaurus/pull/5655) docs: Added cloudywithachanceofbigdata.com showcase blog ([@jeffreyaven](https://github.com/jeffreyaven))\\n- [#5648](https://github.com/facebook/docusaurus/pull/5648) docs: add ory documentation to showcase ([@vinckr](https://github.com/vinckr))\\n- [#5644](https://github.com/facebook/docusaurus/pull/5644) docs: add djamaile blog to site showcase ([@djamaile](https://github.com/djamaile))\\n- [#5641](https://github.com/facebook/docusaurus/pull/5641) docs: add Lux Algo to showcase ([@Josh-Cena](https://github.com/Josh-Cena))\\n- [#5638](https://github.com/facebook/docusaurus/pull/5638) docs: add nanos world docs to showcase ([@gtnardy](https://github.com/gtnardy))\\n- [#5610](https://github.com/facebook/docusaurus/pull/5610) docs: Add IOTA wiki to showcase ([@Dr-Electron](https://github.com/Dr-Electron))\\n- [#5489](https://github.com/facebook/docusaurus/pull/5489) docs: add additional search options, typesense and local search ([@jasonbosco](https://github.com/jasonbosco))\\n- [#5590](https://github.com/facebook/docusaurus/pull/5590) docs(website): document npm2yarn plugin + use new Tabs API everywhere ([@Josh-Cena](https://github.com/Josh-Cena))\\n- [#5591](https://github.com/facebook/docusaurus/pull/5591) docs: Add whirl.codes to showcase ([@Whirl21](https://github.com/Whirl21))\\n- [#5574](https://github.com/facebook/docusaurus/pull/5574) docs: add Pipeline UI to showcase ([@headline-design](https://github.com/headline-design))\\n- [#5585](https://github.com/facebook/docusaurus/pull/5585) docs: fix more references to Discord channels ([@Josh-Cena](https://github.com/Josh-Cena))\\n- [#5572](https://github.com/facebook/docusaurus/pull/5572) docs: add Blogasaurus to showcase ([@BattleOfPlassey](https://github.com/BattleOfPlassey))\\n- [#5575](https://github.com/facebook/docusaurus/pull/5575) docs: clarify MDX version used ([@lex111](https://github.com/lex111))\\n- [#5581](https://github.com/facebook/docusaurus/pull/5581) docs(website): update all Discord links ([@Josh-Cena](https://github.com/Josh-Cena))\\n- [#5566](https://github.com/facebook/docusaurus/pull/5566) docs: fix code example ([@ChrisChinchilla](https://github.com/ChrisChinchilla))\\n- [#5559](https://github.com/facebook/docusaurus/pull/5559) docs: minor grammatical correction ([@jkhaui](https://github.com/jkhaui))\\n- [#5543](https://github.com/facebook/docusaurus/pull/5543) docs: add note about files being ignored when prefixed with an unders\u2026 ([@KyrietS](https://github.com/KyrietS))\\n- [#5549](https://github.com/facebook/docusaurus/pull/5549) docs: Add Mint Metrics site to the Showcase ([@kingo55](https://github.com/kingo55))\\n- [#5546](https://github.com/facebook/docusaurus/pull/5546) docs: add unleash to showcase ([@ivarconr](https://github.com/ivarconr))\\n- [#5539](https://github.com/facebook/docusaurus/pull/5539) docs: improve escape pipe in Markdown tables ([@forresst](https://github.com/forresst))\\n- [#5486](https://github.com/facebook/docusaurus/pull/5486) docs: mention Netlify ignore build setting ([@slorber](https://github.com/slorber))\\n- [#5482](https://github.com/facebook/docusaurus/pull/5482) docs: update docusaurus-plugin-relative-paths description ([@ohkimur](https://github.com/ohkimur))\\n\\n## :house: Internal\\n\\n- `create-docusaurus`, `docusaurus-plugin-content-docs`\\n - [#5678](https://github.com/facebook/docusaurus/pull/5678) refactor(content-docs): refactor sidebars, Joi validation, generator rework, expose config types ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`\\n - [#5666](https://github.com/facebook/docusaurus/pull/5666) chore: upgrade Infima to alpha.34 ([@lex111](https://github.com/lex111))\\n - [#5639](https://github.com/facebook/docusaurus/pull/5639) misc: update base translation + remove extra char ([@lex111](https://github.com/lex111))\\n- Other\\n - [#5669](https://github.com/facebook/docusaurus/pull/5669) fix: allow ColorGenerator to parse colors with prefix `#` ([@Andrewnt219](https://github.com/Andrewnt219))\\n - [#5632](https://github.com/facebook/docusaurus/pull/5632) chore: prepare Algolia migration ([@slorber](https://github.com/slorber))\\n - [#5628](https://github.com/facebook/docusaurus/pull/5628) chore: fix warning after build ([@lex111](https://github.com/lex111))\\n - [#5573](https://github.com/facebook/docusaurus/pull/5573) misc: fix ungrammatical sentence about 5-min tutorial ([@hughlilly](https://github.com/hughlilly))\\n - [#5499](https://github.com/facebook/docusaurus/pull/5499) chore: set up CodeQL ([@zpao](https://github.com/zpao))\\n - [#5474](https://github.com/facebook/docusaurus/pull/5474) chore: remove beta.4 docs (already archived) ([@slorber](https://github.com/slorber))\\n- `docusaurus-init`, `docusaurus-preset-bootstrap`, `docusaurus-theme-bootstrap`\\n - [#5634](https://github.com/facebook/docusaurus/pull/5634) chore: remove unused Bootstrap theme ([@slorber](https://github.com/slorber))\\n- `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-module-type-aliases`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-preset-classic`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`, `lqip-loader`\\n - [#5611](https://github.com/facebook/docusaurus/pull/5611) chore: upgrade Prettier + regenerate lock file ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-pwa`, `docusaurus`\\n - [#5609](https://github.com/facebook/docusaurus/pull/5609) chore: upgrade Terser-related dependencies ([@lex111](https://github.com/lex111))\\n- `docusaurus-cssnano-preset`, `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-types`, `docusaurus-utils-common`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `lqip-loader`\\n - [#5608](https://github.com/facebook/docusaurus/pull/5608) chore: upgrade dependencies ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#5605](https://github.com/facebook/docusaurus/pull/5605) refactor(core): enforce noImplicitAny ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-preset-classic`\\n - [#5603](https://github.com/facebook/docusaurus/pull/5603) fix(preset-classic): fix TS build issue ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-preset-classic`\\n - [#5561](https://github.com/facebook/docusaurus/pull/5561) refactor(plugin-google-gtag, plugin-google-analytics): migrate packages to TS ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-sitemap`, `docusaurus-preset-classic`\\n - [#5579](https://github.com/facebook/docusaurus/pull/5579) refactor(preset-classic): migrate preset-classic to TypeScript ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-init`\\n - [#5484](https://github.com/facebook/docusaurus/pull/5484) chore: regenerate beta.6 examples + fix regen script ([@slorber](https://github.com/slorber))\\n\\n## Committers: 36\\n\\n- Aditya Kajla ([@akajla09](https://github.com/akajla09))\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Ana Carolina ([@printf-ana](https://github.com/printf-ana))\\n- Andrew Nguyen ([@Andrewnt219](https://github.com/Andrewnt219))\\n- Bharat Middha ([@bmiddha](https://github.com/bmiddha))\\n- Chris Chinchilla ([@ChrisChinchilla](https://github.com/ChrisChinchilla))\\n- Daniel Costrasel ([@ohkimur](https://github.com/ohkimur))\\n- Darshan Gada ([@dr5hn](https://github.com/dr5hn))\\n- David Callizaya ([@caleeli](https://github.com/caleeli))\\n- Don ([@dsmmcken](https://github.com/dsmmcken))\\n- Ekaterina Mozheiko ([@EkaterinaMozheiko](https://github.com/EkaterinaMozheiko))\\n- Erick Zhao ([@erickzhao](https://github.com/erickzhao))\\n- Forresst ([@forresst](https://github.com/forresst))\\n- Gabriel T. Nardy ([@gtnardy](https://github.com/gtnardy))\\n- Hugh Lilly ([@hughlilly](https://github.com/hughlilly))\\n- Ivar Conradi \xd8sthus ([@ivarconr](https://github.com/ivarconr))\\n- Jason Bosco ([@jasonbosco](https://github.com/jasonbosco))\\n- Jeffrey Aven ([@jeffreyaven](https://github.com/jeffreyaven))\\n- Jordan Lee ([@jkhaui](https://github.com/jkhaui))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Kyriet ([@KyrietS](https://github.com/KyrietS))\\n- Mahdi Hamldar ([@MrTechHunter](https://github.com/MrTechHunter))\\n- Nathaniel Tucker ([@ntucker](https://github.com/ntucker))\\n- Palash Shrivastava ([@BattleOfPlassey](https://github.com/BattleOfPlassey))\\n- Paul O\u2019Shannessy ([@zpao](https://github.com/zpao))\\n- Robert Kingston ([@kingo55](https://github.com/kingo55))\\n- Stefan Norberg ([@stnor](https://github.com/stnor))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Vincent ([@vinckr](https://github.com/vinckr))\\n- Whirl ([@Whirl21](https://github.com/Whirl21))\\n- [@Dr-Electron](https://github.com/Dr-Electron)\\n- [@Shrugsy](https://github.com/Shrugsy)\\n- [@djamaile](https://github.com/djamaile)\\n- [@headline-design](https://github.com/headline-design)\\n- moonrailgun ([@moonrailgun](https://github.com/moonrailgun))\\n- swyx ([@sw-yx](https://github.com/sw-yx))"},{"id":"/2.0.0-beta.6","metadata":{"permalink":"/changelog/2.0.0-beta.6","source":"@site/changelog/source/2.0.0-beta.6.md","title":"2.0.0-beta.6","description":"New Feature","date":"2021-09-02T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Ali Saki","alias":"3alisaki","url":"https://github.com/3alisaki","imageURL":"https://github.com/3alisaki.png","key":"3alisaki","page":null},{"name":"Antony Messerli","alias":"antonym","url":"https://github.com/antonym","imageURL":"https://github.com/antonym.png","key":"antonym","page":null},{"name":"farshid","alias":"farshidinanloo","url":"https://github.com/farshidinanloo","imageURL":"https://github.com/farshidinanloo.png","key":"farshidinanloo","page":null},{"name":"Gabriel Csapo","alias":"gabrielcsapo","url":"https://github.com/gabrielcsapo","imageURL":"https://github.com/gabrielcsapo.png","key":"gabrielcsapo","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Daniel Costrasel","alias":"ohkimur","url":"https://github.com/ohkimur","imageURL":"https://github.com/ohkimur.png","key":"ohkimur","page":null},{"name":"Oscar Lorentzon","alias":"oscarlorentzon","url":"https://github.com/oscarlorentzon","imageURL":"https://github.com/oscarlorentzon.png","key":"oscarlorentzon","page":null},{"name":"Rohit Gohri","alias":"rohit-gohri","url":"https://github.com/rohit-gohri","imageURL":"https://github.com/rohit-gohri.png","key":"rohit-gohri","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2021-09-02T20:00","authors":["3alisaki","antonym","farshidinanloo","gabrielcsapo","Josh-Cena","lex111","ohkimur","oscarlorentzon","rohit-gohri","slorber"]},"unlisted":false,"prevItem":{"title":"2.0.0-beta.7","permalink":"/changelog/2.0.0-beta.7"},"nextItem":{"title":"2.0.0-beta.5","permalink":"/changelog/2.0.0-beta.5"},"listPageLink":"/changelog/page/3"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`\\n - [#5428](https://github.com/facebook/docusaurus/pull/5428) feat: adds blog archive route ([@gabrielcsapo](https://github.com/gabrielcsapo))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#5462](https://github.com/facebook/docusaurus/pull/5462) feat: on back navigation, close mobile sidebar ([@slorber](https://github.com/slorber))\\n - [#5445](https://github.com/facebook/docusaurus/pull/5445) feat: Add docs-related stable classnames ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#5460](https://github.com/facebook/docusaurus/pull/5460) feat: infima 33 + navbar-sidebar close button ([@slorber](https://github.com/slorber))\\n - [#5442](https://github.com/facebook/docusaurus/pull/5442) feat(theme-classic): allow passing tab label and default value through TabItem ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#5454](https://github.com/facebook/docusaurus/pull/5454) feat: new docs options: versions.{badge,className} ([@slorber](https://github.com/slorber))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`\\n - [#5444](https://github.com/facebook/docusaurus/pull/5444) fix: fix some theme UI issues (blockquotes, navbar-sidebar font) with Infima alpha.32 ([@slorber](https://github.com/slorber))\\n - [#5431](https://github.com/facebook/docusaurus/pull/5431) fix: some beta.5 bugfixes ([@slorber](https://github.com/slorber))\\n- `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#5437](https://github.com/facebook/docusaurus/pull/5437) fix: fix a few TS errors ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#5459](https://github.com/facebook/docusaurus/pull/5459) refactor(theme-classic): completely migrate package to TypeScript ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`\\n - [#5453](https://github.com/facebook/docusaurus/pull/5453) refactor: use SVG for closable button in announcement bar ([@lex111](https://github.com/lex111))\\n - [#5430](https://github.com/facebook/docusaurus/pull/5430) refactor: switch to Flexbox in announcement bar ([@lex111](https://github.com/lex111))\\n - [#5434](https://github.com/facebook/docusaurus/pull/5434) refactor: update Arabic and Persian translations ([@3alisaki](https://github.com/3alisaki))\\n - [#5410](https://github.com/facebook/docusaurus/pull/5410) refactor: add missing translations in fa.json ([@farshidinanloo](https://github.com/farshidinanloo))\\n\\n## :memo: Documentation\\n\\n- [#5471](https://github.com/facebook/docusaurus/pull/5471) docs: Add docusaurus-plugin-relative-paths ([@ohkimur](https://github.com/ohkimur))\\n- [#5464](https://github.com/facebook/docusaurus/pull/5464) docs: add mapillary-js to showcase ([@oscarlorentzon](https://github.com/oscarlorentzon))\\n- [#5433](https://github.com/facebook/docusaurus/pull/5433) docs: document doc tags + refinements ([@Josh-Cena](https://github.com/Josh-Cena))\\n- [#5435](https://github.com/facebook/docusaurus/pull/5435) docs: Add netboot.xyz to site showcase ([@antonym](https://github.com/antonym))\\n- [#5436](https://github.com/facebook/docusaurus/pull/5436) docs: add Redocusaurus in community plugin list ([@rohit-gohri](https://github.com/rohit-gohri))\\n\\n## :house: Internal\\n\\n- [#5455](https://github.com/facebook/docusaurus/pull/5455) fix: website bad version name in docusaurus.config.js ([@slorber](https://github.com/slorber))\\n\\n## Committers: 10\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Ali Saki ([@3alisaki](https://github.com/3alisaki))\\n- Antony Messerli ([@antonym](https://github.com/antonym))\\n- Daniel Costrasel ([@ohkimur](https://github.com/ohkimur))\\n- Gabriel Csapo ([@gabrielcsapo](https://github.com/gabrielcsapo))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Oscar Lorentzon ([@oscarlorentzon](https://github.com/oscarlorentzon))\\n- Rohit Gohri ([@rohit-gohri](https://github.com/rohit-gohri))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- farshid ([@farshidinanloo](https://github.com/farshidinanloo))"},{"id":"/2.0.0-beta.5","metadata":{"permalink":"/changelog/2.0.0-beta.5","source":"@site/changelog/source/2.0.0-beta.5.md","title":"2.0.0-beta.5","description":"New Feature","date":"2021-08-26T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Palash Shrivastava","alias":"BattleOfPlassey","url":"https://github.com/BattleOfPlassey","imageURL":"https://github.com/BattleOfPlassey.png","key":"BattleOfPlassey","page":null},{"name":"David Seal","alias":"dbseal","url":"https://github.com/dbseal","imageURL":"https://github.com/dbseal.png","key":"dbseal","page":null},{"name":"Deepak Prabhakara","alias":"deepakprabhakara","url":"https://github.com/deepakprabhakara","imageURL":"https://github.com/deepakprabhakara.png","key":"deepakprabhakara","page":null},{"name":"Erick Zhao","alias":"erickzhao","url":"https://github.com/erickzhao","imageURL":"https://github.com/erickzhao.png","key":"erickzhao","page":null},{"name":"Federico Aloi","alias":"faloi","url":"https://github.com/faloi","imageURL":"https://github.com/faloi.png","key":"faloi","page":null},{"name":"Forresst","alias":"forresst","url":"https://github.com/forresst","imageURL":"https://github.com/forresst.png","key":"forresst","page":null},{"name":"Fouad Matin","alias":"fouad","url":"https://github.com/fouad","imageURL":"https://github.com/fouad.png","key":"fouad","page":null},{"name":"Julien Neuhart","alias":"gulien","url":"https://github.com/gulien","imageURL":"https://github.com/gulien.png","key":"gulien","page":null},{"name":"Hamza Hamidi","alias":"hamzahamidi","url":"https://github.com/hamzahamidi","imageURL":"https://github.com/hamzahamidi.png","key":"hamzahamidi","page":null},{"name":"HaochenQ","alias":"HaochenQ","url":"https://github.com/HaochenQ","imageURL":"https://github.com/HaochenQ.png","key":"HaochenQ","page":null},{"name":"Dmitry Zhifarsky","alias":"incendial","url":"https://github.com/incendial","imageURL":"https://github.com/incendial.png","key":"incendial","page":null},{"name":"Isaac Philip","alias":"isaac-philip","url":"https://github.com/isaac-philip","imageURL":"https://github.com/isaac-philip.png","key":"isaac-philip","page":null},{"name":"Yan Ivan Evdokimov","alias":"jansivans","url":"https://github.com/jansivans","imageURL":"https://github.com/jansivans.png","key":"jansivans","page":null},{"name":"John Reilly","alias":"johnnyreilly","url":"https://github.com/johnnyreilly","imageURL":"https://github.com/johnnyreilly.png","key":"johnnyreilly","page":null},{"name":"Jonny Burger","alias":"JonnyBurger","url":"https://github.com/JonnyBurger","imageURL":"https://github.com/JonnyBurger.png","key":"JonnyBurger","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Massoud Maboudi","alias":"massoudmaboudi","url":"https://github.com/massoudmaboudi","imageURL":"https://github.com/massoudmaboudi.png","key":"massoudmaboudi","page":null},{"name":"Marko Saric","alias":"metmarkosaric","url":"https://github.com/metmarkosaric","imageURL":"https://github.com/metmarkosaric.png","key":"metmarkosaric","page":null},{"name":"Michal S\xe4nger","alias":"michalsanger","url":"https://github.com/michalsanger","imageURL":"https://github.com/michalsanger.png","key":"michalsanger","page":null},{"name":"Garry","alias":"neaped","url":"https://github.com/neaped","imageURL":"https://github.com/neaped.png","key":"neaped","page":null},{"name":"Pierre-Gilles Leymarie","alias":"Pierre-Gilles","url":"https://github.com/Pierre-Gilles","imageURL":"https://github.com/Pierre-Gilles.png","key":"Pierre-Gilles","page":null},{"name":"Sam Wall","alias":"sjwall","url":"https://github.com/sjwall","imageURL":"https://github.com/sjwall.png","key":"sjwall","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Tunghsiao Liu","alias":"sparanoid","url":"https://github.com/sparanoid","imageURL":"https://github.com/sparanoid.png","key":"sparanoid","page":null},{"name":"wan-nyan-wan","alias":"wan-nyan-wan","url":"https://github.com/wan-nyan-wan","imageURL":"https://github.com/wan-nyan-wan.png","key":"wan-nyan-wan","page":null},{"name":"Paul O\u2019Shannessy","alias":"zpao","url":"https://github.com/zpao","imageURL":"https://github.com/zpao.png","key":"zpao","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2021-08-26T20:00","authors":["BattleOfPlassey","dbseal","deepakprabhakara","erickzhao","faloi","forresst","fouad","gulien","hamzahamidi","HaochenQ","incendial","isaac-philip","jansivans","johnnyreilly","JonnyBurger","Josh-Cena","lex111","massoudmaboudi","metmarkosaric","michalsanger","neaped","Pierre-Gilles","sjwall","slorber","sparanoid","wan-nyan-wan","zpao"]},"unlisted":false,"prevItem":{"title":"2.0.0-beta.6","permalink":"/changelog/2.0.0-beta.6"},"nextItem":{"title":"2.0.0-beta.4","permalink":"/changelog/2.0.0-beta.4"},"listPageLink":"/changelog/page/3"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-utils-validation`\\n - [#5396](https://github.com/facebook/docusaurus/pull/5396) feat(plugin-blog): multi-authors support + authors.yml global configuration ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`\\n - [#5371](https://github.com/facebook/docusaurus/pull/5371) feat: make blog config options and navbar versions dropdown label translatable ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#5375](https://github.com/facebook/docusaurus/pull/5375) feat: add metatags support for seo / blogposts #5373 ([@johnnyreilly](https://github.com/johnnyreilly))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-utils-validation`, `docusaurus-utils`\\n - [#3646](https://github.com/facebook/docusaurus/pull/3646) feat: doc tags (same as blog tags) ([@isaac-philip](https://github.com/isaac-philip))\\n- `docusaurus-plugin-content-blog`\\n - [#5354](https://github.com/facebook/docusaurus/pull/5354) feat(plugin-blog): allow `\'ALL\'` as `postsPerPage` option value ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`\\n - [#5330](https://github.com/facebook/docusaurus/pull/5330) feat: Markdown page-specific head metadatas ([@slorber](https://github.com/slorber))\\n - [#5322](https://github.com/facebook/docusaurus/pull/5322) feat: structured data for blog posts ([@johnnyreilly](https://github.com/johnnyreilly))\\n - [#5314](https://github.com/facebook/docusaurus/pull/5314) feat(v2): add cs (Czech) translations for docusaurus-theme-classic ([@michalsanger](https://github.com/michalsanger))\\n- `docusaurus-init`\\n - [#5233](https://github.com/facebook/docusaurus/pull/5233) feat: new init template classic-typescript ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`\\n - [#5309](https://github.com/facebook/docusaurus/pull/5309) feat: blog posts support /YYYY/MM/DD/blog-post/index.md pattern + blog frontmatter can reference relative images ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`, `docusaurus`\\n - [#5299](https://github.com/facebook/docusaurus/pull/5299) feat: mdx loader fallback, allow importing mdx docs from anywhere ([@slorber](https://github.com/slorber))\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-utils-validation`, `docusaurus-utils`\\n - [#3646](https://github.com/facebook/docusaurus/pull/3646) feat: doc tags (same as blog tags) ([@isaac-philip](https://github.com/isaac-philip))\\n- `docusaurus-init`, `docusaurus-migrate`, `docusaurus-plugin-content-docs`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus`\\n - [#5345](https://github.com/facebook/docusaurus/pull/5345) refactor: rename Git master branch to main ([@zpao](https://github.com/zpao))\\n- `docusaurus-module-type-aliases`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-types`, `docusaurus`\\n - [#5349](https://github.com/facebook/docusaurus/pull/5349) refactor(core): replace useDocusaurusContext().isClient by useIsBrowser() ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#5264](https://github.com/facebook/docusaurus/pull/5264) fix: apply proper class for active doc item on mobiles + avoid duplicated classes ([@lex111](https://github.com/lex111))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`\\n - [#5425](https://github.com/facebook/docusaurus/pull/5425) fix: toc does not highlight clicked anchor + use scroll-margin-top ([@slorber](https://github.com/slorber))\\n - [#5424](https://github.com/facebook/docusaurus/pull/5424) refactor: make dynamic authors layout via CSS only ([@lex111](https://github.com/lex111))\\n - [#5422](https://github.com/facebook/docusaurus/pull/5422) fix: make tags wrapping properly ([@lex111](https://github.com/lex111))\\n - [#5419](https://github.com/facebook/docusaurus/pull/5419) fix: various fixes back-to-top button ([@lex111](https://github.com/lex111))\\n - [#5361](https://github.com/facebook/docusaurus/pull/5361) fix: refactor TOC highlighting + handle edge cases ([@slorber](https://github.com/slorber))\\n - [#5357](https://github.com/facebook/docusaurus/pull/5357) fix: code blocks should scroll in RTL direction ([@slorber](https://github.com/slorber))\\n - [#5346](https://github.com/facebook/docusaurus/pull/5346) fix: author/image adjustments in BlogPosting schema ([@lex111](https://github.com/lex111))\\n - [#5240](https://github.com/facebook/docusaurus/pull/5240) fix: remove top margin only from directly first element ([@lex111](https://github.com/lex111))\\n - [#5317](https://github.com/facebook/docusaurus/pull/5317) fix: make proper highlighting doc link if no sidebar ([@hamzahamidi](https://github.com/hamzahamidi))\\n - [#5316](https://github.com/facebook/docusaurus/pull/5316) fix: avoid extra default active class on doc sidebar item ([@lex111](https://github.com/lex111))\\n - [#5319](https://github.com/facebook/docusaurus/pull/5319) fix: unbreak highlighting regular navbar links ([@lex111](https://github.com/lex111))\\n - [#5264](https://github.com/facebook/docusaurus/pull/5264) fix: apply proper class for active doc item on mobiles + avoid duplicated classes ([@lex111](https://github.com/lex111))\\n - [#5275](https://github.com/facebook/docusaurus/pull/5275) fix: improve spanish translation ([@faloi](https://github.com/faloi))\\n - [#5262](https://github.com/facebook/docusaurus/pull/5262) fix: show secondary menu if even there is no main one ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#5426](https://github.com/facebook/docusaurus/pull/5426) fix: Make update-notifier fail-safe if no permission to read configStore ([@slorber](https://github.com/slorber))\\n - [#5398](https://github.com/facebook/docusaurus/pull/5398) fix: fix write-translations warning for theme-common translations ([@slorber](https://github.com/slorber))\\n - [#5381](https://github.com/facebook/docusaurus/pull/5381) fix: canary releases should ignore notifier updates ([@slorber](https://github.com/slorber))\\n - [#5339](https://github.com/facebook/docusaurus/pull/5339) fix: add admonitions support to mdx partials loaded through the fallback mdx loader ([@slorber](https://github.com/slorber))\\n - [#5311](https://github.com/facebook/docusaurus/pull/5311) fix: docusaurus serve logs wrong port if 3000 is taken ([@wan-nyan-wan](https://github.com/wan-nyan-wan))\\n - [#5308](https://github.com/facebook/docusaurus/pull/5308) fix: remove unexpected whitespaces in CSS bundle ([@lex111](https://github.com/lex111))\\n - [#5268](https://github.com/facebook/docusaurus/pull/5268) fix: fix wrong regex that removes extra letters from swizzled component names ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Other\\n - [#5399](https://github.com/facebook/docusaurus/pull/5399) fix: fix site unlocalized 404 pages + aggressive Netlify /assets caching ([@slorber](https://github.com/slorber))\\n - [#5249](https://github.com/facebook/docusaurus/pull/5249) fix: fix Crowdin mapping for pt-BR ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus`\\n - [#5383](https://github.com/facebook/docusaurus/pull/5383) fix: fix Locale Dropdown RTL icon + Webpack aliases ordering ([@slorber](https://github.com/slorber))\\n- `docusaurus-init`\\n - [#5370](https://github.com/facebook/docusaurus/pull/5370) fix(init): fix links to feature images in classic-typescript ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-common`\\n - [#5364](https://github.com/facebook/docusaurus/pull/5364) fix: unbreak Details component ([@lex111](https://github.com/lex111))\\n - [#5297](https://github.com/facebook/docusaurus/pull/5297) fix: fix constant value import ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-ideal-image`\\n - [#5334](https://github.com/facebook/docusaurus/pull/5334) fix: plugin ideal-image should generate filename with a hash even in development ([@Pierre-Gilles](https://github.com/Pierre-Gilles))\\n- `docusaurus-theme-search-algolia`\\n - [#5290](https://github.com/facebook/docusaurus/pull/5290) fix: make successful build if missing favicon ([@lex111](https://github.com/lex111))\\n- `docusaurus-utils`\\n - [#5270](https://github.com/facebook/docusaurus/pull/5270) fix: ability to link md files with relative paths when paths contain space ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-types`\\n - [#5261](https://github.com/facebook/docusaurus/pull/5261) fix: fix various TS errors ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-common`\\n - [#5402](https://github.com/facebook/docusaurus/pull/5402) refactor: improve styles of Details component ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`\\n - [#5386](https://github.com/facebook/docusaurus/pull/5386) refactor: various tags improvements ([@lex111](https://github.com/lex111))\\n - [#5377](https://github.com/facebook/docusaurus/pull/5377) refactor: make main heading font size changeable via CSS var ([@lex111](https://github.com/lex111))\\n - [#5355](https://github.com/facebook/docusaurus/pull/5355) refactor: add blog microdata in markup instead of use JSON-LD ([@lex111](https://github.com/lex111))\\n - [#5365](https://github.com/facebook/docusaurus/pull/5365) refactor(v2): improved Farsi default translations ([@massoudmaboudi](https://github.com/massoudmaboudi))\\n - [#5280](https://github.com/facebook/docusaurus/pull/5280) refactor(v2): improved Farsi default translations ([@massoudmaboudi](https://github.com/massoudmaboudi))\\n- Other\\n - [#5389](https://github.com/facebook/docusaurus/pull/5389) refactor: clean Canny integration + rename \'Feedback\' to \'Feature Requests\' + improve TS doc page ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#5242](https://github.com/facebook/docusaurus/pull/5242) refactor: reduce ESLint warnings / better typing ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :memo: Documentation\\n\\n- [#5423](https://github.com/facebook/docusaurus/pull/5423) docs: clarify using custom attributes for navbar link ([@lex111](https://github.com/lex111))\\n- [#5421](https://github.com/facebook/docusaurus/pull/5421) docs: add Indent to showcase ([@fouad](https://github.com/fouad))\\n- [#5405](https://github.com/facebook/docusaurus/pull/5405) docs: add Gotenberg to showcase ([@gulien](https://github.com/gulien))\\n- [#5406](https://github.com/facebook/docusaurus/pull/5406) docs: specify proper min Node.js version for Travis CI example ([@BattleOfPlassey](https://github.com/BattleOfPlassey))\\n- [#5390](https://github.com/facebook/docusaurus/pull/5390) docs(v2): showcase BoxyHQ ([@deepakprabhakara](https://github.com/deepakprabhakara))\\n- [#5376](https://github.com/facebook/docusaurus/pull/5376) docs(v2): Update Datagit site to showcase page ([@massoudmaboudi](https://github.com/massoudmaboudi))\\n- [#5372](https://github.com/facebook/docusaurus/pull/5372) docs: remove docusaurus-preset-name from preset doc ([@slorber](https://github.com/slorber))\\n- [#5366](https://github.com/facebook/docusaurus/pull/5366) docs: Add drayman to showcase ([@jansivans](https://github.com/jansivans))\\n- [#5369](https://github.com/facebook/docusaurus/pull/5369) docs(v2): Add Nocalhost website to showcase page ([@neaped](https://github.com/neaped))\\n- [#5351](https://github.com/facebook/docusaurus/pull/5351) docs(website): bump announcement bar + include Twitter link + refactor site colors ([@slorber](https://github.com/slorber))\\n- [#5352](https://github.com/facebook/docusaurus/pull/5352) docs: update `docusaurus-plugin-sass` instructions ([@erickzhao](https://github.com/erickzhao))\\n- [#5332](https://github.com/facebook/docusaurus/pull/5332) docs(v2): add mdx-mermaid to resources ([@sjwall](https://github.com/sjwall))\\n- [#5331](https://github.com/facebook/docusaurus/pull/5331) docs: Changelog page should display TOC with releases ([@slorber](https://github.com/slorber))\\n- [#5329](https://github.com/facebook/docusaurus/pull/5329) docs: add Haochen to showcase page ([@HaochenQ](https://github.com/HaochenQ))\\n- [#5313](https://github.com/facebook/docusaurus/pull/5313) docs: try to make plugin/preset config less confusing ([@slorber](https://github.com/slorber))\\n- [#5296](https://github.com/facebook/docusaurus/pull/5296) docs: update canary doc ([@slorber](https://github.com/slorber))\\n- [#5219](https://github.com/facebook/docusaurus/pull/5219) docs: refactor API documentation ([@Josh-Cena](https://github.com/Josh-Cena))\\n- [#5271](https://github.com/facebook/docusaurus/pull/5271) Add Plausible Analytics docs to showcase page ([@metmarkosaric](https://github.com/metmarkosaric))\\n- [#5283](https://github.com/facebook/docusaurus/pull/5283) docs: fix broken link to syncing tab choices section ([@lex111](https://github.com/lex111))\\n- [#5259](https://github.com/facebook/docusaurus/pull/5259) docs(v2): update Remotion website picture in showcase ([@JonnyBurger](https://github.com/JonnyBurger))\\n- [#5260](https://github.com/facebook/docusaurus/pull/5260) docs(v2): add Dart Code Metrics site to showcase page ([@incendial](https://github.com/incendial))\\n- [#5253](https://github.com/facebook/docusaurus/pull/5253) docs: Fix typo `2-resources.md` ([@forresst](https://github.com/forresst))\\n- [#5248](https://github.com/facebook/docusaurus/pull/5248) docs(v2): add docusaurus-prince-pdf to resources ([@sparanoid](https://github.com/sparanoid))\\n- [#5239](https://github.com/facebook/docusaurus/pull/5239) docs(v2): Add unmand site to showcase page ([@dbseal](https://github.com/dbseal))\\n\\n## :house: Internal\\n\\n- Other\\n - [#5397](https://github.com/facebook/docusaurus/pull/5397) chore: rename docusaurus-2-website package + refactor scripts ([@slorber](https://github.com/slorber))\\n - [#5342](https://github.com/facebook/docusaurus/pull/5342) chore: fix e2e yarn berry tests ([@slorber](https://github.com/slorber))\\n - [#5328](https://github.com/facebook/docusaurus/pull/5328) refactor(website): convert website to TypeScript ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5336](https://github.com/facebook/docusaurus/pull/5336) chore: bump url-parse from 1.5.1 to 1.5.3 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#5312](https://github.com/facebook/docusaurus/pull/5312) fix: fix changelog page mdx import for i18n ([@slorber](https://github.com/slorber))\\n - [#5295](https://github.com/facebook/docusaurus/pull/5295) fix: fix canary release versions ([@slorber](https://github.com/slorber))\\n - [#5285](https://github.com/facebook/docusaurus/pull/5285) fix: fix canary version names ([@slorber](https://github.com/slorber))\\n - [#5269](https://github.com/facebook/docusaurus/pull/5269) misc: enable pt-BR + archive older versions ([@slorber](https://github.com/slorber))\\n - [#5237](https://github.com/facebook/docusaurus/pull/5237) chore: enable pt-BR i18n locale on staging ([@slorber](https://github.com/slorber))\\n- `docusaurus-init`, `docusaurus-migrate`, `docusaurus-plugin-content-docs`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus`\\n - [#5345](https://github.com/facebook/docusaurus/pull/5345) refactor: rename Git master branch to main ([@zpao](https://github.com/zpao))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#5341](https://github.com/facebook/docusaurus/pull/5341) polish: bind key listener to light/dark toggle + a11y lint fixes ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus`\\n - [#5347](https://github.com/facebook/docusaurus/pull/5347) chore(mdx-loader): migrate package to TypeScript ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-migrate`, `docusaurus-module-type-aliases`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-types`, `docusaurus`\\n - [#5335](https://github.com/facebook/docusaurus/pull/5335) refactor: better typing + remove unnecessary eslint-disable ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-blog`\\n - [#5338](https://github.com/facebook/docusaurus/pull/5338) refactor(plugin-blog): style improvements in blogUtils ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`\\n - [#5256](https://github.com/facebook/docusaurus/pull/5256) chore: upgrade Infima to alpha.30 ([@lex111](https://github.com/lex111))\\n- `docusaurus-init`\\n - [#5315](https://github.com/facebook/docusaurus/pull/5315) refactor(init): share common files between templates ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#5284](https://github.com/facebook/docusaurus/pull/5284) refactor: properly type docs version ([@Josh-Cena](https://github.com/Josh-Cena))\\n\\n## :running: Performance\\n\\n- `docusaurus-module-type-aliases`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-types`, `docusaurus`\\n - [#5349](https://github.com/facebook/docusaurus/pull/5349) refactor(core): replace useDocusaurusContext().isClient by useIsBrowser() ([@slorber](https://github.com/slorber))\\n\\n## Committers: 27\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- David Seal ([@dbseal](https://github.com/dbseal))\\n- Deepak Prabhakara ([@deepakprabhakara](https://github.com/deepakprabhakara))\\n- Dmitry Zhifarsky ([@incendial](https://github.com/incendial))\\n- Erick Zhao ([@erickzhao](https://github.com/erickzhao))\\n- Federico Aloi ([@faloi](https://github.com/faloi))\\n- Forresst ([@forresst](https://github.com/forresst))\\n- Fouad Matin ([@fouad](https://github.com/fouad))\\n- Garry ([@neaped](https://github.com/neaped))\\n- Hamza Hamidi ([@hamzahamidi](https://github.com/hamzahamidi))\\n- Isaac Philip ([@isaac-philip](https://github.com/isaac-philip))\\n- John Reilly ([@johnnyreilly](https://github.com/johnnyreilly))\\n- Jonny Burger ([@JonnyBurger](https://github.com/JonnyBurger))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Julien Neuhart ([@gulien](https://github.com/gulien))\\n- Marko Saric ([@metmarkosaric](https://github.com/metmarkosaric))\\n- Massoud Maboudi ([@massoudmaboudi](https://github.com/massoudmaboudi))\\n- Michal S\xe4nger ([@michalsanger](https://github.com/michalsanger))\\n- Palash Shrivastava ([@BattleOfPlassey](https://github.com/BattleOfPlassey))\\n- Paul O\u2019Shannessy ([@zpao](https://github.com/zpao))\\n- Pierre-Gilles Leymarie ([@Pierre-Gilles](https://github.com/Pierre-Gilles))\\n- Sam Wall ([@sjwall](https://github.com/sjwall))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Tunghsiao Liu ([@sparanoid](https://github.com/sparanoid))\\n- Yan Ivan Evdokimov ([@jansivans](https://github.com/jansivans))\\n- [@HaochenQ](https://github.com/HaochenQ)\\n- wan-nyan-wan ([@wan-nyan-wan](https://github.com/wan-nyan-wan))"},{"id":"/2.0.0-beta.4","metadata":{"permalink":"/changelog/2.0.0-beta.4","source":"@site/changelog/source/2.0.0-beta.4.md","title":"2.0.0-beta.4","description":"New Feature","date":"2021-07-28T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"antonvasilev52","alias":"antonvasilev52","url":"https://github.com/antonvasilev52","imageURL":"https://github.com/antonvasilev52.png","key":"antonvasilev52","page":null},{"name":"Arnaud Jeannin","alias":"arnaudjnn","url":"https://github.com/arnaudjnn","imageURL":"https://github.com/arnaudjnn.png","key":"arnaudjnn","page":null},{"name":"Christian Flach","alias":"cmfcmf","url":"https://github.com/cmfcmf","imageURL":"https://github.com/cmfcmf.png","key":"cmfcmf","page":null},{"name":"Arijit Kundu","alias":"covalentbond","url":"https://github.com/covalentbond","imageURL":"https://github.com/covalentbond.png","key":"covalentbond","page":null},{"name":"David Zhao","alias":"davidzhao","url":"https://github.com/davidzhao","imageURL":"https://github.com/davidzhao.png","key":"davidzhao","page":null},{"name":"David Barrat","alias":"dbrrt","url":"https://github.com/dbrrt","imageURL":"https://github.com/dbrrt.png","key":"dbrrt","page":null},{"name":"Dan Gebhardt","alias":"dgeb","url":"https://github.com/dgeb","imageURL":"https://github.com/dgeb.png","key":"dgeb","page":null},{"name":"Fran\xe7ois Massot","alias":"fmassot","url":"https://github.com/fmassot","imageURL":"https://github.com/fmassot.png","key":"fmassot","page":null},{"name":"Forresst","alias":"forresst","url":"https://github.com/forresst","imageURL":"https://github.com/forresst.png","key":"forresst","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Lennart Koopmann","alias":"lennartkoopmann","url":"https://github.com/lennartkoopmann","imageURL":"https://github.com/lennartkoopmann.png","key":"lennartkoopmann","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Lukas Bach","alias":"lukasbach","url":"https://github.com/lukasbach","imageURL":"https://github.com/lukasbach.png","key":"lukasbach","page":null},{"name":"Mar\xe7al Junior","alias":"marssaljr","url":"https://github.com/marssaljr","imageURL":"https://github.com/marssaljr.png","key":"marssaljr","page":null},{"name":"Massoud Maboudi","alias":"massoudmaboudi","url":"https://github.com/massoudmaboudi","imageURL":"https://github.com/massoudmaboudi.png","key":"massoudmaboudi","page":null},{"name":"Michel Weststrate","alias":"mweststrate","url":"https://github.com/mweststrate","imageURL":"https://github.com/mweststrate.png","key":"mweststrate","page":null},{"name":"Nazar","alias":"NazarStreletskyi","url":"https://github.com/NazarStreletskyi","imageURL":"https://github.com/NazarStreletskyi.png","key":"NazarStreletskyi","page":null},{"name":"nirtamir2","alias":"nirtamir2","url":"https://github.com/nirtamir2","imageURL":"https://github.com/nirtamir2.png","key":"nirtamir2","page":null},{"name":"Przemys\u0142aw Chojecki","alias":"pcho","url":"https://github.com/pcho","imageURL":"https://github.com/pcho.png","key":"pcho","page":null},{"name":"Philipp Muens","alias":"pmuens","url":"https://github.com/pmuens","imageURL":"https://github.com/pmuens.png","key":"pmuens","page":null},{"name":"Pranab Das","alias":"pranabdas","url":"https://github.com/pranabdas","imageURL":"https://github.com/pranabdas.png","key":"pranabdas","page":null},{"name":"Raz Luvaton","alias":"rluvaton","url":"https://github.com/rluvaton","imageURL":"https://github.com/rluvaton.png","key":"rluvaton","page":null},{"name":"Sergio Moreno","alias":"semoal","url":"https://github.com/semoal","imageURL":"https://github.com/semoal.png","key":"semoal","page":null},{"name":"Cl\xe9ment Vannicatte","alias":"shortcuts","url":"https://github.com/shortcuts","imageURL":"https://github.com/shortcuts.png","key":"shortcuts","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Taylor Reece","alias":"taylorreece","url":"https://github.com/taylorreece","imageURL":"https://github.com/taylorreece.png","key":"taylorreece","page":null},{"name":"tohid nateghi","alias":"tohidnateghi","url":"https://github.com/tohidnateghi","imageURL":"https://github.com/tohidnateghi.png","key":"tohidnateghi","page":null},{"name":"\u9648\u6768\u6587","alias":"wenerme","url":"https://github.com/wenerme","imageURL":"https://github.com/wenerme.png","key":"wenerme","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2021-07-28T20:00","authors":["antonvasilev52","arnaudjnn","cmfcmf","covalentbond","davidzhao","dbrrt","dgeb","fmassot","forresst","Josh-Cena","lennartkoopmann","lex111","lukasbach","marssaljr","massoudmaboudi","mweststrate","NazarStreletskyi","nirtamir2","pcho","pmuens","pranabdas","rluvaton","semoal","shortcuts","slorber","taylorreece","tohidnateghi","wenerme"]},"unlisted":false,"prevItem":{"title":"2.0.0-beta.5","permalink":"/changelog/2.0.0-beta.5"},"nextItem":{"title":"2.0.0-beta.3","permalink":"/changelog/2.0.0-beta.3"},"listPageLink":"/changelog/page/3"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-theme-classic`\\n - [#4912](https://github.com/facebook/docusaurus/pull/4912) feat(v2): add back to top button ([@lex111](https://github.com/lex111))\\n- `docusaurus-init`\\n - [#5235](https://github.com/facebook/docusaurus/pull/5235) feat: docusaurus.new + improve StackBlitz playground integration ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#5203](https://github.com/facebook/docusaurus/pull/5203) feat: docs plugin options sidebarCollapsible + sidebarCollapsed ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus`\\n - [#5207](https://github.com/facebook/docusaurus/pull/5207) feat: multiple playground choices ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-types`, `docusaurus`\\n - [#4273](https://github.com/facebook/docusaurus/pull/4273) feat(v2): redesign mobile UX: inline TOC + doc sidebar in main menu ([@lex111](https://github.com/lex111))\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#5203](https://github.com/facebook/docusaurus/pull/5203) feat: docs plugin options sidebarCollapsible + sidebarCollapsed ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-utils`, `docusaurus`\\n - [#5173](https://github.com/facebook/docusaurus/pull/5173) feat(v2): generalize usage of \\\\_ prefix convention to exclude content files/folders ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-types`, `docusaurus`\\n - [#4273](https://github.com/facebook/docusaurus/pull/4273) feat(v2): redesign mobile UX: inline TOC + doc sidebar in main menu ([@lex111](https://github.com/lex111))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-plugin-content-blog`\\n - [#5232](https://github.com/facebook/docusaurus/pull/5232) fix(v2): blog should parse frontMatter.date even when time is present ([@wenerme](https://github.com/wenerme))\\n- `docusaurus-theme-classic`\\n - [#5230](https://github.com/facebook/docusaurus/pull/5230) fix(v2): remove top margin from first element inside doc article ([@lex111](https://github.com/lex111))\\n - [#5229](https://github.com/facebook/docusaurus/pull/5229) fix(v2): keep mobile TOC after hydration ([@lex111](https://github.com/lex111))\\n - [#5179](https://github.com/facebook/docusaurus/pull/5179) fix(v2): wrap dropdown item to missing li element + remove extra attributes ([@lex111](https://github.com/lex111))\\n - [#5183](https://github.com/facebook/docusaurus/pull/5183) fix(v2): pass all props to CodeBlock component ([@lex111](https://github.com/lex111))\\n - [#5176](https://github.com/facebook/docusaurus/pull/5176) fix(v2): Fix type for navlink label ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5172](https://github.com/facebook/docusaurus/pull/5172) fix(v2): hide mobile collapsible doc toc if no headings ([@slorber](https://github.com/slorber))\\n - [#5161](https://github.com/facebook/docusaurus/pull/5161) fix(v2): disable default behavior when click on collapsible item ([@lex111](https://github.com/lex111))\\n - [#5151](https://github.com/facebook/docusaurus/pull/5151) fix(v2): add missing french translations for mobile ([@forresst](https://github.com/forresst))\\n - [#5104](https://github.com/facebook/docusaurus/pull/5104) fix(v2): fix SkipToContent programmatic focus when updating querystring ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-search-algolia`\\n - [#5214](https://github.com/facebook/docusaurus/pull/5214) fix: upgrade Docsearch to avoid layout shift ([@slorber](https://github.com/slorber))\\n - [#5135](https://github.com/facebook/docusaurus/pull/5135) chore(v2): update @docsearch/react ([@shortcuts](https://github.com/shortcuts))\\n- `docusaurus`\\n - [#5204](https://github.com/facebook/docusaurus/pull/5204) fix: cli upgrade helper fail when no `package.dependencies` ([@mweststrate](https://github.com/mweststrate))\\n - [#5164](https://github.com/facebook/docusaurus/pull/5164) fix(v2): revert webpack.resolve.symlinks = false ([@slorber](https://github.com/slorber))\\n - [#5126](https://github.com/facebook/docusaurus/pull/5126) fix(v2): remove webpackConfig.resolve.symlinks: true ([@slorber](https://github.com/slorber))\\n - [#5110](https://github.com/facebook/docusaurus/pull/5110) fix(v2): Fix update-notifier not run at first and not notifying consistently ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-utils`\\n - [#5199](https://github.com/facebook/docusaurus/pull/5199) fix(v2): Fix MDX docs being considered as partials when siteDir match the \\\\_ prefix convention ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-pwa`\\n - [#5185](https://github.com/facebook/docusaurus/pull/5185) fix(v2): add base URL to content attribute of head tags PWA ([@lex111](https://github.com/lex111))\\n - [#5169](https://github.com/facebook/docusaurus/pull/5169) refactor(v2): automatically add base URL to PWA head tags ([@lex111](https://github.com/lex111))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-utils`, `docusaurus`\\n - [#5173](https://github.com/facebook/docusaurus/pull/5173) feat(v2): generalize usage of \\\\_ prefix convention to exclude content files/folders ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-common`\\n - [#5159](https://github.com/facebook/docusaurus/pull/5159) fix(v2): Fix Collapsible hydration layout shift ([@slorber](https://github.com/slorber))\\n - [#5146](https://github.com/facebook/docusaurus/pull/5146) fix(v2): improve work of useCollapsible hook with multiple clicks ([@lex111](https://github.com/lex111))\\n- `docusaurus-types`\\n - [#5129](https://github.com/facebook/docusaurus/pull/5129) fix(v2): fix d.ts lint error ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#5116](https://github.com/facebook/docusaurus/pull/5116) fix(v2): introduce useCollapsible to fix collapsible animation perf issues ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-client-redirects`\\n - [#5102](https://github.com/facebook/docusaurus/pull/5102) fix(v2): fix redirect plugin when trailingSlash=false for .html extension ([@slorber](https://github.com/slorber))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#5228](https://github.com/facebook/docusaurus/pull/5228) refactor(v2): fix small typo in Russian translation ([@antonvasilev52](https://github.com/antonvasilev52))\\n - [#5222](https://github.com/facebook/docusaurus/pull/5222) chore(v2): update Infima to alpha 28 ([@lex111](https://github.com/lex111))\\n - [#5224](https://github.com/facebook/docusaurus/pull/5224) refactor(v2): update Russian translation ([@lex111](https://github.com/lex111))\\n - [#5217](https://github.com/facebook/docusaurus/pull/5217) refactor(v2): improved Farsi default translations ([@massoudmaboudi](https://github.com/massoudmaboudi))\\n - [#5171](https://github.com/facebook/docusaurus/pull/5171) refactor(v2): increase content area if blog sidebar is off ([@lex111](https://github.com/lex111))\\n - [#5154](https://github.com/facebook/docusaurus/pull/5154) refactor(v2): Hindi translation for semantic doc sidebar ([@pranabdas](https://github.com/pranabdas))\\n - [#5145](https://github.com/facebook/docusaurus/pull/5145) refactor(v2): use Collapsible for mobile nav items ([@lex111](https://github.com/lex111))\\n - [#5138](https://github.com/facebook/docusaurus/pull/5138) refactor(v2): Update Hebrew translations ([@nirtamir2](https://github.com/nirtamir2))\\n - [#5140](https://github.com/facebook/docusaurus/pull/5140) refactor(v2): bn translation improvements for semantic doc sidebar ([@pranabdas](https://github.com/pranabdas))\\n - [#5139](https://github.com/facebook/docusaurus/pull/5139) feat(v2): complete Chinese code translations ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5118](https://github.com/facebook/docusaurus/pull/5118) refactor(v2): pt-BR translations improve semantic doc sidebar and tags ([@marssaljr](https://github.com/marssaljr))\\n- `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`\\n - [#5215](https://github.com/facebook/docusaurus/pull/5215) refactor: make code block shadows consistent with new admonitions ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`\\n - [#5193](https://github.com/facebook/docusaurus/pull/5193) refactor: redesign admonitions/callouts/quotes ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#5168](https://github.com/facebook/docusaurus/pull/5168) refactor(v2): mobile dropdown navbar: expand when subitem become active ([@slorber](https://github.com/slorber))\\n\\n## :memo: Documentation\\n\\n- [#5236](https://github.com/facebook/docusaurus/pull/5236) docs: add Verdaccio.org to showcase ([@semoal](https://github.com/semoal))\\n- [#5218](https://github.com/facebook/docusaurus/pull/5218) docs(v2): remove vector.dev from showcase ([@lex111](https://github.com/lex111))\\n- [#5212](https://github.com/facebook/docusaurus/pull/5212) docs: mention Link can be used for external links ([@slorber](https://github.com/slorber))\\n- [#5210](https://github.com/facebook/docusaurus/pull/5210) docs(v2): Elaboration of raw-loader in markdown react component ([@pranabdas](https://github.com/pranabdas))\\n- [#5191](https://github.com/facebook/docusaurus/pull/5191) docs: user should restart docusaurus after adding prism additionalLanguage ([@tohidnateghi](https://github.com/tohidnateghi))\\n- [#5175](https://github.com/facebook/docusaurus/pull/5175) docs: update API docs on navbar behavior ([@Josh-Cena](https://github.com/Josh-Cena))\\n- [#5189](https://github.com/facebook/docusaurus/pull/5189) docs(v2): Add orbitjs site to showcase page ([@dgeb](https://github.com/dgeb))\\n- [#5177](https://github.com/facebook/docusaurus/pull/5177) docs(v2): add easyjwt to users ([@dbrrt](https://github.com/dbrrt))\\n- [#5187](https://github.com/facebook/docusaurus/pull/5187) docs(v2): Add quickwit to user.js and png. ([@fmassot](https://github.com/fmassot))\\n- [#5184](https://github.com/facebook/docusaurus/pull/5184) docs(v2): Add react-complex-tree to users.js ([@lukasbach](https://github.com/lukasbach))\\n- [#5178](https://github.com/facebook/docusaurus/pull/5178) docs(v2): Update tutorial link ([@slorber](https://github.com/slorber))\\n- [#5158](https://github.com/facebook/docusaurus/pull/5158) docs(v2): Update deploy with Qovery docs for V2 ([@arnaudjnn](https://github.com/arnaudjnn))\\n- [#5152](https://github.com/facebook/docusaurus/pull/5152) docs(v2): Indent code example to improve readability ([@rluvaton](https://github.com/rluvaton))\\n- [#5133](https://github.com/facebook/docusaurus/pull/5133) docs(v2): GIF format is not suported ([@NazarStreletskyi](https://github.com/NazarStreletskyi))\\n- [#5117](https://github.com/facebook/docusaurus/pull/5117) docs(v2): Add Prismatic docs page to showcase. ([@taylorreece](https://github.com/taylorreece))\\n- [#5115](https://github.com/facebook/docusaurus/pull/5115) docs(v2): Add LiveKit to showcase ([@davidzhao](https://github.com/davidzhao))\\n- [#5114](https://github.com/facebook/docusaurus/pull/5114) docs(v2): add Blink Shell Documentation to Showcase ([@pcho](https://github.com/pcho))\\n- [#5112](https://github.com/facebook/docusaurus/pull/5112) docs(v2): clarify how to disable edit links entirely ([@lennartkoopmann](https://github.com/lennartkoopmann))\\n- [#5113](https://github.com/facebook/docusaurus/pull/5113) docs(v2): Add CryptoDevHub to Showcase ([@pmuens](https://github.com/pmuens))\\n\\n## :house: Internal\\n\\n- `docusaurus-theme-classic`\\n - [#5234](https://github.com/facebook/docusaurus/pull/5234) chore: Upgrade infima 29 ([@slorber](https://github.com/slorber))\\n - [#5130](https://github.com/facebook/docusaurus/pull/5130) test(v2): dogfooding: add huge sidebar for testing purposes ([@slorber](https://github.com/slorber))\\n- Other\\n - [#5223](https://github.com/facebook/docusaurus/pull/5223) chore: fix iframe background color in dark mode ([@lex111](https://github.com/lex111))\\n - [#5206](https://github.com/facebook/docusaurus/pull/5206) misc: add script to keep starters branch/repos up-to-date ([@slorber](https://github.com/slorber))\\n - [#5167](https://github.com/facebook/docusaurus/pull/5167) fix(v2): fix website PWA icon hrefs ([@slorber](https://github.com/slorber))\\n - [#5166](https://github.com/facebook/docusaurus/pull/5166) fix(v2): fix yarn clear command ([@slorber](https://github.com/slorber))\\n - [#5137](https://github.com/facebook/docusaurus/pull/5137) chore: upgrade crowdin ([@slorber](https://github.com/slorber))\\n - [#5111](https://github.com/facebook/docusaurus/pull/5111) misc: monitor site global data with build size bot ([@slorber](https://github.com/slorber))\\n\\n## :running: Performance\\n\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#5136](https://github.com/facebook/docusaurus/pull/5136) perf(v2): lazy sidebar categories / collapsibles, reduce html output / build times ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#5130](https://github.com/facebook/docusaurus/pull/5130) test(v2): dogfooding: add huge sidebar for testing purposes ([@slorber](https://github.com/slorber))\\n\\n## Committers: 28\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Arijit Kundu ([@covalentbond](https://github.com/covalentbond))\\n- Arnaud Jeannin ([@arnaudjnn](https://github.com/arnaudjnn))\\n- Christian Flach ([@cmfcmf](https://github.com/cmfcmf))\\n- Cl\xe9ment Vannicatte ([@shortcuts](https://github.com/shortcuts))\\n- Dan Gebhardt ([@dgeb](https://github.com/dgeb))\\n- David Barrat ([@dbrrt](https://github.com/dbrrt))\\n- David Zhao ([@davidzhao](https://github.com/davidzhao))\\n- Forresst ([@forresst](https://github.com/forresst))\\n- Fran\xe7ois Massot ([@fmassot](https://github.com/fmassot))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Lennart Koopmann ([@lennartkoopmann](https://github.com/lennartkoopmann))\\n- Lukas Bach ([@lukasbach](https://github.com/lukasbach))\\n- Mar\xe7al Junior ([@marssaljr](https://github.com/marssaljr))\\n- Massoud Maboudi ([@massoudmaboudi](https://github.com/massoudmaboudi))\\n- Michel Weststrate ([@mweststrate](https://github.com/mweststrate))\\n- Nazar ([@NazarStreletskyi](https://github.com/NazarStreletskyi))\\n- Philipp Muens ([@pmuens](https://github.com/pmuens))\\n- Pranab Das ([@pranabdas](https://github.com/pranabdas))\\n- Przemys\u0142aw Chojecki ([@pcho](https://github.com/pcho))\\n- Raz Luvaton ([@rluvaton](https://github.com/rluvaton))\\n- Sergio Moreno ([@semoal](https://github.com/semoal))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Taylor Reece ([@taylorreece](https://github.com/taylorreece))\\n- [@antonvasilev52](https://github.com/antonvasilev52)\\n- [@nirtamir2](https://github.com/nirtamir2)\\n- tohid nateghi ([@tohidnateghi](https://github.com/tohidnateghi))\\n- \u9648\u6768\u6587 ([@wenerme](https://github.com/wenerme))"},{"id":"/2.0.0-beta.3","metadata":{"permalink":"/changelog/2.0.0-beta.3","source":"@site/changelog/source/2.0.0-beta.3.md","title":"2.0.0-beta.3","description":"New Feature","date":"2021-06-30T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Adam Uhl\xed\u0159","alias":"AuHau","url":"https://github.com/AuHau","imageURL":"https://github.com/AuHau.png","key":"AuHau","page":null},{"name":"bperlmutter","alias":"bperlmutter","url":"https://github.com/bperlmutter","imageURL":"https://github.com/bperlmutter.png","key":"bperlmutter","page":null},{"name":"dirslashls","alias":"dirslashls","url":"https://github.com/dirslashls","imageURL":"https://github.com/dirslashls.png","key":"dirslashls","page":null},{"name":"Ayush das","alias":"iamayushdas","url":"https://github.com/iamayushdas","imageURL":"https://github.com/iamayushdas.png","key":"iamayushdas","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Jules Sam. Randolph","alias":"jsamr","url":"https://github.com/jsamr","imageURL":"https://github.com/jsamr.png","key":"jsamr","page":null},{"name":"Danny Lin","alias":"kdrag0n","url":"https://github.com/kdrag0n","imageURL":"https://github.com/kdrag0n.png","key":"kdrag0n","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Rami Yushuvaev","alias":"ramiy","url":"https://github.com/ramiy","imageURL":"https://github.com/ramiy.png","key":"ramiy","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Taylor Reece","alias":"taylorreece","url":"https://github.com/taylorreece","imageURL":"https://github.com/taylorreece.png","key":"taylorreece","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2021-06-30T20:00","authors":["AuHau","bperlmutter","dirslashls","iamayushdas","Josh-Cena","jsamr","kdrag0n","lex111","ramiy","slorber","taylorreece"]},"unlisted":false,"prevItem":{"title":"2.0.0-beta.4","permalink":"/changelog/2.0.0-beta.4"},"nextItem":{"title":"2.0.0-beta.2","permalink":"/changelog/2.0.0-beta.2"},"listPageLink":"/changelog/page/3"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-theme-classic`\\n - [#5092](https://github.com/facebook/docusaurus/pull/5092) feat(v2): add icon to external footer links ([@lex111](https://github.com/lex111))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`\\n - [#5080](https://github.com/facebook/docusaurus/pull/5080) fix(v2): classic theme - semantic correct anchors links ([@AuHau](https://github.com/AuHau))\\n - [#5081](https://github.com/facebook/docusaurus/pull/5081) fix(v2): restore previous scroll position on back button click ([@lex111](https://github.com/lex111))\\n - [#5063](https://github.com/facebook/docusaurus/pull/5063) fix(v2): restore responsive menu ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#5094](https://github.com/facebook/docusaurus/pull/5094) fix(v2): fix typos in swizzle command ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#5095](https://github.com/facebook/docusaurus/pull/5095) fix(v2): fix swizzle readComponent ([@slorber](https://github.com/slorber))\\n - [#5059](https://github.com/facebook/docusaurus/pull/5059) fix(v2): fix webpack SSG plugin error thrown due to new URL() / \\\\_\\\\_filename ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`\\n - [#5097](https://github.com/facebook/docusaurus/pull/5097) fix(v2): fix useEffect infinite loop in blogOnly mode ([@slorber](https://github.com/slorber))\\n - [#5074](https://github.com/facebook/docusaurus/pull/5074) fix(v2): allow negative sidebar positions ([@kdrag0n](https://github.com/kdrag0n))\\n- `docusaurus-plugin-client-redirects`\\n - [#5093](https://github.com/facebook/docusaurus/pull/5093) fix(v2): redirect from should work with trailingSlash: true ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-utils`\\n - [#5085](https://github.com/facebook/docusaurus/pull/5085) fix(v2): redirect plugin should emit redirect files with lower precedence than redirect target ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-plugin-sitemap`, `docusaurus-types`, `docusaurus-utils-common`, `docusaurus`\\n - [#5082](https://github.com/facebook/docusaurus/pull/5082) fix(v2): never remove trailing slash from site root like \'/baseUrl/\' ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-sitemap`\\n - [#5068](https://github.com/facebook/docusaurus/pull/5068) fix(v2): sitemap should respect the global trailingSlash config option. ([@taylorreece](https://github.com/taylorreece))\\n- `docusaurus-types`\\n - [#5058](https://github.com/facebook/docusaurus/pull/5058) fix(v2): fix bad @docusaurus/types Plugin type generics ([@jsamr](https://github.com/jsamr))\\n\\n## :memo: Documentation\\n\\n- [#5064](https://github.com/facebook/docusaurus/pull/5064) docs(v2): Rewrite markdown images section ([@ramiy](https://github.com/ramiy))\\n- [#5086](https://github.com/facebook/docusaurus/pull/5086) docs(v2): Add SQL Frames to the showcase ([@dirslashls](https://github.com/dirslashls))\\n- [#5073](https://github.com/facebook/docusaurus/pull/5073) docs(v2): update installation docs ([@iamayushdas](https://github.com/iamayushdas))\\n- [#5061](https://github.com/facebook/docusaurus/pull/5061) docs(v2:) Divide `markdown-features/code-blocks` to smaller sections ([@ramiy](https://github.com/ramiy))\\n- [#5066](https://github.com/facebook/docusaurus/pull/5066) docs(v2): correct typo ([@bperlmutter](https://github.com/bperlmutter))\\n\\n## :house: Internal\\n\\n- `docusaurus-types`\\n - [#5067](https://github.com/facebook/docusaurus/pull/5067) chore: unstable yarn.lock ([@slorber](https://github.com/slorber))\\n- Other\\n - [#5057](https://github.com/facebook/docusaurus/pull/5057) chore(v2): upgrade examples to beta.2 ([@slorber](https://github.com/slorber))\\n\\n## Committers: 11\\n\\n- Adam Uhl\xed\u0159 ([@AuHau](https://github.com/AuHau))\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Ayush das ([@iamayushdas](https://github.com/iamayushdas))\\n- Danny Lin ([@kdrag0n](https://github.com/kdrag0n))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Jules Sam. Randolph ([@jsamr](https://github.com/jsamr))\\n- Rami Yushuvaev ([@ramiy](https://github.com/ramiy))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Taylor Reece ([@taylorreece](https://github.com/taylorreece))\\n- [@bperlmutter](https://github.com/bperlmutter)\\n- [@dirslashls](https://github.com/dirslashls)"},{"id":"/2.0.0-beta.2","metadata":{"permalink":"/changelog/2.0.0-beta.2","source":"@site/changelog/source/2.0.0-beta.2.md","title":"2.0.0-beta.2","description":"New Feature","date":"2021-06-24T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Eshan Tripathi","alias":"eshantri","url":"https://github.com/eshantri","imageURL":"https://github.com/eshantri.png","key":"eshantri","page":null},{"name":"Felipe Santos","alias":"felipecrs","url":"https://github.com/felipecrs","imageURL":"https://github.com/felipecrs.png","key":"felipecrs","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Jules Sam. Randolph","alias":"jsamr","url":"https://github.com/jsamr","imageURL":"https://github.com/jsamr.png","key":"jsamr","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"ZhengYuan Loo","alias":"loozhengyuan","url":"https://github.com/loozhengyuan","imageURL":"https://github.com/loozhengyuan.png","key":"loozhengyuan","page":null},{"name":"Manuel Meurer","alias":"manuelmeurer","url":"https://github.com/manuelmeurer","imageURL":"https://github.com/manuelmeurer.png","key":"manuelmeurer","page":null},{"name":"Rami Yushuvaev","alias":"ramiy","url":"https://github.com/ramiy","imageURL":"https://github.com/ramiy.png","key":"ramiy","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Teik Jun","alias":"teikjun","url":"https://github.com/teikjun","imageURL":"https://github.com/teikjun.png","key":"teikjun","page":null},{"name":"Tomasz Papiernik","alias":"tomekpapiernik","url":"https://github.com/tomekpapiernik","imageURL":"https://github.com/tomekpapiernik.png","key":"tomekpapiernik","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2021-06-24T20:00","authors":["eshantri","felipecrs","Josh-Cena","jsamr","lex111","loozhengyuan","manuelmeurer","ramiy","slorber","teikjun","tomekpapiernik"]},"unlisted":false,"prevItem":{"title":"2.0.0-beta.3","permalink":"/changelog/2.0.0-beta.3"},"nextItem":{"title":"2.0.0-beta.1","permalink":"/changelog/2.0.0-beta.1"},"listPageLink":"/changelog/page/3"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#5052](https://github.com/facebook/docusaurus/pull/5052) feat(v2): docs version banner configuration option ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-types`, `docusaurus`\\n - [#5037](https://github.com/facebook/docusaurus/pull/5037) feat(v2): plugins injectHtmlTags + configureWebpack should receive content loaded ([@slorber](https://github.com/slorber))\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-plugin-content-docs`\\n - [#5053](https://github.com/facebook/docusaurus/pull/5053) refactor(v2): remove deprecated docs option excludeNextVersionDocs ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#5052](https://github.com/facebook/docusaurus/pull/5052) feat(v2): docs version banner configuration option ([@slorber](https://github.com/slorber))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-plugin-content-blog`, `docusaurus-types`, `docusaurus`\\n - [#5054](https://github.com/facebook/docusaurus/pull/5054) fix(v2): allow undefined favicon ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`\\n - [#5048](https://github.com/facebook/docusaurus/pull/5048) fix(v2): read last update from inner git repositories ([@felipecrs](https://github.com/felipecrs))\\n- `docusaurus-theme-classic`\\n - [#5050](https://github.com/facebook/docusaurus/pull/5050) fix(v2): add shadow to skip link on focus only ([@lex111](https://github.com/lex111))\\n - [#5035](https://github.com/facebook/docusaurus/pull/5035) fix(v2): fix some docs container/sidebar layout issues ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`\\n - [#5047](https://github.com/facebook/docusaurus/pull/5047) fix(v2): Fix Webpack persistent caching (evict on swizzle/alias/config change) ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#5040](https://github.com/facebook/docusaurus/pull/5040) fix(v2): Fix announcementBar layout shifts ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#5034](https://github.com/facebook/docusaurus/pull/5034) fix(v2): dev css modules classnames should include filename ([@slorber](https://github.com/slorber))\\n - [#5016](https://github.com/facebook/docusaurus/pull/5016) fix(v2): add missing quote in build command output ([@manuelmeurer](https://github.com/manuelmeurer))\\n- `docusaurus-module-type-aliases`, `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#5023](https://github.com/facebook/docusaurus/pull/5023) fix(v2): ignore hash changes in useChangeRoute hook ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-utils-validation`\\n - [#5032](https://github.com/facebook/docusaurus/pull/5032) fix(v2): less strict blog/docs uri frontmatter validation ([@slorber](https://github.com/slorber))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-plugin-content-docs`\\n - [#5053](https://github.com/facebook/docusaurus/pull/5053) refactor(v2): remove deprecated docs option excludeNextVersionDocs ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`, `docusaurus-plugin-ideal-image`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-utils-common`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`\\n - [#4993](https://github.com/facebook/docusaurus/pull/4993) style(v2): reduce number of ESLint warnings ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Other\\n - [#5017](https://github.com/facebook/docusaurus/pull/5017) chore(v2): remove badge for v1 tests ([@loozhengyuan](https://github.com/loozhengyuan))\\n\\n## :memo: Documentation\\n\\n- Other\\n - [#5049](https://github.com/facebook/docusaurus/pull/5049) docs(v2): Fix Gatsby theme name for docs site - Docz ([@ramiy](https://github.com/ramiy))\\n - [#5030](https://github.com/facebook/docusaurus/pull/5030) docs(v2): typo in deployment.mdx ([@eshantri](https://github.com/eshantri))\\n - [#5022](https://github.com/facebook/docusaurus/pull/5022) docs(v2): Add React Native Render HTML site to showcase page ([@jsamr](https://github.com/jsamr))\\n - [#5027](https://github.com/facebook/docusaurus/pull/5027) docs(v2): Add Buddy to deployment doc ([@tomekpapiernik](https://github.com/tomekpapiernik))\\n - [#5021](https://github.com/facebook/docusaurus/pull/5021) docs(v2): fix incorrect anchor links in website ([@teikjun](https://github.com/teikjun))\\n - [#5007](https://github.com/facebook/docusaurus/pull/5007) docs(v2): wrap mdx usage in mdx-code-block ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#5033](https://github.com/facebook/docusaurus/pull/5033) docs(v2): GH pages: recommend using trailingSlash ([@slorber](https://github.com/slorber))\\n\\n## :house: Internal\\n\\n- [#5005](https://github.com/facebook/docusaurus/pull/5005) chore: add archived versions system + archive alpha.73-75 ([@slorber](https://github.com/slorber))\\n\\n## Committers: 11\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Eshan Tripathi ([@eshantri](https://github.com/eshantri))\\n- Felipe Santos ([@felipecrs](https://github.com/felipecrs))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Jules Sam. Randolph ([@jsamr](https://github.com/jsamr))\\n- Manuel Meurer ([@manuelmeurer](https://github.com/manuelmeurer))\\n- Rami Yushuvaev ([@ramiy](https://github.com/ramiy))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Teik Jun ([@teikjun](https://github.com/teikjun))\\n- Tomasz Papiernik ([@tomekpapiernik](https://github.com/tomekpapiernik))\\n- ZhengYuan Loo ([@loozhengyuan](https://github.com/loozhengyuan))"},{"id":"/2.0.0-beta.1","metadata":{"permalink":"/changelog/2.0.0-beta.1","source":"@site/changelog/source/2.0.0-beta.1.md","title":"2.0.0-beta.1","description":"New Feature","date":"2021-06-18T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"antonygibbs","alias":"antonygibbs","url":"https://github.com/antonygibbs","imageURL":"https://github.com/antonygibbs.png","key":"antonygibbs","page":null},{"name":"Arthur","alias":"ArtFlag","url":"https://github.com/ArtFlag","imageURL":"https://github.com/ArtFlag.png","key":"ArtFlag","page":null},{"name":"besemuna","alias":"besemuna","url":"https://github.com/besemuna","imageURL":"https://github.com/besemuna.png","key":"besemuna","page":null},{"name":"Christopher Hsieh","alias":"Christopher-Hsieh","url":"https://github.com/Christopher-Hsieh","imageURL":"https://github.com/Christopher-Hsieh.png","key":"Christopher-Hsieh","page":null},{"name":"Ben Rometsch","alias":"dabeeeenster","url":"https://github.com/dabeeeenster","imageURL":"https://github.com/dabeeeenster.png","key":"dabeeeenster","page":null},{"name":"e271828-","alias":"e271828-","url":"https://github.com/e271828-","imageURL":"https://github.com/e271828-.png","key":"e271828-","page":null},{"name":"fgatti675","alias":"fgatti675","url":"https://github.com/fgatti675","imageURL":"https://github.com/fgatti675.png","key":"fgatti675","page":null},{"name":"Tina\xebl Devresse","alias":"HunteRoi","url":"https://github.com/HunteRoi","imageURL":"https://github.com/HunteRoi.png","key":"HunteRoi","page":null},{"name":"Jonathan Mazin","alias":"jmazin","url":"https://github.com/jmazin","imageURL":"https://github.com/jmazin.png","key":"jmazin","page":null},{"name":"Joel","alias":"Joelpo","url":"https://github.com/Joelpo","imageURL":"https://github.com/Joelpo.png","key":"Joelpo","page":null},{"name":"Jon Barker","alias":"jonbarker68","url":"https://github.com/jonbarker68","imageURL":"https://github.com/jonbarker68.png","key":"jonbarker68","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"Louis Gallet","alias":"l0u1sg","url":"https://github.com/l0u1sg","imageURL":"https://github.com/l0u1sg.png","key":"l0u1sg","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Pablo Vidal","alias":"limkinZero","url":"https://github.com/limkinZero","imageURL":"https://github.com/limkinZero.png","key":"limkinZero","page":null},{"name":"Lior Heber","alias":"liorheber","url":"https://github.com/liorheber","imageURL":"https://github.com/liorheber.png","key":"liorheber","page":null},{"name":"Louis Grenard","alias":"louistiti","url":"https://github.com/louistiti","imageURL":"https://github.com/louistiti.png","key":"louistiti","page":null},{"name":"Massibian","alias":"Massibian","url":"https://github.com/Massibian","imageURL":"https://github.com/Massibian.png","key":"Massibian","page":null},{"name":"Nam Hoang Le","alias":"nam-hle","url":"https://github.com/nam-hle","imageURL":"https://github.com/nam-hle.png","key":"nam-hle","page":null},{"name":"Pratyay Banerjee","alias":"Neilblaze","url":"https://github.com/Neilblaze","imageURL":"https://github.com/Neilblaze.png","key":"Neilblaze","page":null},{"name":"nirtamir2","alias":"nirtamir2","url":"https://github.com/nirtamir2","imageURL":"https://github.com/nirtamir2.png","key":"nirtamir2","page":null},{"name":"phwt.smwt","alias":"phwt","url":"https://github.com/phwt","imageURL":"https://github.com/phwt.png","key":"phwt","page":null},{"name":"Pedro Queiroz","alias":"pmqueiroz","url":"https://github.com/pmqueiroz","imageURL":"https://github.com/pmqueiroz.png","key":"pmqueiroz","page":null},{"name":"Pranab Das","alias":"pranabdas","url":"https://github.com/pranabdas","imageURL":"https://github.com/pranabdas.png","key":"pranabdas","page":null},{"name":"PsychTech","alias":"PsychTechApS","url":"https://github.com/PsychTechApS","imageURL":"https://github.com/PsychTechApS.png","key":"PsychTechApS","page":null},{"name":"Sam Zhou","alias":"SamChou19815","url":"https://github.com/SamChou19815","imageURL":"https://github.com/SamChou19815.png","key":"SamChou19815","page":null},{"name":"silva-nick","alias":"silva-nick","url":"https://github.com/silva-nick","imageURL":"https://github.com/silva-nick.png","key":"silva-nick","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"mg","alias":"tiny-dancer","url":"https://github.com/tiny-dancer","imageURL":"https://github.com/tiny-dancer.png","key":"tiny-dancer","page":null},{"name":"Lucas Correia","alias":"tsirlucas","url":"https://github.com/tsirlucas","imageURL":"https://github.com/tsirlucas.png","key":"tsirlucas","page":null},{"name":"Fardeen Panjwani","alias":"wise-introvert","url":"https://github.com/wise-introvert","imageURL":"https://github.com/wise-introvert.png","key":"wise-introvert","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2021-06-18T20:00","authors":["antonygibbs","ArtFlag","besemuna","Christopher-Hsieh","dabeeeenster","e271828-","fgatti675","HunteRoi","jmazin","Joelpo","jonbarker68","Josh-Cena","l0u1sg","lex111","limkinZero","liorheber","louistiti","Massibian","nam-hle","Neilblaze","nirtamir2","phwt","pmqueiroz","pranabdas","PsychTechApS","SamChou19815","silva-nick","slorber","tiny-dancer","tsirlucas","wise-introvert"]},"unlisted":false,"prevItem":{"title":"2.0.0-beta.2","permalink":"/changelog/2.0.0-beta.2"},"nextItem":{"title":"2.0.0-beta.0","permalink":"/changelog/2.0.0-beta.0"},"listPageLink":"/changelog/page/3"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-plugin-content-docs`\\n - [#4982](https://github.com/facebook/docusaurus/pull/4982) feat(v2): add docs pagination_label frontmatter ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#4949](https://github.com/facebook/docusaurus/pull/4949) feat(v2): add icon to external navbar links ([@lex111](https://github.com/lex111))\\n - [#4939](https://github.com/facebook/docusaurus/pull/4939) feat(v2): theme default translations Bengali ([@Neilblaze](https://github.com/Neilblaze))\\n - [#4811](https://github.com/facebook/docusaurus/pull/4811) feat(v2): Add hebrew translations ([@slorber](https://github.com/slorber))\\n - [#4798](https://github.com/facebook/docusaurus/pull/4798) feat(v2): add theme Danish translation ([@PsychTechApS](https://github.com/PsychTechApS))\\n- `docusaurus-init`\\n - [#4968](https://github.com/facebook/docusaurus/pull/4968) feat(v2): add code block theming in init template ([@Josh-Cena](https://github.com/Josh-Cena))\\n- `docusaurus-theme-classic`, `docusaurus-types`, `docusaurus`\\n - [#4908](https://github.com/facebook/docusaurus/pull/4908) feat(v2): add trailingSlash config option ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`\\n - [#4796](https://github.com/facebook/docusaurus/pull/4796) feat(v2): exhaustive docs frontmatter schema ([@nam-hle](https://github.com/nam-hle))\\n- `docusaurus-types`, `docusaurus`\\n - [#4618](https://github.com/facebook/docusaurus/pull/4618) feat(v2): allow config plugins as functions or [function,options] ([@besemuna](https://github.com/besemuna))\\n- `docusaurus-plugin-content-blog`, `docusaurus-utils-validation`\\n - [#4759](https://github.com/facebook/docusaurus/pull/4759) feat(v2): exhaustive BlogPostFrontMatter schema validation ([@nam-hle](https://github.com/nam-hle))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`\\n - [#5001](https://github.com/facebook/docusaurus/pull/5001) chore(v2): update Infima to alpha 26 ([@lex111](https://github.com/lex111))\\n - [#4986](https://github.com/facebook/docusaurus/pull/4986) fix(v2): fix UX for docsVersionDropdown on mobile for single version ([@slorber](https://github.com/slorber))\\n - [#4980](https://github.com/facebook/docusaurus/pull/4980) fix(v2): make proper data type for prependBaseUrlToHref field ([@lex111](https://github.com/lex111))\\n - [#4943](https://github.com/facebook/docusaurus/pull/4943) fix(v2): improve accessibility of code blocks ([@lex111](https://github.com/lex111))\\n - [#4917](https://github.com/facebook/docusaurus/pull/4917) fix(v2): tidy up Markdown page layout ([@lex111](https://github.com/lex111))\\n - [#4906](https://github.com/facebook/docusaurus/pull/4906) fix(v2): fix minor a11y issues ([@lex111](https://github.com/lex111))\\n - [#4900](https://github.com/facebook/docusaurus/pull/4900) fix(v2): adjust margin after content title ([@lex111](https://github.com/lex111))\\n - [#4855](https://github.com/facebook/docusaurus/pull/4855) chore(v2): update infima to alpha 24 ([@lex111](https://github.com/lex111))\\n - [#4819](https://github.com/facebook/docusaurus/pull/4819) fix(v2): Amend Hebrew translations ([@liorheber](https://github.com/liorheber))\\n - [#4815](https://github.com/facebook/docusaurus/pull/4815) fix(v2): Fix Hebrew translations ([@nirtamir2](https://github.com/nirtamir2))\\n - [#4792](https://github.com/facebook/docusaurus/pull/4792) fix(v2): fix minor a11y issue with headings ([@lex111](https://github.com/lex111))\\n - [#4793](https://github.com/facebook/docusaurus/pull/4793) fix(v2): unbreak enhanced width of doc item wrapper ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus-utils-common`\\n - [#5000](https://github.com/facebook/docusaurus/pull/5000) fix(v2): fix theme array deduplication bug ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-utils-common`, `docusaurus-utils`, `docusaurus`\\n - [#4988](https://github.com/facebook/docusaurus/pull/4988) fix(v2): redirect plugin should use siteConfig.trailingSlash ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`\\n - [#4983](https://github.com/facebook/docusaurus/pull/4983) fix(v2): always use UTC when dealing with blog dates ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#4962](https://github.com/facebook/docusaurus/pull/4962) fix(v2): respect base url in RSS feeds ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#4985](https://github.com/facebook/docusaurus/pull/4985) fix(v2): navbar doc item fallback: search doc in lastVersion ([@slorber](https://github.com/slorber))\\n- `docusaurus-remark-plugin-npm2yarn`\\n - [#4964](https://github.com/facebook/docusaurus/pull/4964) fix(v2): avoid duplicated imports in npm2yarn plugin ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-docs`\\n - [#4970](https://github.com/facebook/docusaurus/pull/4970) fix(v2): sidebar_label should be used to compute next/previous button labels ([@slorber](https://github.com/slorber))\\n - [#4861](https://github.com/facebook/docusaurus/pull/4861) fix(v2): allow relative sidebar path resolution in docs:version command ([@lex111](https://github.com/lex111))\\n - [#4859](https://github.com/facebook/docusaurus/pull/4859) fix(v2): use frontmatter title at first for paginated links ([@lex111](https://github.com/lex111))\\n - [#4775](https://github.com/facebook/docusaurus/pull/4775) fix(v2): improve dx sidebar config, ability to have no sidebars file ([@nam-hle](https://github.com/nam-hle))\\n- `docusaurus-plugin-sitemap`, `docusaurus-utils-common`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`\\n - [#4950](https://github.com/facebook/docusaurus/pull/4950) fix(v2): sitemap plugin should handle siteConfig.trailingSlash automatically ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#4924](https://github.com/facebook/docusaurus/pull/4924) fix(v2): respect baseUrl in serving command ([@lex111](https://github.com/lex111))\\n - [#4935](https://github.com/facebook/docusaurus/pull/4935) fix(v2): render children in BrowserOnly after client is ready ([@lex111](https://github.com/lex111))\\n - [#4894](https://github.com/facebook/docusaurus/pull/4894) fix(v2): escape HTML entities in user tags attributes ([@lex111](https://github.com/lex111))\\n - [#4789](https://github.com/facebook/docusaurus/pull/4789) fix(v2): transpile libs with too recent syntax with babel ([@slorber](https://github.com/slorber))\\n - [#4784](https://github.com/facebook/docusaurus/pull/4784) fix(v2): update notifier should never suggest to downgrade ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`, `docusaurus-utils`\\n - [#4882](https://github.com/facebook/docusaurus/pull/4882) fix(v2): fix contentTitle issues when markdown h1 title contains code blocks ([@slorber](https://github.com/slorber))\\n- `docusaurus-utils`\\n - [#4862](https://github.com/facebook/docusaurus/pull/4862) fix(v2): remove Markdown heading id from excerpt ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#4871](https://github.com/facebook/docusaurus/pull/4871) fix(v2): unbreak adding of custom HTML metadatas ([@lex111](https://github.com/lex111))\\n - [#4797](https://github.com/facebook/docusaurus/pull/4797) fix(v2): do not focus on skip link if page refreshed ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`\\n - [#4856](https://github.com/facebook/docusaurus/pull/4856) fix(v2): adjust padding when custom search box location ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`\\n - [#4830](https://github.com/facebook/docusaurus/pull/4830) fix(v2): pin prism-react-renderer version to 1.1.1 ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-ideal-image`, `lqip-loader`\\n - [#4806](https://github.com/facebook/docusaurus/pull/4806) chore(v2): update sharp to 0.28.2 ([@lex111](https://github.com/lex111))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#4995](https://github.com/facebook/docusaurus/pull/4995) refactor(v2): reduce top padding in doc content container ([@lex111](https://github.com/lex111))\\n - [#4918](https://github.com/facebook/docusaurus/pull/4918) refactor(v2): readjust footer of blog item ([@lex111](https://github.com/lex111))\\n - [#4959](https://github.com/facebook/docusaurus/pull/4959) refactor(v2): minor cleanups ([@lex111](https://github.com/lex111))\\n - [#4945](https://github.com/facebook/docusaurus/pull/4945) refactor(v2): remove extra padding from doc item container ([@lex111](https://github.com/lex111))\\n - [#4940](https://github.com/facebook/docusaurus/pull/4940) refactor(v2): improve semantic doc sidebar markup ([@lex111](https://github.com/lex111))\\n - [#4961](https://github.com/facebook/docusaurus/pull/4961) refactor(v2): improve semantic blog sidebar markup ([@lex111](https://github.com/lex111))\\n - [#4903](https://github.com/facebook/docusaurus/pull/4903) refactor(v2): make doc item layout more semantic ([@lex111](https://github.com/lex111))\\n - [#4877](https://github.com/facebook/docusaurus/pull/4877) refactor(v2): reduce vertical space in doc content container ([@lex111](https://github.com/lex111))\\n - [#4914](https://github.com/facebook/docusaurus/pull/4914) refactor(v2): use SVG for external link icon ([@lex111](https://github.com/lex111))\\n - [#4916](https://github.com/facebook/docusaurus/pull/4916) refactor(v2): replace strong with b in UI components ([@lex111](https://github.com/lex111))\\n - [#4926](https://github.com/facebook/docusaurus/pull/4926) refactor(v2): hide decorative SVGs from screen readers ([@lex111](https://github.com/lex111))\\n - [#4865](https://github.com/facebook/docusaurus/pull/4865) refactor(v2): make little better doc update block UI ([@lex111](https://github.com/lex111))\\n - [#4795](https://github.com/facebook/docusaurus/pull/4795) refactor(v2): remove transition on body element ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`\\n - [#4989](https://github.com/facebook/docusaurus/pull/4989) refactor(v2): blog/docs: add more context in error messages ([@slorber](https://github.com/slorber))\\n- `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-sitemap`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`\\n - [#4979](https://github.com/facebook/docusaurus/pull/4979) refactor(v2): cleanup console output ([@lex111](https://github.com/lex111))\\n- `docusaurus-utils-validation`, `docusaurus`\\n - [#4977](https://github.com/facebook/docusaurus/pull/4977) polish(v2): url-subpath config validation warning ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`\\n - [#4969](https://github.com/facebook/docusaurus/pull/4969) refactor(v2): include path in error about non-existent ids ([@lex111](https://github.com/lex111))\\n - [#4863](https://github.com/facebook/docusaurus/pull/4863) refactor(v2): remove sidebar_label filed from doc metadata file ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus`\\n - [#4907](https://github.com/facebook/docusaurus/pull/4907) refactor(v2): remove type attribute from link and script tags ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-search-algolia`\\n - [#4919](https://github.com/facebook/docusaurus/pull/4919) refactor(v2): improve markup and styling on search page ([@lex111](https://github.com/lex111))\\n - [#4867](https://github.com/facebook/docusaurus/pull/4867) chore(v2): update @docsearch/react ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-blog`\\n - [#4905](https://github.com/facebook/docusaurus/pull/4905) refactor(v2): do not generate RSS files for empty feed ([@lex111](https://github.com/lex111))\\n - [#4860](https://github.com/facebook/docusaurus/pull/4860) refactor(v2): use aliased path for blog list sidebar file ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#4870](https://github.com/facebook/docusaurus/pull/4870) refactor(v2): add exception handling if external command is fails ([@lex111](https://github.com/lex111))\\n - [#4875](https://github.com/facebook/docusaurus/pull/4875) refactor(v2): make even better SSR error notify and add tip ([@lex111](https://github.com/lex111))\\n - [#4866](https://github.com/facebook/docusaurus/pull/4866) refactor(v2): output URL to console only if it has changed ([@lex111](https://github.com/lex111))\\n- `docusaurus-utils`\\n - [#4814](https://github.com/facebook/docusaurus/pull/4814) refactor(v2): purify normalizeUrl ([@nam-hle](https://github.com/nam-hle))\\n\\n## :memo: Documentation\\n\\n- Other\\n - [#4987](https://github.com/facebook/docusaurus/pull/4987) docs(v2): document canary releases ([@slorber](https://github.com/slorber))\\n - [#4981](https://github.com/facebook/docusaurus/pull/4981) docs(v2): minor tweaks ([@lex111](https://github.com/lex111))\\n - [#4976](https://github.com/facebook/docusaurus/pull/4976) docs(v2): mention to install the algolia package in search doc ([@slorber](https://github.com/slorber))\\n - [#4953](https://github.com/facebook/docusaurus/pull/4953) docs(v2): add Flagsmith to showcase ([@dabeeeenster](https://github.com/dabeeeenster))\\n - [#4942](https://github.com/facebook/docusaurus/pull/4942) docs(v2): add info about `DefaultValue` prop in `Tabs` ([@ArtFlag](https://github.com/ArtFlag))\\n - [#4898](https://github.com/facebook/docusaurus/pull/4898) docs(v2): add ClarityChallenge to showcase ([@jonbarker68](https://github.com/jonbarker68))\\n - [#4896](https://github.com/facebook/docusaurus/pull/4896) docs(v2): fix incorrect link to plugin-ideal-image ([@phwt](https://github.com/phwt))\\n - [#4893](https://github.com/facebook/docusaurus/pull/4893) docs(v2): presets: fix typo in bootstrap preset ([@silva-nick](https://github.com/silva-nick))\\n - [#4887](https://github.com/facebook/docusaurus/pull/4887) docs(v2): Add Aide Jeune website to Docusaurus site showcase ([@l0u1sg](https://github.com/l0u1sg))\\n - [#4821](https://github.com/facebook/docusaurus/pull/4821) docs(v2): New doc page for math equations ([@pranabdas](https://github.com/pranabdas))\\n - [#4885](https://github.com/facebook/docusaurus/pull/4885) docs(v2): v2 migration guide: mention Algolia config update ([@slorber](https://github.com/slorber))\\n - [#4876](https://github.com/facebook/docusaurus/pull/4876) docs(v2): update steps in the github-actions section ([@wise-introvert](https://github.com/wise-introvert))\\n - [#4880](https://github.com/facebook/docusaurus/pull/4880) docs(v2): grammar typo in migration-overview.md ([@jmazin](https://github.com/jmazin))\\n - [#4879](https://github.com/facebook/docusaurus/pull/4879) docs(v2): Added FireCMS to the showcase ([@fgatti675](https://github.com/fgatti675))\\n - [#4849](https://github.com/facebook/docusaurus/pull/4849) docs(v2): fix Java syntax highlight in website ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#4818](https://github.com/facebook/docusaurus/pull/4818) docs(v2): add mr-pdf to resources ([@antonygibbs](https://github.com/antonygibbs))\\n - [#4835](https://github.com/facebook/docusaurus/pull/4835) docs(v2): fix grammar typo on Creating pages ([@Christopher-Hsieh](https://github.com/Christopher-Hsieh))\\n - [#4837](https://github.com/facebook/docusaurus/pull/4837) docs(v2): fix missing closing bracket ([@pmqueiroz](https://github.com/pmqueiroz))\\n - [#4820](https://github.com/facebook/docusaurus/pull/4820) docs(v2): Fix typo in doc: sidebar.md ([@pranabdas](https://github.com/pranabdas))\\n - [#4813](https://github.com/facebook/docusaurus/pull/4813) docs(v2): fix css snipped with missing color ([@slorber](https://github.com/slorber))\\n - [#4803](https://github.com/facebook/docusaurus/pull/4803) docs(v2): Add i18n tag and fix typo ([@HunteRoi](https://github.com/HunteRoi))\\n - [#4786](https://github.com/facebook/docusaurus/pull/4786) docs(v2): Add tinaeldevresse.eu to Docusaurus\' gallery ([@HunteRoi](https://github.com/HunteRoi))\\n - [#4780](https://github.com/facebook/docusaurus/pull/4780) docs(v2): remove docs for alpha 71 + 72 ([@slorber](https://github.com/slorber))\\n - [#4779](https://github.com/facebook/docusaurus/pull/4779) docs(v2): beta blog post edits ([@slorber](https://github.com/slorber))\\n- `docusaurus-init`\\n - [#4973](https://github.com/facebook/docusaurus/pull/4973) docs(v2): replace `diff` codeblocks with line highlight ([@Josh-Cena](https://github.com/Josh-Cena))\\n - [#4756](https://github.com/facebook/docusaurus/pull/4756) docs(v2): Docusaurus 2 beta blog post ([@slorber](https://github.com/slorber))\\n\\n## :house: Internal\\n\\n- Other\\n - [#4994](https://github.com/facebook/docusaurus/pull/4994) misc: more issue template improvements ([@slorber](https://github.com/slorber))\\n - [#4951](https://github.com/facebook/docusaurus/pull/4951) misc: disable google-gtag plugin in Netlify deploys ([@lex111](https://github.com/lex111))\\n - [#4901](https://github.com/facebook/docusaurus/pull/4901) misc: optimize showcase images ([@lex111](https://github.com/lex111))\\n - [#4897](https://github.com/facebook/docusaurus/pull/4897) chore: fail CI if yarn.lock is modified on install ([@slorber](https://github.com/slorber))\\n - [#4858](https://github.com/facebook/docusaurus/pull/4858) chore(v2): add external link to community sidebar ([@lex111](https://github.com/lex111))\\n - [#4889](https://github.com/facebook/docusaurus/pull/4889) misc: issue template config typo ([@slorber](https://github.com/slorber))\\n - [#4886](https://github.com/facebook/docusaurus/pull/4886) misc: add github issue template config ([@slorber](https://github.com/slorber))\\n - [#4878](https://github.com/facebook/docusaurus/pull/4878) misc: improve bug report issue template ([@lex111](https://github.com/lex111))\\n - [#4791](https://github.com/facebook/docusaurus/pull/4791) chore: fix canary version name ([@slorber](https://github.com/slorber))\\n - [#4777](https://github.com/facebook/docusaurus/pull/4777) chore: regenerate examples on 2.0.0-beta.0 ([@slorber](https://github.com/slorber))\\n- `docusaurus-init`, `docusaurus-migrate`, `docusaurus`\\n - [#4944](https://github.com/facebook/docusaurus/pull/4944) chore: lockfile cleanup ([@slorber](https://github.com/slorber))\\n- `docusaurus-1.x`, `docusaurus-init-1.x`\\n - [#4902](https://github.com/facebook/docusaurus/pull/4902) chore: remove docusaurus v1 from master branch (moved to docusaurus-v1 branch) ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-ideal-image`\\n - [#4915](https://github.com/facebook/docusaurus/pull/4915) chore(v2): bump react-waypoint from 9.0.2 to 10.1.0 ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`\\n - [#4834](https://github.com/facebook/docusaurus/pull/4834) chore(v2): unlock prism-react-renderer version ([@lex111](https://github.com/lex111))\\n- `docusaurus-cssnano-preset`, `docusaurus`\\n - [#4833](https://github.com/facebook/docusaurus/pull/4833) chore(v2): bump cssnano packages ([@lex111](https://github.com/lex111))\\n- `docusaurus-cssnano-preset`, `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-debug`, `docusaurus-plugin-sitemap`, `docusaurus-theme-classic`, `docusaurus-types`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`\\n - [#4816](https://github.com/facebook/docusaurus/pull/4816) chore(v2): upgrade dependencies ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#4790](https://github.com/facebook/docusaurus/pull/4790) chore(v2): TypeScript, use isolatedModules ([@slorber](https://github.com/slorber))\\n\\n## Committers: 31\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Arthur ([@ArtFlag](https://github.com/ArtFlag))\\n- Ben Rometsch ([@dabeeeenster](https://github.com/dabeeeenster))\\n- Christopher Hsieh ([@Christopher-Hsieh](https://github.com/Christopher-Hsieh))\\n- Fardeen Panjwani ([@wise-introvert](https://github.com/wise-introvert))\\n- Joel ([@Joelpo](https://github.com/Joelpo))\\n- Jon Barker ([@jonbarker68](https://github.com/jonbarker68))\\n- Jonathan Mazin ([@jmazin](https://github.com/jmazin))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Lior Heber ([@liorheber](https://github.com/liorheber))\\n- Louis Gallet ([@l0u1sg](https://github.com/l0u1sg))\\n- Louis Grenard ([@louistiti](https://github.com/louistiti))\\n- Lucas Correia ([@tsirlucas](https://github.com/tsirlucas))\\n- Nam Hoang Le ([@nam-hle](https://github.com/nam-hle))\\n- Pablo Vidal ([@limkinZero](https://github.com/limkinZero))\\n- Pedro Queiroz ([@pmqueiroz](https://github.com/pmqueiroz))\\n- Pranab Das ([@pranabdas](https://github.com/pranabdas))\\n- Pratyay Banerjee ([@Neilblaze](https://github.com/Neilblaze))\\n- PsychTech ([@PsychTechApS](https://github.com/PsychTechApS))\\n- Sam Zhou ([@SamChou19815](https://github.com/SamChou19815))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Tina\xebl Devresse ([@HunteRoi](https://github.com/HunteRoi))\\n- [@Massibian](https://github.com/Massibian)\\n- [@antonygibbs](https://github.com/antonygibbs)\\n- [@besemuna](https://github.com/besemuna)\\n- [@e271828-](https://github.com/e271828-)\\n- [@fgatti675](https://github.com/fgatti675)\\n- [@nirtamir2](https://github.com/nirtamir2)\\n- [@silva-nick](https://github.com/silva-nick)\\n- mg ([@tiny-dancer](https://github.com/tiny-dancer))\\n- phwt.smwt ([@phwt](https://github.com/phwt))"},{"id":"/2.0.0-beta.0","metadata":{"permalink":"/changelog/2.0.0-beta.0","source":"@site/changelog/source/2.0.0-beta.0.md","title":"2.0.0-beta.0","description":"Read the 2.0.0 beta blog post!","date":"2021-05-12T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Chris Owen","alias":"ChrisOwen101","url":"https://github.com/ChrisOwen101","imageURL":"https://github.com/ChrisOwen101.png","key":"ChrisOwen101","page":null},{"name":"Evan","alias":"DigiPie","url":"https://github.com/DigiPie","imageURL":"https://github.com/DigiPie.png","key":"DigiPie","page":null},{"name":"Forresst","alias":"forresst","url":"https://github.com/forresst","imageURL":"https://github.com/forresst.png","key":"forresst","page":null},{"name":"Sergio Rafael Gianazza","alias":"gianu","url":"https://github.com/gianu","imageURL":"https://github.com/gianu.png","key":"gianu","page":null},{"name":"Joel Hans","alias":"joelhans","url":"https://github.com/joelhans","imageURL":"https://github.com/joelhans.png","key":"joelhans","page":null},{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},{"name":"\u041A\u043E\u0441\u0442\u044F \u0422\u0440\u0435\u0442\u044F\u043A","alias":"KostyaTretyak","url":"https://github.com/KostyaTretyak","imageURL":"https://github.com/KostyaTretyak.png","key":"KostyaTretyak","page":null},{"name":"Nam Hoang Le","alias":"nam-hle","url":"https://github.com/nam-hle","imageURL":"https://github.com/nam-hle.png","key":"nam-hle","page":null},{"name":"Rodrigo Moreno","alias":"rodmoreno","url":"https://github.com/rodmoreno","imageURL":"https://github.com/rodmoreno.png","key":"rodmoreno","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Ian Hornik","alias":"yiliansource","url":"https://github.com/yiliansource","imageURL":"https://github.com/yiliansource.png","key":"yiliansource","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2021-05-12T20:00","authors":["ChrisOwen101","DigiPie","forresst","gianu","joelhans","Josh-Cena","KostyaTretyak","nam-hle","rodmoreno","slorber","yiliansource"]},"unlisted":false,"prevItem":{"title":"2.0.0-beta.1","permalink":"/changelog/2.0.0-beta.1"},"nextItem":{"title":"2.0.0-alpha.75","permalink":"/changelog/2.0.0-alpha.75"},"listPageLink":"/changelog/page/3"},"content":"\x3c!-- truncate --\x3e\\n\\nRead the [2.0.0 beta blog post](https://docusaurus.io/blog/2021/05/12/announcing-docusaurus-two-beta)!\\n\\n**Note**: this first beta release does not contain any new major feature. We are removing the alpha label, as we are confident Docusaurus 2 is stable enough.\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-theme-classic`\\n - [#4762](https://github.com/facebook/docusaurus/pull/4762) feat(v2): add es translations for docusaurus-theme-classic ([@rodmoreno](https://github.com/rodmoreno))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`\\n - [#4750](https://github.com/facebook/docusaurus/pull/4750) fix(v2): improve french translation for theme-classic ([@forresst](https://github.com/forresst))\\n- `docusaurus-mdx-loader`, `docusaurus-utils`\\n - [#4736](https://github.com/facebook/docusaurus/pull/4736) fix(v2): fix encoding of markdown image/file inline file-loaders ([@slorber](https://github.com/slorber))\\n- `docusaurus-utils`\\n - [#4735](https://github.com/facebook/docusaurus/pull/4735) fix(v2): markdown title parser should ignore all forms of MDX import statements ([@nam-hle](https://github.com/nam-hle))\\n - [#4729](https://github.com/facebook/docusaurus/pull/4729) fix(v2): optimize markdown parser regex (Closes [#4726](https://github.com/facebook/docusaurus/issues/4726)) ([@nam-hle](https://github.com/nam-hle))\\n\\n## :memo: Documentation\\n\\n- [#4770](https://github.com/facebook/docusaurus/pull/4770) docs(v2): Improve intro doc ([@slorber](https://github.com/slorber))\\n- [#4773](https://github.com/facebook/docusaurus/pull/4773) docs(v2): fix i18n doc: bad i18n page plugin path in code sample ([@KostyaTretyak](https://github.com/KostyaTretyak))\\n- [#4758](https://github.com/facebook/docusaurus/pull/4758) docs(v2): add browsers support documentation ([@Josh-Cena](https://github.com/Josh-Cena))\\n- [#4757](https://github.com/facebook/docusaurus/pull/4757) docs(v2): Add Netdata to showcase ([@joelhans](https://github.com/joelhans))\\n- [#4754](https://github.com/facebook/docusaurus/pull/4754) docs(v2): fix Jest showcase screenshot ([@slorber](https://github.com/slorber))\\n- [#4747](https://github.com/facebook/docusaurus/pull/4747) docs(v2): Update showcase page ([@slorber](https://github.com/slorber))\\n- [#4734](https://github.com/facebook/docusaurus/pull/4734) docs(v2): Added MediaMachine.io to showcase ([@gianu](https://github.com/gianu))\\n- [#4731](https://github.com/facebook/docusaurus/pull/4731) docs(v2): add CodeYourFuture to showcase ([@ChrisOwen101](https://github.com/ChrisOwen101))\\n- [#4703](https://github.com/facebook/docusaurus/pull/4703) docs(v2): specify google-analytics and gtag plugins ([@yiliansource](https://github.com/yiliansource))\\n- [#4727](https://github.com/facebook/docusaurus/pull/4727) docs(v2): fix doc lint ([@slorber](https://github.com/slorber))\\n- [#4725](https://github.com/facebook/docusaurus/pull/4725) docs(v2): emphasize subset of markdown supported languages ([@Josh-Cena](https://github.com/Josh-Cena))\\n- [#4711](https://github.com/facebook/docusaurus/pull/4711) docs(v2): showcase personal site evantay ([@DigiPie](https://github.com/DigiPie))\\n\\n## :house: Internal\\n\\n- [#4746](https://github.com/facebook/docusaurus/pull/4746) chore(v2): attempt to fix crowdin dl again ([@slorber](https://github.com/slorber))\\n- [#4743](https://github.com/facebook/docusaurus/pull/4743) chore(v2): fix prod deployment due to bad image path ([@slorber](https://github.com/slorber))\\n- [#4740](https://github.com/facebook/docusaurus/pull/4740) chore(v2): delay i18n-staging deployment to avoid Crowdin 409 errors ([@slorber](https://github.com/slorber))\\n- [#4739](https://github.com/facebook/docusaurus/pull/4739) chore(v2): Fix Crowdin 409 issues in CI ([@slorber](https://github.com/slorber))\\n\\n## Committers: 11\\n\\n- Chris Owen ([@ChrisOwen101](https://github.com/ChrisOwen101))\\n- Evan ([@DigiPie](https://github.com/DigiPie))\\n- Forresst ([@forresst](https://github.com/forresst))\\n- Ian Hornik ([@yiliansource](https://github.com/yiliansource))\\n- Joel Hans ([@joelhans](https://github.com/joelhans))\\n- Joshua Chen ([@Josh-Cena](https://github.com/Josh-Cena))\\n- Nam Hoang Le ([@nam-hle](https://github.com/nam-hle))\\n- Rodrigo Moreno ([@rodmoreno](https://github.com/rodmoreno))\\n- Sergio Rafael Gianazza ([@gianu](https://github.com/gianu))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- \u041A\u043E\u0441\u0442\u044F \u0422\u0440\u0435\u0442\u044F\u043A ([@KostyaTretyak](https://github.com/KostyaTretyak))"},{"id":"/2.0.0-alpha.75","metadata":{"permalink":"/changelog/2.0.0-alpha.75","source":"@site/changelog/source/2.0.0-alpha.75.md","title":"2.0.0-alpha.75","description":"Breaking Change","date":"2021-04-30T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Geoffroy Empain","alias":"gempain","url":"https://github.com/gempain","imageURL":"https://github.com/gempain.png","key":"gempain","page":null},{"name":"Reece Dunham","alias":"RDIL","url":"https://github.com/RDIL","imageURL":"https://github.com/RDIL.png","key":"RDIL","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Tommy Chen","alias":"tommy351","url":"https://github.com/tommy351","imageURL":"https://github.com/tommy351.png","key":"tommy351","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2021-04-30T20:00","authors":["gempain","RDIL","slorber","tommy351"]},"unlisted":false,"prevItem":{"title":"2.0.0-beta.0","permalink":"/changelog/2.0.0-beta.0"},"nextItem":{"title":"2.0.0-alpha.74","permalink":"/changelog/2.0.0-alpha.74"},"listPageLink":"/changelog/page/3"},"content":"\x3c!-- truncate --\x3e\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-cssnano-preset`, `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-types`, `docusaurus`, `lqip-loader`\\n - [#4089](https://github.com/facebook/docusaurus/pull/4089) feat(v2): Webpack 5, PostCSS 8 ([@RDIL](https://github.com/RDIL))\\n\\n## :memo: Documentation\\n\\n- [#4704](https://github.com/facebook/docusaurus/pull/4704) docs(v2): showcase meli ([@gempain](https://github.com/gempain))\\n- [#4699](https://github.com/facebook/docusaurus/pull/4699) docs(v2): Add Kosko to showcase ([@tommy351](https://github.com/tommy351))\\n\\n## Committers: 4\\n\\n- Geoffroy Empain ([@gempain](https://github.com/gempain))\\n- Reece Dunham ([@RDIL](https://github.com/RDIL))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Tommy Chen ([@tommy351](https://github.com/tommy351))"},{"id":"/2.0.0-alpha.74","metadata":{"permalink":"/changelog/2.0.0-alpha.74","source":"@site/changelog/source/2.0.0-alpha.74.md","title":"2.0.0-alpha.74","description":"New Feature","date":"2021-04-27T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"alena-ko","alias":"alena-ko","url":"https://github.com/alena-ko","imageURL":"https://github.com/alena-ko.png","key":"alena-ko","page":null},{"name":"Arnaud Jeannin","alias":"arnaudjnn","url":"https://github.com/arnaudjnn","imageURL":"https://github.com/arnaudjnn.png","key":"arnaudjnn","page":null},{"name":"DOLLE","alias":"JeremyDolle","url":"https://github.com/JeremyDolle","imageURL":"https://github.com/JeremyDolle.png","key":"JeremyDolle","page":null},{"name":"John Reilly","alias":"johnnyreilly","url":"https://github.com/johnnyreilly","imageURL":"https://github.com/johnnyreilly.png","key":"johnnyreilly","page":null},{"name":"kazk","alias":"kazk","url":"https://github.com/kazk","imageURL":"https://github.com/kazk.png","key":"kazk","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Lisa Chandra","alias":"lisa761","url":"https://github.com/lisa761","imageURL":"https://github.com/lisa761.png","key":"lisa761","page":null},{"name":"Luis Medina Huerta","alias":"luism3861","url":"https://github.com/luism3861","imageURL":"https://github.com/luism3861.png","key":"luism3861","page":null},{"name":"MisterFISHUP","alias":"MisterFISHUP","url":"https://github.com/MisterFISHUP","imageURL":"https://github.com/MisterFISHUP.png","key":"MisterFISHUP","page":null},{"name":"Tommy","alias":"react-learner","url":"https://github.com/react-learner","imageURL":"https://github.com/react-learner.png","key":"react-learner","page":null},{"name":"Sam Zhou","alias":"SamChou19815","url":"https://github.com/SamChou19815","imageURL":"https://github.com/SamChou19815.png","key":"SamChou19815","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2021-04-27T20:00","authors":["alena-ko","arnaudjnn","JeremyDolle","johnnyreilly","kazk","lex111","lisa761","luism3861","MisterFISHUP","react-learner","SamChou19815","slorber"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.75","permalink":"/changelog/2.0.0-alpha.75"},"nextItem":{"title":"2.0.0-alpha.73","permalink":"/changelog/2.0.0-alpha.73"},"listPageLink":"/changelog/page/3"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- Other\\n - [#4515](https://github.com/facebook/docusaurus/pull/4515) feat(v2): add tag filters to showcase page ([@lisa761](https://github.com/lisa761))\\n- `docusaurus-plugin-content-docs`\\n - [#4658](https://github.com/facebook/docusaurus/pull/4658) feat(v2): allow user to customize/enhance the default sidebar items generator ([@slorber](https://github.com/slorber))\\n - [#4655](https://github.com/facebook/docusaurus/pull/4655) feat(v2): docs, make numberPrefixParser configurable, better defaults, minor breaking-changes ([@slorber](https://github.com/slorber))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-utils`, `docusaurus`\\n - [#4688](https://github.com/facebook/docusaurus/pull/4688) fix(v2): fix title logic (meta vs heading) + ignore fixed anchor id syntax ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#4689](https://github.com/facebook/docusaurus/pull/4689) chore(v2): update infima to alpha 23 ([@slorber](https://github.com/slorber))\\n - [#4667](https://github.com/facebook/docusaurus/pull/4667) fix(v2): Unbreak blog post title by handling title fallback in `LayoutHead` ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-plugin-content-docs`\\n - [#4687](https://github.com/facebook/docusaurus/pull/4687) fix(v2): accept empty/null custom_edit_url docs frontmatter for retrocompat ([@slorber](https://github.com/slorber))\\n - [#4651](https://github.com/facebook/docusaurus/pull/4651) fix(v2): sidebar autogen from subfolder should read category metadata correctly ([@slorber](https://github.com/slorber))\\n - [#4629](https://github.com/facebook/docusaurus/pull/4629) fix(v2): fix validation rejecting admonitions false ([@kazk](https://github.com/kazk))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-utils-validation`\\n - [#4654](https://github.com/facebook/docusaurus/pull/4654) fix(v2): fix too strict markdown frontmatter validation ([@johnnyreilly](https://github.com/johnnyreilly))\\n- `docusaurus-utils`\\n - [#4646](https://github.com/facebook/docusaurus/pull/4646) fix(v2): ignore imports when h1 heading parsing ([@lex111](https://github.com/lex111))\\n - [#4641](https://github.com/facebook/docusaurus/pull/4641) fix(v2): parse headings directly after h1 properly ([@lex111](https://github.com/lex111))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#4682](https://github.com/facebook/docusaurus/pull/4682) refactor(v2): align external icon on right ([@lex111](https://github.com/lex111))\\n\\n## :memo: Documentation\\n\\n- [#4496](https://github.com/facebook/docusaurus/pull/4496) docs(v2): Add Qovery to deployment doc ([@arnaudjnn](https://github.com/arnaudjnn))\\n- [#4680](https://github.com/facebook/docusaurus/pull/4680) docs(v2): Fix urls in deployment.md ([@luism3861](https://github.com/luism3861))\\n- [#4668](https://github.com/facebook/docusaurus/pull/4668) docs(v2): Add Hostman to deployment doc ([@alena-ko](https://github.com/alena-ko))\\n- [#4676](https://github.com/facebook/docusaurus/pull/4676) docs(v2): Add Daily Digest - COVID-19 IN FRANCE to showcase ([@MisterFISHUP](https://github.com/MisterFISHUP))\\n- [#4643](https://github.com/facebook/docusaurus/pull/4643) docs(v2): Fix typo in installation.md ([@react-learner](https://github.com/react-learner))\\n- [#4649](https://github.com/facebook/docusaurus/pull/4649) docs(v2): Add new showcase user ([@JeremyDolle](https://github.com/JeremyDolle))\\n\\n## :house: Internal\\n\\n- Other\\n - [#4670](https://github.com/facebook/docusaurus/pull/4670) chore: add some redirects to v1.docusaurus.io ([@slorber](https://github.com/slorber))\\n- `docusaurus-init`\\n - [#4631](https://github.com/facebook/docusaurus/pull/4631) chore(v2): update examples to use alpha73 ([@slorber](https://github.com/slorber))\\n\\n## Committers: 12\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Arnaud Jeannin ([@arnaudjnn](https://github.com/arnaudjnn))\\n- DOLLE ([@JeremyDolle](https://github.com/JeremyDolle))\\n- John Reilly ([@johnnyreilly](https://github.com/johnnyreilly))\\n- Lisa Chandra ([@lisa761](https://github.com/lisa761))\\n- Luis Medina Huerta ([@luism3861](https://github.com/luism3861))\\n- Sam Zhou ([@SamChou19815](https://github.com/SamChou19815))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Tommy ([@react-learner](https://github.com/react-learner))\\n- [@MisterFISHUP](https://github.com/MisterFISHUP)\\n- [@alena-ko](https://github.com/alena-ko)\\n- kazk ([@kazk](https://github.com/kazk))"},{"id":"/2.0.0-alpha.73","metadata":{"permalink":"/changelog/2.0.0-alpha.73","source":"@site/changelog/source/2.0.0-alpha.73.md","title":"2.0.0-alpha.73","description":"New Feature","date":"2021-04-16T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"aehrea","alias":"aehrea","url":"https://github.com/aehrea","imageURL":"https://github.com/aehrea.png","key":"aehrea","page":null},{"name":"Ajeet Singh Raina, Docker Captain, RedisLabs","alias":"ajeetraina","url":"https://github.com/ajeetraina","imageURL":"https://github.com/ajeetraina.png","key":"ajeetraina","page":null},{"name":"akepecs","alias":"akepecs","url":"https://github.com/akepecs","imageURL":"https://github.com/akepecs.png","key":"akepecs","page":null},{"name":"Anthony Bobsin","alias":"AnthonyBobsin","url":"https://github.com/AnthonyBobsin","imageURL":"https://github.com/AnthonyBobsin.png","key":"AnthonyBobsin","page":null},{"name":"Armano","alias":"armano2","url":"https://github.com/armano2","imageURL":"https://github.com/armano2.png","key":"armano2","page":null},{"name":"Artur Carvalho","alias":"arturcarvalho","url":"https://github.com/arturcarvalho","imageURL":"https://github.com/arturcarvalho.png","key":"arturcarvalho","page":null},{"name":"Dennis Thompson","alias":"atomicpages","url":"https://github.com/atomicpages","imageURL":"https://github.com/atomicpages.png","key":"atomicpages","page":null},{"name":"besemuna","alias":"besemuna","url":"https://github.com/besemuna","imageURL":"https://github.com/besemuna.png","key":"besemuna","page":null},{"name":"Guillaume Claret","alias":"clarus","url":"https://github.com/clarus","imageURL":"https://github.com/clarus.png","key":"clarus","page":null},{"name":"Arijit Kundu","alias":"covalentbond","url":"https://github.com/covalentbond","imageURL":"https://github.com/covalentbond.png","key":"covalentbond","page":null},{"name":"Dick Wyn Yong","alias":"dickwyn","url":"https://github.com/dickwyn","imageURL":"https://github.com/dickwyn.png","key":"dickwyn","page":null},{"name":"duanwilliam","alias":"duanwilliam","url":"https://github.com/duanwilliam","imageURL":"https://github.com/duanwilliam.png","key":"duanwilliam","page":null},{"name":"Forresst","alias":"forresst","url":"https://github.com/forresst","imageURL":"https://github.com/forresst.png","key":"forresst","page":null},{"name":"Foxeye-Rinx","alias":"Foxeye-Rinx","url":"https://github.com/Foxeye-Rinx","imageURL":"https://github.com/Foxeye-Rinx.png","key":"Foxeye-Rinx","page":null},{"name":"Brent Ely","alias":"gitbrent","url":"https://github.com/gitbrent","imageURL":"https://github.com/gitbrent.png","key":"gitbrent","page":null},{"name":"Marco Enrico","alias":"gumacahin","url":"https://github.com/gumacahin","imageURL":"https://github.com/gumacahin.png","key":"gumacahin","page":null},{"name":"John Knox","alias":"jknoxville","url":"https://github.com/jknoxville","imageURL":"https://github.com/jknoxville.png","key":"jknoxville","page":null},{"name":"John Reilly","alias":"johnnyreilly","url":"https://github.com/johnnyreilly","imageURL":"https://github.com/johnnyreilly.png","key":"johnnyreilly","page":null},{"name":"Chris Kanich","alias":"kaytwo","url":"https://github.com/kaytwo","imageURL":"https://github.com/kaytwo.png","key":"kaytwo","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Lisa Chandra","alias":"lisa761","url":"https://github.com/lisa761","imageURL":"https://github.com/lisa761.png","key":"lisa761","page":null},{"name":"ZhengYuan Loo","alias":"loozhengyuan","url":"https://github.com/loozhengyuan","imageURL":"https://github.com/loozhengyuan.png","key":"loozhengyuan","page":null},{"name":"Lucas Alves","alias":"lucalves","url":"https://github.com/lucalves","imageURL":"https://github.com/lucalves.png","key":"lucalves","page":null},{"name":"miku86","alias":"miku86","url":"https://github.com/miku86","imageURL":"https://github.com/miku86.png","key":"miku86","page":null},{"name":"Pedro Pi\xf1era Buend\xeda","alias":"pepibumur","url":"https://github.com/pepibumur","imageURL":"https://github.com/pepibumur.png","key":"pepibumur","page":null},{"name":"Reece Dunham","alias":"RDIL","url":"https://github.com/RDIL","imageURL":"https://github.com/RDIL.png","key":"RDIL","page":null},{"name":"Sam Zhou","alias":"SamChou19815","url":"https://github.com/SamChou19815","imageURL":"https://github.com/SamChou19815.png","key":"SamChou19815","page":null},{"name":"serut","alias":"serut","url":"https://github.com/serut","imageURL":"https://github.com/serut.png","key":"serut","page":null},{"name":"Steven Hansel","alias":"ShinteiMai","url":"https://github.com/ShinteiMai","imageURL":"https://github.com/ShinteiMai.png","key":"ShinteiMai","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Steve","alias":"steveworley","url":"https://github.com/steveworley","imageURL":"https://github.com/steveworley.png","key":"steveworley","page":null},{"name":"guoxudong","alias":"sunny0826","url":"https://github.com/sunny0826","imageURL":"https://github.com/sunny0826.png","key":"sunny0826","page":null},{"name":"Tales Porto","alias":"talesporto","url":"https://github.com/talesporto","imageURL":"https://github.com/talesporto.png","key":"talesporto","page":null},{"name":"Thiago Sciotta","alias":"thiagog3","url":"https://github.com/thiagog3","imageURL":"https://github.com/thiagog3.png","key":"thiagog3","page":null},{"name":"Tiago Ribeiro","alias":"tiago-rr","url":"https://github.com/tiago-rr","imageURL":"https://github.com/tiago-rr.png","key":"tiago-rr","page":null},{"name":"Tom Raviv","alias":"tomrav","url":"https://github.com/tomrav","imageURL":"https://github.com/tomrav.png","key":"tomrav","page":null},{"name":"Tony Narlock","alias":"tony","url":"https://github.com/tony","imageURL":"https://github.com/tony.png","key":"tony","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2021-04-16T20:00","authors":["aehrea","ajeetraina","akepecs","AnthonyBobsin","armano2","arturcarvalho","atomicpages","besemuna","clarus","covalentbond","dickwyn","duanwilliam","forresst","Foxeye-Rinx","gitbrent","gumacahin","jknoxville","johnnyreilly","kaytwo","lex111","lisa761","loozhengyuan","lucalves","miku86","pepibumur","RDIL","SamChou19815","serut","ShinteiMai","slorber","steveworley","sunny0826","talesporto","thiagog3","tiago-rr","tomrav","tony"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.74","permalink":"/changelog/2.0.0-alpha.74"},"nextItem":{"title":"2.0.0-alpha.72","permalink":"/changelog/2.0.0-alpha.72"},"listPageLink":"/changelog/page/3"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-theme-classic`\\n - [#4624](https://github.com/facebook/docusaurus/pull/4624) feat(v2): Add Filipino default translations to theme ([@gumacahin](https://github.com/gumacahin))\\n - [#4596](https://github.com/facebook/docusaurus/pull/4596) feat(v2): theme default translations hindi ([@lisa761](https://github.com/lisa761))\\n - [#4536](https://github.com/facebook/docusaurus/pull/4536) feat(v2): add pt-PT translations for docusaurus-theme-classic ([@tiago-rr](https://github.com/tiago-rr))\\n - [#4525](https://github.com/facebook/docusaurus/pull/4525) feat(v2): add Brazilian Portuguese translation for docusaurus-theme-classic ([@thiagog3](https://github.com/thiagog3))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#4511](https://github.com/facebook/docusaurus/pull/4511) feat(v2): add unique page/wrapper className to each theme pages ([@ShinteiMai](https://github.com/ShinteiMai))\\n- `docusaurus-init`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#4582](https://github.com/facebook/docusaurus/pull/4582) feat(v2): auto-generated sidebars, frontmatter-less sites ([@slorber](https://github.com/slorber))\\n- `docusaurus-types`, `docusaurus`\\n - [#4545](https://github.com/facebook/docusaurus/pull/4545) feat(v2): docusaurus deploy: ability to configure port in git url ([@talesporto](https://github.com/talesporto))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-utils`\\n - [#4590](https://github.com/facebook/docusaurus/pull/4590) feat(v2): various markdown string parsing improvements/fixes ([@slorber](https://github.com/slorber))\\n - [#4485](https://github.com/facebook/docusaurus/pull/4485) feat(v2): frontmatter-less: read first heading as title and use it in front-matter ([@armano2](https://github.com/armano2))\\n- `docusaurus-utils`\\n - [#4581](https://github.com/facebook/docusaurus/pull/4581) feat(v2): default theme translations: locale \\"pt\\" should load \\"pt-BR\\" translations ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`\\n - [#4495](https://github.com/facebook/docusaurus/pull/4495) feat(v2): include frontmatter in loadedContent doc metadatas ([@kaytwo](https://github.com/kaytwo))\\n - [#4500](https://github.com/facebook/docusaurus/pull/4500) feat(v2): provide doc sidebar_label through sidebars.js ([@besemuna](https://github.com/besemuna))\\n- `docusaurus-theme-classic`, `docusaurus-types`, `docusaurus`\\n - [#4449](https://github.com/facebook/docusaurus/pull/4449) feat(v2): infer default i18n locale config from locale code ([@slorber](https://github.com/slorber))\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#4619](https://github.com/facebook/docusaurus/pull/4619) refactor(v2): rename class main-docs-wrapper to docs-wrapper ([@slorber](https://github.com/slorber))\\n- `docusaurus-init`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#4582](https://github.com/facebook/docusaurus/pull/4582) feat(v2): auto-generated sidebars, frontmatter-less sites ([@slorber](https://github.com/slorber))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`\\n - [#4627](https://github.com/facebook/docusaurus/pull/4627) chore(v2): update Infima to alpha.22 ([@slorber](https://github.com/slorber))\\n - [#4621](https://github.com/facebook/docusaurus/pull/4621) fix(v2): center align content if no sidebar exists ([@lex111](https://github.com/lex111))\\n - [#4620](https://github.com/facebook/docusaurus/pull/4620) fix(v2): restore toggle responsive sidebar button ([@lex111](https://github.com/lex111))\\n - [#4598](https://github.com/facebook/docusaurus/pull/4598) fix(v2): render escaped HTML entities inside code properly ([@lex111](https://github.com/lex111))\\n - [#4554](https://github.com/facebook/docusaurus/pull/4554) fix: DocNavbarItem error message ([@serut](https://github.com/serut))\\n - [#4468](https://github.com/facebook/docusaurus/pull/4468) fix(v2): select correct tab when items are incorrectly ordered ([@armano2](https://github.com/armano2))\\n - [#4461](https://github.com/facebook/docusaurus/pull/4461) fix(v2): Fix i18n staging deployment due to json typo ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#4541](https://github.com/facebook/docusaurus/pull/4541) fix(v2): fix code block title parsing, support multiple metastring attributes ([@duanwilliam](https://github.com/duanwilliam))\\n - [#4600](https://github.com/facebook/docusaurus/pull/4600) fix(v2): use page title from config if not set ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-pwa`, `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#4501](https://github.com/facebook/docusaurus/pull/4501) fix(v2): fail-safe usage of browser storage (localStorage/sessionStorage) when access is denied ([@jknoxville](https://github.com/jknoxville))\\n- `docusaurus-plugin-content-docs`, `docusaurus-types`, `docusaurus`\\n - [#4593](https://github.com/facebook/docusaurus/pull/4593) fix(v2): i18n perf issue: getTranslationFile() should not load content again ([@slorber](https://github.com/slorber))\\n- Other\\n - [#4574](https://github.com/facebook/docusaurus/pull/4574) fix(v2): examples should use Node 14 by default on CodeSandbox + regen with alpha72 ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#4547](https://github.com/facebook/docusaurus/pull/4547) feat(v2) : use symbols to denote swizzle safety ([@besemuna](https://github.com/besemuna))\\n - [#4575](https://github.com/facebook/docusaurus/pull/4575) fix(v2): fix i18n isLastLocale bug preventing docusaurus from building some locales ([@slorber](https://github.com/slorber))\\n - [#4506](https://github.com/facebook/docusaurus/pull/4506) fix(v2): remove no longer used postcss-present-env from dependencies ([@armano2](https://github.com/armano2))\\n - [#4444](https://github.com/facebook/docusaurus/pull/4444) fix(v2): Fix writeHeadingIds on Windows due to non-posix paths ([@slorber](https://github.com/slorber))\\n- `docusaurus-utils`\\n - [#4507](https://github.com/facebook/docusaurus/pull/4507) fix(v2): do not warn about duplicated title for pages ([@armano2](https://github.com/armano2))\\n- `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`, `docusaurus`\\n - [#4466](https://github.com/facebook/docusaurus/pull/4466) fix(v2): i18n fixes ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-utils-validation`, `docusaurus`\\n - [#4459](https://github.com/facebook/docusaurus/pull/4459) fix(v2): Export Joi from validation-utils package ([@slorber](https://github.com/slorber))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#4626](https://github.com/facebook/docusaurus/pull/4626) refactor(v2): toggleResponsiveSidebar => more stable callback ([@slorber](https://github.com/slorber))\\n - [#4617](https://github.com/facebook/docusaurus/pull/4617) refactor(v2): simplify and optimize sidebar ([@slorber](https://github.com/slorber))\\n - [#4608](https://github.com/facebook/docusaurus/pull/4608) refactor(v2): replace react-toggle with own implementation ([@lex111](https://github.com/lex111))\\n - [#4601](https://github.com/facebook/docusaurus/pull/4601) refactor(v2): increase heading anchor offset ([@lex111](https://github.com/lex111))\\n - [#4467](https://github.com/facebook/docusaurus/pull/4467) refactor(v2): add missing types to theme-classic useTheme ([@armano2](https://github.com/armano2))\\n - [#4448](https://github.com/facebook/docusaurus/pull/4448) polish(v2): Add german translations ([@miku86](https://github.com/miku86))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#4619](https://github.com/facebook/docusaurus/pull/4619) refactor(v2): rename class main-docs-wrapper to docs-wrapper ([@slorber](https://github.com/slorber))\\n- `docusaurus-module-type-aliases`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus`\\n - [#4451](https://github.com/facebook/docusaurus/pull/4451) refactor(v2): correct client types and type aliases ([@armano2](https://github.com/armano2))\\n- `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`, `docusaurus-types`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`\\n - [#4450](https://github.com/facebook/docusaurus/pull/4450) chore(v2): Fix more linter warnings ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-migrate`, `docusaurus-module-type-aliases`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-utils`, `docusaurus`\\n - [#4442](https://github.com/facebook/docusaurus/pull/4442) chore(v2): Fix linter warnings ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-sitemap`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`\\n - [#4375](https://github.com/facebook/docusaurus/pull/4375) refactor(v2): TS config update: reduce the size of npm modules ([@RDIL](https://github.com/RDIL))\\n\\n## :memo: Documentation\\n\\n- Other\\n - [#4616](https://github.com/facebook/docusaurus/pull/4616) docs(v2): add showcase: kubevela ([@sunny0826](https://github.com/sunny0826))\\n - [#4612](https://github.com/facebook/docusaurus/pull/4612) docs(v2): Added IntelAGENT website to showcase. ([@akepecs](https://github.com/akepecs))\\n - [#4609](https://github.com/facebook/docusaurus/pull/4609) docs(v2): add clarity to tip in versioned using-themes page ([@dickwyn](https://github.com/dickwyn))\\n - [#4606](https://github.com/facebook/docusaurus/pull/4606) docs(v2): heading typo ([@arturcarvalho](https://github.com/arturcarvalho))\\n - [#4604](https://github.com/facebook/docusaurus/pull/4604) docs(v2): add clarity to tip in using-themes page ([@dickwyn](https://github.com/dickwyn))\\n - [#4602](https://github.com/facebook/docusaurus/pull/4602) docs(v2): Add \\"PptxGenJS\\" to showcase ([@gitbrent](https://github.com/gitbrent))\\n - [#4599](https://github.com/facebook/docusaurus/pull/4599) docs(v2): i18n site: enable ko + zh-CN locales ([@slorber](https://github.com/slorber))\\n - [#4595](https://github.com/facebook/docusaurus/pull/4595) docs(v2): fix typo theme-configuration.md ([@forresst](https://github.com/forresst))\\n - [#4594](https://github.com/facebook/docusaurus/pull/4594) docs(v2): Include docusaurus-protobuffet to community plugins ([@AnthonyBobsin](https://github.com/AnthonyBobsin))\\n - [#4558](https://github.com/facebook/docusaurus/pull/4558) docs(v2): fixed broken link in i18n-tutorial.md ([@covalentbond](https://github.com/covalentbond))\\n - [#4573](https://github.com/facebook/docusaurus/pull/4573) docs: update README badges ([@slorber](https://github.com/slorber))\\n - [#4559](https://github.com/facebook/docusaurus/pull/4559) docs(v2): fixed the directory of index.js ([@covalentbond](https://github.com/covalentbond))\\n - [#4568](https://github.com/facebook/docusaurus/pull/4568) docs(v2): add social-embed to showcase ([@tony](https://github.com/tony))\\n - [#4570](https://github.com/facebook/docusaurus/pull/4570) docs(v2): Add Redis Labs Developer Site to docusaurus showcase page ([@ajeetraina](https://github.com/ajeetraina))\\n - [#4543](https://github.com/facebook/docusaurus/pull/4543) docs(v2): fix run-on sentence ([@duanwilliam](https://github.com/duanwilliam))\\n - [#4539](https://github.com/facebook/docusaurus/pull/4539) docs(v2): fix typo deployment.mdx ([@forresst](https://github.com/forresst))\\n - [#4538](https://github.com/facebook/docusaurus/pull/4538) Add Tuist to the list of projects that use Docusaurus ([@pepibumur](https://github.com/pepibumur))\\n - [#4531](https://github.com/facebook/docusaurus/pull/4531) docs(v2): remove duplicate line on v1 docs ([@loozhengyuan](https://github.com/loozhengyuan))\\n - [#4524](https://github.com/facebook/docusaurus/pull/4524) docs(v2): config for self-hosted docsearch crawler ([@loozhengyuan](https://github.com/loozhengyuan))\\n - [#4526](https://github.com/facebook/docusaurus/pull/4526) docs(v2): fix markdown headings level 4 ([@forresst](https://github.com/forresst))\\n - [#4505](https://github.com/facebook/docusaurus/pull/4505) docs(v2): add more links to v1: announcementBar, versionDropdown, homepage ([@slorber](https://github.com/slorber))\\n - [#4497](https://github.com/facebook/docusaurus/pull/4497) docs: fix link to issue template ([@forresst](https://github.com/forresst))\\n - [#4481](https://github.com/facebook/docusaurus/pull/4481) docs(v2): fix grammar and improve wording ([@aehrea](https://github.com/aehrea))\\n - [#4472](https://github.com/facebook/docusaurus/pull/4472) docs(v2): fixed broken link in sidebar documentation ([@covalentbond](https://github.com/covalentbond))\\n - [#4470](https://github.com/facebook/docusaurus/pull/4470) docs(v2): Add missing i18n docs: API lifecycles + Crowdin migration guide ([@slorber](https://github.com/slorber))\\n - [#4460](https://github.com/facebook/docusaurus/pull/4460) docs(v2): use explicit heading IDs ([@lex111](https://github.com/lex111))\\n - [#4446](https://github.com/facebook/docusaurus/pull/4446) docs(v2): Add blog.johnnyreilly.com to showcase ([@johnnyreilly](https://github.com/johnnyreilly))\\n - [#4430](https://github.com/facebook/docusaurus/pull/4430) docs(v2): add Deploy with QuandCDN ([@steveworley](https://github.com/steveworley))\\n - [#4441](https://github.com/facebook/docusaurus/pull/4441) docs(v2): add stylable site to users showcase list ([@tomrav](https://github.com/tomrav))\\n- `docusaurus-init`\\n - [#4561](https://github.com/facebook/docusaurus/pull/4561) docs(v2): add a missing slug from the initial template ([@Foxeye-Rinx](https://github.com/Foxeye-Rinx))\\n - [#4560](https://github.com/facebook/docusaurus/pull/4560) docs(v2): fixed typos ([@covalentbond](https://github.com/covalentbond))\\n - [#4546](https://github.com/facebook/docusaurus/pull/4546) docs(v2): add a missing \\"export\\" from the initial template ([@Foxeye-Rinx](https://github.com/Foxeye-Rinx))\\n - [#4320](https://github.com/facebook/docusaurus/pull/4320) feat(v2): Improve the initial templates #4302 ([@besemuna](https://github.com/besemuna))\\n- `docusaurus-migrate`, `docusaurus`\\n - [#4479](https://github.com/facebook/docusaurus/pull/4479) docs(v2): fixed typos ([@covalentbond](https://github.com/covalentbond))\\n\\n## :house: Internal\\n\\n- `docusaurus-theme-classic`\\n - [#4627](https://github.com/facebook/docusaurus/pull/4627) chore(v2): update Infima to alpha.22 ([@slorber](https://github.com/slorber))\\n - [#4463](https://github.com/facebook/docusaurus/pull/4463) chore: fb json header commit typo ([@slorber](https://github.com/slorber))\\n- Other\\n - [#4613](https://github.com/facebook/docusaurus/pull/4613) chore(v2): fix yarn2 end2end test by using lerna publish --exact ([@slorber](https://github.com/slorber))\\n - [#4611](https://github.com/facebook/docusaurus/pull/4611) chore(v2): CI: do not build all locales when monitoring build time perf ([@slorber](https://github.com/slorber))\\n - [#4486](https://github.com/facebook/docusaurus/pull/4486) ci: enable yarn install cache ([@armano2](https://github.com/armano2))\\n - [#4508](https://github.com/facebook/docusaurus/pull/4508) ci: change default actions timeout from 6h to 30m ([@armano2](https://github.com/armano2))\\n - [#4488](https://github.com/facebook/docusaurus/pull/4488) chore(v2): fix typo in classic init template ([@clarus](https://github.com/clarus))\\n - [#4471](https://github.com/facebook/docusaurus/pull/4471) chore: fix GH actions lint problem matchers issue in PR ([@slorber](https://github.com/slorber))\\n - [#4458](https://github.com/facebook/docusaurus/pull/4458) chore(v2): enable staging locales: ko ja ([@slorber](https://github.com/slorber))\\n - [#4457](https://github.com/facebook/docusaurus/pull/4457) chore(v2): remove docs for alpha v70 ([@lex111](https://github.com/lex111))\\n - [#4452](https://github.com/facebook/docusaurus/pull/4452) chore(v2): update typescript-eslint to v4.18.0 ([@armano2](https://github.com/armano2))\\n- `docusaurus`\\n - [#4516](https://github.com/facebook/docusaurus/pull/4516) ci(v2): fail CI if build takes too much time ([@slorber](https://github.com/slorber))\\n- `docusaurus-init`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-preset-bootstrap`, `docusaurus-preset-classic`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`, `docusaurus`\\n - [#4490](https://github.com/facebook/docusaurus/pull/4490) chore: rename v2.docusaurus.io urls after domain switch + redirect + cleanups ([@slorber](https://github.com/slorber))\\n- `docusaurus-1.x`\\n - [#4475](https://github.com/facebook/docusaurus/pull/4475) chore: prepare v1-v2 domain switch ([@slorber](https://github.com/slorber))\\n - [#4447](https://github.com/facebook/docusaurus/pull/4447) chore: simplify CI setup ([@slorber](https://github.com/slorber))\\n- `docusaurus-1.x`, `docusaurus-init`\\n - [#4453](https://github.com/facebook/docusaurus/pull/4453) chore(v2): migrate babel-eslint to @babel/eslint-parser ([@armano2](https://github.com/armano2))\\n- `docusaurus-utils-validation`\\n - [#4464](https://github.com/facebook/docusaurus/pull/4464) chore(v2): Joi cyclic dep warning ([@slorber](https://github.com/slorber))\\n- `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-ideal-image`, `docusaurus-theme-common`, `docusaurus-utils`, `docusaurus`\\n - [#4462](https://github.com/facebook/docusaurus/pull/4462) chore: json files should be linted ([@slorber](https://github.com/slorber))\\n\\n## :running: Performance\\n\\n- `docusaurus-theme-classic`\\n - [#4626](https://github.com/facebook/docusaurus/pull/4626) refactor(v2): toggleResponsiveSidebar => more stable callback ([@slorber](https://github.com/slorber))\\n - [#4603](https://github.com/facebook/docusaurus/pull/4603) perf(v2): avoid rerender of sidebar items while scrolling ([@lex111](https://github.com/lex111))\\n - [#4473](https://github.com/facebook/docusaurus/pull/4473) perf(v2): reduce amount of component updates while scrolling ([@armano2](https://github.com/armano2))\\n\\n## Committers: 37\\n\\n- Ajeet Singh Raina, Docker Captain, RedisLabs ([@ajeetraina](https://github.com/ajeetraina))\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Anthony Bobsin ([@AnthonyBobsin](https://github.com/AnthonyBobsin))\\n- Arijit Kundu ([@covalentbond](https://github.com/covalentbond))\\n- Armano ([@armano2](https://github.com/armano2))\\n- Artur Carvalho ([@arturcarvalho](https://github.com/arturcarvalho))\\n- Brent Ely ([@gitbrent](https://github.com/gitbrent))\\n- Chris Kanich ([@kaytwo](https://github.com/kaytwo))\\n- Dennis Thompson ([@atomicpages](https://github.com/atomicpages))\\n- Dick Wyn Yong ([@dickwyn](https://github.com/dickwyn))\\n- Forresst ([@forresst](https://github.com/forresst))\\n- Guillaume Claret ([@clarus](https://github.com/clarus))\\n- John Knox ([@jknoxville](https://github.com/jknoxville))\\n- John Reilly ([@johnnyreilly](https://github.com/johnnyreilly))\\n- Lisa Chandra ([@lisa761](https://github.com/lisa761))\\n- Lucas Alves ([@lucalves](https://github.com/lucalves))\\n- Marco Enrico ([@gumacahin](https://github.com/gumacahin))\\n- Pedro Pi\xf1era Buend\xeda ([@pepibumur](https://github.com/pepibumur))\\n- Reece Dunham ([@RDIL](https://github.com/RDIL))\\n- Sam Zhou ([@SamChou19815](https://github.com/SamChou19815))\\n- Steve ([@steveworley](https://github.com/steveworley))\\n- Steven Hansel ([@ShinteiMai](https://github.com/ShinteiMai))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Tales Porto ([@talesporto](https://github.com/talesporto))\\n- Thiago Sciotta ([@thiagog3](https://github.com/thiagog3))\\n- Tiago Ribeiro ([@tiago-rr](https://github.com/tiago-rr))\\n- Tom Raviv ([@tomrav](https://github.com/tomrav))\\n- Tony Narlock ([@tony](https://github.com/tony))\\n- ZhengYuan Loo ([@loozhengyuan](https://github.com/loozhengyuan))\\n- [@Foxeye-Rinx](https://github.com/Foxeye-Rinx)\\n- [@aehrea](https://github.com/aehrea)\\n- [@akepecs](https://github.com/akepecs)\\n- [@besemuna](https://github.com/besemuna)\\n- [@duanwilliam](https://github.com/duanwilliam)\\n- [@miku86](https://github.com/miku86)\\n- [@serut](https://github.com/serut)\\n- guoxudong ([@sunny0826](https://github.com/sunny0826))"},{"id":"/2.0.0-alpha.72","metadata":{"permalink":"/changelog/2.0.0-alpha.72","source":"@site/changelog/source/2.0.0-alpha.72.md","title":"2.0.0-alpha.72","description":"Breaking Change","date":"2021-03-16T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Armano","alias":"armano2","url":"https://github.com/armano2","imageURL":"https://github.com/armano2.png","key":"armano2","page":null},{"name":"Harvtronix","alias":"Harvtronix","url":"https://github.com/Harvtronix","imageURL":"https://github.com/Harvtronix.png","key":"Harvtronix","page":null},{"name":"Joon-Ha Lee","alias":"koko8829","url":"https://github.com/koko8829","imageURL":"https://github.com/koko8829.png","key":"koko8829","page":null},{"name":"Leandro Oriente","alias":"leandrooriente","url":"https://github.com/leandrooriente","imageURL":"https://github.com/leandrooriente.png","key":"leandrooriente","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Long Ho","alias":"longlho","url":"https://github.com/longlho","imageURL":"https://github.com/longlho.png","key":"longlho","page":null},{"name":"Lowen","alias":"lowenhere","url":"https://github.com/lowenhere","imageURL":"https://github.com/lowenhere.png","key":"lowenhere","page":null},{"name":"Pierre-Gilles Leymarie","alias":"Pierre-Gilles","url":"https://github.com/Pierre-Gilles","imageURL":"https://github.com/Pierre-Gilles.png","key":"Pierre-Gilles","page":null},{"name":"Quan","alias":"quanengineering","url":"https://github.com/quanengineering","imageURL":"https://github.com/quanengineering.png","key":"quanengineering","page":null},{"name":"Rhodanthe1116","alias":"Rhodanthe1116","url":"https://github.com/Rhodanthe1116","imageURL":"https://github.com/Rhodanthe1116.png","key":"Rhodanthe1116","page":null},{"name":"Steven Hansel","alias":"ShinteiMai","url":"https://github.com/ShinteiMai","imageURL":"https://github.com/ShinteiMai.png","key":"ShinteiMai","page":null},{"name":"Simen Bekkhus","alias":"SimenB","url":"https://github.com/SimenB","imageURL":"https://github.com/SimenB.png","key":"SimenB","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Zoltan Kochan","alias":"zkochan","url":"https://github.com/zkochan","imageURL":"https://github.com/zkochan.png","key":"zkochan","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2021-03-16T20:00","authors":["armano2","Harvtronix","koko8829","leandrooriente","lex111","longlho","lowenhere","Pierre-Gilles","quanengineering","Rhodanthe1116","ShinteiMai","SimenB","slorber","zkochan"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.73","permalink":"/changelog/2.0.0-alpha.73"},"nextItem":{"title":"2.0.0-alpha.71","permalink":"/changelog/2.0.0-alpha.71"},"listPageLink":"/changelog/page/3"},"content":"\x3c!-- truncate --\x3e\\n\\n## :boom: Breaking Change\\n\\nStarting with this release for a proper work of i18n functionality, you need to either use Node v14+ or in case of using earlier version of Node.js install [`full-icu` package](https://www.npmjs.com/package/full-icu) and set `NODE_ICU_DATA` environment variable in your npm scripts, for example:\\n\\n```json\\n\\"scripts\\": {\\n \\"start\\": \\"cross-env NODE_ICU_DATA=node_modules/full-icu docusaurus start\\"\\n}\\n```\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-init`\\n - [#4302](https://github.com/facebook/docusaurus/pull/4302) feat(v2): Improve the initial templates ([@ShinteiMai](https://github.com/ShinteiMai))\\n- `docusaurus-theme-classic`\\n - [#4390](https://github.com/facebook/docusaurus/pull/4390) feat(v2): Add korean default translations ([@koko8829](https://github.com/koko8829))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`\\n - [#4429](https://github.com/facebook/docusaurus/pull/4429) chore(v2): upgrade Infima to v0.2.0-alpha.21 ([@lex111](https://github.com/lex111))\\n - [#4428](https://github.com/facebook/docusaurus/pull/4428) fix(v2): allow using pre tag in Markdown directly ([@lex111](https://github.com/lex111))\\n - [#4381](https://github.com/facebook/docusaurus/pull/4381) fix(v2): specify proper TS path in classic theme ([@lex111](https://github.com/lex111))\\n - [#4383](https://github.com/facebook/docusaurus/pull/4383) fix(v2): set theme color mode for SSR ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-pwa`\\n - [#4424](https://github.com/facebook/docusaurus/pull/4424) fix(v2): add missing peer dep on @babel/core ([@SimenB](https://github.com/SimenB))\\n - [#4377](https://github.com/facebook/docusaurus/pull/4377) fix(v2): PWA issues + improve docs ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#4407](https://github.com/facebook/docusaurus/pull/4407) fix(v2): broken link checker should not report false positives when using encoded chars ([@Harvtronix](https://github.com/Harvtronix))\\n- Other\\n - [#4410](https://github.com/facebook/docusaurus/pull/4410) fix(v1): Fix v1 site deployment with Crowdin again... ([@slorber](https://github.com/slorber))\\n - [#4396](https://github.com/facebook/docusaurus/pull/4396) fix(v1): Temp fix v1 site deployment: fail-safe on Crowdin upload translations error ([@slorber](https://github.com/slorber))\\n - [#4395](https://github.com/facebook/docusaurus/pull/4395) fix(v1): fix v1 site deploy issues ([@slorber](https://github.com/slorber))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-sitemap`, `docusaurus-theme-classic`, `docusaurus-types`, `docusaurus-utils-validation`, `docusaurus`\\n - [#4418](https://github.com/facebook/docusaurus/pull/4418) refactor(v2): correct plugin types ([@armano2](https://github.com/armano2))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-common`, `docusaurus-utils`, `docusaurus`\\n - [#4405](https://github.com/facebook/docusaurus/pull/4405) refactor(v2): i18n cleanups / refactors ([@longlho](https://github.com/longlho))\\n- `docusaurus-module-type-aliases`\\n - [#4387](https://github.com/facebook/docusaurus/pull/4387) refactor(v2): add ExecutionEnvironment, BrowserOnly, isInternalUrl to type aliases ([@armano2](https://github.com/armano2))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-utils`\\n - [#4402](https://github.com/facebook/docusaurus/pull/4402) refactor(v2): merge linkify function used in blog and docs and align properties ([@armano2](https://github.com/armano2))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-docs`, `docusaurus-theme-common`, `docusaurus-utils-validation`, `docusaurus`\\n - [#4382](https://github.com/facebook/docusaurus/pull/4382) refactor(v2): correct some of type errors reported by eslint ([@armano2](https://github.com/armano2))\\n- `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#4385](https://github.com/facebook/docusaurus/pull/4385) refactor(v2): add missing theme-classic types ([@armano2](https://github.com/armano2))\\n\\n## :memo: Documentation\\n\\n- [#4416](https://github.com/facebook/docusaurus/pull/4416) docs(v2): add Realtime Web Applications Workshop to showcase ([@lowenhere](https://github.com/lowenhere))\\n- [#4408](https://github.com/facebook/docusaurus/pull/4408) docs(v2): add gladysassistant.com to showcase ([@Pierre-Gilles](https://github.com/Pierre-Gilles))\\n- [#4386](https://github.com/facebook/docusaurus/pull/4386) docs(v2): Showcase the pnpm docs ([@zkochan](https://github.com/zkochan))\\n- [#4367](https://github.com/facebook/docusaurus/pull/4367) docs(v2): releasing i18n blog post ([@slorber](https://github.com/slorber))\\n\\n## :house: Internal\\n\\n- `docusaurus-1.x`\\n - [#4401](https://github.com/facebook/docusaurus/pull/4401) chore(v1): fix CircleCI v1 site deploy ([@slorber](https://github.com/slorber))\\n- Other\\n - [#4399](https://github.com/facebook/docusaurus/pull/4399) chore(v2): upgrade example projects ([@slorber](https://github.com/slorber))\\n - [#4398](https://github.com/facebook/docusaurus/pull/4398) chore(v1): trigger v1 site deploy through CI ([@slorber](https://github.com/slorber))\\n- `docusaurus-utils`\\n - [#4384](https://github.com/facebook/docusaurus/pull/4384) chore(v2): avoid bad publish of intl-locales-supported ([@lex111](https://github.com/lex111))\\n\\n## Committers: 14\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Armano ([@armano2](https://github.com/armano2))\\n- Harvtronix ([@Harvtronix](https://github.com/Harvtronix))\\n- Joon-Ha Lee ([@koko8829](https://github.com/koko8829))\\n- Leandro Oriente ([@leandrooriente](https://github.com/leandrooriente))\\n- Long Ho ([@longlho](https://github.com/longlho))\\n- Lowen ([@lowenhere](https://github.com/lowenhere))\\n- Pierre-Gilles Leymarie ([@Pierre-Gilles](https://github.com/Pierre-Gilles))\\n- Quan ([@quanengineering](https://github.com/quanengineering))\\n- Simen Bekkhus ([@SimenB](https://github.com/SimenB))\\n- Steven Hansel ([@ShinteiMai](https://github.com/ShinteiMai))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Zoltan Kochan ([@zkochan](https://github.com/zkochan))\\n- [@Rhodanthe1116](https://github.com/Rhodanthe1116)"},{"id":"/2.0.0-alpha.71","metadata":{"permalink":"/changelog/2.0.0-alpha.71","source":"@site/changelog/source/2.0.0-alpha.71.md","title":"2.0.0-alpha.71","description":"New Feature","date":"2021-03-09T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Ali Saki","alias":"3alisaki","url":"https://github.com/3alisaki","imageURL":"https://github.com/3alisaki.png","key":"3alisaki","page":null},{"name":"Joel M","alias":"9oelM","url":"https://github.com/9oelM","imageURL":"https://github.com/9oelM.png","key":"9oelM","page":null},{"name":"Apurva Ojas","alias":"apurvaojas","url":"https://github.com/apurvaojas","imageURL":"https://github.com/apurvaojas.png","key":"apurvaojas","page":null},{"name":"Armano","alias":"armano2","url":"https://github.com/armano2","imageURL":"https://github.com/armano2.png","key":"armano2","page":null},{"name":"Arthur","alias":"ArtFlag","url":"https://github.com/ArtFlag","imageURL":"https://github.com/ArtFlag.png","key":"ArtFlag","page":null},{"name":"Jola","alias":"asystentka-jolka","url":"https://github.com/asystentka-jolka","imageURL":"https://github.com/asystentka-jolka.png","key":"asystentka-jolka","page":null},{"name":"Andrew Taft","alias":"ataft","url":"https://github.com/ataft","imageURL":"https://github.com/ataft.png","key":"ataft","page":null},{"name":"aukokyong","alias":"aukokyong","url":"https://github.com/aukokyong","imageURL":"https://github.com/aukokyong.png","key":"aukokyong","page":null},{"name":"Nahiyan Kamal","alias":"ayonious","url":"https://github.com/ayonious","imageURL":"https://github.com/ayonious.png","key":"ayonious","page":null},{"name":"Martin Ad\xe1mek","alias":"B4nan","url":"https://github.com/B4nan","imageURL":"https://github.com/B4nan.png","key":"B4nan","page":null},{"name":"Ben","alias":"ben-qnimble","url":"https://github.com/ben-qnimble","imageURL":"https://github.com/ben-qnimble.png","key":"ben-qnimble","page":null},{"name":"BennoDev","alias":"bennodev19","url":"https://github.com/bennodev19","imageURL":"https://github.com/bennodev19.png","key":"bennodev19","page":null},{"name":"\xc7a\u011Flar Tural\u0131","alias":"caglarturali","url":"https://github.com/caglarturali","imageURL":"https://github.com/caglarturali.png","key":"caglarturali","page":null},{"name":"Christian Bromann","alias":"christian-bromann","url":"https://github.com/christian-bromann","imageURL":"https://github.com/christian-bromann.png","key":"christian-bromann","page":null},{"name":"David Barrat","alias":"dbrrt","url":"https://github.com/dbrrt","imageURL":"https://github.com/dbrrt.png","key":"dbrrt","page":null},{"name":"Gr\xe9gory Heitz","alias":"edno","url":"https://github.com/edno","imageURL":"https://github.com/edno.png","key":"edno","page":null},{"name":"Eduardo L\xe1zaro","alias":"edulazaro","url":"https://github.com/edulazaro","imageURL":"https://github.com/edulazaro.png","key":"edulazaro","page":null},{"name":"Eric Carboni","alias":"eric-hc","url":"https://github.com/eric-hc","imageURL":"https://github.com/eric-hc.png","key":"eric-hc","page":null},{"name":"Mohd Shad Mirza","alias":"iamshadmirza","url":"https://github.com/iamshadmirza","imageURL":"https://github.com/iamshadmirza.png","key":"iamshadmirza","page":null},{"name":"Bhargav Ponnapalli","alias":"imbhargav5","url":"https://github.com/imbhargav5","imageURL":"https://github.com/imbhargav5.png","key":"imbhargav5","page":null},{"name":"Ivan Ru\u017Eevi\u0107","alias":"iruzevic","url":"https://github.com/iruzevic","imageURL":"https://github.com/iruzevic.png","key":"iruzevic","page":null},{"name":"Jessica Lin","alias":"jlin27","url":"https://github.com/jlin27","imageURL":"https://github.com/jlin27.png","key":"jlin27","page":null},{"name":"Joel Marcey","alias":"JoelMarcey","url":"https://github.com/JoelMarcey","imageURL":"https://github.com/JoelMarcey.png","key":"JoelMarcey","page":null},{"name":"Juan Carlos Blanco Delgado","alias":"juancarlosjr97","url":"https://github.com/juancarlosjr97","imageURL":"https://github.com/juancarlosjr97.png","key":"juancarlosjr97","page":null},{"name":"\u741A\u81F4\u8FDC","alias":"juzhiyuan","url":"https://github.com/juzhiyuan","imageURL":"https://github.com/juzhiyuan.png","key":"juzhiyuan","page":null},{"name":"Kumar Aditya","alias":"kumaraditya303","url":"https://github.com/kumaraditya303","imageURL":"https://github.com/kumaraditya303.png","key":"kumaraditya303","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Pablo Vidal","alias":"limkinZero","url":"https://github.com/limkinZero","imageURL":"https://github.com/limkinZero.png","key":"limkinZero","page":null},{"name":"Power Lin","alias":"linyuxuanlin","url":"https://github.com/linyuxuanlin","imageURL":"https://github.com/linyuxuanlin.png","key":"linyuxuanlin","page":null},{"name":"Lisa Chandra","alias":"lisa761","url":"https://github.com/lisa761","imageURL":"https://github.com/lisa761.png","key":"lisa761","page":null},{"name":"LittleboyHarry","alias":"LittleboyHarry","url":"https://github.com/LittleboyHarry","imageURL":"https://github.com/LittleboyHarry.png","key":"LittleboyHarry","page":null},{"name":"Long Ho","alias":"longlho","url":"https://github.com/longlho","imageURL":"https://github.com/longlho.png","key":"longlho","page":null},{"name":"Matteo Manzinello","alias":"manzinello","url":"https://github.com/manzinello","imageURL":"https://github.com/manzinello.png","key":"manzinello","page":null},{"name":"Massoud Maboudi","alias":"massoudmaboudi","url":"https://github.com/massoudmaboudi","imageURL":"https://github.com/massoudmaboudi.png","key":"massoudmaboudi","page":null},{"name":"Matan Borenkraout","alias":"MatanBobi","url":"https://github.com/MatanBobi","imageURL":"https://github.com/MatanBobi.png","key":"MatanBobi","page":null},{"name":"Miroiu Emanuel","alias":"miroiu","url":"https://github.com/miroiu","imageURL":"https://github.com/miroiu.png","key":"miroiu","page":null},{"name":"MisterFISHUP","alias":"MisterFISHUP","url":"https://github.com/MisterFISHUP","imageURL":"https://github.com/MisterFISHUP.png","key":"MisterFISHUP","page":null},{"name":"moonrailgun","alias":"moonrailgun","url":"https://github.com/moonrailgun","imageURL":"https://github.com/moonrailgun.png","key":"moonrailgun","page":null},{"name":"Sean Campbell","alias":"natac13","url":"https://github.com/natac13","imageURL":"https://github.com/natac13.png","key":"natac13","page":null},{"name":"Nico Jansen","alias":"nicojs","url":"https://github.com/nicojs","imageURL":"https://github.com/nicojs.png","key":"nicojs","page":null},{"name":"Nikolay Samokhvalov","alias":"NikolayS","url":"https://github.com/NikolayS","imageURL":"https://github.com/NikolayS.png","key":"NikolayS","page":null},{"name":"Nathan Bosscher","alias":"ntbosscher","url":"https://github.com/ntbosscher","imageURL":"https://github.com/ntbosscher.png","key":"ntbosscher","page":null},{"name":"Matt Oestreich","alias":"oze4","url":"https://github.com/oze4","imageURL":"https://github.com/oze4.png","key":"oze4","page":null},{"name":"philipp985","alias":"philipp985","url":"https://github.com/philipp985","imageURL":"https://github.com/philipp985.png","key":"philipp985","page":null},{"name":"Reece Dunham","alias":"RDIL","url":"https://github.com/RDIL","imageURL":"https://github.com/RDIL.png","key":"RDIL","page":null},{"name":"roydukkey","alias":"roydukkey","url":"https://github.com/roydukkey","imageURL":"https://github.com/roydukkey.png","key":"roydukkey","page":null},{"name":"Saihajpreet Singh","alias":"saihaj","url":"https://github.com/saihaj","imageURL":"https://github.com/saihaj.png","key":"saihaj","page":null},{"name":"Sam Zhou","alias":"SamChou19815","url":"https://github.com/SamChou19815","imageURL":"https://github.com/SamChou19815.png","key":"SamChou19815","page":null},{"name":"Sam Hrncir","alias":"samhrncir","url":"https://github.com/samhrncir","imageURL":"https://github.com/samhrncir.png","key":"samhrncir","page":null},{"name":"sammychinedu2ky","alias":"sammychinedu2ky","url":"https://github.com/sammychinedu2ky","imageURL":"https://github.com/sammychinedu2ky.png","key":"sammychinedu2ky","page":null},{"name":"saydo17","alias":"saydo17","url":"https://github.com/saydo17","imageURL":"https://github.com/saydo17.png","key":"saydo17","page":null},{"name":"Sergio Moreno","alias":"semoal","url":"https://github.com/semoal","imageURL":"https://github.com/semoal.png","key":"semoal","page":null},{"name":"Siemienik Pawel","alias":"Siemienik","url":"https://github.com/Siemienik","imageURL":"https://github.com/Siemienik.png","key":"Siemienik","page":null},{"name":"Bartosz Kaszubowski","alias":"Simek","url":"https://github.com/Simek","imageURL":"https://github.com/Simek.png","key":"Simek","page":null},{"name":"Sam Sam","alias":"sksamuel","url":"https://github.com/sksamuel","imageURL":"https://github.com/sksamuel.png","key":"sksamuel","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Ankur Kedia","alias":"theankurkedia","url":"https://github.com/theankurkedia","imageURL":"https://github.com/theankurkedia.png","key":"theankurkedia","page":null},{"name":"Theodore Chu","alias":"TheodoreChu","url":"https://github.com/TheodoreChu","imageURL":"https://github.com/TheodoreChu.png","key":"TheodoreChu","page":null},{"name":"Tien Vo Xuan","alias":"tienvx","url":"https://github.com/tienvx","imageURL":"https://github.com/tienvx.png","key":"tienvx","page":null},{"name":"tokarchyn","alias":"tokarchyn","url":"https://github.com/tokarchyn","imageURL":"https://github.com/tokarchyn.png","key":"tokarchyn","page":null},{"name":"Tomas Fernandez","alias":"tomsfernandez","url":"https://github.com/tomsfernandez","imageURL":"https://github.com/tomsfernandez.png","key":"tomsfernandez","page":null},{"name":"Vamsi Krishna Reddy Satti","alias":"vamsi3","url":"https://github.com/vamsi3","imageURL":"https://github.com/vamsi3.png","key":"vamsi3","page":null},{"name":"Kevin Viglucci","alias":"viglucci","url":"https://github.com/viglucci","imageURL":"https://github.com/viglucci.png","key":"viglucci","page":null},{"name":"Welly","alias":"wellyshen","url":"https://github.com/wellyshen","imageURL":"https://github.com/wellyshen.png","key":"wellyshen","page":null},{"name":"wolf20482","alias":"wolf20482","url":"https://github.com/wolf20482","imageURL":"https://github.com/wolf20482.png","key":"wolf20482","page":null},{"name":"Yangshun Tay","alias":"yangshun","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png","key":"yangshun","page":null},{"name":"Yash Totale","alias":"YashTotale","url":"https://github.com/YashTotale","imageURL":"https://github.com/YashTotale.png","key":"YashTotale","page":null},{"name":"Yamagishi Kazutoshi","alias":"ykzts","url":"https://github.com/ykzts","imageURL":"https://github.com/ykzts.png","key":"ykzts","page":null},{"name":"Yuri Sulyma","alias":"ysulyma","url":"https://github.com/ysulyma","imageURL":"https://github.com/ysulyma.png","key":"ysulyma","page":null},{"name":"Yuval Hazaz","alias":"yuval-hazaz","url":"https://github.com/yuval-hazaz","imageURL":"https://github.com/yuval-hazaz.png","key":"yuval-hazaz","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2021-03-09T20:00","authors":["3alisaki","9oelM","apurvaojas","armano2","ArtFlag","asystentka-jolka","ataft","aukokyong","ayonious","B4nan","ben-qnimble","bennodev19","caglarturali","christian-bromann","dbrrt","edno","edulazaro","eric-hc","iamshadmirza","imbhargav5","iruzevic","jlin27","JoelMarcey","juancarlosjr97","juzhiyuan","kumaraditya303","lex111","limkinZero","linyuxuanlin","lisa761","LittleboyHarry","longlho","manzinello","massoudmaboudi","MatanBobi","miroiu","MisterFISHUP","moonrailgun","natac13","nicojs","NikolayS","ntbosscher","oze4","philipp985","RDIL","roydukkey","saihaj","SamChou19815","samhrncir","sammychinedu2ky","saydo17","semoal","Siemienik","Simek","sksamuel","slorber","theankurkedia","TheodoreChu","tienvx","tokarchyn","tomsfernandez","vamsi3","viglucci","wellyshen","wolf20482","yangshun","YashTotale","ykzts","ysulyma","yuval-hazaz"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.72","permalink":"/changelog/2.0.0-alpha.72"},"nextItem":{"title":"2.0.0-alpha.70","permalink":"/changelog/2.0.0-alpha.70"},"listPageLink":"/changelog/page/3"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-utils`, `docusaurus`\\n - [#4222](https://github.com/facebook/docusaurus/pull/4222) feat(v2): add ability to set custom heading id ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-live-codeblock`\\n - [#4328](https://github.com/facebook/docusaurus/pull/4328) feat(v2): Add playgroundPosition config for live codeblock ([@tokarchyn](https://github.com/tokarchyn))\\n- `docusaurus-theme-classic`\\n - [#4209](https://github.com/facebook/docusaurus/pull/4209) feat(v2): auto focus to tab if it is outside viewport ([@lex111](https://github.com/lex111))\\n - [#4329](https://github.com/facebook/docusaurus/pull/4329) feat(v2): add arabic translation ([@3alisaki](https://github.com/3alisaki))\\n - [#4325](https://github.com/facebook/docusaurus/pull/4325) feat(v2): [theme-classic] add Polish translation ([@Simek](https://github.com/Simek))\\n - [#4312](https://github.com/facebook/docusaurus/pull/4312) feat(v2): Add Turkish translations for theme labels ([@caglarturali](https://github.com/caglarturali))\\n - [#4271](https://github.com/facebook/docusaurus/pull/4271) feat(v2): add Farsi default translations ([@slorber](https://github.com/slorber))\\n - [#4261](https://github.com/facebook/docusaurus/pull/4261) feat(v2): add icon to generic sidebar link ([@lex111](https://github.com/lex111))\\n - [#4109](https://github.com/facebook/docusaurus/pull/4109) feat(v2): default canonical urls ([@slorber](https://github.com/slorber))\\n- `docusaurus-types`, `docusaurus`\\n - [#4308](https://github.com/facebook/docusaurus/pull/4308) feat(v2): add --config option to CLI ([@longlho](https://github.com/longlho))\\n - [#4185](https://github.com/facebook/docusaurus/pull/4185) feat(v2): allow extend PostCSS config ([@lex111](https://github.com/lex111))\\n - [#4021](https://github.com/facebook/docusaurus/pull/4021) feat(v2): Allow plugins to consume webpack stats ([@RDIL](https://github.com/RDIL))\\n- `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`\\n - [#4303](https://github.com/facebook/docusaurus/pull/4303) feat(v2): add japanese translations ([@ykzts](https://github.com/ykzts))\\n- `docusaurus-module-type-aliases`, `docusaurus-theme-classic`, `docusaurus`\\n - [#4295](https://github.com/facebook/docusaurus/pull/4295) feat(v2): Add Interpolate / interpolate APIs + complete theme translations ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`\\n - [#4278](https://github.com/facebook/docusaurus/pull/4278) feat(v2): ability to \\"escape\\" JSX in MDX files as code blocks ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`\\n - [#4232](https://github.com/facebook/docusaurus/pull/4232) feat(v2): editUrl functions should receive md doc permalink ([@slorber](https://github.com/slorber))\\n - [#4121](https://github.com/facebook/docusaurus/pull/4121) feat(v2): editUrl function for advanced use-cases ([@slorber](https://github.com/slorber))\\n- `docusaurus-1.x`, `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-preset-bootstrap`, `docusaurus-preset-classic`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus`\\n - [#4218](https://github.com/facebook/docusaurus/pull/4218) feat(v2): support/use React v17 by default ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`\\n - [#4215](https://github.com/facebook/docusaurus/pull/4215) feat(v2): Add i18n default code translation bundles ([@slorber](https://github.com/slorber))\\n- `docusaurus-module-type-aliases`, `docusaurus-theme-classic`, `docusaurus-types`, `docusaurus`\\n - [#4140](https://github.com/facebook/docusaurus/pull/4140) feat(v2): add support for RTL direction ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#4199](https://github.com/facebook/docusaurus/pull/4199) feat(v2): allow to change location of search bar ([@lex111](https://github.com/lex111))\\n - [#3993](https://github.com/facebook/docusaurus/pull/3993) feat(v2): themed logo in footer ([@natac13](https://github.com/natac13))\\n- `docusaurus`\\n - [#4198](https://github.com/facebook/docusaurus/pull/4198) feat(v2): add fonts loaders + webpack resolve.roots ([@slorber](https://github.com/slorber))\\n - [#3998](https://github.com/facebook/docusaurus/pull/3998) feat(v2): Cache hashed assets to dedicated folders ([@kumaraditya303](https://github.com/kumaraditya303))\\n - [#3979](https://github.com/facebook/docusaurus/pull/3979) feat(v2): better error message for invalid plugin config ([@9oelM](https://github.com/9oelM))\\n- `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`, `docusaurus`\\n - [#4168](https://github.com/facebook/docusaurus/pull/4168) feat(v2): Extract/translate hardcoded labels from classic theme ([@slorber](https://github.com/slorber))\\n- `docusaurus-init`\\n - [#4098](https://github.com/facebook/docusaurus/pull/4098) feat(v2): improve templates, use JSDoc type annotation, improve `docusaurus.config.js` autocompletion ([@LittleboyHarry](https://github.com/LittleboyHarry))\\n- `docusaurus-init`, `docusaurus-migrate`\\n - [#3986](https://github.com/facebook/docusaurus/pull/3986) feat(v2): skip dependency install on docusaurus init ([@kumaraditya303](https://github.com/kumaraditya303))\\n- `docusaurus-plugin-content-docs`\\n - [#3949](https://github.com/facebook/docusaurus/pull/3949) feat(v2): new docs edit options: editCurrentVersion + editLocalizedDocs ([@slorber](https://github.com/slorber))\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-1.x`, `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-preset-bootstrap`, `docusaurus-preset-classic`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `lqip-loader`\\n - [#4223](https://github.com/facebook/docusaurus/pull/4223) chore(v2): upgrade dependencies + require Node 12 ([@lex111](https://github.com/lex111))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus`\\n - [#4366](https://github.com/facebook/docusaurus/pull/4366) fix(v2): align installed core-js version with babel config ([@armano2](https://github.com/armano2))\\n - [#4345](https://github.com/facebook/docusaurus/pull/4345) fix(v2): always extract translations from site/src ([@slorber](https://github.com/slorber))\\n - [#4342](https://github.com/facebook/docusaurus/pull/4342) chore(v2): bump clean-css to 5.1.1 ([@lex111](https://github.com/lex111))\\n - [#4212](https://github.com/facebook/docusaurus/pull/4212) fix(v2): typo in resolve.roots ([@slorber](https://github.com/slorber))\\n - [#4155](https://github.com/facebook/docusaurus/pull/4155) fix(v2): BaseUrl issue banner insertion should be prevented if JS can load ([@slorber](https://github.com/slorber))\\n - [#4137](https://github.com/facebook/docusaurus/pull/4137) fix(v2): escape apostrophes in route paths ([@lex111](https://github.com/lex111))\\n - [#4136](https://github.com/facebook/docusaurus/pull/4136) fix(v2): fix navigation from homepage ([@lex111](https://github.com/lex111))\\n - [#4125](https://github.com/facebook/docusaurus/pull/4125) fix(v2): baseUrl help banner should not be indexed by Google / SEO ([@slorber](https://github.com/slorber))\\n - [#4080](https://github.com/facebook/docusaurus/pull/4080) fix(v2): chokidar reloading debounced ([@semoal](https://github.com/semoal))\\n - [#3965](https://github.com/facebook/docusaurus/pull/3965) fix(v2): fix svg loader for CSS files ([@apurvaojas](https://github.com/apurvaojas))\\n - [#3943](https://github.com/facebook/docusaurus/pull/3943) fix(v2): disables all inlining in CleanCSS ([@lex111](https://github.com/lex111))\\n - [#3941](https://github.com/facebook/docusaurus/pull/3941) fix(v2): fix i18n build logging. ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#4349](https://github.com/facebook/docusaurus/pull/4349) fix(v2): fix update code translations script + update some translations ([@slorber](https://github.com/slorber))\\n - [#4311](https://github.com/facebook/docusaurus/pull/4311) fix(v2): fit footer in viewport when content area is too small ([@lex111](https://github.com/lex111))\\n - [#4340](https://github.com/facebook/docusaurus/pull/4340) fix(v2): prevent useless blog pages to be in search results ([@slorber](https://github.com/slorber))\\n - [#4274](https://github.com/facebook/docusaurus/pull/4274) fix(v2): theme classic should have lib-next prettified ([@slorber](https://github.com/slorber))\\n - [#4267](https://github.com/facebook/docusaurus/pull/4267) fix(v2): Allow null as valid for title of item in footer links. ([@ben-qnimble](https://github.com/ben-qnimble))\\n - [#4254](https://github.com/facebook/docusaurus/pull/4254) fix(v2): fix LTR PostCSS bug on Netlify and monorepo symlinks ([@slorber](https://github.com/slorber))\\n - [#4247](https://github.com/facebook/docusaurus/pull/4247) fix(v2): make doc container full width when hidden sidebar ([@lex111](https://github.com/lex111))\\n - [#4241](https://github.com/facebook/docusaurus/pull/4241) fix(v2): avoid horizontal scrolling when long lines of code ([@lex111](https://github.com/lex111))\\n - [#4200](https://github.com/facebook/docusaurus/pull/4200) fix(v2): various minor bugs with location hash ([@lex111](https://github.com/lex111))\\n - [#4195](https://github.com/facebook/docusaurus/pull/4195) fix(v2): restore hamburger menu ([@lex111](https://github.com/lex111))\\n - [#4189](https://github.com/facebook/docusaurus/pull/4189) fix(v2): prevent click on item menu with children on mobiles ([@lex111](https://github.com/lex111))\\n - [#4176](https://github.com/facebook/docusaurus/pull/4176) fix(v2): make locale dropdown accessible from keyboard ([@lex111](https://github.com/lex111))\\n - [#4163](https://github.com/facebook/docusaurus/pull/4163) fix(v2): fix warning and improve styling inline TOC ([@lex111](https://github.com/lex111))\\n - [#4162](https://github.com/facebook/docusaurus/pull/4162) fix(v2): make more accessible skip link ([@lex111](https://github.com/lex111))\\n - [#4160](https://github.com/facebook/docusaurus/pull/4160) fix(v2): fix hreflang headers ([@slorber](https://github.com/slorber))\\n - [#4147](https://github.com/facebook/docusaurus/pull/4147) fix(v2): avoid misuse section tag in blog posts ([@lex111](https://github.com/lex111))\\n - [#4146](https://github.com/facebook/docusaurus/pull/4146) fix(v2): use current color for language icon ([@lex111](https://github.com/lex111))\\n - [#4118](https://github.com/facebook/docusaurus/pull/4118) fix(v2): navbar dropdown subitems should be translated properly ([@slorber](https://github.com/slorber))\\n - [#4011](https://github.com/facebook/docusaurus/pull/4011) fix(v2): fix accessibility issue with IconArrow ([@natac13](https://github.com/natac13))\\n - [#3968](https://github.com/facebook/docusaurus/pull/3968) fix(v2): fix blog only contextual search ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`\\n - [#4315](https://github.com/facebook/docusaurus/pull/4315) fix(v2): make code blocks more standalone ([@lex111](https://github.com/lex111))\\n - [#4277](https://github.com/facebook/docusaurus/pull/4277) fix(v2): Code blocks should be LTR by default ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-live-codeblock`\\n - [#4318](https://github.com/facebook/docusaurus/pull/4318) fix(v2): evaluate code in live editor on client only ([@lex111](https://github.com/lex111))\\n - [#3954](https://github.com/facebook/docusaurus/pull/3954) fix(v2): allow async/await in live code editor ([@9oelM](https://github.com/9oelM))\\n- `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`\\n - [#4339](https://github.com/facebook/docusaurus/pull/4339) fix(v2): search page results localization ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`, `docusaurus`\\n - [#4304](https://github.com/facebook/docusaurus/pull/4304) fix(v2): fix bad theme pluralization rules for some labels ([@slorber](https://github.com/slorber))\\n- `docusaurus-cssnano-preset`\\n - [#4240](https://github.com/facebook/docusaurus/pull/4240) fix(v2): remove PostCSS plugin for combine duplicated selectors ([@lex111](https://github.com/lex111))\\n- Other\\n - [#4234](https://github.com/facebook/docusaurus/pull/4234) fix(v2): fix website versions page ([@slorber](https://github.com/slorber))\\n - [#4233](https://github.com/facebook/docusaurus/pull/4233) fix(v2): website editUrl should target upstream docs ([@slorber](https://github.com/slorber))\\n - [#4067](https://github.com/facebook/docusaurus/pull/4067) fix(v2): Fix blog post url/date ([@slorber](https://github.com/slorber))\\n - [#3952](https://github.com/facebook/docusaurus/pull/3952) docs(v2): Fix invalid json ([@oze4](https://github.com/oze4))\\n- `docusaurus-theme-search-algolia`\\n - [#4188](https://github.com/facebook/docusaurus/pull/4188) fix(v2): prepend docsearch modal to body element ([@lex111](https://github.com/lex111))\\n - [#4154](https://github.com/facebook/docusaurus/pull/4154) fix(v2): add base url to opensearch.xml ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-ideal-image`\\n - [#4166](https://github.com/facebook/docusaurus/pull/4166) fix(v2): ideal image assets should be served under ./assets ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-common`\\n - [#4092](https://github.com/facebook/docusaurus/pull/4092) fix(v2): fix/enhance minor i18n issues reported ([@slorber](https://github.com/slorber))\\n - [#3940](https://github.com/facebook/docusaurus/pull/3940) fix(v2): i18n should not crash theme without footer ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-sitemap`\\n - [#4004](https://github.com/facebook/docusaurus/pull/4004) fix(v2): Fix double trailingSlash in sitemap.xml ([@ntbosscher](https://github.com/ntbosscher))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-utils`\\n - [#3970](https://github.com/facebook/docusaurus/pull/3970) fix(v2): fix multi-instance mdx loaders not sandboxed correctly ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-client-redirects`\\n - [#3903](https://github.com/facebook/docusaurus/pull/3903) fix(v2): fix redirect toUrl (windows + trailing slash) ([@saydo17](https://github.com/saydo17))\\n- `docusaurus-utils`\\n - [#3944](https://github.com/facebook/docusaurus/pull/3944) fix(v2): ignore style imports in excerpt ([@lex111](https://github.com/lex111))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#4371](https://github.com/facebook/docusaurus/pull/4371) refactor(v2): update Russian translation in classic theme ([@lex111](https://github.com/lex111))\\n - [#4359](https://github.com/facebook/docusaurus/pull/4359) polish(v2): [theme-classic] slightly improve Japanese translation ([@MisterFISHUP](https://github.com/MisterFISHUP))\\n - [#4350](https://github.com/facebook/docusaurus/pull/4350) polish(v2): Updated theme label translations for Turkish ([@caglarturali](https://github.com/caglarturali))\\n - [#4351](https://github.com/facebook/docusaurus/pull/4351) polish(v2): add japanese translation for #4304 ([@ykzts](https://github.com/ykzts))\\n - [#4309](https://github.com/facebook/docusaurus/pull/4309) polish(v2): improved Farsi translation ([@massoudmaboudi](https://github.com/massoudmaboudi))\\n - [#4279](https://github.com/facebook/docusaurus/pull/4279) polish(v2): theme default translations for language de / german ([@philipp985](https://github.com/philipp985))\\n - [#4275](https://github.com/facebook/docusaurus/pull/4275) polish(v2): Add more tags translations ([@slorber](https://github.com/slorber))\\n - [#4246](https://github.com/facebook/docusaurus/pull/4246) refactor(v2): add Russian translation for classic theme ([@lex111](https://github.com/lex111))\\n - [#4242](https://github.com/facebook/docusaurus/pull/4242) refactor(v2): use Link component for external links ([@lex111](https://github.com/lex111))\\n - [#4244](https://github.com/facebook/docusaurus/pull/4244) refactor(v2): clean-ups and fixes ([@lex111](https://github.com/lex111))\\n - [#4193](https://github.com/facebook/docusaurus/pull/4193) refactor(v2): update tabs to follow WAI-ARIA spec ([@lex111](https://github.com/lex111))\\n - [#4194](https://github.com/facebook/docusaurus/pull/4194) refactor(v2): use transform instead of top position for hideable navbar ([@lex111](https://github.com/lex111))\\n - [#4167](https://github.com/facebook/docusaurus/pull/4167) refactor(v2): minor styling improvements ([@lex111](https://github.com/lex111))\\n - [#4169](https://github.com/facebook/docusaurus/pull/4169) refactor(v2): remove delay after skip link pressed ([@lex111](https://github.com/lex111))\\n - [#4086](https://github.com/facebook/docusaurus/pull/4086) style(v2): add className to tab container ([@ArtFlag](https://github.com/ArtFlag))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#4352](https://github.com/facebook/docusaurus/pull/4352) refactor(v2): format last updated date using Intl ([@lex111](https://github.com/lex111))\\n - [#4243](https://github.com/facebook/docusaurus/pull/4243) refactor(v2): introduce Seo component for internal using ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`, `docusaurus-utils`\\n - [#4344](https://github.com/facebook/docusaurus/pull/4344) refactor(v2): format post date using Intl ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#4257](https://github.com/facebook/docusaurus/pull/4257) refactor(v2): improve notifier message ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-pwa`, `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`\\n - [#4219](https://github.com/facebook/docusaurus/pull/4219) refactor(v2): add more translatable strings ([@lex111](https://github.com/lex111))\\n- Other\\n - [#4074](https://github.com/facebook/docusaurus/pull/4074) polish(v2): improve codesandbox template package.json ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-debug`\\n - [#3953](https://github.com/facebook/docusaurus/pull/3953) refactor(v2): fix debug plugin name ([@RDIL](https://github.com/RDIL))\\n- `docusaurus-plugin-debug`, `docusaurus-theme-classic`\\n - [#3946](https://github.com/facebook/docusaurus/pull/3946) refactor(v2): minor a11y tweaks ([@lex111](https://github.com/lex111))\\n\\n## :memo: Documentation\\n\\n- Other\\n - [#4369](https://github.com/facebook/docusaurus/pull/4369) docs(v2): various improvements ([@lex111](https://github.com/lex111))\\n - [#4362](https://github.com/facebook/docusaurus/pull/4362) docs(v2): Add stryker-mutator.io to showcase ([@nicojs](https://github.com/nicojs))\\n - [#4354](https://github.com/facebook/docusaurus/pull/4354) docs(v2): add trpgengine showcase ([@moonrailgun](https://github.com/moonrailgun))\\n - [#4346](https://github.com/facebook/docusaurus/pull/4346) docs(v1): update phrasing for website dir relative to docs dir ([@aukokyong](https://github.com/aukokyong))\\n - [#4338](https://github.com/facebook/docusaurus/pull/4338) docs(v2): update showcase instruction regarding tags + fix site tags ([@slorber](https://github.com/slorber))\\n - [#4331](https://github.com/facebook/docusaurus/pull/4331) docs(v2): add ocpeasy to users ([@dbrrt](https://github.com/dbrrt))\\n - [#4307](https://github.com/facebook/docusaurus/pull/4307) docs(v2): Add RactivePlayer to showcase ([@ysulyma](https://github.com/ysulyma))\\n - [#4297](https://github.com/facebook/docusaurus/pull/4297) docs(v2): Fix examples by importing React ([@roydukkey](https://github.com/roydukkey))\\n - [#4296](https://github.com/facebook/docusaurus/pull/4296) docs(v2): move migrated sites from v1 to v2 showcase ([@lisa761](https://github.com/lisa761))\\n - [#4293](https://github.com/facebook/docusaurus/pull/4293) docs(v2): Added React Native ARIA to showcase ([@theankurkedia](https://github.com/theankurkedia))\\n - [#4284](https://github.com/facebook/docusaurus/pull/4284) docs(v2): Add AttoBot website to showcase page ([@wolf20482](https://github.com/wolf20482))\\n - [#4285](https://github.com/facebook/docusaurus/pull/4285) docs(v2): escape more jsx in mdx files for Crowdin ([@slorber](https://github.com/slorber))\\n - [#4283](https://github.com/facebook/docusaurus/pull/4283) docs(v2): Add Postgres.ai to showcase ([@NikolayS](https://github.com/NikolayS))\\n - [#4282](https://github.com/facebook/docusaurus/pull/4282) docs: update Netlify deploy status badge ([@slorber](https://github.com/slorber))\\n - [#4259](https://github.com/facebook/docusaurus/pull/4259) docs(v2): improve cli docs ([@massoudmaboudi](https://github.com/massoudmaboudi))\\n - [#4266](https://github.com/facebook/docusaurus/pull/4266) docs(v2): update agilets banner ([@bennodev19](https://github.com/bennodev19))\\n - [#4263](https://github.com/facebook/docusaurus/pull/4263) docs(v2): remove npx and use github action to configure ssh key ([@MatanBobi](https://github.com/MatanBobi))\\n - [#4262](https://github.com/facebook/docusaurus/pull/4262) docs(v2): Added kotest to showcase ([@sksamuel](https://github.com/sksamuel))\\n - [#4256](https://github.com/facebook/docusaurus/pull/4256) docs(v2): Add docusaurus2-graphql-doc-generator to community resources ([@edno](https://github.com/edno))\\n - [#4252](https://github.com/facebook/docusaurus/pull/4252) docs(v2): Added mailgo to showcase ([@manzinello](https://github.com/manzinello))\\n - [#4251](https://github.com/facebook/docusaurus/pull/4251) docs(v2): Add Axioms to showcase ([@limkinZero](https://github.com/limkinZero))\\n - [#4237](https://github.com/facebook/docusaurus/pull/4237) docs(v2): Replace mbt-bundle by sicope-model ([@tienvx](https://github.com/tienvx))\\n - [#4236](https://github.com/facebook/docusaurus/pull/4236) docs(v2): v2 migration should mention RSS feed url change ([@slorber](https://github.com/slorber))\\n - [#4230](https://github.com/facebook/docusaurus/pull/4230) docs(v2): fix npm/yarn command example for swizzling TypeScript theme components ([@YashTotale](https://github.com/YashTotale))\\n - [#4229](https://github.com/facebook/docusaurus/pull/4229) docs(v2): Fix link to slash introduction svg ([@SamChou19815](https://github.com/SamChou19815))\\n - [#4226](https://github.com/facebook/docusaurus/pull/4226) docs(v2): Removing wrong parenthesis on image variable ([@juancarlosjr97](https://github.com/juancarlosjr97))\\n - [#4225](https://github.com/facebook/docusaurus/pull/4225) docs(v2): added Apache APISIX ([@juzhiyuan](https://github.com/juzhiyuan))\\n - [#4224](https://github.com/facebook/docusaurus/pull/4224) docs(v2): Add MikroORM site to showcase page ([@B4nan](https://github.com/B4nan))\\n - [#4220](https://github.com/facebook/docusaurus/pull/4220) Add WebdriverIO docs page as showcase ([@christian-bromann](https://github.com/christian-bromann))\\n - [#4210](https://github.com/facebook/docusaurus/pull/4210) misc: add requirements for sites being added to showcase ([@lex111](https://github.com/lex111))\\n - [#4207](https://github.com/facebook/docusaurus/pull/4207) docs(v2): Added Console Table Documentation Site to showcase ([@ayonious](https://github.com/ayonious))\\n - [#4204](https://github.com/facebook/docusaurus/pull/4204) docs(v1): fixing a broken link in blog posts ([@ayonious](https://github.com/ayonious))\\n - [#4178](https://github.com/facebook/docusaurus/pull/4178) docs(v2): localize 404 page with Netlify + docs ([@slorber](https://github.com/slorber))\\n - [#4177](https://github.com/facebook/docusaurus/pull/4177) docs(v2): Add docusaurus-plugin-remote-content to resources list ([@RDIL](https://github.com/RDIL))\\n - [#4172](https://github.com/facebook/docusaurus/pull/4172) docs(v2): Add react-hooks.org to showcase ([@imbhargav5](https://github.com/imbhargav5))\\n - [#4173](https://github.com/facebook/docusaurus/pull/4173) docs(v2): typo fixing double colon ([@ayonious](https://github.com/ayonious))\\n - [#4164](https://github.com/facebook/docusaurus/pull/4164) docs(v2): add a note for images not rendered on dev server ([@yuval-hazaz](https://github.com/yuval-hazaz))\\n - [#4161](https://github.com/facebook/docusaurus/pull/4161) docs(v2): Add docusaurus-theme-github-codeblock ([@christian-bromann](https://github.com/christian-bromann))\\n - [#4158](https://github.com/facebook/docusaurus/pull/4158) docs(v2): improve bad static assets doc + remove some useless useBaseUrl usage ([@slorber](https://github.com/slorber))\\n - [#4144](https://github.com/facebook/docusaurus/pull/4144) docs(v2): community docs typo fix ([@ayonious](https://github.com/ayonious))\\n - [#4143](https://github.com/facebook/docusaurus/pull/4143) docs(v2): guide docs typo fix ([@ayonious](https://github.com/ayonious))\\n - [#4141](https://github.com/facebook/docusaurus/pull/4141) docs(v2): plugins docs typo fix ([@ayonious](https://github.com/ayonious))\\n - [#4139](https://github.com/facebook/docusaurus/pull/4139) docs(v2): Add Rematch site to showcase page ([@semoal](https://github.com/semoal))\\n - [#4128](https://github.com/facebook/docusaurus/pull/4128) docs(v2): remove duplicate link from docs about Docusaurus1 ([@ayonious](https://github.com/ayonious))\\n - [#4129](https://github.com/facebook/docusaurus/pull/4129) docs(v2): typo fix in Migration Docs ([@ayonious](https://github.com/ayonious))\\n - [#4127](https://github.com/facebook/docusaurus/pull/4127) docs(v2): remove unnecessary brace from installation doc ([@ayonious](https://github.com/ayonious))\\n - [#4130](https://github.com/facebook/docusaurus/pull/4130) docs(v2): typo in i18n docs ([@ayonious](https://github.com/ayonious))\\n - [#4112](https://github.com/facebook/docusaurus/pull/4112) docs(v2): Do not encourage using the permalink prop ([@slorber](https://github.com/slorber))\\n - [#4106](https://github.com/facebook/docusaurus/pull/4106) docs(v2): update broken link on resources page ([@eric-hc](https://github.com/eric-hc))\\n - [#4084](https://github.com/facebook/docusaurus/pull/4084) docs(v2): Use the TOCInline component in config doc ([@slorber](https://github.com/slorber))\\n - [#4020](https://github.com/facebook/docusaurus/pull/4020) docs(v2): 2020 recap blog post ([@slorber](https://github.com/slorber))\\n - [#4009](https://github.com/facebook/docusaurus/pull/4009) docs(v2): add hideableSidebar option to config demo ([@natac13](https://github.com/natac13))\\n - [#4062](https://github.com/facebook/docusaurus/pull/4062) docs(v2): Add codesandbox integration ([@sammychinedu2ky](https://github.com/sammychinedu2ky))\\n - [#4058](https://github.com/facebook/docusaurus/pull/4058) docs(v2): Include new.docusaurus.io CodeSandbox in issue templates + README ([@slorber](https://github.com/slorber))\\n - [#4053](https://github.com/facebook/docusaurus/pull/4053) docs(v2): Add Eightshift Docs site to showcase page ([@iruzevic](https://github.com/iruzevic))\\n - [#4048](https://github.com/facebook/docusaurus/pull/4048) docs(v1): Docker: remind the user to use the --host flag ([@tomsfernandez](https://github.com/tomsfernandez))\\n - [#4047](https://github.com/facebook/docusaurus/pull/4047) docs(v1): version page should recommend v2 ([@slorber](https://github.com/slorber))\\n - [#4046](https://github.com/facebook/docusaurus/pull/4046) docs(v2): add sciwp to showcase ([@edulazaro](https://github.com/edulazaro))\\n - [#4036](https://github.com/facebook/docusaurus/pull/4036) docs(v2): Add Nodify to showcase ([@miroiu](https://github.com/miroiu))\\n - [#4038](https://github.com/facebook/docusaurus/pull/4038) docs(v1): suggest to use Docusaurus 2 even for non-FB websites ([@slorber](https://github.com/slorber))\\n - [#4026](https://github.com/facebook/docusaurus/pull/4026) docs(v2): Add FlexIt to showcase ([@ataft](https://github.com/ataft))\\n - [#4022](https://github.com/facebook/docusaurus/pull/4022) docs: fix typo from \'dissapear\' to \'disappear\' ([@vamsi3](https://github.com/vamsi3))\\n - [#4002](https://github.com/facebook/docusaurus/pull/4002) docs(v2): Add how to run your own DocSearch ([@TheodoreChu](https://github.com/TheodoreChu))\\n - [#3997](https://github.com/facebook/docusaurus/pull/3997) docs(v2): Add Datagit site to showcase page ([@massoudmaboudi](https://github.com/massoudmaboudi))\\n - [#3990](https://github.com/facebook/docusaurus/pull/3990) docs(v2): Add wiki-powerto site showcase ([@linyuxuanlin](https://github.com/linyuxuanlin))\\n - [#3991](https://github.com/facebook/docusaurus/pull/3991) docs(v2): add overwriting css variables for dark mode ([@natac13](https://github.com/natac13))\\n - [#3987](https://github.com/facebook/docusaurus/pull/3987) docs(v2): Add AgileTs site to showcase page ([@bennodev19](https://github.com/bennodev19))\\n - [#3978](https://github.com/facebook/docusaurus/pull/3978) docs(v2): Add documentation for docs multi-instance support ([@slorber](https://github.com/slorber))\\n - [#3977](https://github.com/facebook/docusaurus/pull/3977) docs(v2): nudge users to add site to showcase ([@slorber](https://github.com/slorber))\\n - [#3975](https://github.com/facebook/docusaurus/pull/3975) docs(v2): Reorganize/split the guides doc / markdown sections ([@slorber](https://github.com/slorber))\\n - [#3976](https://github.com/facebook/docusaurus/pull/3976) docs(v2): Add AI-Speaker site to showcase page ([@asystentka-jolka](https://github.com/asystentka-jolka))\\n - [#3974](https://github.com/facebook/docusaurus/pull/3974) docs(v2): doc typo on sidebar admonition ([@slorber](https://github.com/slorber))\\n - [#3962](https://github.com/facebook/docusaurus/pull/3962) docs(v2): Add migration info doc regarding docs folder location ([@slorber](https://github.com/slorber))\\n - [#3950](https://github.com/facebook/docusaurus/pull/3950) docs(v2): update GitHub entreprise deployment doc ([@samhrncir](https://github.com/samhrncir))\\n - [#3945](https://github.com/facebook/docusaurus/pull/3945) docs(v2): Added information about setting `/` in routeBasePath ([@Siemienik](https://github.com/Siemienik))\\n- `docusaurus-theme-classic`\\n - [#4356](https://github.com/facebook/docusaurus/pull/4356) polish(v2): [theme-classic] add Chinese translations (zh-Hant & zh-Hans) ([@MisterFISHUP](https://github.com/MisterFISHUP))\\n- `docusaurus`\\n - [#4126](https://github.com/facebook/docusaurus/pull/4126) docs(v2): do not recommend using useBaseUrl() hook in most cases ([@slorber](https://github.com/slorber))\\n - [#4049](https://github.com/facebook/docusaurus/pull/4049) docs(v1): version page should recommend v2 (bis) ([@slorber](https://github.com/slorber))\\n- `docusaurus-init`, `docusaurus-theme-classic`, `docusaurus`\\n - [#4014](https://github.com/facebook/docusaurus/pull/4014) docs(v2): i18n doc + polish ([@slorber](https://github.com/slorber))\\n- `docusaurus-cssnano-preset`, `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-module-type-aliases`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-preset-bootstrap`, `docusaurus-preset-classic`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-bootstrap`, `docusaurus-theme-common`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-types`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `lqip-loader`, `stylelint-copyright`\\n - [#4034](https://github.com/facebook/docusaurus/pull/4034) docs(v2): Add READMEs to v2 packages ([@RDIL](https://github.com/RDIL))\\n- `docusaurus-init`\\n - [#3881](https://github.com/facebook/docusaurus/pull/3881) docs(v2): update FB OSS logo ([@Simek](https://github.com/Simek))\\n\\n## :house: Internal\\n\\n- Other\\n - [#4372](https://github.com/facebook/docusaurus/pull/4372) chore(v1): release docusaurus v1.14.7 ([@slorber](https://github.com/slorber))\\n - [#4368](https://github.com/facebook/docusaurus/pull/4368) chore(deps): bump elliptic from 6.5.3 to 6.5.4 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#4365](https://github.com/facebook/docusaurus/pull/4365) chore: unstable yarnlock ([@slorber](https://github.com/slorber))\\n - [#4337](https://github.com/facebook/docusaurus/pull/4337) misc: restore build size bot ([@slorber](https://github.com/slorber))\\n - [#4289](https://github.com/facebook/docusaurus/pull/4289) chore(v2): remove docs for alpha v69 ([@lex111](https://github.com/lex111))\\n - [#4253](https://github.com/facebook/docusaurus/pull/4253) chore(v2): remove docs for alpha v68 ([@lex111](https://github.com/lex111))\\n - [#4248](https://github.com/facebook/docusaurus/pull/4248) chore(v2): Fix build size bot ([@slorber](https://github.com/slorber))\\n - [#4214](https://github.com/facebook/docusaurus/pull/4214) chore(v2): setup for i18n staging deployment ([@slorber](https://github.com/slorber))\\n - [#4159](https://github.com/facebook/docusaurus/pull/4159) chore(v2): fix build size bot again ([@slorber](https://github.com/slorber))\\n - [#4156](https://github.com/facebook/docusaurus/pull/4156) chore(v2): fix build size bot monitoring of js/css assets ([@slorber](https://github.com/slorber))\\n - [#4100](https://github.com/facebook/docusaurus/pull/4100) chore(v2): remove docs for alpha v66 ([@lex111](https://github.com/lex111))\\n - [#4077](https://github.com/facebook/docusaurus/pull/4077) chore(v2): fix unstable master yarn.lock ([@slorber](https://github.com/slorber))\\n - [#4063](https://github.com/facebook/docusaurus/pull/4063) chore(v2): Regen codesandbox templates + add template: \\"docusaurus\\" ([@slorber](https://github.com/slorber))\\n - [#4056](https://github.com/facebook/docusaurus/pull/4056) chore(v2): update codesandbox redirect ([@slorber](https://github.com/slorber))\\n - [#4041](https://github.com/facebook/docusaurus/pull/4041) chore(v1): revert v1 netlify.toml ([@slorber](https://github.com/slorber))\\n - [#4040](https://github.com/facebook/docusaurus/pull/4040) chore(v1): upgrade v1 Crowdin cli + CI config ([@slorber](https://github.com/slorber))\\n - [#4030](https://github.com/facebook/docusaurus/pull/4030) chore(v2): install Crowdin cli through npm package ([@slorber](https://github.com/slorber))\\n - [#4003](https://github.com/facebook/docusaurus/pull/4003) chore: add DevContainer config for GitHub codespaces ([@kumaraditya303](https://github.com/kumaraditya303))\\n - [#4001](https://github.com/facebook/docusaurus/pull/4001) chore(v2): Upgrade crowdin ([@slorber](https://github.com/slorber))\\n - [#3995](https://github.com/facebook/docusaurus/pull/3995) chore(v2): remove docs for alpha v65 ([@lex111](https://github.com/lex111))\\n - [#3960](https://github.com/facebook/docusaurus/pull/3960) fix(v2): remove duplicate section on Versions page ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`\\n - [#4370](https://github.com/facebook/docusaurus/pull/4370) chore(v2): update infima ([@slorber](https://github.com/slorber))\\n- `docusaurus-init`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`, `docusaurus-utils`, `docusaurus`, `lqip-loader`\\n - [#4361](https://github.com/facebook/docusaurus/pull/4361) refactor(v2): remove duplicated lodash dependencies and import only what needed ([@armano2](https://github.com/armano2))\\n- `docusaurus-1.x`, `docusaurus`\\n - [#4270](https://github.com/facebook/docusaurus/pull/4270) chore(v2): upgrade react-dev-utils ([@yangshun](https://github.com/yangshun))\\n- `docusaurus-init`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-ideal-image`, `docusaurus-types`, `docusaurus`\\n - [#4264](https://github.com/facebook/docusaurus/pull/4264) chore(v2): bump/align deps in monorepo: commander, semver, fs-extra ([@Simek](https://github.com/Simek))\\n- `docusaurus`\\n - [#4265](https://github.com/facebook/docusaurus/pull/4265) chore(v2): PostCSS peer dep fix ([@RDIL](https://github.com/RDIL))\\n - [#4091](https://github.com/facebook/docusaurus/pull/4091) refactor(v2): Switch from inquirer to prompts ([@RDIL](https://github.com/RDIL))\\n - [#4066](https://github.com/facebook/docusaurus/pull/4066) chore(v2): Update a few dependencies ([@RDIL](https://github.com/RDIL))\\n- `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-sitemap`, `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `lqip-loader`\\n - [#4148](https://github.com/facebook/docusaurus/pull/4148) chore(v2): upgrade dependencies ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-pwa`\\n - [#4120](https://github.com/facebook/docusaurus/pull/4120) chore(v2): Update workbox to v6 ([@RDIL](https://github.com/RDIL))\\n- `docusaurus-utils`, `docusaurus`\\n - [#4081](https://github.com/facebook/docusaurus/pull/4081) chore(v2): Update webpack-related dependencies, pre-work to migrate to Webpack 5 ([@RDIL](https://github.com/RDIL))\\n- `docusaurus-init`, `docusaurus`\\n - [#4012](https://github.com/facebook/docusaurus/pull/4012) chore(v2): docusaurus-init: switch from inquirer to prompts ([@RDIL](https://github.com/RDIL))\\n- `docusaurus-plugin-sitemap`\\n - [#4005](https://github.com/facebook/docusaurus/pull/4005) chore(v2): prettier fixes ([@slorber](https://github.com/slorber))\\n- `docusaurus-migrate`\\n - [#3988](https://github.com/facebook/docusaurus/pull/3988) chore(v2): fix date-sensitive test fixture ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-utils`, `docusaurus`, `stylelint-copyright`\\n - [#3959](https://github.com/facebook/docusaurus/pull/3959) chore(v2): fix windows Jest tests ([@slorber](https://github.com/slorber))\\n\\n## :running: Performance\\n\\n- `docusaurus-cssnano-preset`, `docusaurus-plugin-content-blog`, `docusaurus`\\n - [#4355](https://github.com/facebook/docusaurus/pull/4355) perf(v2): improve blog mdx-loader and postcss loader ([@lex111](https://github.com/lex111))\\n\\n## Committers: 70\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Ali Saki ([@3alisaki](https://github.com/3alisaki))\\n- Andrew Taft ([@ataft](https://github.com/ataft))\\n- Ankur Kedia ([@theankurkedia](https://github.com/theankurkedia))\\n- Apurva Ojas ([@apurvaojas](https://github.com/apurvaojas))\\n- Armano ([@armano2](https://github.com/armano2))\\n- Arthur ([@ArtFlag](https://github.com/ArtFlag))\\n- Bartosz Kaszubowski ([@Simek](https://github.com/Simek))\\n- Ben ([@ben-qnimble](https://github.com/ben-qnimble))\\n- BennoDev ([@bennodev19](https://github.com/bennodev19))\\n- Bhargav Ponnapalli ([@imbhargav5](https://github.com/imbhargav5))\\n- Christian Bromann ([@christian-bromann](https://github.com/christian-bromann))\\n- David Barrat ([@dbrrt](https://github.com/dbrrt))\\n- Eduardo L\xe1zaro ([@edulazaro](https://github.com/edulazaro))\\n- Eric Carboni ([@eric-hc](https://github.com/eric-hc))\\n- Gr\xe9gory Heitz ([@edno](https://github.com/edno))\\n- Ivan Ru\u017Eevi\u0107 ([@iruzevic](https://github.com/iruzevic))\\n- Jessica Lin ([@jlin27](https://github.com/jlin27))\\n- Joel M ([@9oelM](https://github.com/9oelM))\\n- Joel Marcey ([@JoelMarcey](https://github.com/JoelMarcey))\\n- Jola ([@asystentka-jolka](https://github.com/asystentka-jolka))\\n- Juan Carlos Blanco Delgado ([@juancarlosjr97](https://github.com/juancarlosjr97))\\n- Kevin Viglucci ([@viglucci](https://github.com/viglucci))\\n- Kumar Aditya ([@kumaraditya303](https://github.com/kumaraditya303))\\n- Lisa Chandra ([@lisa761](https://github.com/lisa761))\\n- LittleboyHarry ([@LittleboyHarry](https://github.com/LittleboyHarry))\\n- Long Ho ([@longlho](https://github.com/longlho))\\n- Martin Ad\xe1mek ([@B4nan](https://github.com/B4nan))\\n- Massoud Maboudi ([@massoudmaboudi](https://github.com/massoudmaboudi))\\n- Matan Borenkraout ([@MatanBobi](https://github.com/MatanBobi))\\n- Matt Oestreich ([@oze4](https://github.com/oze4))\\n- Matteo Manzinello ([@manzinello](https://github.com/manzinello))\\n- Miroiu Emanuel ([@miroiu](https://github.com/miroiu))\\n- Mohd Shad Mirza ([@iamshadmirza](https://github.com/iamshadmirza))\\n- Nahiyan Kamal ([@ayonious](https://github.com/ayonious))\\n- Nathan Bosscher ([@ntbosscher](https://github.com/ntbosscher))\\n- Nico Jansen ([@nicojs](https://github.com/nicojs))\\n- Nikolay Samokhvalov ([@NikolayS](https://github.com/NikolayS))\\n- Pablo Vidal ([@limkinZero](https://github.com/limkinZero))\\n- Power Lin ([@linyuxuanlin](https://github.com/linyuxuanlin))\\n- Reece Dunham ([@RDIL](https://github.com/RDIL))\\n- Saihajpreet Singh ([@saihaj](https://github.com/saihaj))\\n- Sam Hrncir ([@samhrncir](https://github.com/samhrncir))\\n- Sam Sam ([@sksamuel](https://github.com/sksamuel))\\n- Sam Zhou ([@SamChou19815](https://github.com/SamChou19815))\\n- Sean Campbell ([@natac13](https://github.com/natac13))\\n- Sergio Moreno ([@semoal](https://github.com/semoal))\\n- Siemienik Pawel ([@Siemienik](https://github.com/Siemienik))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Theodore Chu ([@TheodoreChu](https://github.com/TheodoreChu))\\n- Tien Vo Xuan ([@tienvx](https://github.com/tienvx))\\n- Tomas Fernandez ([@tomsfernandez](https://github.com/tomsfernandez))\\n- Vamsi Krishna Reddy Satti ([@vamsi3](https://github.com/vamsi3))\\n- Welly ([@wellyshen](https://github.com/wellyshen))\\n- Yamagishi Kazutoshi ([@ykzts](https://github.com/ykzts))\\n- Yangshun Tay ([@yangshun](https://github.com/yangshun))\\n- Yash Totale ([@YashTotale](https://github.com/YashTotale))\\n- Yuri Sulyma ([@ysulyma](https://github.com/ysulyma))\\n- Yuval Hazaz ([@yuval-hazaz](https://github.com/yuval-hazaz))\\n- [@MisterFISHUP](https://github.com/MisterFISHUP)\\n- [@aukokyong](https://github.com/aukokyong)\\n- [@philipp985](https://github.com/philipp985)\\n- [@roydukkey](https://github.com/roydukkey)\\n- [@sammychinedu2ky](https://github.com/sammychinedu2ky)\\n- [@saydo17](https://github.com/saydo17)\\n- [@tokarchyn](https://github.com/tokarchyn)\\n- [@wolf20482](https://github.com/wolf20482)\\n- moonrailgun ([@moonrailgun](https://github.com/moonrailgun))\\n- \xc7a\u011Flar Tural\u0131 ([@caglarturali](https://github.com/caglarturali))\\n- \u741A\u81F4\u8FDC ([@juzhiyuan](https://github.com/juzhiyuan))"},{"id":"/2.0.0-alpha.70","metadata":{"permalink":"/changelog/2.0.0-alpha.70","source":"@site/changelog/source/2.0.0-alpha.70.md","title":"2.0.0-alpha.70","description":"New Feature","date":"2020-12-17T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Aar\xf3n Garc\xeda Herv\xe1s","alias":"aarongarciah","url":"https://github.com/aarongarciah","imageURL":"https://github.com/aarongarciah.png","key":"aarongarciah","page":null},{"name":"hackerman","alias":"aeneasr","url":"https://github.com/aeneasr","imageURL":"https://github.com/aeneasr.png","key":"aeneasr","page":null},{"name":"Alex1304","alias":"Alex1304","url":"https://github.com/Alex1304","imageURL":"https://github.com/Alex1304.png","key":"Alex1304","page":null},{"name":"Arthur","alias":"ArtFlag","url":"https://github.com/ArtFlag","imageURL":"https://github.com/ArtFlag.png","key":"ArtFlag","page":null},{"name":"borool","alias":"borool","url":"https://github.com/borool","imageURL":"https://github.com/borool.png","key":"borool","page":null},{"name":"Cindy Gu","alias":"cindygu4","url":"https://github.com/cindygu4","imageURL":"https://github.com/cindygu4.png","key":"cindygu4","page":null},{"name":"davidmauskop","alias":"davidmauskop","url":"https://github.com/davidmauskop","imageURL":"https://github.com/davidmauskop.png","key":"davidmauskop","page":null},{"name":"Derric Gilling","alias":"dgilling","url":"https://github.com/dgilling","imageURL":"https://github.com/dgilling.png","key":"dgilling","page":null},{"name":"Fran\xe7ois Chalifour","alias":"francoischalifour","url":"https://github.com/francoischalifour","imageURL":"https://github.com/francoischalifour.png","key":"francoischalifour","page":null},{"name":"Hadrien Milano","alias":"hmil","url":"https://github.com/hmil","imageURL":"https://github.com/hmil.png","key":"hmil","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Lo\xefc Poullain","alias":"LoicPoullain","url":"https://github.com/LoicPoullain","imageURL":"https://github.com/LoicPoullain.png","key":"LoicPoullain","page":null},{"name":"Matteo Manzinello","alias":"manzinello","url":"https://github.com/manzinello","imageURL":"https://github.com/manzinello.png","key":"manzinello","page":null},{"name":"Matija Sosic","alias":"matijaSos","url":"https://github.com/matijaSos","imageURL":"https://github.com/matijaSos.png","key":"matijaSos","page":null},{"name":"M\xe9ril","alias":"mpsq","url":"https://github.com/mpsq","imageURL":"https://github.com/mpsq.png","key":"mpsq","page":null},{"name":"Oliver Ullman","alias":"oriooctopus","url":"https://github.com/oriooctopus","imageURL":"https://github.com/oriooctopus.png","key":"oriooctopus","page":null},{"name":"Rami","alias":"Romstar","url":"https://github.com/Romstar","imageURL":"https://github.com/Romstar.png","key":"Romstar","page":null},{"name":"Sarthak kundra","alias":"sarthakkundra","url":"https://github.com/sarthakkundra","imageURL":"https://github.com/sarthakkundra.png","key":"sarthakkundra","page":null},{"name":"Bartosz Kaszubowski","alias":"Simek","url":"https://github.com/Simek","imageURL":"https://github.com/Simek.png","key":"Simek","page":null},{"name":"Kaartic Sivaraam","alias":"sivaraam","url":"https://github.com/sivaraam","imageURL":"https://github.com/sivaraam.png","key":"sivaraam","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Varshit Shah","alias":"Varshit07","url":"https://github.com/Varshit07","imageURL":"https://github.com/Varshit07.png","key":"Varshit07","page":null},{"name":"Stephen Woodruff","alias":"woodrufs","url":"https://github.com/woodrufs","imageURL":"https://github.com/woodrufs.png","key":"woodrufs","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-12-17T20:00","authors":["aarongarciah","aeneasr","Alex1304","ArtFlag","borool","cindygu4","davidmauskop","dgilling","francoischalifour","hmil","lex111","LoicPoullain","manzinello","matijaSos","mpsq","oriooctopus","Romstar","sarthakkundra","Simek","sivaraam","slorber","Varshit07","woodrufs"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.71","permalink":"/changelog/2.0.0-alpha.71"},"nextItem":{"title":"2.0.0-alpha.69","permalink":"/changelog/2.0.0-alpha.69"},"listPageLink":"/changelog/page/3"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus`\\n - [#3932](https://github.com/facebook/docusaurus/pull/3932) feat(v2): Add Root theme element ([@slorber](https://github.com/slorber))\\n- `docusaurus-module-type-aliases`, `docusaurus-theme-classic`, `docusaurus-types`, `docusaurus`\\n - [#3916](https://github.com/facebook/docusaurus/pull/3916) feat(v2): Add localeDropdown navbar item type + i18n localeConfigs field ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-types`\\n - [#3904](https://github.com/facebook/docusaurus/pull/3904) feat(v2): inline table-of-contents + refactor TOC ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`\\n - [#3888](https://github.com/facebook/docusaurus/pull/3888) feat(v2): add custom props for consumption by swizzled sidebar ([@oriooctopus](https://github.com/oriooctopus))\\n- `docusaurus-plugin-content-blog`\\n - [#3842](https://github.com/facebook/docusaurus/pull/3842) feat(v2): enable feeds by default in blog plugin ([@cindygu4](https://github.com/cindygu4))\\n- Other\\n - [#3827](https://github.com/facebook/docusaurus/pull/3827) feat(v2): add automated canary releases ([@slorber](https://github.com/slorber))\\n - [#3761](https://github.com/facebook/docusaurus/pull/3761) feat(v2): Added Lighthouse CI to PR checks ([@sarthakkundra](https://github.com/sarthakkundra))\\n- `docusaurus-1.x`, `docusaurus-module-type-aliases`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`\\n - [#3325](https://github.com/facebook/docusaurus/pull/3325) feat(v2): core v2 i18n support + Docusaurus site Crowdin integration ([@slorber](https://github.com/slorber))\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-types`\\n - [#3904](https://github.com/facebook/docusaurus/pull/3904) feat(v2): inline table-of-contents + refactor TOC ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`\\n - [#3842](https://github.com/facebook/docusaurus/pull/3842) feat(v2): enable feeds by default in blog plugin ([@cindygu4](https://github.com/cindygu4))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus`\\n - [#3922](https://github.com/facebook/docusaurus/pull/3922) fix(v2): fix navbar items issue on Windows? ([@slorber](https://github.com/slorber))\\n - [#3920](https://github.com/facebook/docusaurus/pull/3920) fix(v2): i18n translation extractor should handle JSX formatting edge cases better ([@slorber](https://github.com/slorber))\\n - [#3896](https://github.com/facebook/docusaurus/pull/3896) fix(v2): do not treat at-rules during CSS minification ([@lex111](https://github.com/lex111))\\n - [#3869](https://github.com/facebook/docusaurus/pull/3869) fix(v2): load plugin commands async to fix broken plugin CLI commands `docs:version` ([@aeneasr](https://github.com/aeneasr))\\n- `docusaurus-theme-classic`\\n - [#3921](https://github.com/facebook/docusaurus/pull/3921) fix(v2): remove useless console log ([@slorber](https://github.com/slorber))\\n - [#3895](https://github.com/facebook/docusaurus/pull/3895) fix(v2): use proper element for pagination nav label ([@lex111](https://github.com/lex111))\\n - [#3882](https://github.com/facebook/docusaurus/pull/3882) fix(v2): improve Footer structure, add class names, use Infima transition ([@Simek](https://github.com/Simek))\\n - [#3877](https://github.com/facebook/docusaurus/pull/3877) fix(v2): dynamic dark mode detection without toggle widget ([@hmil](https://github.com/hmil))\\n - [#3854](https://github.com/facebook/docusaurus/pull/3854) fix(v2): refactor icons in theme-classic, fix swizzle issue ([@Simek](https://github.com/Simek))\\n - [#3823](https://github.com/facebook/docusaurus/pull/3823) fix(v2): support rendering of singular tabs ([@aeneasr](https://github.com/aeneasr))\\n - [#3817](https://github.com/facebook/docusaurus/pull/3817) fix(v2): Allow footer logo at attribute to be empty ([@aarongarciah](https://github.com/aarongarciah))\\n- `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`\\n - [#3900](https://github.com/facebook/docusaurus/pull/3900) fix(v2): correct typo in metas generated for Twitter cards ([@mpsq](https://github.com/mpsq))\\n- Other\\n - [#3872](https://github.com/facebook/docusaurus/pull/3872) chore: add missing v1 generated files to ignores ([@Simek](https://github.com/Simek))\\n - [#3833](https://github.com/facebook/docusaurus/pull/3833) fix(v2): temporary: disable crowdin until PR env variable permission fixed ([@slorber](https://github.com/slorber))\\n- `stylelint-copyright`\\n - [#3852](https://github.com/facebook/docusaurus/pull/3852) fix(v2): to fix the canary release GH workflow ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-search-algolia`\\n - [#3853](https://github.com/facebook/docusaurus/pull/3853) fix(v2): fix DocSearch keyboard navigator ([@francoischalifour](https://github.com/francoischalifour))\\n - [#3837](https://github.com/facebook/docusaurus/pull/3837) fix(v2): update SearchPage styling, fix appearance in dark mode ([@Simek](https://github.com/Simek))\\n - [#3828](https://github.com/facebook/docusaurus/pull/3828) fix(v2): restore Algolia search ([@lex111](https://github.com/lex111))\\n - [#3819](https://github.com/facebook/docusaurus/pull/3819) feat(search): update DocSearch to alpha.31 ([@francoischalifour](https://github.com/francoischalifour))\\n- `docusaurus-plugin-content-docs`\\n - [#3839](https://github.com/facebook/docusaurus/pull/3839) fix(v2): remove unnecessary backtick in output ([@sivaraam](https://github.com/sivaraam))\\n- `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`\\n - [#3829](https://github.com/facebook/docusaurus/pull/3829) fix(v2): fix search ([@slorber](https://github.com/slorber))\\n- `docusaurus-init`, `docusaurus`\\n - [#3824](https://github.com/facebook/docusaurus/pull/3824) fix(v2): update notifier dist tag ([@slorber](https://github.com/slorber))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus`\\n - [#3880](https://github.com/facebook/docusaurus/pull/3880) polish(v2): improve docusaurus deploy logs ([@slorber](https://github.com/slorber))\\n\\n## :memo: Documentation\\n\\n- [#3931](https://github.com/facebook/docusaurus/pull/3931) docs(v2): blog.md with docs: false, for blog-only mode ([@Romstar](https://github.com/Romstar))\\n- [#3924](https://github.com/facebook/docusaurus/pull/3924) docs(v2): Removed unnecessary closing parenthesis ([@Varshit07](https://github.com/Varshit07))\\n- [#3928](https://github.com/facebook/docusaurus/pull/3928) docs(v2): add FoalTS to showcase page ([@LoicPoullain](https://github.com/LoicPoullain))\\n- [#3899](https://github.com/facebook/docusaurus/pull/3899) docs(v2): Move sidebar content to its own page ([@ArtFlag](https://github.com/ArtFlag))\\n- [#3856](https://github.com/facebook/docusaurus/pull/3856) docs(v2): typo ([@borool](https://github.com/borool))\\n- [#3891](https://github.com/facebook/docusaurus/pull/3891) docs(v2): Wrap section about custom domains in :::info ([@Alex1304](https://github.com/Alex1304))\\n- [#3871](https://github.com/facebook/docusaurus/pull/3871) docs(v2): missing `<ColorGenerator/>` mdx import ([@slorber](https://github.com/slorber))\\n- [#3873](https://github.com/facebook/docusaurus/pull/3873) docs(v2): From docusaurus-migrate to @docusaurus/migrate ([@manzinello](https://github.com/manzinello))\\n- [#3867](https://github.com/facebook/docusaurus/pull/3867) docs(v2): Add docusaurus-plugin-moesif to community plugins ([@dgilling](https://github.com/dgilling))\\n- [#3851](https://github.com/facebook/docusaurus/pull/3851) docs(v2): Fixed Typo: Hided => Hidden ([@woodrufs](https://github.com/woodrufs))\\n- [#3832](https://github.com/facebook/docusaurus/pull/3832) docs(v2): Add wasp to showcase ([@matijaSos](https://github.com/matijaSos))\\n- [#3813](https://github.com/facebook/docusaurus/pull/3813) docs(v2): render deployment doc ([@davidmauskop](https://github.com/davidmauskop))\\n- [#3835](https://github.com/facebook/docusaurus/pull/3835) docs(v2): update Client API docs page ([@Simek](https://github.com/Simek))\\n- [#3831](https://github.com/facebook/docusaurus/pull/3831) docs(v2): Docs refactoring and reorganization ([@slorber](https://github.com/slorber))\\n\\n## :house: Internal\\n\\n- Other\\n - [#3912](https://github.com/facebook/docusaurus/pull/3912) chore(v2): remove docs for alpha v64 ([@lex111](https://github.com/lex111))\\n - [#3907](https://github.com/facebook/docusaurus/pull/3907) chore(ci): fix canary release filtering ([@slorber](https://github.com/slorber))\\n - [#3902](https://github.com/facebook/docusaurus/pull/3902) chore(deps): bump ini from 1.3.5 to 1.3.7 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#3884](https://github.com/facebook/docusaurus/pull/3884) chore(ci): increase Lighthouse CI max_timeout ([@Simek](https://github.com/Simek))\\n - [#3883](https://github.com/facebook/docusaurus/pull/3883) chore(v2): remove docs for alpha v62-63 ([@lex111](https://github.com/lex111))\\n - [#3863](https://github.com/facebook/docusaurus/pull/3863) chore(ci): run V1 Build and Migration CLI tests conditionally on CI ([@Simek](https://github.com/Simek))\\n - [#3861](https://github.com/facebook/docusaurus/pull/3861) chore(ci): reduce number of jobs, remove build from lighthouse pipeline ([@Simek](https://github.com/Simek))\\n - [#3860](https://github.com/facebook/docusaurus/pull/3860) chore: add Yarn v2 cache directory to ignores ([@Simek](https://github.com/Simek))\\n - [#3858](https://github.com/facebook/docusaurus/pull/3858) chore(v2): disable Crowdin for deploy previews ([@slorber](https://github.com/slorber))\\n - [#3857](https://github.com/facebook/docusaurus/pull/3857) fix(v2): fix Crowdin ci commands ([@slorber](https://github.com/slorber))\\n - [#3849](https://github.com/facebook/docusaurus/pull/3849) chore(ci): CI scripts cleanup, add Node 14 runs, bump checkout action ([@Simek](https://github.com/Simek))\\n - [#3850](https://github.com/facebook/docusaurus/pull/3850) chore(v2): i18n CI: add write-translations call ([@slorber](https://github.com/slorber))\\n - [#3848](https://github.com/facebook/docusaurus/pull/3848) chore(v2): fix CI typo ([@slorber](https://github.com/slorber))\\n - [#3847](https://github.com/facebook/docusaurus/pull/3847) chore(v2): wire production Crowdin project + setup ([@slorber](https://github.com/slorber))\\n - [#3846](https://github.com/facebook/docusaurus/pull/3846) chore(v2): fix PRs not able to add lighthouse/buildsize comment from works ([@slorber](https://github.com/slorber))\\n- `docusaurus-1.x`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`\\n - [#3865](https://github.com/facebook/docusaurus/pull/3865) chore(v2): fix ignore paths and Prettier commands in themes ([@Simek](https://github.com/Simek))\\n- `docusaurus-cssnano-preset`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-sitemap`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-types`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`\\n - [#3844](https://github.com/facebook/docusaurus/pull/3844) chore(v2): fix several lint warnings, add missing types, cleanup ([@Simek](https://github.com/Simek))\\n- `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-theme-common`, `docusaurus-theme-search-algolia`\\n - [#3838](https://github.com/facebook/docusaurus/pull/3838) refactor(v2): extract site title formatter to theme-common util ([@Simek](https://github.com/Simek))\\n\\n## Committers: 23\\n\\n- Aar\xf3n Garc\xeda Herv\xe1s ([@aarongarciah](https://github.com/aarongarciah))\\n- Alex1304 ([@Alex1304](https://github.com/Alex1304))\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Arthur ([@ArtFlag](https://github.com/ArtFlag))\\n- Bartosz Kaszubowski ([@Simek](https://github.com/Simek))\\n- Cindy Gu ([@cindygu4](https://github.com/cindygu4))\\n- Derric Gilling ([@dgilling](https://github.com/dgilling))\\n- Fran\xe7ois Chalifour ([@francoischalifour](https://github.com/francoischalifour))\\n- Hadrien Milano ([@hmil](https://github.com/hmil))\\n- Kaartic Sivaraam ([@sivaraam](https://github.com/sivaraam))\\n- Lo\xefc Poullain ([@LoicPoullain](https://github.com/LoicPoullain))\\n- Matija Sosic ([@matijaSos](https://github.com/matijaSos))\\n- Matteo Manzinello ([@manzinello](https://github.com/manzinello))\\n- M\xe9ril ([@mpsq](https://github.com/mpsq))\\n- Oliver Ullman ([@oriooctopus](https://github.com/oriooctopus))\\n- Rami ([@Romstar](https://github.com/Romstar))\\n- Sarthak kundra ([@sarthakkundra](https://github.com/sarthakkundra))\\n- Stephen Woodruff ([@woodrufs](https://github.com/woodrufs))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Varshit Shah ([@Varshit07](https://github.com/Varshit07))\\n- [@borool](https://github.com/borool)\\n- [@davidmauskop](https://github.com/davidmauskop)\\n- hackerman ([@aeneasr](https://github.com/aeneasr))"},{"id":"/2.0.0-alpha.69","metadata":{"permalink":"/changelog/2.0.0-alpha.69","source":"@site/changelog/source/2.0.0-alpha.69.md","title":"2.0.0-alpha.69","description":"New Feature","date":"2020-11-24T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Ma\xebl Nison","alias":"arcanis","url":"https://github.com/arcanis","imageURL":"https://github.com/arcanis.png","key":"arcanis","page":null},{"name":"camiluc","alias":"camiluc","url":"https://github.com/camiluc","imageURL":"https://github.com/camiluc.png","key":"camiluc","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Bartosz Kaszubowski","alias":"Simek","url":"https://github.com/Simek","imageURL":"https://github.com/Simek.png","key":"Simek","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-11-24T20:00","authors":["arcanis","camiluc","lex111","Simek","slorber"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.70","permalink":"/changelog/2.0.0-alpha.70"},"nextItem":{"title":"2.0.0-alpha.68","permalink":"/changelog/2.0.0-alpha.68"},"listPageLink":"/changelog/page/3"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-types`, `docusaurus`\\n - [#3802](https://github.com/facebook/docusaurus/pull/3802) feat(v2): add baseUrlIssueBanner configuration to disable banner ([@slorber](https://github.com/slorber))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`\\n - [#3807](https://github.com/facebook/docusaurus/pull/3807) chore(v2): upgrade Infima to v0.2.0-alpha.18 ([@lex111](https://github.com/lex111))\\n - [#3806](https://github.com/facebook/docusaurus/pull/3806) fix(v2): remove aria-hidden attr from anchor link of heading ([@lex111](https://github.com/lex111))\\n - [#3784](https://github.com/facebook/docusaurus/pull/3784) fix(v2): fix missing logo in dark theme when darkSrc was not set ([@Simek](https://github.com/Simek))\\n- `docusaurus-theme-search-algolia`\\n - [#3804](https://github.com/facebook/docusaurus/pull/3804) fix(v2): Algolia: allow contextualSearch + facetFilters ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#3796](https://github.com/facebook/docusaurus/pull/3796) Adds createRequire for preset resolution ([@arcanis](https://github.com/arcanis))\\n\\n## :memo: Documentation\\n\\n- [#3803](https://github.com/facebook/docusaurus/pull/3803) docs(v2): fix docusaurus init issue when not using @latest ([@slorber](https://github.com/slorber))\\n- [#3785](https://github.com/facebook/docusaurus/pull/3785) docs(v2): recommend Docusaurus 2 usage ([@slorber](https://github.com/slorber))\\n- [#3783](https://github.com/facebook/docusaurus/pull/3783) docs(v2): remove @next tags needed to install v2 packages ([@slorber](https://github.com/slorber))\\n- [#3781](https://github.com/facebook/docusaurus/pull/3781) docs(v2): rename zeit to vercel ([@camiluc](https://github.com/camiluc))\\n\\n## :house: Internal\\n\\n- [#3800](https://github.com/facebook/docusaurus/pull/3800) chore(v2): remove useless stylelint-copyright peerDependency ([@slorber](https://github.com/slorber))\\n- [#3786](https://github.com/facebook/docusaurus/pull/3786) chore(v2): ensure publishConfig.access presence with tests ([@slorber](https://github.com/slorber))\\n\\n## Committers: 5\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Bartosz Kaszubowski ([@Simek](https://github.com/Simek))\\n- Ma\xebl Nison ([@arcanis](https://github.com/arcanis))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- [@camiluc](https://github.com/camiluc)"},{"id":"/2.0.0-alpha.68","metadata":{"permalink":"/changelog/2.0.0-alpha.68","source":"@site/changelog/source/2.0.0-alpha.68.md","title":"2.0.0-alpha.68","description":"New Feature","date":"2020-11-18T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"iAmir","alias":"AmyrAhmady","url":"https://github.com/AmyrAhmady","imageURL":"https://github.com/AmyrAhmady.png","key":"AmyrAhmady","page":null},{"name":"Artem Kovalov","alias":"artemkovalyov","url":"https://github.com/artemkovalyov","imageURL":"https://github.com/artemkovalyov.png","key":"artemkovalyov","page":null},{"name":"Beno\xeet Lemaire","alias":"belemaire","url":"https://github.com/belemaire","imageURL":"https://github.com/belemaire.png","key":"belemaire","page":null},{"name":"Charles Korn","alias":"charleskorn","url":"https://github.com/charleskorn","imageURL":"https://github.com/charleskorn.png","key":"charleskorn","page":null},{"name":"David Goss","alias":"davidjgoss","url":"https://github.com/davidjgoss","imageURL":"https://github.com/davidjgoss.png","key":"davidjgoss","page":null},{"name":"Bright Egbo","alias":"egbobright","url":"https://github.com/egbobright","imageURL":"https://github.com/egbobright.png","key":"egbobright","page":null},{"name":"Hai","alias":"haivp3010","url":"https://github.com/haivp3010","imageURL":"https://github.com/haivp3010.png","key":"haivp3010","page":null},{"name":"Anh Hong","alias":"hong4rc","url":"https://github.com/hong4rc","imageURL":"https://github.com/hong4rc.png","key":"hong4rc","page":null},{"name":"Jainam Chirag Shah","alias":"jcs98","url":"https://github.com/jcs98","imageURL":"https://github.com/jcs98.png","key":"jcs98","page":null},{"name":"\u741A\u81F4\u8FDC","alias":"juzhiyuan","url":"https://github.com/juzhiyuan","imageURL":"https://github.com/juzhiyuan.png","key":"juzhiyuan","page":null},{"name":"Roman Bug","alias":"ka1bi4","url":"https://github.com/ka1bi4","imageURL":"https://github.com/ka1bi4.png","key":"ka1bi4","page":null},{"name":"kenve","alias":"kenve","url":"https://github.com/kenve","imageURL":"https://github.com/kenve.png","key":"kenve","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Nate Giraudeau","alias":"nategiraudeau","url":"https://github.com/nategiraudeau","imageURL":"https://github.com/nategiraudeau.png","key":"nategiraudeau","page":null},{"name":"Nico Domino","alias":"ndom91","url":"https://github.com/ndom91","imageURL":"https://github.com/ndom91.png","key":"ndom91","page":null},{"name":"Rhys Arkins","alias":"rarkins","url":"https://github.com/rarkins","imageURL":"https://github.com/rarkins.png","key":"rarkins","page":null},{"name":"Sam Zhou","alias":"SamChou19815","url":"https://github.com/SamChou19815","imageURL":"https://github.com/SamChou19815.png","key":"SamChou19815","page":null},{"name":"sammychinedu2ky","alias":"sammychinedu2ky","url":"https://github.com/sammychinedu2ky","imageURL":"https://github.com/sammychinedu2ky.png","key":"sammychinedu2ky","page":null},{"name":"Gergely Sinka","alias":"sigewuzhere","url":"https://github.com/sigewuzhere","imageURL":"https://github.com/sigewuzhere.png","key":"sigewuzhere","page":null},{"name":"Bartosz Kaszubowski","alias":"Simek","url":"https://github.com/Simek","imageURL":"https://github.com/Simek.png","key":"Simek","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Stephen McElhinney","alias":"smcelhinney","url":"https://github.com/smcelhinney","imageURL":"https://github.com/smcelhinney.png","key":"smcelhinney","page":null},{"name":"Thakur Karthik","alias":"ThakurKarthik","url":"https://github.com/ThakurKarthik","imageURL":"https://github.com/ThakurKarthik.png","key":"ThakurKarthik","page":null},{"name":"Marc Rabat Pla","alias":"vanbasten17","url":"https://github.com/vanbasten17","imageURL":"https://github.com/vanbasten17.png","key":"vanbasten17","page":null},{"name":"Shenwei Wang","alias":"weareoutman","url":"https://github.com/weareoutman","imageURL":"https://github.com/weareoutman.png","key":"weareoutman","page":null},{"name":"ylemkimon","alias":"ylemkimon","url":"https://github.com/ylemkimon","imageURL":"https://github.com/ylemkimon.png","key":"ylemkimon","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-11-18T20:00","authors":["AmyrAhmady","artemkovalyov","belemaire","charleskorn","davidjgoss","egbobright","haivp3010","hong4rc","jcs98","juzhiyuan","ka1bi4","kenve","lex111","nategiraudeau","ndom91","rarkins","SamChou19815","sammychinedu2ky","sigewuzhere","Simek","slorber","smcelhinney","ThakurKarthik","vanbasten17","weareoutman","ylemkimon"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.69","permalink":"/changelog/2.0.0-alpha.69"},"nextItem":{"title":"2.0.0-alpha.67","permalink":"/changelog/2.0.0-alpha.67"},"listPageLink":"/changelog/page/3"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- Other\\n - [#3717](https://github.com/facebook/docusaurus/pull/3717) feat(v2): official CodeSandbox support ([@sammychinedu2ky](https://github.com/sammychinedu2ky))\\n- `docusaurus-init`\\n - [#3729](https://github.com/facebook/docusaurus/pull/3729) feat(v2): allow init project via npm ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`\\n - [#3730](https://github.com/facebook/docusaurus/pull/3730) feat(v2): add ThemedImage component ([@Simek](https://github.com/Simek))\\n- `docusaurus-cssnano-preset`, `docusaurus-theme-classic`, `docusaurus`\\n - [#3716](https://github.com/facebook/docusaurus/pull/3716) feat(v2): introduce new minification of CSS bundle ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#3694](https://github.com/facebook/docusaurus/pull/3694) feat(v2): Added the ability to specify GIT_PASS in deploy command (for CI purposes) ([@smcelhinney](https://github.com/smcelhinney))\\n - [#3621](https://github.com/facebook/docusaurus/pull/3621) feat(v2): baseUrl config issues: show help message if css/js can\'t load ([@jcs98](https://github.com/jcs98))\\n - [#3594](https://github.com/facebook/docusaurus/pull/3594) feat(v2): add support for key,cert in https ([@ThakurKarthik](https://github.com/ThakurKarthik))\\n- `docusaurus-remark-plugin-npm2yarn`\\n - [#3705](https://github.com/facebook/docusaurus/pull/3705) feat(v2): add support for sync to npm2yarn tabs ([@lex111](https://github.com/lex111))\\n- `docusaurus-init`, `docusaurus-migrate`, `docusaurus-plugin-content-docs`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`\\n - [#3658](https://github.com/facebook/docusaurus/pull/3658) feat(v2): onBrokenMarkdownLinks config ([@AmyrAhmady](https://github.com/AmyrAhmady))\\n- `docusaurus-theme-classic`\\n - [#3640](https://github.com/facebook/docusaurus/pull/3640) feat(v2): add skip to content link ([@lex111](https://github.com/lex111))\\n - [#3615](https://github.com/facebook/docusaurus/pull/3615) feat(v2): add ability to hide doc sidebar ([@lex111](https://github.com/lex111))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`\\n - [#3749](https://github.com/facebook/docusaurus/pull/3749) fix(v2): add support for interleaving Markdown in code blocks ([@lex111](https://github.com/lex111))\\n - [#3739](https://github.com/facebook/docusaurus/pull/3739) fix(v2): add support for prefers-reduced-motion in hideable sidebar ([@lex111](https://github.com/lex111))\\n - [#3726](https://github.com/facebook/docusaurus/pull/3726) fix(v2): add thin scrollbar to proper element in TOC ([@lex111](https://github.com/lex111))\\n - [#3681](https://github.com/facebook/docusaurus/pull/3681) Revert \\"refactor(v2): improve regex matching code-block title\\" ([@lex111](https://github.com/lex111))\\n - [#3662](https://github.com/facebook/docusaurus/pull/3662) fix(v2): navbar dropdown crash when item.to is undefined ([@artemkovalyov](https://github.com/artemkovalyov))\\n - [#3669](https://github.com/facebook/docusaurus/pull/3669) fix(v2): make scrollbar styles consistent ([@nategiraudeau](https://github.com/nategiraudeau))\\n - [#3666](https://github.com/facebook/docusaurus/pull/3666) fix(v2): make optional title for footer links column ([@lex111](https://github.com/lex111))\\n - [#3647](https://github.com/facebook/docusaurus/pull/3647) fix(v2): do not set height for mobile dropdown during build ([@lex111](https://github.com/lex111))\\n - [#3650](https://github.com/facebook/docusaurus/pull/3650) fix(v2): add landmark for skip to content link ([@lex111](https://github.com/lex111))\\n - [#3627](https://github.com/facebook/docusaurus/pull/3627) fix(v2): disable tabbing on hidden doc sidebar ([@lex111](https://github.com/lex111))\\n - [#3637](https://github.com/facebook/docusaurus/pull/3637) fix(v2): wrap code blocks on print ([@haivp3010](https://github.com/haivp3010))\\n - [#3603](https://github.com/facebook/docusaurus/pull/3603) fix(v2): animate dropdown properly ([@lex111](https://github.com/lex111))\\n - [#3611](https://github.com/facebook/docusaurus/pull/3611) fix(v2): Added back support for optional logo field in theme-classic navbarConfig ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-theme-classic`, `docusaurus`\\n - [#3763](https://github.com/facebook/docusaurus/pull/3763) refactor(v2): various markup improvements ([@lex111](https://github.com/lex111))\\n - [#3724](https://github.com/facebook/docusaurus/pull/3724) fix(v2): add support for non-ASCII chars in anchor link scroll ([@lex111](https://github.com/lex111))\\n- `docusaurus-module-type-aliases`, `docusaurus`\\n - [#3723](https://github.com/facebook/docusaurus/pull/3723) fix(v2): restore prefetch functionality ([@lex111](https://github.com/lex111))\\n- Other\\n - [#3760](https://github.com/facebook/docusaurus/pull/3760) fix(v2): codesandbox generated examples should use published init package ([@slorber](https://github.com/slorber))\\n - [#3701](https://github.com/facebook/docusaurus/pull/3701) fix(v2): limit images height on showcase page ([@lex111](https://github.com/lex111))\\n- `docusaurus-mdx-loader`\\n - [#3757](https://github.com/facebook/docusaurus/pull/3757) fix(v2): escape alt text in img tag ([@lex111](https://github.com/lex111))\\n - [#3653](https://github.com/facebook/docusaurus/pull/3653) fix(v2): handle multiple asset links in one line properly ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-search-algolia`, `docusaurus-utils`\\n - [#3721](https://github.com/facebook/docusaurus/pull/3721) fix(v2): use swizzled SearchPage component if any ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#3725](https://github.com/facebook/docusaurus/pull/3725) fix(v2): fix inconsistent error output in swizzle command ([@lex111](https://github.com/lex111))\\n - [#3704](https://github.com/facebook/docusaurus/pull/3704) refactor(v2): allow adding plugins depending on condition ([@lex111](https://github.com/lex111))\\n - [#3691](https://github.com/facebook/docusaurus/pull/3691) fix(v2): use SVGO in webpack SVGR loader ([@charleskorn](https://github.com/charleskorn))\\n - [#3667](https://github.com/facebook/docusaurus/pull/3667) fix(v2): Fix typo in BaseUrlSuggestionWarning ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-utils`\\n - [#3703](https://github.com/facebook/docusaurus/pull/3703) fix(v2): ignore export declarations in excerpt ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-search-algolia`\\n - [#3639](https://github.com/facebook/docusaurus/pull/3639) fix(v2): restore infinite scroll pagination on search page ([@lex111](https://github.com/lex111))\\n- `docusaurus-types`, `docusaurus`\\n - [#3622](https://github.com/facebook/docusaurus/pull/3622) fix(v2): docusaurus start --poll 500 should work + better config load failure error ([@slorber](https://github.com/slorber))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus`\\n - [#3765](https://github.com/facebook/docusaurus/pull/3765) chore(v2): replace wait-file with wait-on to reduce npm warnings ([@lex111](https://github.com/lex111))\\n - [#3725](https://github.com/facebook/docusaurus/pull/3725) fix(v2): fix inconsistent error output in swizzle command ([@lex111](https://github.com/lex111))\\n - [#3609](https://github.com/facebook/docusaurus/pull/3609) refactor(v2): Improve SSR error message: log page path ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#3764](https://github.com/facebook/docusaurus/pull/3764) refactor(v2): make accessible anchor links from keyboard ([@lex111](https://github.com/lex111))\\n - [#3745](https://github.com/facebook/docusaurus/pull/3745) refactor(v2): introduce Logo component, remove useLogo hook ([@Simek](https://github.com/Simek))\\n - [#3706](https://github.com/facebook/docusaurus/pull/3706) refactor(v2): render all tab panels at once ([@lex111](https://github.com/lex111))\\n - [#3712](https://github.com/facebook/docusaurus/pull/3712) chore(v2): upgrade Infima to v0.2.0-alpha.15 ([@lex111](https://github.com/lex111))\\n - [#3685](https://github.com/facebook/docusaurus/pull/3685) refactor(v2): improve regex matching code-block title ([@hong4rc](https://github.com/hong4rc))\\n - [#3674](https://github.com/facebook/docusaurus/pull/3674) feat(v2): add additional wrapper class to blog pages ([@Simek](https://github.com/Simek))\\n - [#3671](https://github.com/facebook/docusaurus/pull/3671) refactor(v2): improve regex matching code-block title ([@hong4rc](https://github.com/hong4rc))\\n - [#3654](https://github.com/facebook/docusaurus/pull/3654) refactor(v2): clean up code blocks ([@lex111](https://github.com/lex111))\\n - [#3649](https://github.com/facebook/docusaurus/pull/3649) refactor(v2): make code blocks scrollable from keyboard ([@lex111](https://github.com/lex111))\\n - [#3626](https://github.com/facebook/docusaurus/pull/3626) refactor(v2): remove focus outline from mouse users ([@lex111](https://github.com/lex111))\\n- `docusaurus-init`\\n - [#3709](https://github.com/facebook/docusaurus/pull/3709) chore(v2): adjust website npm package ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`\\n - [#3707](https://github.com/facebook/docusaurus/pull/3707) chore(v2): upgrade Infima to v0.2.0-alpha.14 ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`, `docusaurus-utils-validation`, `docusaurus`\\n - [#3638](https://github.com/facebook/docusaurus/pull/3638) chore(v2): migrate hapi/joi to joi ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-search-algolia`\\n - [#3604](https://github.com/facebook/docusaurus/pull/3604) refactor(v2): use new way to get versions for search page ([@lex111](https://github.com/lex111))\\n\\n## :memo: Documentation\\n\\n- Other\\n - [#3762](https://github.com/facebook/docusaurus/pull/3762) Adding ConfigCat to showcase ([@sigewuzhere](https://github.com/sigewuzhere))\\n - [#3750](https://github.com/facebook/docusaurus/pull/3750) docs(v2): add npm2yarn to typescript install command ([@davidjgoss](https://github.com/davidjgoss))\\n - [#3743](https://github.com/facebook/docusaurus/pull/3743) docs(v2): convert teams page to MDX ([@slorber](https://github.com/slorber))\\n - [#3737](https://github.com/facebook/docusaurus/pull/3737) docs(v2): add Inline SVG color override example ([@Simek](https://github.com/Simek))\\n - [#3718](https://github.com/facebook/docusaurus/pull/3718) docs(v2): showcase Botonic ([@vanbasten17](https://github.com/vanbasten17))\\n - [#3696](https://github.com/facebook/docusaurus/pull/3696) docs(v2): normalize showcase preview images height ([@Simek](https://github.com/Simek))\\n - [#3699](https://github.com/facebook/docusaurus/pull/3699) docs(v2): deployment should use mdx extension ([@slorber](https://github.com/slorber))\\n - [#3695](https://github.com/facebook/docusaurus/pull/3695) docs(v2): add React Native website to the showcase ([@Simek](https://github.com/Simek))\\n - [#3645](https://github.com/facebook/docusaurus/pull/3645) Update Docusaurus v2 Showcase ([@ndom91](https://github.com/ndom91))\\n - [#3644](https://github.com/facebook/docusaurus/pull/3644) docs(v2): update the link of joi ([@kenve](https://github.com/kenve))\\n - [#3636](https://github.com/facebook/docusaurus/pull/3636) docs(v2): fix some misspellings ([@ka1bi4](https://github.com/ka1bi4))\\n - [#3630](https://github.com/facebook/docusaurus/pull/3630) docs: remove runme ([@juzhiyuan](https://github.com/juzhiyuan))\\n- `docusaurus-remark-plugin-npm2yarn`\\n - [#3624](https://github.com/facebook/docusaurus/pull/3624) Fix typo in remark-plugin-npm2yarn documentation ([@belemaire](https://github.com/belemaire))\\n\\n## :house: Internal\\n\\n- Other\\n - [#3769](https://github.com/facebook/docusaurus/pull/3769) docs(v2): fix statements background, update footer background ([@Simek](https://github.com/Simek))\\n - [#3744](https://github.com/facebook/docusaurus/pull/3744) chore(v2): add build size bot workflow GitHub CI workflow ([@jcs98](https://github.com/jcs98))\\n - [#3741](https://github.com/facebook/docusaurus/pull/3741) chore: update yarn lock again ([@slorber](https://github.com/slorber))\\n - [#3740](https://github.com/facebook/docusaurus/pull/3740) chore: update yarn lock ([@slorber](https://github.com/slorber))\\n - [#3738](https://github.com/facebook/docusaurus/pull/3738) chore(internal): add yarn deduplicate script, cleanup lock ([@Simek](https://github.com/Simek))\\n - [#3732](https://github.com/facebook/docusaurus/pull/3732) fix(internal): fix clear script from the main package.json ([@Simek](https://github.com/Simek))\\n - [#3708](https://github.com/facebook/docusaurus/pull/3708) chore(v2): remove docs for alpha v60-61 ([@lex111](https://github.com/lex111))\\n - [#3693](https://github.com/facebook/docusaurus/pull/3693) fix(v2): fix website scripts on Windows by using cross-env ([@Simek](https://github.com/Simek))\\n - [#3673](https://github.com/facebook/docusaurus/pull/3673) test(e2e): dogfood Yarn with enableGlobalCache ([@ylemkimon](https://github.com/ylemkimon))\\n - [#3641](https://github.com/facebook/docusaurus/pull/3641) misc: fix unbound env variable in test release script ([@lex111](https://github.com/lex111))\\n- `docusaurus-mdx-loader`, `docusaurus-migrate`, `lqip-loader`\\n - [#3766](https://github.com/facebook/docusaurus/pull/3766) chore(v2): fix several npm warnings ([@lex111](https://github.com/lex111))\\n- `docusaurus-mdx-loader`\\n - [#3753](https://github.com/facebook/docusaurus/pull/3753) chore(v2): fix mismatch peer dependency in MDX loader ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#3742](https://github.com/facebook/docusaurus/pull/3742) chore(v2): pin version of babel-plugin-dynamic-import-node to 2.3.0 ([@lex111](https://github.com/lex111))\\n - [#3734](https://github.com/facebook/docusaurus/pull/3734) chore(v2): downgrade babel-plugin-dynamic-import-node to 2.3.0 ([@lex111](https://github.com/lex111))\\n - [#3714](https://github.com/facebook/docusaurus/pull/3714) chore(v2): fix prettier formatting ([@slorber](https://github.com/slorber))\\n - [#3619](https://github.com/facebook/docusaurus/pull/3619) refactor(v2): add better error message for yarn workspace/monorepo/terser issue ([@slorber](https://github.com/slorber))\\n- `docusaurus-1.x`, `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-pwa`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus`\\n - [#3727](https://github.com/facebook/docusaurus/pull/3727) chore(v2): upgrade dependencies ([@lex111](https://github.com/lex111))\\n- `docusaurus-1.x`\\n - [#3715](https://github.com/facebook/docusaurus/pull/3715) chore(v2): update Browserslist ([@lex111](https://github.com/lex111))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-sitemap`\\n - [#3675](https://github.com/facebook/docusaurus/pull/3675) fix(v2): add missing \'react\' and \'webpack\' peer dependencies ([@ylemkimon](https://github.com/ylemkimon))\\n- `docusaurus-1.x`, `docusaurus-init-1.x`, `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-module-type-aliases`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-preset-bootstrap`, `docusaurus-preset-classic`, `docusaurus-remark-plugin-npm2yarn`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-types`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `lqip-loader`, `stylelint-copyright`\\n - [#3613](https://github.com/facebook/docusaurus/pull/3613) fix: add repository metadata to all packages ([@rarkins](https://github.com/rarkins))\\n\\n## Committers: 26\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Anh Hong ([@hong4rc](https://github.com/hong4rc))\\n- Artem Kovalov ([@artemkovalyov](https://github.com/artemkovalyov))\\n- Bartosz Kaszubowski ([@Simek](https://github.com/Simek))\\n- Beno\xeet Lemaire ([@belemaire](https://github.com/belemaire))\\n- Bright Egbo ([@egbobright](https://github.com/egbobright))\\n- Charles Korn ([@charleskorn](https://github.com/charleskorn))\\n- David Goss ([@davidjgoss](https://github.com/davidjgoss))\\n- Gergely Sinka ([@sigewuzhere](https://github.com/sigewuzhere))\\n- Hai ([@haivp3010](https://github.com/haivp3010))\\n- Jainam Chirag Shah ([@jcs98](https://github.com/jcs98))\\n- Marc Rabat Pla ([@vanbasten17](https://github.com/vanbasten17))\\n- Nate Giraudeau ([@nategiraudeau](https://github.com/nategiraudeau))\\n- Nico Domino ([@ndom91](https://github.com/ndom91))\\n- Rhys Arkins ([@rarkins](https://github.com/rarkins))\\n- Roman Bug ([@ka1bi4](https://github.com/ka1bi4))\\n- Sam Zhou ([@SamChou19815](https://github.com/SamChou19815))\\n- Shenwei Wang ([@weareoutman](https://github.com/weareoutman))\\n- Stephen McElhinney ([@smcelhinney](https://github.com/smcelhinney))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Thakur Karthik ([@ThakurKarthik](https://github.com/ThakurKarthik))\\n- [@sammychinedu2ky](https://github.com/sammychinedu2ky)\\n- iAmir ([@AmyrAhmady](https://github.com/AmyrAhmady))\\n- kenve ([@kenve](https://github.com/kenve))\\n- ylemkimon ([@ylemkimon](https://github.com/ylemkimon))\\n- \u741A\u81F4\u8FDC ([@juzhiyuan](https://github.com/juzhiyuan))"},{"id":"/2.0.0-alpha.67","metadata":{"permalink":"/changelog/2.0.0-alpha.67","source":"@site/changelog/source/2.0.0-alpha.67.md","title":"2.0.0-alpha.67","description":"Failed release","date":"2020-11-18T19:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[],"frontMatter":{"mdx":{"format":"md"},"date":"2020-11-18T19:00"},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.68","permalink":"/changelog/2.0.0-alpha.68"},"nextItem":{"title":"2.0.0-alpha.66","permalink":"/changelog/2.0.0-alpha.66"},"listPageLink":"/changelog/page/4"},"content":"\x3c!-- truncate --\x3e\\n\\nFailed release"},{"id":"/2.0.0-alpha.66","metadata":{"permalink":"/changelog/2.0.0-alpha.66","source":"@site/changelog/source/2.0.0-alpha.66.md","title":"2.0.0-alpha.66","description":"New Feature","date":"2020-10-19T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"aakhtar3","alias":"aakhtar3","url":"https://github.com/aakhtar3","imageURL":"https://github.com/aakhtar3.png","key":"aakhtar3","page":null},{"name":"Abhishek Tiwari","alias":"abhishektiwari","url":"https://github.com/abhishektiwari","imageURL":"https://github.com/abhishektiwari.png","key":"abhishektiwari","page":null},{"name":"Christian Bromann","alias":"christian-bromann","url":"https://github.com/christian-bromann","imageURL":"https://github.com/christian-bromann.png","key":"christian-bromann","page":null},{"name":"Fanny","alias":"fanny","url":"https://github.com/fanny","imageURL":"https://github.com/fanny.png","key":"fanny","page":null},{"name":"Hamza Hamidi","alias":"hamzahamidi","url":"https://github.com/hamzahamidi","imageURL":"https://github.com/hamzahamidi.png","key":"hamzahamidi","page":null},{"name":"honlyHuang","alias":"honlyHuang","url":"https://github.com/honlyHuang","imageURL":"https://github.com/honlyHuang.png","key":"honlyHuang","page":null},{"name":"Shubham Kumar","alias":"imskr","url":"https://github.com/imskr","imageURL":"https://github.com/imskr.png","key":"imskr","page":null},{"name":"John Gracey","alias":"jagracey","url":"https://github.com/jagracey","imageURL":"https://github.com/jagracey.png","key":"jagracey","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Matan Borenkraout","alias":"MatanBobi","url":"https://github.com/MatanBobi","imageURL":"https://github.com/MatanBobi.png","key":"MatanBobi","page":null},{"name":"Russ Taylor","alias":"russtaylor","url":"https://github.com/russtaylor","imageURL":"https://github.com/russtaylor.png","key":"russtaylor","page":null},{"name":"SaintMalik","alias":"saintmalik","url":"https://github.com/saintmalik","imageURL":"https://github.com/saintmalik.png","key":"saintmalik","page":null},{"name":"Shubham Zanwar","alias":"shubhamzanwar","url":"https://github.com/shubhamzanwar","imageURL":"https://github.com/shubhamzanwar.png","key":"shubhamzanwar","page":null},{"name":"Bartosz Kaszubowski","alias":"Simek","url":"https://github.com/Simek","imageURL":"https://github.com/Simek.png","key":"Simek","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Umair Kamran","alias":"UmairKamran","url":"https://github.com/UmairKamran","imageURL":"https://github.com/UmairKamran.png","key":"UmairKamran","page":null},{"name":"Utkarsh Goel","alias":"utkarsh867","url":"https://github.com/utkarsh867","imageURL":"https://github.com/utkarsh867.png","key":"utkarsh867","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-10-19T20:00","authors":["aakhtar3","abhishektiwari","christian-bromann","fanny","hamzahamidi","honlyHuang","imskr","jagracey","lex111","MatanBobi","russtaylor","saintmalik","shubhamzanwar","Simek","slorber","UmairKamran","utkarsh867"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.67","permalink":"/changelog/2.0.0-alpha.67"},"nextItem":{"title":"2.0.0-alpha.65","permalink":"/changelog/2.0.0-alpha.65"},"listPageLink":"/changelog/page/4"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`\\n - [#3593](https://github.com/facebook/docusaurus/pull/3593) feat(v2): blog sidebar ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`, `docusaurus-remark-plugin-npm2yarn`\\n - [#3469](https://github.com/facebook/docusaurus/pull/3469) feat(v2): Extract npm2yarn plugin ([@fanny](https://github.com/fanny))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`\\n - [#3550](https://github.com/facebook/docusaurus/pull/3550) feat(v2): contextual search, dynamic Algolia facetFilters ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#3580](https://github.com/facebook/docusaurus/pull/3580) feat(v2): allow to define custom CSS class for Tabs component ([@Simek](https://github.com/Simek))\\n - [#3553](https://github.com/facebook/docusaurus/pull/3553) feat(v2): make dropdown menu collapsible on mobiles ([@lex111](https://github.com/lex111))\\n- `docusaurus-migrate`, `docusaurus-types`, `docusaurus`\\n - [#3573](https://github.com/facebook/docusaurus/pull/3573) feat(v2): Add themeConfig.noIndex option #3528 ([@hamzahamidi](https://github.com/hamzahamidi))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus`\\n - [#3543](https://github.com/facebook/docusaurus/pull/3543) feat(v2): persist docs preferred version ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus`\\n - [#3548](https://github.com/facebook/docusaurus/pull/3548) feat(v2): version dropdown before/after items + move site \\"All Versions\\" link ([@slorber](https://github.com/slorber))\\n- `docusaurus-types`, `docusaurus`\\n - [#3545](https://github.com/facebook/docusaurus/pull/3545) feat(v2): site client modules ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#3539](https://github.com/facebook/docusaurus/pull/3539) feat(v2): doc navbar item type ([@slorber](https://github.com/slorber))\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`\\n - [#3550](https://github.com/facebook/docusaurus/pull/3550) feat(v2): contextual search, dynamic Algolia facetFilters ([@slorber](https://github.com/slorber))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`, `docusaurus`\\n - [#3607](https://github.com/facebook/docusaurus/pull/3607) fix(v2): fix error with required href attr of link in mobiles ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`\\n - [#3602](https://github.com/facebook/docusaurus/pull/3602) fix(v2): make dropdown button clickable with mouse ([@lex111](https://github.com/lex111))\\n - [#3601](https://github.com/facebook/docusaurus/pull/3601) fix(v2): fix table-of-content scroll highlighting issues ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`\\n - [#3599](https://github.com/facebook/docusaurus/pull/3599) fix(v2): remove event listeners on Tabs component unmount ([@lex111](https://github.com/lex111))\\n- `docusaurus-types`, `docusaurus`\\n - [#3531](https://github.com/facebook/docusaurus/pull/3531) fix(v2): Fixes serve cli --port option ([@UmairKamran](https://github.com/UmairKamran))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#3585](https://github.com/facebook/docusaurus/pull/3585) refactor(v2): various dropdown improvements ([@lex111](https://github.com/lex111))\\n - [#3588](https://github.com/facebook/docusaurus/pull/3588) refactor(v2): make accessible copy code button from keyboard ([@lex111](https://github.com/lex111))\\n - [#3578](https://github.com/facebook/docusaurus/pull/3578) refactor(v2): apply common behavior to dropdowns ([@lex111](https://github.com/lex111))\\n - [#3546](https://github.com/facebook/docusaurus/pull/3546) docs: various fixes and improvements ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus`\\n - [#3587](https://github.com/facebook/docusaurus/pull/3587) refactor(v2): various fixes ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#3569](https://github.com/facebook/docusaurus/pull/3569) refactor(v2): improve broken links error message ([@slorber](https://github.com/slorber))\\n\\n## :memo: Documentation\\n\\n- Other\\n - [#3576](https://github.com/facebook/docusaurus/pull/3576) docs(v2): removed obsolete \\"you\\" identifier ([@christian-bromann](https://github.com/christian-bromann))\\n - [#3589](https://github.com/facebook/docusaurus/pull/3589) docs(v2): add taro to users ([@honlyHuang](https://github.com/honlyHuang))\\n - [#3565](https://github.com/facebook/docusaurus/pull/3565) docs(v2): deployment, add required GitHub token scope infos ([@russtaylor](https://github.com/russtaylor))\\n - [#3574](https://github.com/facebook/docusaurus/pull/3574) docs(v2): adding vue-nodegui to users ([@shubhamzanwar](https://github.com/shubhamzanwar))\\n - [#3556](https://github.com/facebook/docusaurus/pull/3556) Added Axioms to users ([@abhishektiwari](https://github.com/abhishektiwari))\\n - [#3558](https://github.com/facebook/docusaurus/pull/3558) docs(v2): embedding real source code in MDX as a code block ([@slorber](https://github.com/slorber))\\n - [#3555](https://github.com/facebook/docusaurus/pull/3555) docs(v2): add \\"Wisdom\\" dev docs website to showcase. ([@jagracey](https://github.com/jagracey))\\n - [#3532](https://github.com/facebook/docusaurus/pull/3532) docs(v2): change package name in example script ([@MatanBobi](https://github.com/MatanBobi))\\n - [#3538](https://github.com/facebook/docusaurus/pull/3538) docs(v1): added drone for 1.0 #3491 ([@aakhtar3](https://github.com/aakhtar3))\\n - [#3533](https://github.com/facebook/docusaurus/pull/3533) docs(v1): Fix broken link in the documentation ([@saintmalik](https://github.com/saintmalik))\\n - [#3534](https://github.com/facebook/docusaurus/pull/3534) docs(v2): Fix url bugs in v2 docs ([@saintmalik](https://github.com/saintmalik))\\n- `docusaurus-theme-classic`\\n - [#3546](https://github.com/facebook/docusaurus/pull/3546) docs: various fixes and improvements ([@lex111](https://github.com/lex111))\\n\\n## :house: Internal\\n\\n- `docusaurus-theme-search-algolia`\\n - [#3591](https://github.com/facebook/docusaurus/pull/3591) chore(v2): enable new contextual search feature ([@slorber](https://github.com/slorber))\\n- Other\\n - [#3586](https://github.com/facebook/docusaurus/pull/3586) chore(v2): fix/upgrade react types ([@slorber](https://github.com/slorber))\\n - [#3577](https://github.com/facebook/docusaurus/pull/3577) refactor(v2): clarify versions page ([@lex111](https://github.com/lex111))\\n - [#3560](https://github.com/facebook/docusaurus/pull/3560) feat(v2): prevent using remote image urls in showcase ([@slorber](https://github.com/slorber))\\n - [#3554](https://github.com/facebook/docusaurus/pull/3554) fix(v2): use absolute path to manifest file ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`\\n - [#3394](https://github.com/facebook/docusaurus/pull/3394) refactor(v2): add useThemeConfig hook + cleanup useless theme default values ([@imskr](https://github.com/imskr))\\n\\n## Committers: 17\\n\\n- Abhishek Tiwari ([@abhishektiwari](https://github.com/abhishektiwari))\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Bartosz Kaszubowski ([@Simek](https://github.com/Simek))\\n- Christian Bromann ([@christian-bromann](https://github.com/christian-bromann))\\n- Fanny ([@fanny](https://github.com/fanny))\\n- Hamza Hamidi ([@hamzahamidi](https://github.com/hamzahamidi))\\n- John Gracey ([@jagracey](https://github.com/jagracey))\\n- Matan Borenkraout ([@MatanBobi](https://github.com/MatanBobi))\\n- Russ Taylor ([@russtaylor](https://github.com/russtaylor))\\n- SaintMalik ([@saintmalik](https://github.com/saintmalik))\\n- Shubham Kumar ([@imskr](https://github.com/imskr))\\n- Shubham Zanwar ([@shubhamzanwar](https://github.com/shubhamzanwar))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Umair Kamran ([@UmairKamran](https://github.com/UmairKamran))\\n- Utkarsh Goel ([@utkarsh867](https://github.com/utkarsh867))\\n- [@aakhtar3](https://github.com/aakhtar3)\\n- honlyHuang ([@honlyHuang](https://github.com/honlyHuang))"},{"id":"/2.0.0-alpha.65","metadata":{"permalink":"/changelog/2.0.0-alpha.65","source":"@site/changelog/source/2.0.0-alpha.65.md","title":"2.0.0-alpha.65","description":"New Feature","date":"2020-10-02T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"aakhtar3","alias":"aakhtar3","url":"https://github.com/aakhtar3","imageURL":"https://github.com/aakhtar3.png","key":"aakhtar3","page":null},{"name":"Henry V\xe9lez","alias":"abadon7","url":"https://github.com/abadon7","imageURL":"https://github.com/abadon7.png","key":"abadon7","page":null},{"name":"hackerman","alias":"aeneasr","url":"https://github.com/aeneasr","imageURL":"https://github.com/aeneasr.png","key":"aeneasr","page":null},{"name":"Andrey Rublev","alias":"anru","url":"https://github.com/anru","imageURL":"https://github.com/anru.png","key":"anru","page":null},{"name":"Nahiyan Kamal","alias":"ayonious","url":"https://github.com/ayonious","imageURL":"https://github.com/ayonious.png","key":"ayonious","page":null},{"name":"R\xe9mi Doreau","alias":"ayshiff","url":"https://github.com/ayshiff","imageURL":"https://github.com/ayshiff.png","key":"ayshiff","page":null},{"name":"Gr\xe9gory Heitz","alias":"edno","url":"https://github.com/edno","imageURL":"https://github.com/edno.png","key":"edno","page":null},{"name":"Jeremy Hager","alias":"jeremyhager","url":"https://github.com/jeremyhager","imageURL":"https://github.com/jeremyhager.png","key":"jeremyhager","page":null},{"name":"Joel Marcey","alias":"JoelMarcey","url":"https://github.com/JoelMarcey","imageURL":"https://github.com/JoelMarcey.png","key":"JoelMarcey","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Long Ho","alias":"longlho","url":"https://github.com/longlho","imageURL":"https://github.com/longlho.png","key":"longlho","page":null},{"name":"moonrailgun","alias":"moonrailgun","url":"https://github.com/moonrailgun","imageURL":"https://github.com/moonrailgun.png","key":"moonrailgun","page":null},{"name":"Muskan Kumar","alias":"muskanvk","url":"https://github.com/muskanvk","imageURL":"https://github.com/muskanvk.png","key":"muskanvk","page":null},{"name":"Sam Zhou","alias":"SamChou19815","url":"https://github.com/SamChou19815","imageURL":"https://github.com/SamChou19815.png","key":"SamChou19815","page":null},{"name":"Bartosz Kaszubowski","alias":"Simek","url":"https://github.com/Simek","imageURL":"https://github.com/Simek.png","key":"Simek","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Tim Gates","alias":"timgates42","url":"https://github.com/timgates42","imageURL":"https://github.com/timgates42.png","key":"timgates42","page":null},{"name":"Yangshun Tay","alias":"yangshun","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png","key":"yangshun","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-10-02T20:00","authors":["aakhtar3","abadon7","aeneasr","anru","ayonious","ayshiff","edno","jeremyhager","JoelMarcey","lex111","longlho","moonrailgun","muskanvk","SamChou19815","Simek","slorber","timgates42","yangshun"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.66","permalink":"/changelog/2.0.0-alpha.66"},"nextItem":{"title":"2.0.0-alpha.64","permalink":"/changelog/2.0.0-alpha.64"},"listPageLink":"/changelog/page/4"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus`\\n - [#3497](https://github.com/facebook/docusaurus/pull/3497) feat(v2): env variable TERSER_PARALLEL to customize TerserPlugin.parallel ([@aeneasr](https://github.com/aeneasr))\\n - [#3446](https://github.com/facebook/docusaurus/pull/3446) feat(v2): new docusaurus clear command ([@abadon7](https://github.com/abadon7))\\n - [#3485](https://github.com/facebook/docusaurus/pull/3485) feat(v2): Add @theme-init components to user theme ([@edno](https://github.com/edno))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`\\n - [#3467](https://github.com/facebook/docusaurus/pull/3467) feat(v2): add beforeDefaultRemarkPlugins/beforeDefaultRehypePlugins options to all md content plugins ([@ayshiff](https://github.com/ayshiff))\\n- `docusaurus-init`, `docusaurus-theme-bootstrap`\\n - [#3496](https://github.com/facebook/docusaurus/pull/3496) feat(v2): migrate bootstrap components to ts ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#3474](https://github.com/facebook/docusaurus/pull/3474) feat(v2): allow to use array of files in customCss field ([@Simek](https://github.com/Simek))\\n- `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`\\n - [#3457](https://github.com/facebook/docusaurus/pull/3457) feat(v2): add optional custom wrapper class name for pages based on theme classic Layout ([@Simek](https://github.com/Simek))\\n\\n## :bug: Bug Fix\\n\\n- Other\\n - [#3517](https://github.com/facebook/docusaurus/pull/3517) fix(v1): v1 deploy preview should be available ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#3498](https://github.com/facebook/docusaurus/pull/3498) fix(v2): fixed props being passed to @svgr/webpack loader ([@anru](https://github.com/anru))\\n- `docusaurus-theme-search-algolia`\\n - [#3456](https://github.com/facebook/docusaurus/pull/3456) fix(v2): use valid value for crossorigin attribute ([@lex111](https://github.com/lex111))\\n- `docusaurus-utils`\\n - [#3427](https://github.com/facebook/docusaurus/pull/3427) fix(v2): normalizeUrl edge cases ([@ayshiff](https://github.com/ayshiff))\\n- `docusaurus-theme-classic`\\n - [#3472](https://github.com/facebook/docusaurus/pull/3472) fix(v2): Show dropdown instead of a single button when there are two versions ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-plugin-content-docs`\\n - [#3441](https://github.com/facebook/docusaurus/pull/3441) fix(v2): fixing typo in error message ([@ayonious](https://github.com/ayonious))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#3499](https://github.com/facebook/docusaurus/pull/3499) chore(v2): upgrade Infima to 0.2.0-alpha.13 ([@lex111](https://github.com/lex111))\\n\\n## :memo: Documentation\\n\\n- `docusaurus`\\n - [#3502](https://github.com/facebook/docusaurus/pull/3502) docs(v2): add doc for wrapping theme components with @theme-original and @theme-init ([@slorber](https://github.com/slorber))\\n- Other\\n - [#3473](https://github.com/facebook/docusaurus/pull/3473) misc: add License to the documentation ([@muskanvk](https://github.com/muskanvk))\\n - [#3492](https://github.com/facebook/docusaurus/pull/3492) docs(v2): Added drone.io publish docs #3491 ([@aakhtar3](https://github.com/aakhtar3))\\n - [#3479](https://github.com/facebook/docusaurus/pull/3479) docs(v2): remove redundant new line in code block ([@lex111](https://github.com/lex111))\\n - [#3448](https://github.com/facebook/docusaurus/pull/3448) chore(v2): fix theme classic navbar style docs ([@Simek](https://github.com/Simek))\\n\\n## :house: Internal\\n\\n- `docusaurus-1.x`, `docusaurus-migrate`\\n - [#3504](https://github.com/facebook/docusaurus/pull/3504) chore(v1): move v1 docs inside website-1.x ([@slorber](https://github.com/slorber))\\n- Other\\n - [#3506](https://github.com/facebook/docusaurus/pull/3506) chore(v2): v2 website should make it easy to contribute to upstream docs ([@slorber](https://github.com/slorber))\\n - [#3511](https://github.com/facebook/docusaurus/pull/3511) misc: update CODEOWNERS ([@yangshun](https://github.com/yangshun))\\n - [#3477](https://github.com/facebook/docusaurus/pull/3477) chore(v2): remove alpha 58 doc ([@lex111](https://github.com/lex111))\\n- `docusaurus-utils-validation`\\n - [#3453](https://github.com/facebook/docusaurus/pull/3453) test(v2): add protocol relative uri validation test ([@moonrailgun](https://github.com/moonrailgun))\\n\\n## Committers: 18\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Andrey Rublev ([@anru](https://github.com/anru))\\n- Bartosz Kaszubowski ([@Simek](https://github.com/Simek))\\n- Gr\xe9gory Heitz ([@edno](https://github.com/edno))\\n- Henry V\xe9lez ([@abadon7](https://github.com/abadon7))\\n- Jeremy Hager ([@jeremyhager](https://github.com/jeremyhager))\\n- Joel Marcey ([@JoelMarcey](https://github.com/JoelMarcey))\\n- Long Ho ([@longlho](https://github.com/longlho))\\n- Muskan Kumar ([@muskanvk](https://github.com/muskanvk))\\n- Nahiyan Kamal ([@ayonious](https://github.com/ayonious))\\n- R\xe9mi Doreau ([@ayshiff](https://github.com/ayshiff))\\n- Sam Zhou ([@SamChou19815](https://github.com/SamChou19815))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Tim Gates ([@timgates42](https://github.com/timgates42))\\n- Yangshun Tay ([@yangshun](https://github.com/yangshun))\\n- [@aakhtar3](https://github.com/aakhtar3)\\n- hackerman ([@aeneasr](https://github.com/aeneasr))\\n- moonrailgun ([@moonrailgun](https://github.com/moonrailgun))"},{"id":"/2.0.0-alpha.64","metadata":{"permalink":"/changelog/2.0.0-alpha.64","source":"@site/changelog/source/2.0.0-alpha.64.md","title":"2.0.0-alpha.64","description":"New Feature","date":"2020-09-11T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Ash","alias":"ashscodes","url":"https://github.com/ashscodes","imageURL":"https://github.com/ashscodes.png","key":"ashscodes","page":null},{"name":"josephMG","alias":"josephMG","url":"https://github.com/josephMG","imageURL":"https://github.com/josephMG.png","key":"josephMG","page":null},{"name":"M\xe9ril","alias":"mpsq","url":"https://github.com/mpsq","imageURL":"https://github.com/mpsq.png","key":"mpsq","page":null},{"name":"Rutik Wankhade","alias":"rutikwankhade","url":"https://github.com/rutikwankhade","imageURL":"https://github.com/rutikwankhade.png","key":"rutikwankhade","page":null},{"name":"Bartosz Kaszubowski","alias":"Simek","url":"https://github.com/Simek","imageURL":"https://github.com/Simek.png","key":"Simek","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Thad Guidry","alias":"thadguidry","url":"https://github.com/thadguidry","imageURL":"https://github.com/thadguidry.png","key":"thadguidry","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-09-11T20:00","authors":["ashscodes","josephMG","mpsq","rutikwankhade","Simek","slorber","thadguidry"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.65","permalink":"/changelog/2.0.0-alpha.65"},"nextItem":{"title":"2.0.0-alpha.63","permalink":"/changelog/2.0.0-alpha.63"},"listPageLink":"/changelog/page/4"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-theme-classic`\\n - [#3432](https://github.com/facebook/docusaurus/pull/3432) feat(v2): add style property to theme-classic navbar ([@Simek](https://github.com/Simek))\\n - [#3406](https://github.com/facebook/docusaurus/pull/3406) feat(v2): ability to add/override theme html metadatas ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-sitemap`\\n - [#3426](https://github.com/facebook/docusaurus/pull/3426) feat(v2): add option to add trailing slash to urls in sitemap ([@mpsq](https://github.com/mpsq))\\n\\n## :bug: Bug Fix\\n\\n- Other\\n - [#3438](https://github.com/facebook/docusaurus/pull/3438) fix(v2): docusaurus 2 PWA should work under baseurl (deploy previews) ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`\\n - [#3435](https://github.com/facebook/docusaurus/pull/3435) fix(v2): fix empty link error message ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-pwa`\\n - [#3436](https://github.com/facebook/docusaurus/pull/3436) fix(v2): Correctly resolve sw.js path on windows ([@ashscodes](https://github.com/ashscodes))\\n- `docusaurus-theme-classic`\\n - [#3433](https://github.com/facebook/docusaurus/pull/3433) fix(v2): fix theme-classic announcement bar closeable style ([@Simek](https://github.com/Simek))\\n- `docusaurus-1.x`\\n - [#3429](https://github.com/facebook/docusaurus/pull/3429) fix(v1): versioned_docs and skip-next-release relative path issue ([@josephMG](https://github.com/josephMG))\\n- `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`\\n - [#3418](https://github.com/facebook/docusaurus/pull/3418) fix(v2): reset sidebar state on sidebar changes ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-debug`\\n - [#3405](https://github.com/facebook/docusaurus/pull/3405) fix(v2): fix debug plugin unscoped inline code global css ([@slorber](https://github.com/slorber))\\n\\n## :memo: Documentation\\n\\n- [#3428](https://github.com/facebook/docusaurus/pull/3428) docs(v2): fix grammar ([@thadguidry](https://github.com/thadguidry))\\n- [#3425](https://github.com/facebook/docusaurus/pull/3425) docs(v2): mention Eta in ssrTemplate section ([@mpsq](https://github.com/mpsq))\\n- [#3423](https://github.com/facebook/docusaurus/pull/3423) docs(v2): minor typo fix ([@rutikwankhade](https://github.com/rutikwankhade))\\n\\n## :house: Internal\\n\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus`\\n - [#3439](https://github.com/facebook/docusaurus/pull/3439) chore(v2): fix serialize-javascript security issue by upgrading webpack/workbox ([@slorber](https://github.com/slorber))\\n- Other\\n - [#3401](https://github.com/facebook/docusaurus/pull/3401) chore(deps): bump decompress from 4.2.0 to 4.2.1 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n\\n## Committers: 7\\n\\n- Ash ([@ashscodes](https://github.com/ashscodes))\\n- Bartosz Kaszubowski ([@Simek](https://github.com/Simek))\\n- M\xe9ril ([@mpsq](https://github.com/mpsq))\\n- Rutik Wankhade ([@rutikwankhade](https://github.com/rutikwankhade))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Thad Guidry ([@thadguidry](https://github.com/thadguidry))\\n- [@josephMG](https://github.com/josephMG)"},{"id":"/2.0.0-alpha.63","metadata":{"permalink":"/changelog/2.0.0-alpha.63","source":"@site/changelog/source/2.0.0-alpha.63.md","title":"2.0.0-alpha.63","description":"New Feature","date":"2020-09-03T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"M\xe9ril","alias":"mpsq","url":"https://github.com/mpsq","imageURL":"https://github.com/mpsq.png","key":"mpsq","page":null},{"name":"Sam Ko","alias":"samsisle","url":"https://github.com/samsisle","imageURL":"https://github.com/samsisle.png","key":"samsisle","page":null},{"name":"Bartosz Kaszubowski","alias":"Simek","url":"https://github.com/Simek","imageURL":"https://github.com/Simek.png","key":"Simek","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Thad Guidry","alias":"thadguidry","url":"https://github.com/thadguidry","imageURL":"https://github.com/thadguidry.png","key":"thadguidry","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-09-03T20:00","authors":["mpsq","samsisle","Simek","slorber","thadguidry"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.64","permalink":"/changelog/2.0.0-alpha.64"},"nextItem":{"title":"2.0.0-alpha.62","permalink":"/changelog/2.0.0-alpha.62"},"listPageLink":"/changelog/page/4"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-types`, `docusaurus`\\n - [#3387](https://github.com/facebook/docusaurus/pull/3387) feat(v2): allow users to specify a custom ssr HTML template ([@mpsq](https://github.com/mpsq))\\n- `docusaurus-plugin-debug`\\n - [#3392](https://github.com/facebook/docusaurus/pull/3392) feat(v2): officially release @docusaurus/plugin-debug ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#3388](https://github.com/facebook/docusaurus/pull/3388) feat(v2): add isCloseable property for theme-classic announcement bar ([@Simek](https://github.com/Simek))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#3373](https://github.com/facebook/docusaurus/pull/3373) feat(v2): docs options.onlyIncludeVersions ([@slorber](https://github.com/slorber))\\n\\n## :bug: Bug Fix\\n\\n- Other\\n - [#3397](https://github.com/facebook/docusaurus/pull/3397) fix(v2): DocSearch should keep working after a new release (part 2/2) ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#3393](https://github.com/facebook/docusaurus/pull/3393) fix(v2): DocSearch should keep working after a new release (part 1/2) ([@slorber](https://github.com/slorber))\\n - [#3381](https://github.com/facebook/docusaurus/pull/3381) fix(v2): alpha 62 doc fixes ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#3385](https://github.com/facebook/docusaurus/pull/3385) fix(v2): scripts should allow unknown values ([@slorber](https://github.com/slorber))\\n- `docusaurus-preset-bootstrap`, `docusaurus-preset-classic`, `docusaurus-theme-classic`, `docusaurus`\\n - [#3382](https://github.com/facebook/docusaurus/pull/3382) fix(v2): allow using classic theme/preset without the docs plugin ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-utils-validation`\\n - [#3377](https://github.com/facebook/docusaurus/pull/3377) fix(v2): reject routeBasePath: \'\' ([@slorber](https://github.com/slorber))\\n\\n## :memo: Documentation\\n\\n- [#3390](https://github.com/facebook/docusaurus/pull/3390) docs(v1, v2): Update Deploy to Vercel guide ([@samsisle](https://github.com/samsisle))\\n- [#3344](https://github.com/facebook/docusaurus/pull/3344) docs(v2): Update Deploy to Vercel guide ([@samsisle](https://github.com/samsisle))\\n\\n## :house: Internal\\n\\n- `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-preset-bootstrap`, `docusaurus-preset-classic`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-types`, `docusaurus-utils-validation`, `docusaurus`\\n - [#3386](https://github.com/facebook/docusaurus/pull/3386) chore(v2): pin exact dependency versions ([@slorber](https://github.com/slorber))\\n- `docusaurus-1.x`, `docusaurus-init-1.x`, `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-module-type-aliases`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-preset-bootstrap`, `docusaurus-preset-classic`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-types`, `docusaurus-utils-validation`, `docusaurus-utils`, `docusaurus`, `lqip-loader`, `stylelint-copyright`\\n - [#3359](https://github.com/facebook/docusaurus/pull/3359) chore(v2): prepare v2.0.0.alpha-62 release ([@slorber](https://github.com/slorber))\\n\\n## Committers: 5\\n\\n- Bartosz Kaszubowski ([@Simek](https://github.com/Simek))\\n- M\xe9ril ([@mpsq](https://github.com/mpsq))\\n- Sam Ko ([@samsisle](https://github.com/samsisle))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Thad Guidry ([@thadguidry](https://github.com/thadguidry))"},{"id":"/2.0.0-alpha.62","metadata":{"permalink":"/changelog/2.0.0-alpha.62","source":"@site/changelog/source/2.0.0-alpha.62.md","title":"2.0.0-alpha.62","description":"New Feature","date":"2020-08-28T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"adinaja","alias":"adinaja","url":"https://github.com/adinaja","imageURL":"https://github.com/adinaja.png","key":"adinaja","page":null},{"name":"Franklyn Chisom","alias":"ajifrank75","url":"https://github.com/ajifrank75","imageURL":"https://github.com/ajifrank75.png","key":"ajifrank75","page":null},{"name":"Ali Hosseini","alias":"Ako92","url":"https://github.com/Ako92","imageURL":"https://github.com/Ako92.png","key":"Ako92","page":null},{"name":"Amy Lei","alias":"amy-lei","url":"https://github.com/amy-lei","imageURL":"https://github.com/amy-lei.png","key":"amy-lei","page":null},{"name":"Anshul Goyal","alias":"anshulrgoyal","url":"https://github.com/anshulrgoyal","imageURL":"https://github.com/anshulrgoyal.png","key":"anshulrgoyal","page":null},{"name":"Archit","alias":"arcvats","url":"https://github.com/arcvats","imageURL":"https://github.com/arcvats.png","key":"arcvats","page":null},{"name":"Arthur Flam","alias":"arthur-flam","url":"https://github.com/arthur-flam","imageURL":"https://github.com/arthur-flam.png","key":"arthur-flam","page":null},{"name":"Bogdan Doroschenko","alias":"BogdanDor","url":"https://github.com/BogdanDor","imageURL":"https://github.com/BogdanDor.png","key":"BogdanDor","page":null},{"name":"alex busnelli","alias":"boosh511","url":"https://github.com/boosh511","imageURL":"https://github.com/boosh511.png","key":"boosh511","page":null},{"name":"Daniel Wilkowski","alias":"Danon","url":"https://github.com/Danon","imageURL":"https://github.com/Danon.png","key":"Danon","page":null},{"name":"Drew Alexander","alias":"Drewbi","url":"https://github.com/Drewbi","imageURL":"https://github.com/Drewbi.png","key":"Drewbi","page":null},{"name":"Derek","alias":"dschaller","url":"https://github.com/dschaller","imageURL":"https://github.com/dschaller.png","key":"dschaller","page":null},{"name":"Fanny","alias":"fanny","url":"https://github.com/fanny","imageURL":"https://github.com/fanny.png","key":"fanny","page":null},{"name":"Nisarag","alias":"FocalChord","url":"https://github.com/FocalChord","imageURL":"https://github.com/FocalChord.png","key":"FocalChord","page":null},{"name":"Fran\xe7ois Chalifour","alias":"francoischalifour","url":"https://github.com/francoischalifour","imageURL":"https://github.com/francoischalifour.png","key":"francoischalifour","page":null},{"name":"Govardhan Srinivas","alias":"govardhan-srinivas","url":"https://github.com/govardhan-srinivas","imageURL":"https://github.com/govardhan-srinivas.png","key":"govardhan-srinivas","page":null},{"name":"Yang Luo","alias":"hsluoyz","url":"https://github.com/hsluoyz","imageURL":"https://github.com/hsluoyz.png","key":"hsluoyz","page":null},{"name":"Shubham Kumar","alias":"imskr","url":"https://github.com/imskr","imageURL":"https://github.com/imskr.png","key":"imskr","page":null},{"name":"Jean-Marc Saad","alias":"JeanMarcSaad","url":"https://github.com/JeanMarcSaad","imageURL":"https://github.com/JeanMarcSaad.png","key":"JeanMarcSaad","page":null},{"name":"Jonas Dellinger","alias":"JohnnyCrazy","url":"https://github.com/JohnnyCrazy","imageURL":"https://github.com/JohnnyCrazy.png","key":"JohnnyCrazy","page":null},{"name":"Jonathan","alias":"Jonathannsegal","url":"https://github.com/Jonathannsegal","imageURL":"https://github.com/Jonathannsegal.png","key":"Jonathannsegal","page":null},{"name":"lebogang Olifant","alias":"lebogangolifant","url":"https://github.com/lebogangolifant","imageURL":"https://github.com/lebogangolifant.png","key":"lebogangolifant","page":null},{"name":"leoigel","alias":"leoigel","url":"https://github.com/leoigel","imageURL":"https://github.com/leoigel.png","key":"leoigel","page":null},{"name":"Manuel Cepeda","alias":"mecm1993","url":"https://github.com/mecm1993","imageURL":"https://github.com/mecm1993.png","key":"mecm1993","page":null},{"name":"Mirzayev Farid","alias":"MirzayevFarid","url":"https://github.com/MirzayevFarid","imageURL":"https://github.com/MirzayevFarid.png","key":"MirzayevFarid","page":null},{"name":"Ben Gubler","alias":"nebrelbug","url":"https://github.com/nebrelbug","imageURL":"https://github.com/nebrelbug.png","key":"nebrelbug","page":null},{"name":"Olawanle Joel","alias":"olawanlejoel","url":"https://github.com/olawanlejoel","imageURL":"https://github.com/olawanlejoel.png","key":"olawanlejoel","page":null},{"name":"Orta Therox","alias":"orta","url":"https://github.com/orta","imageURL":"https://github.com/orta.png","key":"orta","page":null},{"name":"Sam Zhou","alias":"SamChou19815","url":"https://github.com/SamChou19815","imageURL":"https://github.com/SamChou19815.png","key":"SamChou19815","page":null},{"name":"shalinikumari50","alias":"shalinikumari50","url":"https://github.com/shalinikumari50","imageURL":"https://github.com/shalinikumari50.png","key":"shalinikumari50","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Sourav Dey","alias":"Souravdey777","url":"https://github.com/Souravdey777","imageURL":"https://github.com/Souravdey777.png","key":"Souravdey777","page":null},{"name":"Teik Jun","alias":"teikjun","url":"https://github.com/teikjun","imageURL":"https://github.com/teikjun.png","key":"teikjun","page":null},{"name":"Hani Mohammed","alias":"thehanimo","url":"https://github.com/thehanimo","imageURL":"https://github.com/thehanimo.png","key":"thehanimo","page":null},{"name":"Tolunay Akbulut","alias":"tolunayakbulut","url":"https://github.com/tolunayakbulut","imageURL":"https://github.com/tolunayakbulut.png","key":"tolunayakbulut","page":null},{"name":"Vandr\xe9 Leal","alias":"vandreleal","url":"https://github.com/vandreleal","imageURL":"https://github.com/vandreleal.png","key":"vandreleal","page":null},{"name":"Vincent","alias":"Vinnl","url":"https://github.com/Vinnl","imageURL":"https://github.com/Vinnl.png","key":"Vinnl","page":null},{"name":"Yangshun Tay","alias":"yangshun","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png","key":"yangshun","page":null},{"name":"ylemkimon","alias":"ylemkimon","url":"https://github.com/ylemkimon","imageURL":"https://github.com/ylemkimon.png","key":"ylemkimon","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-08-28T20:00","authors":["adinaja","ajifrank75","Ako92","amy-lei","anshulrgoyal","arcvats","arthur-flam","BogdanDor","boosh511","Danon","Drewbi","dschaller","fanny","FocalChord","francoischalifour","govardhan-srinivas","hsluoyz","imskr","JeanMarcSaad","JohnnyCrazy","Jonathannsegal","lebogangolifant","leoigel","mecm1993","MirzayevFarid","nebrelbug","olawanlejoel","orta","SamChou19815","shalinikumari50","slorber","Souravdey777","teikjun","thehanimo","tolunayakbulut","vandreleal","Vinnl","yangshun","ylemkimon"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.63","permalink":"/changelog/2.0.0-alpha.63"},"nextItem":{"title":"2.0.0-alpha.61","permalink":"/changelog/2.0.0-alpha.61"},"listPageLink":"/changelog/page/4"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#3357](https://github.com/facebook/docusaurus/pull/3357) feat(v2): docs version configuration: lastVersion, version.{path,label} ([@slorber](https://github.com/slorber))\\n - [#3328](https://github.com/facebook/docusaurus/pull/3328) feat(v2): Provide docs plugin theme typing ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-theme-classic`\\n - [#3356](https://github.com/facebook/docusaurus/pull/3356) feat(v2): Provide type definitions for remaining theme-classic components ([@SamChou19815](https://github.com/SamChou19815))\\n - [#3274](https://github.com/facebook/docusaurus/pull/3274) feat(v2): add TOC to blog posts ([@amy-lei](https://github.com/amy-lei))\\n- `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`\\n - [#3354](https://github.com/facebook/docusaurus/pull/3354) feat(v2): Provide type definitions for MDXPage from page plugin ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#3348](https://github.com/facebook/docusaurus/pull/3348) feat(v2): Provide typing to most of the theme-classic components ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-init`, `docusaurus-plugin-content-blog`\\n - [#3284](https://github.com/facebook/docusaurus/pull/3284) feat(v2): blog slug frontmatter ([@JeanMarcSaad](https://github.com/JeanMarcSaad))\\n- `docusaurus-init`, `docusaurus-theme-bootstrap`\\n - [#2981](https://github.com/facebook/docusaurus/pull/2981) feat(v2): bootstrap theme, preset, template, CI previews ([@fanny](https://github.com/fanny))\\n- `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`\\n - [#3267](https://github.com/facebook/docusaurus/pull/3267) feat(v2): Provide blog plugin theme typing ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-debug`, `docusaurus-preset-classic`, `docusaurus-theme-bootstrap`, `docusaurus-types`, `docusaurus`\\n - [#3229](https://github.com/facebook/docusaurus/pull/3229) feat(v2): debug pages + debug layout + ability to debug content ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-types`, `docusaurus`\\n - [#3021](https://github.com/facebook/docusaurus/pull/3021) feat(v2): update swizzle command to suggest component/theme ([@anshulrgoyal](https://github.com/anshulrgoyal))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-pages`\\n - [#3196](https://github.com/facebook/docusaurus/pull/3196) feat(v2): add support to ignore files in pages plugin ([@anshulrgoyal](https://github.com/anshulrgoyal))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-utils-validation`, `docusaurus`\\n - [#3204](https://github.com/facebook/docusaurus/pull/3204) feat(v2): blog + docs multi-instance plugins ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`\\n - [#3096](https://github.com/facebook/docusaurus/pull/3096) feat(v2): add support to import assets using relative link in markdown syntax ([@anshulrgoyal](https://github.com/anshulrgoyal))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-migrate`\\n - [#3358](https://github.com/facebook/docusaurus/pull/3358) fix(v2): fix migrate cli paths (sidebars/customcss) ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#3311](https://github.com/facebook/docusaurus/pull/3311) fix(v2): add https support in webpack devserver ([@arcvats](https://github.com/arcvats))\\n - [#3313](https://github.com/facebook/docusaurus/pull/3313) fix(v2): resolve webpack loaders from siteDir/node_modules ([@anshulrgoyal](https://github.com/anshulrgoyal))\\n - [#3308](https://github.com/facebook/docusaurus/pull/3308) fix(v2): brokenLinks should not report links that belong to an existing folder if folder/index.html exists ([@slorber](https://github.com/slorber))\\n - [#3273](https://github.com/facebook/docusaurus/pull/3273) fix: logic error while deciding deploymentBranch ([@thehanimo](https://github.com/thehanimo))\\n - [#3281](https://github.com/facebook/docusaurus/pull/3281) fix(v2): allow swizzling of component even if case doesn\'t match ([@anshulrgoyal](https://github.com/anshulrgoyal))\\n - [#3222](https://github.com/facebook/docusaurus/pull/3222) fix(v2): update react-loadable-ssr-addon to solve yarn2 error ([@slorber](https://github.com/slorber))\\n - [#3191](https://github.com/facebook/docusaurus/pull/3191) fix(v2): add missing `lodash.flatmap` dependency ([@ylemkimon](https://github.com/ylemkimon))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-theme-bootstrap`, `docusaurus-theme-search-algolia`, `docusaurus-types`\\n - [#3355](https://github.com/facebook/docusaurus/pull/3355) fix(v2): Add missing dependencies to packages ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-theme-classic`\\n - [#3352](https://github.com/facebook/docusaurus/pull/3352) fix(v2): Allow the alt for the logo to be empty ([@Vinnl](https://github.com/Vinnl))\\n - [#3240](https://github.com/facebook/docusaurus/pull/3240) fix(v2): navbar dropdown opened with tab, not closing on click outside ([@Ako92](https://github.com/Ako92))\\n- `docusaurus-mdx-loader`, `docusaurus`\\n - [#3347](https://github.com/facebook/docusaurus/pull/3347) fix(v2): linking to asset or external html page -> don\'t use history.push() ([@slorber](https://github.com/slorber))\\n- `docusaurus-1.x`\\n - [#3340](https://github.com/facebook/docusaurus/pull/3340) fix(v1): show images after one line code block ([@adinaja](https://github.com/adinaja))\\n- `docusaurus-1.x`, `docusaurus`\\n - [#3290](https://github.com/facebook/docusaurus/pull/3290) fix(v1,v2): Add initial-scale=1.0 to all meta viewport tags ([@nebrelbug](https://github.com/nebrelbug))\\n- `docusaurus-theme-search-algolia`\\n - [#3297](https://github.com/facebook/docusaurus/pull/3297) fix(v2): keep DocSearch state on remounts ([@francoischalifour](https://github.com/francoischalifour))\\n - [#3280](https://github.com/facebook/docusaurus/pull/3280) fix(v2): allow search page swizzle ([@Ako92](https://github.com/Ako92))\\n - [#3263](https://github.com/facebook/docusaurus/pull/3263) fix(v2): do not index search pages ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-pages`\\n - [#3283](https://github.com/facebook/docusaurus/pull/3283) fix(v2): pass images in static dir to webpack-loader ([@anshulrgoyal](https://github.com/anshulrgoyal))\\n- Other\\n - [#3269](https://github.com/facebook/docusaurus/pull/3269) fix(v2): website feedback page hydration bug ([@mecm1993](https://github.com/mecm1993))\\n - [#3200](https://github.com/facebook/docusaurus/pull/3200) fix(v1): self-host user images ([@leoigel](https://github.com/leoigel))\\n- `docusaurus-plugin-google-gtag`\\n - [#3243](https://github.com/facebook/docusaurus/pull/3243) fix(v2): GTM, send page_view events on navigate ([@govardhan-srinivas](https://github.com/govardhan-srinivas))\\n- `docusaurus-plugin-content-docs`, `docusaurus-utils`\\n - [#3262](https://github.com/facebook/docusaurus/pull/3262) fix(v2): doc path special char (space or other) should lead to a valid slug ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-utils-validation`, `docusaurus`\\n - [#3247](https://github.com/facebook/docusaurus/pull/3247) fix(v2): modify validation schema and tests for rehype/remark + remove duplicate dependency ([@teikjun](https://github.com/teikjun))\\n- `docusaurus-init`\\n - [#3258](https://github.com/facebook/docusaurus/pull/3258) fix(v2): fix template alt image prop ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-utils-validation`, `docusaurus`\\n - [#3227](https://github.com/facebook/docusaurus/pull/3227) fix(v2): relax URI validation ([@anshulrgoyal](https://github.com/anshulrgoyal))\\n- `docusaurus-init`, `docusaurus-plugin-content-docs`\\n - [#3228](https://github.com/facebook/docusaurus/pull/3228) fix(v2): deprecate docs homePageId in favor of frontmatter \\"slug: /\\" ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`, `docusaurus`\\n - [#3225](https://github.com/facebook/docusaurus/pull/3225) fix(v2): swizzle minor improvements ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`\\n - [#3210](https://github.com/facebook/docusaurus/pull/3210) fix(v2): fix theme validation for prism field and add tests ([@teikjun](https://github.com/teikjun))\\n- `docusaurus-plugin-content-docs`\\n - [#3192](https://github.com/facebook/docusaurus/pull/3192) fix(v2): add missing `chalk` and `lodash` dependencies ([@ylemkimon](https://github.com/ylemkimon))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-module-type-aliases`, `docusaurus`\\n - [#3244](https://github.com/facebook/docusaurus/pull/3244) chore(v2): tighten up the TypeScript onboarding ([@orta](https://github.com/orta))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-utils`, `docusaurus`\\n - [#3245](https://github.com/facebook/docusaurus/pull/3245) refactor(v2): docs plugin refactor ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#3188](https://github.com/facebook/docusaurus/pull/3188) fix(v2): Add a missing whitespace before prompt to use `npm run serve` ([@SamChou19815](https://github.com/SamChou19815))\\n\\n## :memo: Documentation\\n\\n- Other\\n - [#3346](https://github.com/facebook/docusaurus/pull/3346) docs(v2): add draft doc ([@imskr](https://github.com/imskr))\\n - [#3336](https://github.com/facebook/docusaurus/pull/3336) docs(v2): add Nisarag to Fellows section ([@FocalChord](https://github.com/FocalChord))\\n - [#3335](https://github.com/facebook/docusaurus/pull/3335) docs(v2): update team profile ([@yangshun](https://github.com/yangshun))\\n - [#3334](https://github.com/facebook/docusaurus/pull/3334) docs(v2): add Drew to Fellows section ([@Drewbi](https://github.com/Drewbi))\\n - [#3333](https://github.com/facebook/docusaurus/pull/3333) docs(v2): add anshul and teikjun to fellows section of team page ([@teikjun](https://github.com/teikjun))\\n - [#3326](https://github.com/facebook/docusaurus/pull/3326) docs(v1): showcase user Casbin ([@hsluoyz](https://github.com/hsluoyz))\\n - [#3316](https://github.com/facebook/docusaurus/pull/3316) docs(v1): add Global CTO Forum to users ([@MirzayevFarid](https://github.com/MirzayevFarid))\\n - [#3310](https://github.com/facebook/docusaurus/pull/3310) docs(v2): add \\"T-Regx\\" website to showcase ([@Danon](https://github.com/Danon))\\n - [#3307](https://github.com/facebook/docusaurus/pull/3307) docs(v2): showcase SpotifyAPI-NET ([@JohnnyCrazy](https://github.com/JohnnyCrazy))\\n - [#3295](https://github.com/facebook/docusaurus/pull/3295) docs(v2): showcase Oxidizer ([@vandreleal](https://github.com/vandreleal))\\n - [#3287](https://github.com/facebook/docusaurus/pull/3287) docs: update README.md with some grammatical corrections ([@shalinikumari50](https://github.com/shalinikumari50))\\n - [#3271](https://github.com/facebook/docusaurus/pull/3271) docs(v2): fix typo ([@thehanimo](https://github.com/thehanimo))\\n - [#3277](https://github.com/facebook/docusaurus/pull/3277) docs(v1): Add Radity to users ([@tolunayakbulut](https://github.com/tolunayakbulut))\\n - [#3276](https://github.com/facebook/docusaurus/pull/3276) docs: corrected some few typos in the docusaurus tech docs ([@ajifrank75](https://github.com/ajifrank75))\\n - [#3249](https://github.com/facebook/docusaurus/pull/3249) docs(v2): fix migration command ([@BogdanDor](https://github.com/BogdanDor))\\n - [#3248](https://github.com/facebook/docusaurus/pull/3248) Added twitter badge and modified discord Badges ([@Souravdey777](https://github.com/Souravdey777))\\n - [#3251](https://github.com/facebook/docusaurus/pull/3251) docs(v2): fix migration command for earlier versions ([@teikjun](https://github.com/teikjun))\\n - [#3252](https://github.com/facebook/docusaurus/pull/3252) docs(v2): docs typos ([@olawanlejoel](https://github.com/olawanlejoel))\\n - [#3111](https://github.com/facebook/docusaurus/pull/3111) docs(v2): clarify theme-original and theme-init ([@Jonathannsegal](https://github.com/Jonathannsegal))\\n - [#3232](https://github.com/facebook/docusaurus/pull/3232) docs(v2): showcase user QA-Board ([@arthur-flam](https://github.com/arthur-flam))\\n - [#3205](https://github.com/facebook/docusaurus/pull/3205) docs: format reference links ([@lebogangolifant](https://github.com/lebogangolifant))\\n - [#3194](https://github.com/facebook/docusaurus/pull/3194) docs(v2): Added switch config docs to theme-classic API ([@Drewbi](https://github.com/Drewbi))\\n - [#3201](https://github.com/facebook/docusaurus/pull/3201) docs(v2): removed duplicate text under \\"Using React\\" section ([@boosh511](https://github.com/boosh511))\\n - [#3186](https://github.com/facebook/docusaurus/pull/3186) docs(v1): formatting changelog ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#3202](https://github.com/facebook/docusaurus/pull/3202) fix(v2): fix svg loader ([@anshulrgoyal](https://github.com/anshulrgoyal))\\n\\n## :house: Internal\\n\\n- `docusaurus-migrate`\\n - [#3323](https://github.com/facebook/docusaurus/pull/3323) test(v2): Add unit test for migration of config file ([@BogdanDor](https://github.com/BogdanDor))\\n- `docusaurus-theme-classic`\\n - [#3343](https://github.com/facebook/docusaurus/pull/3343) refactor(v2): announcement bar bad spelling + minor refactors ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-blog`\\n - [#3339](https://github.com/facebook/docusaurus/pull/3339) test(v2): make blog posts unit test ordering determinate ([@BogdanDor](https://github.com/BogdanDor))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`, `docusaurus-types`\\n - [#3306](https://github.com/facebook/docusaurus/pull/3306) chore(v2): Define type for markdown right table of contents ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-module-type-aliases`, `docusaurus`\\n - [#3244](https://github.com/facebook/docusaurus/pull/3244) chore(v2): tighten up the TypeScript onboarding ([@orta](https://github.com/orta))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-utils`, `docusaurus`\\n - [#3245](https://github.com/facebook/docusaurus/pull/3245) refactor(v2): docs plugin refactor ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#3282](https://github.com/facebook/docusaurus/pull/3282) chore(v2): fix javascript-serialize vulnerability ([@slorber](https://github.com/slorber))\\n - [#3265](https://github.com/facebook/docusaurus/pull/3265) chore(v2): upgrade terser-webpack-plugin ([@dschaller](https://github.com/dschaller))\\n- Other\\n - [#3241](https://github.com/facebook/docusaurus/pull/3241) chore(deps): bump prismjs from 1.20.0 to 1.21.0 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#3259](https://github.com/facebook/docusaurus/pull/3259) chore(v2): fix slow commits due to lint-staged ([@slorber](https://github.com/slorber))\\n - [#3197](https://github.com/facebook/docusaurus/pull/3197) chore(v2): lockfile update ([@slorber](https://github.com/slorber))\\n- `docusaurus-1.x`\\n - [#3218](https://github.com/facebook/docusaurus/pull/3218) chore(v1): release 1.14.6 ([@slorber](https://github.com/slorber))\\n\\n## :running: Performance\\n\\n- `docusaurus-plugin-client-redirects`, `docusaurus-theme-search-algolia`, `docusaurus`\\n - [#3238](https://github.com/facebook/docusaurus/pull/3238) refactor(v2): precompile ETA templates ([@slorber](https://github.com/slorber))\\n\\n## Committers: 39\\n\\n- Ali Hosseini ([@Ako92](https://github.com/Ako92))\\n- Amy Lei ([@amy-lei](https://github.com/amy-lei))\\n- Anshul Goyal ([@anshulrgoyal](https://github.com/anshulrgoyal))\\n- Archit ([@arcvats](https://github.com/arcvats))\\n- Arthur Flam ([@arthur-flam](https://github.com/arthur-flam))\\n- Ben Gubler ([@nebrelbug](https://github.com/nebrelbug))\\n- Bogdan Doroschenko ([@BogdanDor](https://github.com/BogdanDor))\\n- Daniel Wilkowski ([@Danon](https://github.com/Danon))\\n- Derek ([@dschaller](https://github.com/dschaller))\\n- Drew Alexander ([@Drewbi](https://github.com/Drewbi))\\n- Fanny ([@fanny](https://github.com/fanny))\\n- Franklyn Chisom ([@ajifrank75](https://github.com/ajifrank75))\\n- Fran\xe7ois Chalifour ([@francoischalifour](https://github.com/francoischalifour))\\n- Govardhan Srinivas ([@govardhan-srinivas](https://github.com/govardhan-srinivas))\\n- Hani Mohammed ([@thehanimo](https://github.com/thehanimo))\\n- Jean-Marc Saad ([@JeanMarcSaad](https://github.com/JeanMarcSaad))\\n- Jonas Dellinger ([@JohnnyCrazy](https://github.com/JohnnyCrazy))\\n- Jonathan ([@Jonathannsegal](https://github.com/Jonathannsegal))\\n- Manuel Cepeda ([@mecm1993](https://github.com/mecm1993))\\n- Mirzayev Farid ([@MirzayevFarid](https://github.com/MirzayevFarid))\\n- Nisarag ([@FocalChord](https://github.com/FocalChord))\\n- Olawanle Joel ([@olawanlejoel](https://github.com/olawanlejoel))\\n- Orta Therox ([@orta](https://github.com/orta))\\n- Sam Zhou ([@SamChou19815](https://github.com/SamChou19815))\\n- Shubham Kumar ([@imskr](https://github.com/imskr))\\n- Sourav Dey ([@Souravdey777](https://github.com/Souravdey777))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Teik Jun ([@teikjun](https://github.com/teikjun))\\n- Tolunay Akbulut ([@tolunayakbulut](https://github.com/tolunayakbulut))\\n- Vandr\xe9 Leal ([@vandreleal](https://github.com/vandreleal))\\n- Vincent ([@Vinnl](https://github.com/Vinnl))\\n- Yang Luo ([@hsluoyz](https://github.com/hsluoyz))\\n- Yangshun Tay ([@yangshun](https://github.com/yangshun))\\n- [@adinaja](https://github.com/adinaja)\\n- [@leoigel](https://github.com/leoigel)\\n- [@shalinikumari50](https://github.com/shalinikumari50)\\n- alex busnelli ([@boosh511](https://github.com/boosh511))\\n- lebogang Olifant ([@lebogangolifant](https://github.com/lebogangolifant))\\n- ylemkimon ([@ylemkimon](https://github.com/ylemkimon))"},{"id":"/2.0.0-alpha.61","metadata":{"permalink":"/changelog/2.0.0-alpha.61","source":"@site/changelog/source/2.0.0-alpha.61.md","title":"2.0.0-alpha.61","description":"New Feature","date":"2020-08-01T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Bucky Maler","alias":"BuckyMaler","url":"https://github.com/BuckyMaler","imageURL":"https://github.com/BuckyMaler.png","key":"BuckyMaler","page":null},{"name":"Drew Alexander","alias":"Drewbi","url":"https://github.com/Drewbi","imageURL":"https://github.com/Drewbi.png","key":"Drewbi","page":null},{"name":"Fran\xe7ois Chalifour","alias":"francoischalifour","url":"https://github.com/francoischalifour","imageURL":"https://github.com/francoischalifour.png","key":"francoischalifour","page":null},{"name":"Faizan","alias":"mdfaizan7","url":"https://github.com/mdfaizan7","imageURL":"https://github.com/mdfaizan7.png","key":"mdfaizan7","page":null},{"name":"M\xe9ril","alias":"mpsq","url":"https://github.com/mpsq","imageURL":"https://github.com/mpsq.png","key":"mpsq","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Teik Jun","alias":"teikjun","url":"https://github.com/teikjun","imageURL":"https://github.com/teikjun.png","key":"teikjun","page":null},{"name":"Xuqian","alias":"zxuqian","url":"https://github.com/zxuqian","imageURL":"https://github.com/zxuqian.png","key":"zxuqian","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-08-01T20:00","authors":["BuckyMaler","Drewbi","francoischalifour","mdfaizan7","mpsq","slorber","teikjun","zxuqian"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.62","permalink":"/changelog/2.0.0-alpha.62"},"nextItem":{"title":"2.0.0-alpha.60","permalink":"/changelog/2.0.0-alpha.60"},"listPageLink":"/changelog/page/4"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-types`, `docusaurus`\\n - [#3083](https://github.com/facebook/docusaurus/pull/3083) feat(v2): warn user when there are conflicting routes ([@teikjun](https://github.com/teikjun))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`, `docusaurus-utils-validation`, `docusaurus-utils`\\n - [#3158](https://github.com/facebook/docusaurus/pull/3158) feat(v2): markdown pages ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#3127](https://github.com/facebook/docusaurus/pull/3127) feat(v2): dark mode toggle customization ([@Drewbi](https://github.com/Drewbi))\\n- `docusaurus-theme-search-algolia`\\n - [#3166](https://github.com/facebook/docusaurus/pull/3166) feat(v2): improve Algolia search accessibility ([@francoischalifour](https://github.com/francoischalifour))\\n- `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`\\n - [#2359](https://github.com/facebook/docusaurus/pull/2359) feat(v2): support custom description for blog-only mode ([@zxuqian](https://github.com/zxuqian))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-mdx-loader`, `docusaurus`\\n - [#3180](https://github.com/facebook/docusaurus/pull/3180) fix(v2): fix markdown images always using webpack url-loader ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#3171](https://github.com/facebook/docusaurus/pull/3171) fix(v2): tab label showing outline & background when clicked ([@mdfaizan7](https://github.com/mdfaizan7))\\n- `docusaurus-init`, `docusaurus-theme-classic`\\n - [#3168](https://github.com/facebook/docusaurus/pull/3168) fix(v2): fix link items refusing attributes like target, rel etc... ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-sitemap`, `docusaurus-preset-bootstrap`, `docusaurus-preset-classic`, `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`, `docusaurus`\\n - [#3162](https://github.com/facebook/docusaurus/pull/3162) fix(v2): inability for users to pin their docusaurus version ([@BuckyMaler](https://github.com/BuckyMaler))\\n\\n## :memo: Documentation\\n\\n- [#3163](https://github.com/facebook/docusaurus/pull/3163) docs(v2): showcase user questdb ([@mpsq](https://github.com/mpsq))\\n\\n## :house: Internal\\n\\n- Other\\n - [#3164](https://github.com/facebook/docusaurus/pull/3164) chore(deps): bump elliptic from 6.5.2 to 6.5.3 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#3157](https://github.com/facebook/docusaurus/pull/3157) chore(v2): remove alpha 59 doc ([@slorber](https://github.com/slorber))\\n- `docusaurus-1.x`, `docusaurus-init-1.x`, `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-module-type-aliases`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-preset-bootstrap`, `docusaurus-preset-classic`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`, `lqip-loader`, `stylelint-copyright`\\n - [#3154](https://github.com/facebook/docusaurus/pull/3154) chore(v2): prepare v2.0.0.alpha-60 release ([@slorber](https://github.com/slorber))\\n\\n## Committers: 8\\n\\n- Bucky Maler ([@BuckyMaler](https://github.com/BuckyMaler))\\n- Drew Alexander ([@Drewbi](https://github.com/Drewbi))\\n- Faizan ([@mdfaizan7](https://github.com/mdfaizan7))\\n- Fran\xe7ois Chalifour ([@francoischalifour](https://github.com/francoischalifour))\\n- M\xe9ril ([@mpsq](https://github.com/mpsq))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Teik Jun ([@teikjun](https://github.com/teikjun))\\n- Xuqian ([@zxuqian](https://github.com/zxuqian))"},{"id":"/2.0.0-alpha.60","metadata":{"permalink":"/changelog/2.0.0-alpha.60","source":"@site/changelog/source/2.0.0-alpha.60.md","title":"2.0.0-alpha.60","description":"New Feature","date":"2020-07-29T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Hob Adams","alias":"hobadams","url":"https://github.com/hobadams","imageURL":"https://github.com/hobadams.png","key":"hobadams","page":null},{"name":"Bartosz Kaszubowski","alias":"Simek","url":"https://github.com/Simek","imageURL":"https://github.com/Simek.png","key":"Simek","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Teik Jun","alias":"teikjun","url":"https://github.com/teikjun","imageURL":"https://github.com/teikjun.png","key":"teikjun","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-07-29T20:00","authors":["hobadams","Simek","slorber","teikjun"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.61","permalink":"/changelog/2.0.0-alpha.61"},"nextItem":{"title":"2.0.0-alpha.59","permalink":"/changelog/2.0.0-alpha.59"},"listPageLink":"/changelog/page/4"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus`\\n - [#3134](https://github.com/facebook/docusaurus/pull/3134) feat(v2): add validation escape hatch ([@slorber](https://github.com/slorber))\\n- `docusaurus-1.x`\\n - [#3124](https://github.com/facebook/docusaurus/pull/3124) feat(v1): add \'slugPreprocessor\' config option to allow users customize the hash links ([@Simek](https://github.com/Simek))\\n- `docusaurus-theme-search-algolia`\\n - [#3133](https://github.com/facebook/docusaurus/pull/3133) feat(v2): add themeConfig validation to algolia theme ([@slorber](https://github.com/slorber))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus`\\n - [#3142](https://github.com/facebook/docusaurus/pull/3142) fix(v2): config validation fixes + add tests for config validation ([@teikjun](https://github.com/teikjun))\\n- `docusaurus`\\n - [#3149](https://github.com/facebook/docusaurus/pull/3149) fix(v2): BrowserOnly should not return undefined ([@slorber](https://github.com/slorber))\\n - [#3143](https://github.com/facebook/docusaurus/pull/3143) fix(v2): absolute Links should be automatically prefixed by baseurl ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`, `docusaurus-types`, `docusaurus`\\n - [#3141](https://github.com/facebook/docusaurus/pull/3141) fix(v2): remove buggy routesLoaded + deprecate routesLoaded lifecycle ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#3140](https://github.com/facebook/docusaurus/pull/3140) fix(v2): navbar item links should allow unknown attributes ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-search-algolia`\\n - [#3138](https://github.com/facebook/docusaurus/pull/3138) fix(v2): add accessible label for Algolia search button ([@hobadams](https://github.com/hobadams))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus`\\n - [#3120](https://github.com/facebook/docusaurus/pull/3120) fix(v2): make config validation less strict ([@teikjun](https://github.com/teikjun))\\n\\n## :memo: Documentation\\n\\n- [#3145](https://github.com/facebook/docusaurus/pull/3145) docs(v2): add myself to /team page + add TeamProfileCard component ([@slorber](https://github.com/slorber))\\n- [#3146](https://github.com/facebook/docusaurus/pull/3146) docs(v2): prettier docs ([@slorber](https://github.com/slorber))\\n- [#3116](https://github.com/facebook/docusaurus/pull/3116) chore(v2): docs updates after release ([@slorber](https://github.com/slorber))\\n\\n## :house: Internal\\n\\n- Other\\n - [#3130](https://github.com/facebook/docusaurus/pull/3130) chore(v2): remove old versions ([@slorber](https://github.com/slorber))\\n- `docusaurus-1.x`, `docusaurus-init-1.x`, `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-migrate`, `docusaurus-module-type-aliases`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-pwa`, `docusaurus-plugin-sitemap`, `docusaurus-preset-bootstrap`, `docusaurus-preset-classic`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`, `lqip-loader`, `stylelint-copyright`\\n - [#3114](https://github.com/facebook/docusaurus/pull/3114) chore(v2): prepare v2.0.0.alpha-59 release ([@slorber](https://github.com/slorber))\\n\\n## Committers: 4\\n\\n- Bartosz Kaszubowski ([@Simek](https://github.com/Simek))\\n- Hob Adams ([@hobadams](https://github.com/hobadams))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Teik Jun ([@teikjun](https://github.com/teikjun))"},{"id":"/2.0.0-alpha.59","metadata":{"permalink":"/changelog/2.0.0-alpha.59","source":"@site/changelog/source/2.0.0-alpha.59.md","title":"2.0.0-alpha.59","description":"New Feature","date":"2020-07-24T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Mahfoudh Arous","alias":"aladin002dz","url":"https://github.com/aladin002dz","imageURL":"https://github.com/aladin002dz.png","key":"aladin002dz","page":null},{"name":"Eric Dobbertin","alias":"aldeed","url":"https://github.com/aldeed","imageURL":"https://github.com/aldeed.png","key":"aldeed","page":null},{"name":"Amirul Ahmad","alias":"amirulahmad","url":"https://github.com/amirulahmad","imageURL":"https://github.com/amirulahmad.png","key":"amirulahmad","page":null},{"name":"Anshul Goyal","alias":"anshulrgoyal","url":"https://github.com/anshulrgoyal","imageURL":"https://github.com/anshulrgoyal.png","key":"anshulrgoyal","page":null},{"name":"Ayan Banerjee","alias":"ayan-b","url":"https://github.com/ayan-b","imageURL":"https://github.com/ayan-b.png","key":"ayan-b","page":null},{"name":"Jeremy Asuncion","alias":"codemonkey800","url":"https://github.com/codemonkey800","imageURL":"https://github.com/codemonkey800.png","key":"codemonkey800","page":null},{"name":"Daniel Hochman","alias":"danielhochman","url":"https://github.com/danielhochman","imageURL":"https://github.com/danielhochman.png","key":"danielhochman","page":null},{"name":"Deepak Giri","alias":"dpkg","url":"https://github.com/dpkg","imageURL":"https://github.com/dpkg.png","key":"dpkg","page":null},{"name":"ehsan jso","alias":"ehsanjso","url":"https://github.com/ehsanjso","imageURL":"https://github.com/ehsanjso.png","key":"ehsanjso","page":null},{"name":"Arsalan Khattak","alias":"eKhattak","url":"https://github.com/eKhattak","imageURL":"https://github.com/eKhattak.png","key":"eKhattak","page":null},{"name":"Fran\xe7ois Chalifour","alias":"francoischalifour","url":"https://github.com/francoischalifour","imageURL":"https://github.com/francoischalifour.png","key":"francoischalifour","page":null},{"name":"matbub","alias":"hi-matbub","url":"https://github.com/hi-matbub","imageURL":"https://github.com/hi-matbub.png","key":"hi-matbub","page":null},{"name":"John Knox","alias":"jknoxville","url":"https://github.com/jknoxville","imageURL":"https://github.com/jknoxville.png","key":"jknoxville","page":null},{"name":"Jordan Liu","alias":"jordanliu","url":"https://github.com/jordanliu","imageURL":"https://github.com/jordanliu.png","key":"jordanliu","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Ben Gubler","alias":"nebrelbug","url":"https://github.com/nebrelbug","imageURL":"https://github.com/nebrelbug.png","key":"nebrelbug","page":null},{"name":"Paul Cowgill","alias":"pcowgill","url":"https://github.com/pcowgill","imageURL":"https://github.com/pcowgill.png","key":"pcowgill","page":null},{"name":"Sam Zhou","alias":"SamChou19815","url":"https://github.com/SamChou19815","imageURL":"https://github.com/SamChou19815.png","key":"SamChou19815","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Frida Hjelm","alias":"svtfrida","url":"https://github.com/svtfrida","imageURL":"https://github.com/svtfrida.png","key":"svtfrida","page":null},{"name":"Taylor Allen","alias":"taylorallen0913","url":"https://github.com/taylorallen0913","imageURL":"https://github.com/taylorallen0913.png","key":"taylorallen0913","page":null},{"name":"Teik Jun","alias":"teikjun","url":"https://github.com/teikjun","imageURL":"https://github.com/teikjun.png","key":"teikjun","page":null},{"name":"Vandr\xe9 Leal","alias":"vandreleal","url":"https://github.com/vandreleal","imageURL":"https://github.com/vandreleal.png","key":"vandreleal","page":null},{"name":"Rian Finnegan","alias":"xtellurian","url":"https://github.com/xtellurian","imageURL":"https://github.com/xtellurian.png","key":"xtellurian","page":null},{"name":"Yangshun Tay","alias":"yangshun","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png","key":"yangshun","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-07-24T20:00","authors":["aladin002dz","aldeed","amirulahmad","anshulrgoyal","ayan-b","codemonkey800","danielhochman","dpkg","ehsanjso","eKhattak","francoischalifour","hi-matbub","jknoxville","jordanliu","lex111","nebrelbug","pcowgill","SamChou19815","slorber","svtfrida","taylorallen0913","teikjun","vandreleal","xtellurian","yangshun"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.60","permalink":"/changelog/2.0.0-alpha.60"},"nextItem":{"title":"2.0.0-alpha.58","permalink":"/changelog/2.0.0-alpha.58"},"listPageLink":"/changelog/page/4"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-migrate`, `docusaurus-plugin-client-redirects`\\n - [#3015](https://github.com/facebook/docusaurus/pull/3015) feat: automate migration from v1 to v2 ([@anshulrgoyal](https://github.com/anshulrgoyal))\\n- `docusaurus-init`\\n - [#3105](https://github.com/facebook/docusaurus/pull/3105) feat(v2): add docusaurus script for npm users ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-search-algolia`\\n - [#2815](https://github.com/facebook/docusaurus/pull/2815) feat(v2): introduce DocSearch v3 search ([@francoischalifour](https://github.com/francoischalifour))\\n- `docusaurus-init`, `docusaurus-types`, `docusaurus`\\n - [#3059](https://github.com/facebook/docusaurus/pull/3059) feat(v2): broken links detection ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`, `docusaurus-utils`\\n - [#3084](https://github.com/facebook/docusaurus/pull/3084) feat(v2): absolute slugs and slug resolution system ([@slorber](https://github.com/slorber))\\n- `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`\\n - [#3069](https://github.com/facebook/docusaurus/pull/3069) feat(v2): support for adding relative images and handling broken image links ([@anshulrgoyal](https://github.com/anshulrgoyal))\\n- `docusaurus-init`, `docusaurus-module-type-aliases`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-debug`, `docusaurus-theme-classic`, `docusaurus-types`, `docusaurus`\\n - [#2971](https://github.com/facebook/docusaurus/pull/2971) feat(v2): global data + useGlobalData + docs versions dropdown ([@slorber](https://github.com/slorber))\\n- `docusaurus-init`, `docusaurus`\\n - [#3080](https://github.com/facebook/docusaurus/pull/3080) feat(v2): add support for serve command ([@anshulrgoyal](https://github.com/anshulrgoyal))\\n- `docusaurus-module-type-aliases`, `docusaurus-plugin-debug`, `docusaurus-types`, `docusaurus`\\n - [#3058](https://github.com/facebook/docusaurus/pull/3058) feat(v2): useDocusaurusContext().siteMetadata ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#3032](https://github.com/facebook/docusaurus/pull/3032) feat(v2): notify users when docusaurus version is outdated ([@teikjun](https://github.com/teikjun))\\n - [#3033](https://github.com/facebook/docusaurus/pull/3033) feat(v2): add useBaseUrlUtils() hook ([@slorber](https://github.com/slorber))\\n - [#3006](https://github.com/facebook/docusaurus/pull/3006) feat(v2): prompt user when default port is in use ([@taylorallen0913](https://github.com/taylorallen0913))\\n- `docusaurus-module-type-aliases`, `docusaurus-plugin-debug`, `docusaurus`\\n - [#3050](https://github.com/facebook/docusaurus/pull/3050) feat(v2): Collect plugin versions to allow them to be inspected in debug plugin ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-theme-classic`\\n - [#3038](https://github.com/facebook/docusaurus/pull/3038) feat(v2): Support keywords meta in blog posts ([@dpkg](https://github.com/dpkg))\\n - [#2974](https://github.com/facebook/docusaurus/pull/2974) feat(v2): Error when hooks depends on context is used outside of Layout ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-plugin-pwa`, `docusaurus`\\n - [#2205](https://github.com/facebook/docusaurus/pull/2205) feat(v2): Plugin for Offline/PWA support ([@codemonkey800](https://github.com/codemonkey800))\\n- `docusaurus-plugin-ideal-image`, `docusaurus-types`, `docusaurus`\\n - [#2994](https://github.com/facebook/docusaurus/pull/2994) feat(v2): configureWebpack merge strategy + use file-loader for common asset types ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`\\n - [#2989](https://github.com/facebook/docusaurus/pull/2989) feat(v2): add disableVersioning config to docs plugin ([@slorber](https://github.com/slorber))\\n - [#2877](https://github.com/facebook/docusaurus/pull/2877) feat(v2): allow skipping build docs for next version ([@lex111](https://github.com/lex111))\\n- `docusaurus-1.x`\\n - [#2955](https://github.com/facebook/docusaurus/pull/2955) feat(v1): add deletedDocs config to fix unwanted versioning fallback ([@aldeed](https://github.com/aldeed))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`, `docusaurus-types`, `docusaurus`\\n - [#2943](https://github.com/facebook/docusaurus/pull/2943) feat(v2): option and config validation life cycle method for official plugins ([@anshulrgoyal](https://github.com/anshulrgoyal))\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-init`, `docusaurus-module-type-aliases`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-debug`, `docusaurus-theme-classic`, `docusaurus-types`, `docusaurus`\\n - [#2971](https://github.com/facebook/docusaurus/pull/2971) feat(v2): global data + useGlobalData + docs versions dropdown ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus`\\n - [#3012](https://github.com/facebook/docusaurus/pull/3012) fix(v2): refactor color mode system ([@slorber](https://github.com/slorber))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus`\\n - [#3107](https://github.com/facebook/docusaurus/pull/3107) fix(v2): broken links detector: ignore existing folders ([@slorber](https://github.com/slorber))\\n - [#3112](https://github.com/facebook/docusaurus/pull/3112) fix(v2): baseUrl is wrongly appended to anchor links ([@slorber](https://github.com/slorber))\\n - [#3063](https://github.com/facebook/docusaurus/pull/3063) fix(v2): classify link hrefs with protocol identifier as internal ([@svtfrida](https://github.com/svtfrida))\\n- `docusaurus-theme-classic`\\n - [#3106](https://github.com/facebook/docusaurus/pull/3106) fix(v2): dropdown navbar item: validation too strict ([@slorber](https://github.com/slorber))\\n - [#3029](https://github.com/facebook/docusaurus/pull/3029) fix(v2): change description for blog post paginator ([@teikjun](https://github.com/teikjun))\\n- `docusaurus-plugin-content-docs`\\n - [#3108](https://github.com/facebook/docusaurus/pull/3108) fix(v2): fix docs instance path typo ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-pages`\\n - [#3025](https://github.com/facebook/docusaurus/pull/3025) fix(v2):pass siteConfig as prop to pages ([@anshulrgoyal](https://github.com/anshulrgoyal))\\n- `docusaurus-init`\\n - [#3008](https://github.com/facebook/docusaurus/pull/3008) chore(v2): Add E2E test for yarn v2 ([@SamChou19815](https://github.com/SamChou19815))\\n- Other\\n - [#3017](https://github.com/facebook/docusaurus/pull/3017) fix(v2): fix broken links on versions page ([@teikjun](https://github.com/teikjun))\\n- `docusaurus-theme-classic`, `docusaurus`\\n - [#3012](https://github.com/facebook/docusaurus/pull/3012) fix(v2): refactor color mode system ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-content-docs`, `docusaurus-utils`, `docusaurus`\\n - [#3001](https://github.com/facebook/docusaurus/pull/3001) fix(v2): refactor routes.ts + add route hash for chunkNames key ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-utils`, `docusaurus`\\n - [#3010](https://github.com/facebook/docusaurus/pull/3010) fix(v2): make client-redirect-plugin not baseUrl sensitive ([@teikjun](https://github.com/teikjun))\\n- `docusaurus-1.x`\\n - [#2993](https://github.com/facebook/docusaurus/pull/2993) fix(relative path): last update date and by isn\u2019t generated if localh\u2026 ([@amirulahmad](https://github.com/amirulahmad))\\n- `docusaurus-plugin-client-redirects`\\n - [#2969](https://github.com/facebook/docusaurus/pull/2969) fix: fromExtensions and toExtensions translation when used with baseUrl ([@jknoxville](https://github.com/jknoxville))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`, `docusaurus`\\n - [#3088](https://github.com/facebook/docusaurus/pull/3088) improve navbar menu ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`\\n - [#3087](https://github.com/facebook/docusaurus/pull/3087) refactor(v2): async md image transformer + pathname protocol as an escape hatch ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-sitemap`, `docusaurus-theme-live-codeblock`, `docusaurus-types`\\n - [#2970](https://github.com/facebook/docusaurus/pull/2970) feat(v2): add option validation for remaining official plugins ([@teikjun](https://github.com/teikjun))\\n- `docusaurus`\\n - [#2987](https://github.com/facebook/docusaurus/pull/2987) chore(v2): use joi for config validation ([@anshulrgoyal](https://github.com/anshulrgoyal))\\n\\n## :memo: Documentation\\n\\n- [#3026](https://github.com/facebook/docusaurus/pull/3026) docs(v2): add documentation for migration command ([@teikjun](https://github.com/teikjun))\\n- [#3094](https://github.com/facebook/docusaurus/pull/3094) docs(v2): showcase user Clutch ([@danielhochman](https://github.com/danielhochman))\\n- [#3101](https://github.com/facebook/docusaurus/pull/3101) docs(v2):Add azure-pipelines CI guide ([@ayan-b](https://github.com/ayan-b))\\n- [#3098](https://github.com/facebook/docusaurus/pull/3098) docs: Add azure-pipelines CI guide ([@ayan-b](https://github.com/ayan-b))\\n- [#3086](https://github.com/facebook/docusaurus/pull/3086) doc(v2): replace heading position ([@eKhattak](https://github.com/eKhattak))\\n- [#3082](https://github.com/facebook/docusaurus/pull/3082) fixing few typos and enhancing few sentences clarity ([@aladin002dz](https://github.com/aladin002dz))\\n- [#3078](https://github.com/facebook/docusaurus/pull/3078) Updated link for #docusaurus-2-dev discord ([@jordanliu](https://github.com/jordanliu))\\n- [#3076](https://github.com/facebook/docusaurus/pull/3076) docs(v2): showcase Runlet ([@vandreleal](https://github.com/vandreleal))\\n- [#3040](https://github.com/facebook/docusaurus/pull/3040) docs(v2): correct the documentation for docs-only mode ([@teikjun](https://github.com/teikjun))\\n- [#3034](https://github.com/facebook/docusaurus/pull/3034) docs(v2): showcase user Tasit ([@pcowgill](https://github.com/pcowgill))\\n- [#3022](https://github.com/facebook/docusaurus/pull/3022) docs(v2): showcase Eta ([@nebrelbug](https://github.com/nebrelbug))\\n- [#3011](https://github.com/facebook/docusaurus/pull/3011) docs(v1): external links ([@slorber](https://github.com/slorber))\\n- [#2997](https://github.com/facebook/docusaurus/pull/2997) docs(v2): Document TypeScript support ([@SamChou19815](https://github.com/SamChou19815))\\n- [#2973](https://github.com/facebook/docusaurus/pull/2973) docs(v2): Fix typo in markdown-features ([@ehsanjso](https://github.com/ehsanjso))\\n- [#2991](https://github.com/facebook/docusaurus/pull/2991) Showcase Amphora Data ([@xtellurian](https://github.com/xtellurian))\\n- [#2983](https://github.com/facebook/docusaurus/pull/2983) docs(v2): add plugin redirects production build note ([@slorber](https://github.com/slorber))\\n- [#2967](https://github.com/facebook/docusaurus/pull/2967) docs(v2): fix typos in plugin-content examples ([@hi-matbub](https://github.com/hi-matbub))\\n- [#2960](https://github.com/facebook/docusaurus/pull/2960) doc(v2): publish doc update after alpha.58 release ([@slorber](https://github.com/slorber))\\n- [#2966](https://github.com/facebook/docusaurus/pull/2966) docs(v2): fix typo in plugin-content-pages example ([@hi-matbub](https://github.com/hi-matbub))\\n\\n## :house: Internal\\n\\n- `docusaurus-migrate`\\n - [#3113](https://github.com/facebook/docusaurus/pull/3113) chore(v2): ability to test the migration cli easily ([@slorber](https://github.com/slorber))\\n- Other\\n - [#3099](https://github.com/facebook/docusaurus/pull/3099) fix(v2): netlify.toml shouldn\'t affect v1 site deployment config ([@slorber](https://github.com/slorber))\\n - [#3068](https://github.com/facebook/docusaurus/pull/3068) chore(deps): bump lodash from 4.17.15 to 4.17.19 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#2958](https://github.com/facebook/docusaurus/pull/2958) docs(v2): rename 2.0.0-alpha.57 to 2.0.0-alpha.58 ([@yangshun](https://github.com/yangshun))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus`\\n - [#3093](https://github.com/facebook/docusaurus/pull/3093) fix(v2): fix recent baseurl issues ([@slorber](https://github.com/slorber))\\n- `docusaurus-mdx-loader`\\n - [#3087](https://github.com/facebook/docusaurus/pull/3087) refactor(v2): async md image transformer + pathname protocol as an escape hatch ([@slorber](https://github.com/slorber))\\n- `docusaurus-plugin-pwa`, `docusaurus`\\n - [#3055](https://github.com/facebook/docusaurus/pull/3055) chore(v2): Adopt corejs 3 and only import at entry point ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-init`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-debug`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-sitemap`, `docusaurus-theme-classic`, `docusaurus-utils`, `docusaurus`\\n - [#2998](https://github.com/facebook/docusaurus/pull/2998) chore(v2): refactor yarn tsc to yarn build + add theme-classic watch mode ([@slorber](https://github.com/slorber))\\n- `docusaurus-init`\\n - [#3008](https://github.com/facebook/docusaurus/pull/3008) chore(v2): Add E2E test for yarn v2 ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-plugin-content-docs`, `docusaurus-utils`, `docusaurus`\\n - [#3001](https://github.com/facebook/docusaurus/pull/3001) fix(v2): refactor routes.ts + add route hash for chunkNames key ([@slorber](https://github.com/slorber))\\n- `docusaurus`\\n - [#3007](https://github.com/facebook/docusaurus/pull/3007) fix(v2): Add two missing docusaurus core babel dependency ([@SamChou19815](https://github.com/SamChou19815))\\n - [#2987](https://github.com/facebook/docusaurus/pull/2987) chore(v2): use joi for config validation ([@anshulrgoyal](https://github.com/anshulrgoyal))\\n - [#2950](https://github.com/facebook/docusaurus/pull/2950) chore(v2): Implement a simple E2E testing mechanism for `docusausus start` ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-sitemap`, `docusaurus-theme-live-codeblock`, `docusaurus-types`\\n - [#2970](https://github.com/facebook/docusaurus/pull/2970) feat(v2): add option validation for remaining official plugins ([@teikjun](https://github.com/teikjun))\\n- `docusaurus-theme-classic`\\n - [#2996](https://github.com/facebook/docusaurus/pull/2996) chore(v2): Merge devDependencies in theme-classic ([@SamChou19815](https://github.com/SamChou19815))\\n - [#2977](https://github.com/facebook/docusaurus/pull/2977) chore(v2): Remove extraneous package-lock.json ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-plugin-client-redirects`\\n - [#2962](https://github.com/facebook/docusaurus/pull/2962) Feat: replace yup with joi for cleaner validation ([@anshulrgoyal](https://github.com/anshulrgoyal))\\n- `docusaurus-init`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-sitemap`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`, `lqip-loader`\\n - [#2976](https://github.com/facebook/docusaurus/pull/2976) chore(v2): Fix more eslint errors ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-sitemap`, `docusaurus-utils`, `docusaurus`, `lqip-loader`\\n - [#2972](https://github.com/facebook/docusaurus/pull/2972) chore(v2): Fix a lot of eslint warnings ([@SamChou19815](https://github.com/SamChou19815))\\n\\n## Committers: 25\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Amirul Ahmad ([@amirulahmad](https://github.com/amirulahmad))\\n- Anshul Goyal ([@anshulrgoyal](https://github.com/anshulrgoyal))\\n- Arsalan Khattak ([@eKhattak](https://github.com/eKhattak))\\n- Ayan Banerjee ([@ayan-b](https://github.com/ayan-b))\\n- Ben Gubler ([@nebrelbug](https://github.com/nebrelbug))\\n- Daniel Hochman ([@danielhochman](https://github.com/danielhochman))\\n- Deepak Giri ([@dpkg](https://github.com/dpkg))\\n- Eric Dobbertin ([@aldeed](https://github.com/aldeed))\\n- Fran\xe7ois Chalifour ([@francoischalifour](https://github.com/francoischalifour))\\n- Frida Hjelm ([@svtfrida](https://github.com/svtfrida))\\n- Jeremy Asuncion ([@codemonkey800](https://github.com/codemonkey800))\\n- John Knox ([@jknoxville](https://github.com/jknoxville))\\n- Jordan Liu ([@jordanliu](https://github.com/jordanliu))\\n- Mahfoudh Arous ([@aladin002dz](https://github.com/aladin002dz))\\n- Paul Cowgill ([@pcowgill](https://github.com/pcowgill))\\n- Rian Finnegan ([@xtellurian](https://github.com/xtellurian))\\n- Sam Zhou ([@SamChou19815](https://github.com/SamChou19815))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Taylor Allen ([@taylorallen0913](https://github.com/taylorallen0913))\\n- Teik Jun ([@teikjun](https://github.com/teikjun))\\n- Vandr\xe9 Leal ([@vandreleal](https://github.com/vandreleal))\\n- Yangshun Tay ([@yangshun](https://github.com/yangshun))\\n- ehsan jso ([@ehsanjso](https://github.com/ehsanjso))\\n- matbub ([@hi-matbub](https://github.com/hi-matbub))"},{"id":"/2.0.0-alpha.58","metadata":{"permalink":"/changelog/2.0.0-alpha.58","source":"@site/changelog/source/2.0.0-alpha.58.md","title":"2.0.0-alpha.58","description":"New Feature","date":"2020-06-18T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"hackerman","alias":"aeneasr","url":"https://github.com/aeneasr","imageURL":"https://github.com/aeneasr.png","key":"aeneasr","page":null},{"name":"Anshul Goyal","alias":"anshulrgoyal","url":"https://github.com/anshulrgoyal","imageURL":"https://github.com/anshulrgoyal.png","key":"anshulrgoyal","page":null},{"name":"belokonm","alias":"belokonm","url":"https://github.com/belokonm","imageURL":"https://github.com/belokonm.png","key":"belokonm","page":null},{"name":"Drew Alexander","alias":"Drewbi","url":"https://github.com/Drewbi","imageURL":"https://github.com/Drewbi.png","key":"Drewbi","page":null},{"name":"Fanny","alias":"fanny","url":"https://github.com/fanny","imageURL":"https://github.com/fanny.png","key":"fanny","page":null},{"name":"Guillaume Jacquart","alias":"guillaumejacquart","url":"https://github.com/guillaumejacquart","imageURL":"https://github.com/guillaumejacquart.png","key":"guillaumejacquart","page":null},{"name":"Joel Marcey","alias":"JoelMarcey","url":"https://github.com/JoelMarcey","imageURL":"https://github.com/JoelMarcey.png","key":"JoelMarcey","page":null},{"name":"JavaScript Joe","alias":"jsjoeio","url":"https://github.com/jsjoeio","imageURL":"https://github.com/jsjoeio.png","key":"jsjoeio","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"moonrailgun","alias":"moonrailgun","url":"https://github.com/moonrailgun","imageURL":"https://github.com/moonrailgun.png","key":"moonrailgun","page":null},{"name":"Koki Nishihara","alias":"Nishikoh","url":"https://github.com/Nishikoh","imageURL":"https://github.com/Nishikoh.png","key":"Nishikoh","page":null},{"name":"Paul Glezen","alias":"pglezen","url":"https://github.com/pglezen","imageURL":"https://github.com/pglezen.png","key":"pglezen","page":null},{"name":"Sam Zhou","alias":"SamChou19815","url":"https://github.com/SamChou19815","imageURL":"https://github.com/SamChou19815.png","key":"SamChou19815","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Teik Jun","alias":"teikjun","url":"https://github.com/teikjun","imageURL":"https://github.com/teikjun.png","key":"teikjun","page":null},{"name":"tetunori","alias":"tetunori","url":"https://github.com/tetunori","imageURL":"https://github.com/tetunori.png","key":"tetunori","page":null},{"name":"Tom Brien","alias":"TomBrien","url":"https://github.com/TomBrien","imageURL":"https://github.com/TomBrien.png","key":"TomBrien","page":null},{"name":"Yangshun Tay","alias":"yangshun","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png","key":"yangshun","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-06-18T20:00","authors":["aeneasr","anshulrgoyal","belokonm","Drewbi","fanny","guillaumejacquart","JoelMarcey","jsjoeio","lex111","moonrailgun","Nishikoh","pglezen","SamChou19815","slorber","teikjun","tetunori","TomBrien","yangshun"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.59","permalink":"/changelog/2.0.0-alpha.59"},"nextItem":{"title":"2.0.0-alpha.57","permalink":"/changelog/2.0.0-alpha.57"},"listPageLink":"/changelog/page/4"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#2916](https://github.com/facebook/docusaurus/pull/2916) feat(v2): add a banner that links to latest version of documentation ([@teikjun](https://github.com/teikjun))\\n - [#2682](https://github.com/facebook/docusaurus/pull/2682) feat(v2): expanded sidebar categories by default ([@jsjoeio](https://github.com/jsjoeio))\\n- `docusaurus-plugin-debug`, `docusaurus-preset-classic`\\n - [#2928](https://github.com/facebook/docusaurus/pull/2928) feat(v2): Implement proof-of-concept Docusaurus Debug Dashboard ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-init`, `docusaurus`\\n - [#2903](https://github.com/facebook/docusaurus/pull/2903) feat(v2): Allow configuring babel via babel.config.js ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-plugin-client-redirects`, `docusaurus-utils`\\n - [#2793](https://github.com/facebook/docusaurus/pull/2793) feat(v2): docusaurus-plugin-client-redirects ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-live-codeblock`\\n - [#2826](https://github.com/facebook/docusaurus/pull/2826) feat(v2): allow adding components to react-live scope ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`, `docusaurus`\\n - [#2856](https://github.com/facebook/docusaurus/pull/2856) feat(v2): allow specifying meta image for blog posts ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`\\n - [#2841](https://github.com/facebook/docusaurus/pull/2841) feat(v2): Allow swizzling prism-include-languages in theme-classic ([@SamChou19815](https://github.com/SamChou19815))\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-init`, `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus`\\n - [#2895](https://github.com/facebook/docusaurus/pull/2895) chore(v2): replace classnames with clsx ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-docs`\\n - [#2861](https://github.com/facebook/docusaurus/pull/2861) fix(v2): do not create route for document that serve as docs home page ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#2682](https://github.com/facebook/docusaurus/pull/2682) feat(v2): expanded sidebar categories by default ([@jsjoeio](https://github.com/jsjoeio))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`\\n - [#2905](https://github.com/facebook/docusaurus/pull/2905) fix(v2): fix docs homepage permalink issues ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#2932](https://github.com/facebook/docusaurus/pull/2932) fix(v2): Add hooks to detect window resize, toggle off sidebar and navbar in desktop ([@guillaumejacquart](https://github.com/guillaumejacquart))\\n - [#2909](https://github.com/facebook/docusaurus/pull/2909) fix(v2): adjust anchor offset when routes switched ([@lex111](https://github.com/lex111))\\n - [#2896](https://github.com/facebook/docusaurus/pull/2896) fix(v2): set correct canonical url for docs home page ([@lex111](https://github.com/lex111))\\n - [#2893](https://github.com/facebook/docusaurus/pull/2893) fix(v2): Do not automatically change tab when a non-existing option is selected ([@SamChou19815](https://github.com/SamChou19815))\\n - [#2888](https://github.com/facebook/docusaurus/pull/2888) fix(v2): restore styles for menu scrollbar ([@lex111](https://github.com/lex111))\\n - [#2857](https://github.com/facebook/docusaurus/pull/2857) fix(v2): treat inline code in raw HTML as native element ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#2951](https://github.com/facebook/docusaurus/pull/2951) fix(v2): Add optional-chaining and nullish-coalescing babel plugin ([@SamChou19815](https://github.com/SamChou19815))\\n - [#2921](https://github.com/facebook/docusaurus/pull/2921) fix(v2): upgrade react-loadable-ssr-addon ([@slorber](https://github.com/slorber))\\n - [#2854](https://github.com/facebook/docusaurus/pull/2854) fix(v2): fix broken build when swizzled NotFound component exist ([@lex111](https://github.com/lex111))\\n - [#2829](https://github.com/facebook/docusaurus/pull/2829) fix(v2): Fix plugin path resolution ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-preset-classic`\\n - [#2944](https://github.com/facebook/docusaurus/pull/2944) fix(v2): Declare @docusaurus-plugin-debug as dependency of preset classic ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-init`\\n - [#2902](https://github.com/facebook/docusaurus/pull/2902) feat(v2): add nojekyll file to static folder for all templates ([@teikjun](https://github.com/teikjun))\\n- `docusaurus-theme-bootstrap`\\n - [#2860](https://github.com/facebook/docusaurus/pull/2860) fix(v2): bootstrap doc sidebar ([@fanny](https://github.com/fanny))\\n- Other\\n - [#2874](https://github.com/facebook/docusaurus/pull/2874) fix(v2): Getting Started URL ([@fanny](https://github.com/fanny))\\n- `docusaurus-plugin-content-docs`\\n - [#2861](https://github.com/facebook/docusaurus/pull/2861) fix(v2): do not create route for document that serve as docs home page ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#2867](https://github.com/facebook/docusaurus/pull/2867) fix(v2): fix FOUC in doc sidebar and various improvements ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-search-algolia`\\n - [#2838](https://github.com/facebook/docusaurus/pull/2838) fix(v2): use base url to navigate to search page ([@tetunori](https://github.com/tetunori))\\n- `docusaurus-utils`\\n - [#2855](https://github.com/facebook/docusaurus/pull/2855) fix(v2): strip images and footnotes for excerpt correctly ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-live-codeblock`\\n - [#2835](https://github.com/facebook/docusaurus/pull/2835) fix(v2): set proper font for live editor ([@lex111](https://github.com/lex111))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-utils`, `docusaurus`\\n - [#2884](https://github.com/facebook/docusaurus/pull/2884) polish(v2): improve Docusaurus 1 to 2 migration developer experience ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#2870](https://github.com/facebook/docusaurus/pull/2870) refactor(v2): combine nested theme providers into one ([@lex111](https://github.com/lex111))\\n - [#2880](https://github.com/facebook/docusaurus/pull/2880) fix(v2): render as regular text uncollapsible categories ([@lex111](https://github.com/lex111))\\n - [#2864](https://github.com/facebook/docusaurus/pull/2864) refactor(v2): add aria role for doc sidebar ([@lex111](https://github.com/lex111))\\n - [#2859](https://github.com/facebook/docusaurus/pull/2859) refactor(v2): add aria label to paginators ([@lex111](https://github.com/lex111))\\n - [#2858](https://github.com/facebook/docusaurus/pull/2858) refactor(v2): add missing main landmark for needed pages ([@lex111](https://github.com/lex111))\\n- Other\\n - [#2862](https://github.com/facebook/docusaurus/pull/2862) Updated banner in solidarity ([@JoelMarcey](https://github.com/JoelMarcey))\\n\\n## :memo: Documentation\\n\\n- [#2946](https://github.com/facebook/docusaurus/pull/2946) docs(v2): add require.resolve to plugin imports on remaining pages ([@teikjun](https://github.com/teikjun))\\n- [#2941](https://github.com/facebook/docusaurus/pull/2941) docs(v2): wrap all plugin imports in require.resolve() ([@TomBrien](https://github.com/TomBrien))\\n- [#2934](https://github.com/facebook/docusaurus/pull/2934) docs(v2): add useThemeContext note ([@Drewbi](https://github.com/Drewbi))\\n- [#2935](https://github.com/facebook/docusaurus/pull/2935) docs(v2): Add router implementation note ([@Drewbi](https://github.com/Drewbi))\\n- [#2933](https://github.com/facebook/docusaurus/pull/2933) docs(v2): add documentation for multiple blogs ([@teikjun](https://github.com/teikjun))\\n- [#2910](https://github.com/facebook/docusaurus/pull/2910) docs(v2): fix GitHub action workflow in docs ([@anshulrgoyal](https://github.com/anshulrgoyal))\\n- [#2886](https://github.com/facebook/docusaurus/pull/2886) docs(v2): fix typo in command on installation page ([@pglezen](https://github.com/pglezen))\\n- [#2887](https://github.com/facebook/docusaurus/pull/2887) docs(v2): make .nojekyll warning more obvious ([@yangshun](https://github.com/yangshun))\\n- [#2865](https://github.com/facebook/docusaurus/pull/2865) docs(v2): description field in frontmatter of blog post ([@lex111](https://github.com/lex111))\\n- [#2839](https://github.com/facebook/docusaurus/pull/2839) docs(v2): \\\\_index docs page does not show a sidebar ([@aeneasr](https://github.com/aeneasr))\\n- [#2852](https://github.com/facebook/docusaurus/pull/2852) misc: move runme demo in block quote about v2 ([@lex111](https://github.com/lex111))\\n- [#2842](https://github.com/facebook/docusaurus/pull/2842) docs(v2): Update ZEIT to Vercel ([@Nishikoh](https://github.com/Nishikoh))\\n\\n## :house: Internal\\n\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`\\n - [#2948](https://github.com/facebook/docusaurus/pull/2948) refactor(v2): legacy export = syntax ([@slorber](https://github.com/slorber))\\n- `docusaurus-init`, `docusaurus-plugin-client-redirects`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-sitemap`, `docusaurus-utils`, `docusaurus`\\n - [#2922](https://github.com/facebook/docusaurus/pull/2922) misc(v2): better dx: yarn clear, yarn watch, yarn serve ([@slorber](https://github.com/slorber))\\n- Other\\n - [#2929](https://github.com/facebook/docusaurus/pull/2929) chore(v2): Run E2E tests in CI ([@SamChou19815](https://github.com/SamChou19815))\\n - [#2899](https://github.com/facebook/docusaurus/pull/2899) chore(deps): bump websocket-extensions from 0.1.3 to 0.1.4 ([@dependabot[bot]](https://github.com/apps/dependabot))\\n - [#2897](https://github.com/facebook/docusaurus/pull/2897) refactor(v2): synchronize yarn/npm command on site ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-bootstrap`\\n - [#2931](https://github.com/facebook/docusaurus/pull/2931) chore(v2): remove unused hooks from bootstrap theme ([@fanny](https://github.com/fanny))\\n- `docusaurus-1.x`, `docusaurus-plugin-content-docs`\\n - [#2906](https://github.com/facebook/docusaurus/pull/2906) chore(v2): fix async tests ([@slorber](https://github.com/slorber))\\n- `docusaurus-theme-classic`\\n - [#2858](https://github.com/facebook/docusaurus/pull/2858) refactor(v2): add missing main landmark for needed pages ([@lex111](https://github.com/lex111))\\n\\n## :running: Performance\\n\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-sitemap`\\n - [#2936](https://github.com/facebook/docusaurus/pull/2936) perf(v2): convert synchronous filewrite to asynchronous ([@moonrailgun](https://github.com/moonrailgun))\\n- `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`\\n - [#2900](https://github.com/facebook/docusaurus/pull/2900) chore(v2): replace Clipboard with copy-text-to-clipboard ([@lex111](https://github.com/lex111))\\n- `docusaurus-init`, `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus`\\n - [#2895](https://github.com/facebook/docusaurus/pull/2895) chore(v2): replace classnames with clsx ([@lex111](https://github.com/lex111))\\n\\n## Committers: 18\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Anshul Goyal ([@anshulrgoyal](https://github.com/anshulrgoyal))\\n- Drew Alexander ([@Drewbi](https://github.com/Drewbi))\\n- Fanny ([@fanny](https://github.com/fanny))\\n- Guillaume Jacquart ([@guillaumejacquart](https://github.com/guillaumejacquart))\\n- Joe Previte ([@jsjoeio](https://github.com/jsjoeio))\\n- Joel Marcey ([@JoelMarcey](https://github.com/JoelMarcey))\\n- Koki Nishihara ([@Nishikoh](https://github.com/Nishikoh))\\n- Paul Glezen ([@pglezen](https://github.com/pglezen))\\n- Sam Zhou ([@SamChou19815](https://github.com/SamChou19815))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Teik Jun ([@teikjun](https://github.com/teikjun))\\n- Tom Brien ([@TomBrien](https://github.com/TomBrien))\\n- Yangshun Tay ([@yangshun](https://github.com/yangshun))\\n- [@belokonm](https://github.com/belokonm)\\n- hackerman ([@aeneasr](https://github.com/aeneasr))\\n- moonrailgun ([@moonrailgun](https://github.com/moonrailgun))\\n- tetunori ([@tetunori](https://github.com/tetunori))"},{"id":"/2.0.0-alpha.57","metadata":{"permalink":"/changelog/2.0.0-alpha.57","source":"@site/changelog/source/2.0.0-alpha.57.md","title":"2.0.0-alpha.57","description":"Bad release, check ## 2.0.0-alpha.58","date":"2020-06-18T19:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[],"frontMatter":{"mdx":{"format":"md"},"date":"2020-06-18T19:00"},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.58","permalink":"/changelog/2.0.0-alpha.58"},"nextItem":{"title":"2.0.0-alpha.56","permalink":"/changelog/2.0.0-alpha.56"},"listPageLink":"/changelog/page/4"},"content":"\x3c!-- truncate --\x3e\\n\\nBad release, check ## 2.0.0-alpha.58"},{"id":"/2.0.0-alpha.56","metadata":{"permalink":"/changelog/2.0.0-alpha.56","source":"@site/changelog/source/2.0.0-alpha.56.md","title":"2.0.0-alpha.56","description":"Breaking Change","date":"2020-05-28T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"John Knox","alias":"jknoxville","url":"https://github.com/jknoxville","imageURL":"https://github.com/jknoxville.png","key":"jknoxville","page":null},{"name":"James McShane","alias":"jmcshane","url":"https://github.com/jmcshane","imageURL":"https://github.com/jmcshane.png","key":"jmcshane","page":null},{"name":"Kasper B\xf8gebjerg Pedersen","alias":"kasperp","url":"https://github.com/kasperp","imageURL":"https://github.com/kasperp.png","key":"kasperp","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Muhammad Ali","alias":"mrmuhammadali","url":"https://github.com/mrmuhammadali","imageURL":"https://github.com/mrmuhammadali.png","key":"mrmuhammadali","page":null},{"name":"Piotr Baran","alias":"piotros","url":"https://github.com/piotros","imageURL":"https://github.com/piotros.png","key":"piotros","page":null},{"name":"Sylvain Pace","alias":"s-pace","url":"https://github.com/s-pace","imageURL":"https://github.com/s-pace.png","key":"s-pace","page":null},{"name":"Sam Zhou","alias":"SamChou19815","url":"https://github.com/SamChou19815","imageURL":"https://github.com/SamChou19815.png","key":"SamChou19815","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-05-28T20:00","authors":["jknoxville","jmcshane","kasperp","lex111","mrmuhammadali","piotros","s-pace","SamChou19815"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.57","permalink":"/changelog/2.0.0-alpha.57"},"nextItem":{"title":"2.0.0-alpha.55","permalink":"/changelog/2.0.0-alpha.55"},"listPageLink":"/changelog/page/4"},"content":"\x3c!-- truncate --\x3e\\n\\n## :boom: Breaking Change\\n\\n- If you refer to modules (plugins) in your config file in a string form, you will need to replace them with `require.resolve` calls, for example:\\n\\n```diff\\n- plugins: [\'@docusaurus/plugin-google-analytics\']\\n+ plugins: [require.resolve(\'@docusaurus/plugin-google-analytics\')]\\n```\\n\\n- `docusaurus-theme-classic`\\n - [#2818](https://github.com/facebook/docusaurus/pull/2818) feat(v2): automatically add base url to logo link ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`\\n - [#2791](https://github.com/facebook/docusaurus/pull/2791) refactor(v2): show search icon only on mobiles ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#2780](https://github.com/facebook/docusaurus/pull/2780) feat(v2): open external links in new tab by default ([@jknoxville](https://github.com/jknoxville))\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-types`, `docusaurus`\\n - [#2770](https://github.com/facebook/docusaurus/pull/2770) feat(v2): allow deploy without building website ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`\\n - [#2818](https://github.com/facebook/docusaurus/pull/2818) feat(v2): automatically add base url to logo link ([@lex111](https://github.com/lex111))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`\\n - [#2645](https://github.com/facebook/docusaurus/pull/2645) fix(v2): enable scrolling for sidebar menu only ([@lex111](https://github.com/lex111))\\n - [#2800](https://github.com/facebook/docusaurus/pull/2800) fix(v2): make proper h1 font size on mobiles ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#2788](https://github.com/facebook/docusaurus/pull/2788) fix(v2): use `require.resolve` for all webpack presets and plugins ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus-plugin-content-docs`\\n - [#2785](https://github.com/facebook/docusaurus/pull/2785) fix(v2): do not show sidebar on reserved docs home page ([@lex111](https://github.com/lex111))\\n - [#2777](https://github.com/facebook/docusaurus/pull/2777) fix(v2): check for docs homepage correctly ([@lex111](https://github.com/lex111))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#2820](https://github.com/facebook/docusaurus/pull/2820) chore(v2): upgrade Infima to 0.2.0-alpha.12 ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-search-algolia`\\n - [#2814](https://github.com/facebook/docusaurus/pull/2814) refactor(v2): align search icon to center on mobiles ([@lex111](https://github.com/lex111))\\n - [#2799](https://github.com/facebook/docusaurus/pull/2799) refactor(v2): increase search input on medium screens ([@lex111](https://github.com/lex111))\\n- `docusaurus-init`\\n - [#2802](https://github.com/facebook/docusaurus/pull/2802) misc: minor improvements for init templates ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`\\n - [#2791](https://github.com/facebook/docusaurus/pull/2791) refactor(v2): show search icon only on mobiles ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#2783](https://github.com/facebook/docusaurus/pull/2783) refactor(v2): make external links more secure ([@lex111](https://github.com/lex111))\\n\\n## :memo: Documentation\\n\\n- [#2809](https://github.com/facebook/docusaurus/pull/2809) docs(v2): add mention on DocSearch when you run the crawler on your own ([@s-pace](https://github.com/s-pace))\\n\\n## :house: Internal\\n\\n- [#2778](https://github.com/facebook/docusaurus/pull/2778) fix(v2): do not highlight root docs path in navbar ([@lex111](https://github.com/lex111))\\n\\n## Committers: 8\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- James McShane ([@jmcshane](https://github.com/jmcshane))\\n- John Knox ([@jknoxville](https://github.com/jknoxville))\\n- Kasper B\xf8gebjerg Pedersen ([@kasperp](https://github.com/kasperp))\\n- Muhammad Ali ([@mrmuhammadali](https://github.com/mrmuhammadali))\\n- Piotr Baran ([@piotros](https://github.com/piotros))\\n- Sam Zhou ([@SamChou19815](https://github.com/SamChou19815))\\n- Sylvain Pace ([@s-pace](https://github.com/s-pace))"},{"id":"/2.0.0-alpha.55","metadata":{"permalink":"/changelog/2.0.0-alpha.55","source":"@site/changelog/source/2.0.0-alpha.55.md","title":"2.0.0-alpha.55","description":"Breaking Change","date":"2020-05-19T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Artem Kovalov","alias":"artemkovalyov","url":"https://github.com/artemkovalyov","imageURL":"https://github.com/artemkovalyov.png","key":"artemkovalyov","page":null},{"name":"Fanny","alias":"fanny","url":"https://github.com/fanny","imageURL":"https://github.com/fanny.png","key":"fanny","page":null},{"name":"Rajiv Singh","alias":"iamrajiv","url":"https://github.com/iamrajiv","imageURL":"https://github.com/iamrajiv.png","key":"iamrajiv","page":null},{"name":"Jimmy","alias":"jcomack","url":"https://github.com/jcomack","imageURL":"https://github.com/jcomack.png","key":"jcomack","page":null},{"name":"Julien Deniau","alias":"jdeniau","url":"https://github.com/jdeniau","imageURL":"https://github.com/jdeniau.png","key":"jdeniau","page":null},{"name":"Jonny Nabors","alias":"jonnynabors","url":"https://github.com/jonnynabors","imageURL":"https://github.com/jonnynabors.png","key":"jonnynabors","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Marco Moretti","alias":"marcosvega91","url":"https://github.com/marcosvega91","imageURL":"https://github.com/marcosvega91.png","key":"marcosvega91","page":null},{"name":"Ben Gubler","alias":"nebrelbug","url":"https://github.com/nebrelbug","imageURL":"https://github.com/nebrelbug.png","key":"nebrelbug","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Taylor Reece","alias":"taylorreece","url":"https://github.com/taylorreece","imageURL":"https://github.com/taylorreece.png","key":"taylorreece","page":null},{"name":"Yangshun Tay","alias":"yangshun","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png","key":"yangshun","page":null},{"name":"Yamagishi Kazutoshi","alias":"ykzts","url":"https://github.com/ykzts","imageURL":"https://github.com/ykzts.png","key":"ykzts","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-05-19T20:00","authors":["artemkovalyov","fanny","iamrajiv","jcomack","jdeniau","jonnynabors","lex111","marcosvega91","nebrelbug","slorber","taylorreece","yangshun","ykzts"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.56","permalink":"/changelog/2.0.0-alpha.56"},"nextItem":{"title":"2.0.0-alpha.54","permalink":"/changelog/2.0.0-alpha.54"},"listPageLink":"/changelog/page/4"},"content":"\x3c!-- truncate --\x3e\\n\\n## :boom: Breaking Change\\n\\n- `infima`\\n\\n - The following Infima classes have been renamed for consistency:\\n\\n - `page-item` \u2192 `pagination__item`\\n - `pagination-nav__link--label` \u2192 `pagination-nav__label`\\n - `pagination-nav__link--sublabel` \u2192 `pagination-nav__sublabel`\\n - `tab-item` \u2192 `tabs__item`\\n - `tab-item--active` \u2192 `tabs__item--active`\\n\\n If you have swizzled components, you need to replace these class names.\\n\\n- `docusaurus`\\n\\n - [#2764](https://github.com/facebook/docusaurus/pull/2764) feat(v2): allow import SVG images ([@lex111](https://github.com/lex111))\\n\\n## :rocket: New Feature\\n\\n- `docusaurus`\\n - [#2764](https://github.com/facebook/docusaurus/pull/2764) feat(v2): allow import SVG images ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`\\n - [#2690](https://github.com/facebook/docusaurus/pull/2690) feat(v2): allow activeBaseTest in NavLink ([@nebrelbug](https://github.com/nebrelbug))\\n - [#2694](https://github.com/facebook/docusaurus/pull/2694) feat(v2): add canonical URL to `<head>` ([@jcomack](https://github.com/jcomack))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-types`, `docusaurus`\\n - [#2652](https://github.com/facebook/docusaurus/pull/2652) feat(v2): allow home page for docs ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-search-algolia`, `docusaurus`\\n - [#2756](https://github.com/facebook/docusaurus/pull/2756) feat(v2): add search page \uD83D\uDD0E ([@lex111](https://github.com/lex111))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-plugin-content-docs`, `docusaurus-utils`\\n - [#2701](https://github.com/facebook/docusaurus/pull/2701) fix(v2): remove Markdown syntax from excerpt ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`\\n - [#2765](https://github.com/facebook/docusaurus/pull/2765) fix(v2): remove invalid attr from mobile nav links ([@lex111](https://github.com/lex111))\\n - [#2760](https://github.com/facebook/docusaurus/pull/2760) fix(v2): move anchor link to right of heading ([@lex111](https://github.com/lex111))\\n - [#2758](https://github.com/facebook/docusaurus/pull/2758) fix(v2): remove extra top margin of tab item ([@lex111](https://github.com/lex111))\\n - [#2759](https://github.com/facebook/docusaurus/pull/2759) fix(v2): restore hiding of docs toc ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-search-algolia`\\n - [#2762](https://github.com/facebook/docusaurus/pull/2762) fix(v2): avoid duplication search input in navbar ([@lex111](https://github.com/lex111))\\n- `lqip-loader`\\n - [#2693](https://github.com/facebook/docusaurus/pull/2693) fix(v2): add support ES Module to lqip-loader ([@ykzts](https://github.com/ykzts))\\n- `docusaurus-init`\\n - [#2751](https://github.com/facebook/docusaurus/pull/2751) fix(v2): fix index page features.length when 0 ([@jdeniau](https://github.com/jdeniau))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#2773](https://github.com/facebook/docusaurus/pull/2773) chore(v2): upgrade Infima to 0.2.0-alpha.11 ([@lex111](https://github.com/lex111))\\n - [#2766](https://github.com/facebook/docusaurus/pull/2766) refactor(v2): remove extra active CSS class for menu item links ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-live-codeblock`\\n - [#2767](https://github.com/facebook/docusaurus/pull/2767) refactor(v2): add support for dark mode to live code blocks ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-search-algolia`\\n - [#2761](https://github.com/facebook/docusaurus/pull/2761) refactor(v2): improve UX of search page ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-bootstrap`, `docusaurus-theme-classic`\\n - [#2729](https://github.com/facebook/docusaurus/pull/2729) chore(v2): upgrade Infima to 0.2.0-alpha.10 ([@lex111](https://github.com/lex111))\\n- `docusaurus-utils`\\n - [#2696](https://github.com/facebook/docusaurus/pull/2696) refactor(v2): make semicolon optional in imports for excerpt ([@lex111](https://github.com/lex111))\\n\\n## :memo: Documentation\\n\\n- [#2768](https://github.com/facebook/docusaurus/pull/2768) docs(v2): various improvements ([@lex111](https://github.com/lex111))\\n- [#2670](https://github.com/facebook/docusaurus/pull/2670) docs(v2): add deployment workflow manual for GitHub Actions ([@artemkovalyov](https://github.com/artemkovalyov))\\n\\n## :house: Internal\\n\\n- `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`, `docusaurus`\\n - [#2464](https://github.com/facebook/docusaurus/pull/2464) refactor(v2): add @theme-init alias to give access to initial components ([@lex111](https://github.com/lex111))\\n\\n## :running: Performance\\n\\n- `docusaurus`\\n - [#2684](https://github.com/facebook/docusaurus/pull/2684) refactor(v2): replace EJS with Eta for SSR generation ([@nebrelbug](https://github.com/nebrelbug))\\n\\n## Committers: 13\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Artem Kovalov ([@artemkovalyov](https://github.com/artemkovalyov))\\n- Ben Gubler ([@nebrelbug](https://github.com/nebrelbug))\\n- Fanny ([@fanny](https://github.com/fanny))\\n- Jimmy ([@jcomack](https://github.com/jcomack))\\n- Jonny Nabors ([@jonnynabors](https://github.com/jonnynabors))\\n- Julien Deniau ([@jdeniau](https://github.com/jdeniau))\\n- Marco Moretti ([@marcosvega91](https://github.com/marcosvega91))\\n- Rajiv Singh ([@iamrajiv](https://github.com/iamrajiv))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Taylor Reece ([@taylorreece](https://github.com/taylorreece))\\n- Yamagishi Kazutoshi ([@ykzts](https://github.com/ykzts))\\n- Yangshun Tay ([@yangshun](https://github.com/yangshun))"},{"id":"/2.0.0-alpha.54","metadata":{"permalink":"/changelog/2.0.0-alpha.54","source":"@site/changelog/source/2.0.0-alpha.54.md","title":"2.0.0-alpha.54","description":"HOTFIX for 2.0.0-alpha.53.","date":"2020-04-28T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"JavaScript Joe","alias":"jsjoeio","url":"https://github.com/jsjoeio","imageURL":"https://github.com/jsjoeio.png","key":"jsjoeio","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Sam Zhou","alias":"SamChou19815","url":"https://github.com/SamChou19815","imageURL":"https://github.com/SamChou19815.png","key":"SamChou19815","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-04-28T20:00","authors":["jsjoeio","lex111","SamChou19815"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.55","permalink":"/changelog/2.0.0-alpha.55"},"nextItem":{"title":"2.0.0-alpha.53","permalink":"/changelog/2.0.0-alpha.53"},"listPageLink":"/changelog/page/4"},"content":"\x3c!-- truncate --\x3e\\n\\n**HOTFIX for 2.0.0-alpha.53**.\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`\\n - [#2688](https://github.com/facebook/docusaurus/pull/2688) fix(v2): add default value for options in theme classic ([@lex111](https://github.com/lex111))\\n- `docusaurus-module-type-aliases`\\n - [#2687](https://github.com/facebook/docusaurus/pull/2687) fix(v2): Add all webpack module aliases to type declaration file ([@SamChou19815](https://github.com/SamChou19815))\\n\\n## :memo: Documentation\\n\\n- [#2680](https://github.com/facebook/docusaurus/pull/2680) docs(v2): add swizzle example ([@jsjoeio](https://github.com/jsjoeio))\\n\\n## Committers: 3\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Joe Previte ([@jsjoeio](https://github.com/jsjoeio))\\n- Sam Zhou ([@SamChou19815](https://github.com/SamChou19815))"},{"id":"/2.0.0-alpha.53","metadata":{"permalink":"/changelog/2.0.0-alpha.53","source":"@site/changelog/source/2.0.0-alpha.53.md","title":"2.0.0-alpha.53","description":"HOTFIX for 2.0.0-alpha.51.","date":"2020-04-27T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-04-27T20:00","authors":["lex111"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.54","permalink":"/changelog/2.0.0-alpha.54"},"nextItem":{"title":"2.0.0-alpha.51","permalink":"/changelog/2.0.0-alpha.51"},"listPageLink":"/changelog/page/4"},"content":"\x3c!-- truncate --\x3e\\n\\n**HOTFIX for 2.0.0-alpha.51**.\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`\\n - [#2676](https://github.com/facebook/docusaurus/pull/2676) fix(v2): allow build website without custom css ([@lex111](https://github.com/lex111))\\n\\n## Committers: 1\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))"},{"id":"/2.0.0-alpha.51","metadata":{"permalink":"/changelog/2.0.0-alpha.51","source":"@site/changelog/source/2.0.0-alpha.51.md","title":"2.0.0-alpha.51","description":"Breaking Change","date":"2020-04-27T19:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Anayo Oleru","alias":"AnayoOleru","url":"https://github.com/AnayoOleru","imageURL":"https://github.com/AnayoOleru.png","key":"AnayoOleru","page":null},{"name":"Fanny","alias":"fanny","url":"https://github.com/fanny","imageURL":"https://github.com/fanny.png","key":"fanny","page":null},{"name":"Jay Lees","alias":"jaylees14","url":"https://github.com/jaylees14","imageURL":"https://github.com/jaylees14.png","key":"jaylees14","page":null},{"name":"Jos\xe9 Renan","alias":"JoseRenan","url":"https://github.com/JoseRenan","imageURL":"https://github.com/JoseRenan.png","key":"JoseRenan","page":null},{"name":"JavaScript Joe","alias":"jsjoeio","url":"https://github.com/jsjoeio","imageURL":"https://github.com/jsjoeio.png","key":"jsjoeio","page":null},{"name":"Kamil Kisiela","alias":"kamilkisiela","url":"https://github.com/kamilkisiela","imageURL":"https://github.com/kamilkisiela.png","key":"kamilkisiela","page":null},{"name":"Krist\xf3f Poduszl\xf3","alias":"kripod","url":"https://github.com/kripod","imageURL":"https://github.com/kripod.png","key":"kripod","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Noah Silvera","alias":"Noah-Silvera","url":"https://github.com/Noah-Silvera","imageURL":"https://github.com/Noah-Silvera.png","key":"Noah-Silvera","page":null},{"name":"Reece Dunham","alias":"RDIL","url":"https://github.com/RDIL","imageURL":"https://github.com/RDIL.png","key":"RDIL","page":null},{"name":"Sylvain Pace","alias":"s-pace","url":"https://github.com/s-pace","imageURL":"https://github.com/s-pace.png","key":"s-pace","page":null},{"name":"Sam Zhou","alias":"SamChou19815","url":"https://github.com/SamChou19815","imageURL":"https://github.com/SamChou19815.png","key":"SamChou19815","page":null},{"name":"Bartosz Kaszubowski","alias":"Simek","url":"https://github.com/Simek","imageURL":"https://github.com/Simek.png","key":"Simek","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Tom Brien","alias":"TomBrien","url":"https://github.com/TomBrien","imageURL":"https://github.com/TomBrien.png","key":"TomBrien","page":null},{"name":"Chris Watson","alias":"watzon","url":"https://github.com/watzon","imageURL":"https://github.com/watzon.png","key":"watzon","page":null},{"name":"Yangshun Tay","alias":"yangshun","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png","key":"yangshun","page":null},{"name":"Mehmet Yatk\u0131","alias":"yatki","url":"https://github.com/yatki","imageURL":"https://github.com/yatki.png","key":"yatki","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-04-27T19:00","authors":["AnayoOleru","fanny","jaylees14","JoseRenan","jsjoeio","kamilkisiela","kripod","lex111","Noah-Silvera","RDIL","s-pace","SamChou19815","Simek","slorber","TomBrien","watzon","yangshun","yatki"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.53","permalink":"/changelog/2.0.0-alpha.53"},"nextItem":{"title":"2.0.0-alpha.50","permalink":"/changelog/2.0.0-alpha.50"},"listPageLink":"/changelog/page/4"},"content":"\x3c!-- truncate --\x3e\\n\\n## :boom: Breaking Change\\n\\n- `infima`\\n - The following infima variables have been renamed for consistency:\\n - `--ifm-font-base-color` \u2192 `--ifm-font-color-base`\\n - `--ifm-font-base-color-inverse` \u2192 `--ifm-font-color-base-inverse`\\n - `--ifm-font-color-secondary` \u2192 `--ifm-font-color-secondary`\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-theme-classic`\\n - [#2660](https://github.com/facebook/docusaurus/pull/2660) feat(v2): add ability to specify CSS class for navbar item ([@lex111](https://github.com/lex111))\\n - [#2597](https://github.com/facebook/docusaurus/pull/2597) feat(v2): add ability set dark mode by default ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#2665](https://github.com/facebook/docusaurus/pull/2665) feat(v2): add fallback to BrowserOnly component ([@lex111](https://github.com/lex111))\\n- `docusaurus-types`, `docusaurus`\\n - [#2630](https://github.com/facebook/docusaurus/pull/2630) feat(v2): add CLI option for polling ([@TomBrien](https://github.com/TomBrien))\\n- `docusaurus-init`\\n - [#2541](https://github.com/facebook/docusaurus/pull/2541) feat(v2): add showReadingTime and editUrl to the templates ([@fanny](https://github.com/fanny))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-utils`\\n - [#2524](https://github.com/facebook/docusaurus/pull/2524) feat(v2): add edit url in post page ([@fanny](https://github.com/fanny))\\n- `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`\\n - [#2531](https://github.com/facebook/docusaurus/pull/2531) feat(v2): add blog post estimated reading time ([@JoseRenan](https://github.com/JoseRenan))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`\\n - [#2672](https://github.com/facebook/docusaurus/pull/2672) fix(v2): add a11y support for dropdown ([@lex111](https://github.com/lex111))\\n - [#2649](https://github.com/facebook/docusaurus/pull/2649) fix(v2): hide sidebar after click on child item ([@lex111](https://github.com/lex111))\\n - [#2631](https://github.com/facebook/docusaurus/pull/2631) fix(v2): hide doc sidebar on mobiles ([@lex111](https://github.com/lex111))\\n - [#2626](https://github.com/facebook/docusaurus/pull/2626) fix(v2): make border right of doc sidebar equals doc page ([@lex111](https://github.com/lex111))\\n - [#2625](https://github.com/facebook/docusaurus/pull/2625) fix(v2): disable tab focus on collapsed doc sidebar items ([@lex111](https://github.com/lex111))\\n - [#2602](https://github.com/facebook/docusaurus/pull/2602) fix(v2): inherit color for announcement bar close icon ([@lex111](https://github.com/lex111))\\n - [#2582](https://github.com/facebook/docusaurus/pull/2582) fix(v2): remove horizontal scroll on docs page ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`\\n - [#2666](https://github.com/facebook/docusaurus/pull/2666) chore(v2): upgrade prism-react-renderer to latest version ([@lex111](https://github.com/lex111))\\n - [#2533](https://github.com/facebook/docusaurus/pull/2533) fix(v2): add rounded corners in code blocks properly ([@lex111](https://github.com/lex111))\\n- `docusaurus-1.x`, `docusaurus-init-1.x`, `docusaurus-init`, `docusaurus-plugin-content-docs`, `docusaurus`\\n - [#2661](https://github.com/facebook/docusaurus/pull/2661) chore: upgrade shelljs to 0.8.4 ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-preset-classic`, `docusaurus-theme-classic`\\n - [#2642](https://github.com/facebook/docusaurus/pull/2642) fix(v2): use remark-admonitions separately in each plugin instead of in preset only ([@lex111](https://github.com/lex111))\\n- `docusaurus-utils`\\n - [#2380](https://github.com/facebook/docusaurus/pull/2380) fix(v2): ignore import declarations in excerpt ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-sitemap`\\n - [#2616](https://github.com/facebook/docusaurus/pull/2616) fix(v2): don\'t include 404 page in sitemaps ([@RDIL](https://github.com/RDIL))\\n - [#2530](https://github.com/facebook/docusaurus/pull/2530) fix(v2): Use `writeFileSync` to write generated sitemap.xml to avoid early termination ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus`\\n - [#2558](https://github.com/facebook/docusaurus/pull/2558) fix(v2): properly link top-level github pages sites in deploy command ([@RDIL](https://github.com/RDIL))\\n - [#2580](https://github.com/facebook/docusaurus/pull/2580) fix(v2): do not process anchor links by router ([@lex111](https://github.com/lex111))\\n - [#2579](https://github.com/facebook/docusaurus/pull/2579) fix(v2): treat mailto and tel links properly ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-blog`\\n - [#2540](https://github.com/facebook/docusaurus/pull/2540) fix(v2): use synchronous write for generate blog feeds ([@lex111](https://github.com/lex111))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#2656](https://github.com/facebook/docusaurus/pull/2656) refactor(v2): lose focus of active sidebar item after click on it ([@lex111](https://github.com/lex111))\\n - [#2627](https://github.com/facebook/docusaurus/pull/2627) refactor(v2): extract scroll position detection into separate hook ([@lex111](https://github.com/lex111))\\n - [#2595](https://github.com/facebook/docusaurus/pull/2595) refactor(v2): make margin top on blog pages as on other pages ([@lex111](https://github.com/lex111))\\n - [#2588](https://github.com/facebook/docusaurus/pull/2588) refactor(v2): remove redundant container on docs page ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus`\\n - [#2585](https://github.com/facebook/docusaurus/pull/2585) refactor(v2): use nav link component only where needed ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#2556](https://github.com/facebook/docusaurus/pull/2556) refactor(v2): enhance CLI experience ([@RDIL](https://github.com/RDIL))\\n - [#2529](https://github.com/facebook/docusaurus/pull/2529) refactor(v2): replace few Lodash methods with native counterparts ([@Simek](https://github.com/Simek))\\n- `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`\\n - [#2534](https://github.com/facebook/docusaurus/pull/2534) refactor(v2): make better code blocks ([@lex111](https://github.com/lex111))\\n - [#2526](https://github.com/facebook/docusaurus/pull/2526) fix(v2): make code block nicer again ([@yangshun](https://github.com/yangshun))\\n- `docusaurus-plugin-content-docs`\\n - [#2519](https://github.com/facebook/docusaurus/pull/2519) chore(v2): use single method Lodash packages in docs plugin ([@Simek](https://github.com/Simek))\\n\\n## :memo: Documentation\\n\\n- [#2659](https://github.com/facebook/docusaurus/pull/2659) fix(docs): mention that appID is optional ([@s-pace](https://github.com/s-pace))\\n- [#2596](https://github.com/facebook/docusaurus/pull/2596) docs(v2): remove duplicated package.json in installation directory structure ([@jaylees14](https://github.com/jaylees14))\\n- [#2572](https://github.com/facebook/docusaurus/pull/2572) docs(v2): mention that `plugin-ideal-image` only perform compression on a production build ([@Noah-Silvera](https://github.com/Noah-Silvera))\\n- [#2570](https://github.com/facebook/docusaurus/pull/2570) docs(v2): fix syntax error for @docusaurus/plugin-ideal-image example ([@Noah-Silvera](https://github.com/Noah-Silvera))\\n- [#2566](https://github.com/facebook/docusaurus/pull/2566) docs(v2): be more polite ([@lex111](https://github.com/lex111))\\n- [#2559](https://github.com/facebook/docusaurus/pull/2559) doc(v2): remove legacy blog metadata ([@RDIL](https://github.com/RDIL))\\n- [#2549](https://github.com/facebook/docusaurus/pull/2549) docs(v2): command for swizzling all components ([@fanny](https://github.com/fanny))\\n- [#2547](https://github.com/facebook/docusaurus/pull/2547) docs(v2): Fix typo in team page ([@SamChou19815](https://github.com/SamChou19815))\\n- [#2545](https://github.com/facebook/docusaurus/pull/2545) docs(v2): add community pages ([@yangshun](https://github.com/yangshun))\\n- [#2521](https://github.com/facebook/docusaurus/pull/2521) docs(v2): useThemeContext hook ([@lex111](https://github.com/lex111))\\n\\n## :house: Internal\\n\\n- `docusaurus-types`, `docusaurus`\\n - [#2578](https://github.com/facebook/docusaurus/pull/2578) refactor(v2): Convert docusaurus-core to TypeScript ([@SamChou19815](https://github.com/SamChou19815))\\n- Other\\n - [#2569](https://github.com/facebook/docusaurus/pull/2569) docs(v2): showcase user Tourmaline ([@watzon](https://github.com/watzon))\\n - [#2553](https://github.com/facebook/docusaurus/pull/2553) misc(v2): remove deprecated/useless lerna field ([@slorber](https://github.com/slorber))\\n- `docusaurus-1.x`, `lqip-loader`\\n - [#2563](https://github.com/facebook/docusaurus/pull/2563) chore(v2): fix lint, tweak lqip-loader utils comment ([@Simek](https://github.com/Simek))\\n- `lqip-loader`\\n - [#2561](https://github.com/facebook/docusaurus/pull/2561) chore(v2): add lqip-loader tests, clarify loader code, improve README ([@Simek](https://github.com/Simek))\\n- `docusaurus-plugin-ideal-image`, `lqip-loader`\\n - [#2544](https://github.com/facebook/docusaurus/pull/2544) refactor(v2): import lqip-loader to monorepo, fix build on Node 13, fix lint-staged ([@Simek](https://github.com/Simek))\\n- `docusaurus-init`\\n - [#2542](https://github.com/facebook/docusaurus/pull/2542) chore(v2): update Prettier config ([@lex111](https://github.com/lex111))\\n- `docusaurus-1.x`, `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus-plugin-ideal-image`, `docusaurus-plugin-sitemap`, `docusaurus-preset-classic`, `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-utils`, `docusaurus`, `stylelint-copyright`\\n - [#2538](https://github.com/facebook/docusaurus/pull/2538) chore(v2): upgrade devDependencies ([@yangshun](https://github.com/yangshun))\\n- `docusaurus-utils`\\n - [#2536](https://github.com/facebook/docusaurus/pull/2536) refactor(v2): replace Lodash with single methods packages in utils ([@Simek](https://github.com/Simek))\\n- `docusaurus`\\n - [#2535](https://github.com/facebook/docusaurus/pull/2535) refactor(v2): replace Lodash with single methods packages in core ([@Simek](https://github.com/Simek))\\n\\n## Committers: 18\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Anayo Oleru ([@AnayoOleru](https://github.com/AnayoOleru))\\n- Bartosz Kaszubowski ([@Simek](https://github.com/Simek))\\n- Chris Watson ([@watzon](https://github.com/watzon))\\n- Fanny ([@fanny](https://github.com/fanny))\\n- Jay Lees ([@jaylees14](https://github.com/jaylees14))\\n- Joe Previte ([@jsjoeio](https://github.com/jsjoeio))\\n- Jos\xe9 Renan ([@JoseRenan](https://github.com/JoseRenan))\\n- Kamil Kisiela ([@kamilkisiela](https://github.com/kamilkisiela))\\n- Krist\xf3f Poduszl\xf3 ([@kripod](https://github.com/kripod))\\n- Mehmet Yatk\u0131 ([@yatki](https://github.com/yatki))\\n- Noah Silvera ([@Noah-Silvera](https://github.com/Noah-Silvera))\\n- Reece Dunham ([@RDIL](https://github.com/RDIL))\\n- Sam Zhou ([@SamChou19815](https://github.com/SamChou19815))\\n- Sylvain Pace ([@s-pace](https://github.com/s-pace))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Tom Brien ([@TomBrien](https://github.com/TomBrien))\\n- Yangshun Tay ([@yangshun](https://github.com/yangshun))"},{"id":"/2.0.0-alpha.50","metadata":{"permalink":"/changelog/2.0.0-alpha.50","source":"@site/changelog/source/2.0.0-alpha.50.md","title":"2.0.0-alpha.50","description":"HOTFIX for 2.0.0-alpha.49.","date":"2020-04-02T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Can Gencer","alias":"cangencer","url":"https://github.com/cangencer","imageURL":"https://github.com/cangencer.png","key":"cangencer","page":null},{"name":"Richard Chan","alias":"iWun","url":"https://github.com/iWun","imageURL":"https://github.com/iWun.png","key":"iWun","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Sam Zhou","alias":"SamChou19815","url":"https://github.com/SamChou19815","imageURL":"https://github.com/SamChou19815.png","key":"SamChou19815","page":null},{"name":"Yangshun Tay","alias":"yangshun","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png","key":"yangshun","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-04-02T20:00","authors":["cangencer","iWun","lex111","SamChou19815","yangshun"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.51","permalink":"/changelog/2.0.0-alpha.51"},"nextItem":{"title":"2.0.0-alpha.49","permalink":"/changelog/2.0.0-alpha.49"},"listPageLink":"/changelog/page/4"},"content":"\x3c!-- truncate --\x3e\\n\\n**HOTFIX for 2.0.0-alpha.49**.\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`\\n - [#2509](https://github.com/facebook/docusaurus/pull/2509) fix(v2): synchronize code block components changes ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`\\n - [#2498](https://github.com/facebook/docusaurus/pull/2498) fix(v2): blog item styling ([@yangshun](https://github.com/yangshun))\\n - [#2489](https://github.com/facebook/docusaurus/pull/2489) fix(v2): fix HTML issues nav dropdown and highlight docs item ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#2496](https://github.com/facebook/docusaurus/pull/2496) fix(v2): do not force terminate building when running deploy command ([@lex111](https://github.com/lex111))\\n- `docusaurus-utils`\\n - [#2497](https://github.com/facebook/docusaurus/pull/2497) fix(v2): unbreak blog-only mode routing by deplicating starting forward slashes ([@SamChou19815](https://github.com/SamChou19815))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#2505](https://github.com/facebook/docusaurus/pull/2505) fix(v2): tweak colors for announcement bar ([@yangshun](https://github.com/yangshun))\\n - [#2504](https://github.com/facebook/docusaurus/pull/2504) refactor(v2): improve announcement bar ([@lex111](https://github.com/lex111))\\n - [#2495](https://github.com/facebook/docusaurus/pull/2495) refactor(v2): update HTML markup of pagination for better a11y ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`\\n - [#2502](https://github.com/facebook/docusaurus/pull/2502) fix(v2): make code block nicer ([@yangshun](https://github.com/yangshun))\\n- `docusaurus-plugin-content-docs`, `docusaurus`\\n - [#2490](https://github.com/facebook/docusaurus/pull/2490) fix(v2): use lodash instead of array-map-polyfill ([@lex111](https://github.com/lex111))\\n\\n## :memo: Documentation\\n\\n- `docusaurus-theme-classic`\\n - [#2500](https://github.com/facebook/docusaurus/pull/2500) docs(v2): misc docs updates ([@yangshun](https://github.com/yangshun))\\n\\n## :house: Internal\\n\\n- [#2486](https://github.com/facebook/docusaurus/pull/2486) misc: add instructions about test release ([@lex111](https://github.com/lex111))\\n\\n## Committers: 5\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Can Gencer ([@cangencer](https://github.com/cangencer))\\n- Richard Chan ([@iWun](https://github.com/iWun))\\n- Sam Zhou ([@SamChou19815](https://github.com/SamChou19815))\\n- Yangshun Tay ([@yangshun](https://github.com/yangshun))"},{"id":"/2.0.0-alpha.49","metadata":{"permalink":"/changelog/2.0.0-alpha.49","source":"@site/changelog/source/2.0.0-alpha.49.md","title":"2.0.0-alpha.49","description":"New Feature","date":"2020-04-01T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"38elements","alias":"38elements","url":"https://github.com/38elements","imageURL":"https://github.com/38elements.png","key":"38elements","page":null},{"name":"R\xe9mi Doreau","alias":"ayshiff","url":"https://github.com/ayshiff","imageURL":"https://github.com/ayshiff.png","key":"ayshiff","page":null},{"name":"bravo-kernel","alias":"bravo-kernel","url":"https://github.com/bravo-kernel","imageURL":"https://github.com/bravo-kernel.png","key":"bravo-kernel","page":null},{"name":"Elvis Wolcott","alias":"elviswolcott","url":"https://github.com/elviswolcott","imageURL":"https://github.com/elviswolcott.png","key":"elviswolcott","page":null},{"name":"Favour Kelvin","alias":"fakela","url":"https://github.com/fakela","imageURL":"https://github.com/fakela.png","key":"fakela","page":null},{"name":"Fanny","alias":"fanny","url":"https://github.com/fanny","imageURL":"https://github.com/fanny.png","key":"fanny","page":null},{"name":"GermaVinsmoke","alias":"GermaVinsmoke","url":"https://github.com/GermaVinsmoke","imageURL":"https://github.com/GermaVinsmoke.png","key":"GermaVinsmoke","page":null},{"name":"iamkun","alias":"iamkun","url":"https://github.com/iamkun","imageURL":"https://github.com/iamkun.png","key":"iamkun","page":null},{"name":"Jefferson Licet","alias":"jeffersonlicet","url":"https://github.com/jeffersonlicet","imageURL":"https://github.com/jeffersonlicet.png","key":"jeffersonlicet","page":null},{"name":"KohheePeace","alias":"KohheePeace","url":"https://github.com/KohheePeace","imageURL":"https://github.com/KohheePeace.png","key":"KohheePeace","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Luke Collier","alias":"lukecollier","url":"https://github.com/lukecollier","imageURL":"https://github.com/lukecollier.png","key":"lukecollier","page":null},{"name":"mohrash92","alias":"mohrash92","url":"https://github.com/mohrash92","imageURL":"https://github.com/mohrash92.png","key":"mohrash92","page":null},{"name":"Ben Gubler","alias":"nebrelbug","url":"https://github.com/nebrelbug","imageURL":"https://github.com/nebrelbug.png","key":"nebrelbug","page":null},{"name":"Nisar Hassan Naqvi","alias":"nisarhassan12","url":"https://github.com/nisarhassan12","imageURL":"https://github.com/nisarhassan12.png","key":"nisarhassan12","page":null},{"name":"Paul Armstrong","alias":"paularmstrong","url":"https://github.com/paularmstrong","imageURL":"https://github.com/paularmstrong.png","key":"paularmstrong","page":null},{"name":"Linus L\xe5ngberg","alias":"phoqe","url":"https://github.com/phoqe","imageURL":"https://github.com/phoqe.png","key":"phoqe","page":null},{"name":"Ram\xf3n Lamana","alias":"rlamana","url":"https://github.com/rlamana","imageURL":"https://github.com/rlamana.png","key":"rlamana","page":null},{"name":"Sam Zhou","alias":"SamChou19815","url":"https://github.com/SamChou19815","imageURL":"https://github.com/SamChou19815.png","key":"SamChou19815","page":null},{"name":"Bartosz Kaszubowski","alias":"Simek","url":"https://github.com/Simek","imageURL":"https://github.com/Simek.png","key":"Simek","page":null},{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},{"name":"Theodore Chu","alias":"TheodoreChu","url":"https://github.com/TheodoreChu","imageURL":"https://github.com/TheodoreChu.png","key":"TheodoreChu","page":null},{"name":"Yangshun Tay","alias":"yangshun","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png","key":"yangshun","page":null},{"name":"ZachJW34","alias":"ZachJW34","url":"https://github.com/ZachJW34","imageURL":"https://github.com/ZachJW34.png","key":"ZachJW34","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-04-01T20:00","authors":["38elements","ayshiff","bravo-kernel","elviswolcott","fakela","fanny","GermaVinsmoke","iamkun","jeffersonlicet","KohheePeace","lex111","lukecollier","mohrash92","nebrelbug","nisarhassan12","paularmstrong","phoqe","rlamana","SamChou19815","Simek","slorber","TheodoreChu","yangshun","ZachJW34"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.50","permalink":"/changelog/2.0.0-alpha.50"},"nextItem":{"title":"2.0.0-alpha.48","permalink":"/changelog/2.0.0-alpha.48"},"listPageLink":"/changelog/page/4"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-theme-classic`\\n - [#2487](https://github.com/facebook/docusaurus/pull/2487) feat(v2): nav dropdown ([@yangshun](https://github.com/yangshun))\\n - [#2456](https://github.com/facebook/docusaurus/pull/2456) feat(v2): support comments for code highlighting ([@elviswolcott](https://github.com/elviswolcott))\\n - [#2330](https://github.com/facebook/docusaurus/pull/2330) feat(v2): add announcement bar ([@lex111](https://github.com/lex111))\\n - [#2440](https://github.com/facebook/docusaurus/pull/2440) feat(v2): make clickable sidebar logo ([@lex111](https://github.com/lex111))\\n - [#2366](https://github.com/facebook/docusaurus/pull/2366) feat(v2): support syncing tab choices ([@SamChou19815](https://github.com/SamChou19815))\\n- `docusaurus`\\n - [#2323](https://github.com/facebook/docusaurus/pull/2323) feat(v2): add a way to exclude components from build-time prerendering ([@lex111](https://github.com/lex111))\\n - [#2469](https://github.com/facebook/docusaurus/pull/2469) feat(v2): add TypeScript support for theme components ([@SamChou19815](https://github.com/SamChou19815))\\n - [#2455](https://github.com/facebook/docusaurus/pull/2455) feat(v2): add @theme-original alias to give access to pre-swizzled components ([@yangshun](https://github.com/yangshun))\\n - [#2438](https://github.com/facebook/docusaurus/pull/2438) feat(v2): add version to page\'s generated meta tags ([@lex111](https://github.com/lex111))\\n- `docusaurus-types`, `docusaurus`\\n - [#2474](https://github.com/facebook/docusaurus/pull/2474) feat(v2): add ability to create unminimized bundles ([@lex111](https://github.com/lex111))\\n - [#2417](https://github.com/facebook/docusaurus/pull/2417) feat(v2): allow custom output directory for build ([@ZachJW34](https://github.com/ZachJW34))\\n- `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`\\n - [#2346](https://github.com/facebook/docusaurus/pull/2346) feat(v2): add filename in CodeBlock ([@KohheePeace](https://github.com/KohheePeace))\\n- `docusaurus-plugin-content-docs`, `docusaurus`\\n - [#2444](https://github.com/facebook/docusaurus/pull/2444) feat(v2): allow nested sidebar category shorthand syntax ([@slorber](https://github.com/slorber))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`\\n - [#2483](https://github.com/facebook/docusaurus/pull/2483) fix(v2): do not render sidebar logo if used sticky navbar ([@lex111](https://github.com/lex111))\\n - [#2475](https://github.com/facebook/docusaurus/pull/2475) fix(v2): make correct Open Graph title for doc page ([@lex111](https://github.com/lex111))\\n - [#2436](https://github.com/facebook/docusaurus/pull/2436) fix(v2): update twitter:card to summary_large_image ([@lex111](https://github.com/lex111))\\n - [#2434](https://github.com/facebook/docusaurus/pull/2434) fix(v2): add support dark logo for sidebar logo ([@lex111](https://github.com/lex111))\\n - [#2420](https://github.com/facebook/docusaurus/pull/2420) fix(v2): fix external URL for og:image tag ([@38elements](https://github.com/38elements))\\n- `docusaurus-theme-live-codeblock`\\n - [#2480](https://github.com/facebook/docusaurus/pull/2480) fix(v2): various improvements for accessibility ([@lex111](https://github.com/lex111))\\n- `docusaurus-mdx-loader`, `docusaurus-theme-classic`\\n - [#2479](https://github.com/facebook/docusaurus/pull/2479) chore(v2): upgrade MDX to 1.5.8 ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`\\n - [#2476](https://github.com/facebook/docusaurus/pull/2476) fix(v2): improve code block scroll accessibility ([@lex111](https://github.com/lex111))\\n - [#2442](https://github.com/facebook/docusaurus/pull/2442) fix(v2): various improvements for accessibility ([@lex111](https://github.com/lex111))\\n- `docusaurus-preset-classic`, `docusaurus-theme-classic`\\n - [#2477](https://github.com/facebook/docusaurus/pull/2477) chore(v2): upgrade remark-admonitions for a11y fixes ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#2462](https://github.com/facebook/docusaurus/pull/2462) fix(v2): do not force terminate building when bundle analyzer is on ([@lex111](https://github.com/lex111))\\n - [#2393](https://github.com/facebook/docusaurus/pull/2393) fix(v2): normalize location for route matching ([@rlamana](https://github.com/rlamana))\\n - [#2443](https://github.com/facebook/docusaurus/pull/2443) fix(v2): always exit after successful build ([@mohrash92](https://github.com/mohrash92))\\n - [#2437](https://github.com/facebook/docusaurus/pull/2437) fix(v2): do not force terminate building if client bundle failed in development mode ([@lex111](https://github.com/lex111))\\n - [#2424](https://github.com/facebook/docusaurus/pull/2424) fix(v2): make correct internal link check ([@lex111](https://github.com/lex111))\\n- `docusaurus-preset-classic`\\n - [#2451](https://github.com/facebook/docusaurus/pull/2451) fix(v2): pass options to remark-admonitions ([@elviswolcott](https://github.com/elviswolcott))\\n- `docusaurus-mdx-loader`\\n - [#2426](https://github.com/facebook/docusaurus/pull/2426) fix(v2): remove HTML from heading slug ([@lex111](https://github.com/lex111))\\n- `docusaurus-utils`\\n - [#2405](https://github.com/facebook/docusaurus/pull/2405) fix(v2): properly dedupe forward slashes in the entire URL path ([@rlamana](https://github.com/rlamana))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#2485](https://github.com/facebook/docusaurus/pull/2485) refactor(v2): remove unnecessary X-UA-Compatible meta tag ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-blog`\\n - [#2460](https://github.com/facebook/docusaurus/pull/2460) refactor(v2): use single method package instead of whole Lodash package in blog plugin ([@Simek](https://github.com/Simek))\\n- Other\\n - [#2428](https://github.com/facebook/docusaurus/pull/2428) polish(v2): use npm-to-yarn for the npm2yarn remark plugin ([@nebrelbug](https://github.com/nebrelbug))\\n\\n## :memo: Documentation\\n\\n- Other\\n - [#2478](https://github.com/facebook/docusaurus/pull/2478) docs(v2): mark that in dev server some features may not work ([@lex111](https://github.com/lex111))\\n - [#2472](https://github.com/facebook/docusaurus/pull/2472) docs(v2): fix typo in deployment docs ([@GermaVinsmoke](https://github.com/GermaVinsmoke))\\n - [#2423](https://github.com/facebook/docusaurus/pull/2423) docs(v2): add Sass/SCSS under the styling section ([@rlamana](https://github.com/rlamana))\\n - [#2446](https://github.com/facebook/docusaurus/pull/2446) docs(v2): add docusaurus-plugin-sass to community plugins ([@rlamana](https://github.com/rlamana))\\n - [#2408](https://github.com/facebook/docusaurus/pull/2408) docs(v2): suggest Surge for quick deployment ([@fakela](https://github.com/fakela))\\n - [#2401](https://github.com/facebook/docusaurus/pull/2401) docs(v2): add resources page ([@yangshun](https://github.com/yangshun))\\n - [#2413](https://github.com/facebook/docusaurus/pull/2413) docs(v2): include appId key for Algolia ([@TheodoreChu](https://github.com/TheodoreChu))\\n - [#2411](https://github.com/facebook/docusaurus/pull/2411) docs:(v2): add Netlify configuration warning ([@bravo-kernel](https://github.com/bravo-kernel))\\n - [#2397](https://github.com/facebook/docusaurus/pull/2397) docs(v2):update alpha version to current version ([@fakela](https://github.com/fakela))\\n - [#2395](https://github.com/facebook/docusaurus/pull/2395) docs(v2): clarify instructions on docs-only mode ([@phoqe](https://github.com/phoqe))\\n- `docusaurus-init`\\n - [#2458](https://github.com/facebook/docusaurus/pull/2458) fix(v2): expand broken admonitions ([@elviswolcott](https://github.com/elviswolcott))\\n\\n## :house: Internal\\n\\n- `docusaurus`\\n - [#2461](https://github.com/facebook/docusaurus/pull/2461) chore(v2): upgrade react-dev-utils ([@lex111](https://github.com/lex111))\\n- Other\\n - [#2450](https://github.com/facebook/docusaurus/pull/2450) docs(v2): Adding Motion Layout to Docusaurus users ([@jeffersonlicet](https://github.com/jeffersonlicet))\\n - [#2450](https://github.com/facebook/docusaurus/pull/2450) docs(v2): Adding Motion Layout to Docusaurus users ([@jeffersonlicet](https://github.com/jeffersonlicet))\\n - [#2439](https://github.com/facebook/docusaurus/pull/2439) polish(v2): add logo for dark mode ([@lex111](https://github.com/lex111))\\n - [#2435](https://github.com/facebook/docusaurus/pull/2435) fix(v2): fix aspect ratio for Open Graph image ([@lex111](https://github.com/lex111))\\n - [#2433](https://github.com/facebook/docusaurus/pull/2433) chore(v2): ignore JetBrains editors .iml files ([@slorber](https://github.com/slorber))\\n - [#2416](https://github.com/facebook/docusaurus/pull/2416) docs(v2): Add Build Tracker to Showcase page ([@paularmstrong](https://github.com/paularmstrong))\\n - [#2388](https://github.com/facebook/docusaurus/pull/2388) docs(v1): showcase user Day.js ([@iamkun](https://github.com/iamkun))\\n- `stylelint-copyright`\\n - [#2415](https://github.com/facebook/docusaurus/pull/2415) misc: improve stylelint rule ([@ayshiff](https://github.com/ayshiff))\\n\\n## Committers: 24\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Bartosz Kaszubowski ([@Simek](https://github.com/Simek))\\n- Ben Gubler ([@nebrelbug](https://github.com/nebrelbug))\\n- Elvis Wolcott ([@elviswolcott](https://github.com/elviswolcott))\\n- Fanny ([@fanny](https://github.com/fanny))\\n- Favour Kelvin ([@fakela](https://github.com/fakela))\\n- Jefferson Licet ([@jeffersonlicet](https://github.com/jeffersonlicet))\\n- Kohhee Peace ([@KohheePeace](https://github.com/KohheePeace))\\n- Linus L\xe5ngberg ([@phoqe](https://github.com/phoqe))\\n- Luke Collier ([@lukecollier](https://github.com/lukecollier))\\n- Nisar Hassan Naqvi ([@nisarhassan12](https://github.com/nisarhassan12))\\n- Paul Armstrong ([@paularmstrong](https://github.com/paularmstrong))\\n- Ram\xf3n Lamana ([@rlamana](https://github.com/rlamana))\\n- R\xe9mi Doreau ([@ayshiff](https://github.com/ayshiff))\\n- Sam Zhou ([@SamChou19815](https://github.com/SamChou19815))\\n- S\xe9bastien Lorber ([@slorber](https://github.com/slorber))\\n- Theodore Chu ([@TheodoreChu](https://github.com/TheodoreChu))\\n- Yangshun Tay ([@yangshun](https://github.com/yangshun))\\n- [@38elements](https://github.com/38elements)\\n- [@GermaVinsmoke](https://github.com/GermaVinsmoke)\\n- [@ZachJW34](https://github.com/ZachJW34)\\n- [@bravo-kernel](https://github.com/bravo-kernel)\\n- [@iamkun](https://github.com/iamkun)\\n- [@mohrash92](https://github.com/mohrash92)"},{"id":"/2.0.0-alpha.48","metadata":{"permalink":"/changelog/2.0.0-alpha.48","source":"@site/changelog/source/2.0.0-alpha.48.md","title":"2.0.0-alpha.48","description":"HOTFIX for 2.0.0-alpha.44.","date":"2020-03-08T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-03-08T20:00","authors":["lex111"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.49","permalink":"/changelog/2.0.0-alpha.49"},"nextItem":{"title":"2.0.0-alpha.44","permalink":"/changelog/2.0.0-alpha.44"},"listPageLink":"/changelog/page/4"},"content":"\x3c!-- truncate --\x3e\\n\\n**HOTFIX for 2.0.0-alpha.44**.\\n\\n## :bug: Bug Fix\\n\\n- Other\\n - [#2383](https://github.com/facebook/docusaurus/pull/2383) fix(v2): specify proper version for stylelint-copyright ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#2382](https://github.com/facebook/docusaurus/pull/2382) fix(v2): add missing preset-typescript dependency ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`\\n - [#2386](https://github.com/facebook/docusaurus/pull/2386) fix(v2): add missing prismjs dependency and Noop component ([@lex111](https://github.com/lex111))\\n\\n## Committers: 1\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))"},{"id":"/2.0.0-alpha.44","metadata":{"permalink":"/changelog/2.0.0-alpha.44","source":"@site/changelog/source/2.0.0-alpha.44.md","title":"2.0.0-alpha.44","description":"New Feature","date":"2020-03-08T19:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Amila Welihinda","alias":"amilajack","url":"https://github.com/amilajack","imageURL":"https://github.com/amilajack.png","key":"amilajack","page":null},{"name":"Paulus Schoutsen","alias":"balloob","url":"https://github.com/balloob","imageURL":"https://github.com/balloob.png","key":"balloob","page":null},{"name":"Robert","alias":"deniaz","url":"https://github.com/deniaz","imageURL":"https://github.com/deniaz.png","key":"deniaz","page":null},{"name":"Hassan Farid","alias":"hassanfarid","url":"https://github.com/hassanfarid","imageURL":"https://github.com/hassanfarid.png","key":"hassanfarid","page":null},{"name":"jartuso","alias":"jartuso","url":"https://github.com/jartuso","imageURL":"https://github.com/jartuso.png","key":"jartuso","page":null},{"name":"JavaScript Joe","alias":"jsjoeio","url":"https://github.com/jsjoeio","imageURL":"https://github.com/jsjoeio.png","key":"jsjoeio","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Mohamed Abdel Nasser","alias":"mohamedsgap","url":"https://github.com/mohamedsgap","imageURL":"https://github.com/mohamedsgap.png","key":"mohamedsgap","page":null},{"name":"Noah Silvera","alias":"Noah-Silvera","url":"https://github.com/Noah-Silvera","imageURL":"https://github.com/Noah-Silvera.png","key":"Noah-Silvera","page":null},{"name":"Linus L\xe5ngberg","alias":"phoqe","url":"https://github.com/phoqe","imageURL":"https://github.com/phoqe.png","key":"phoqe","page":null},{"name":"Ram\xf3n Lamana","alias":"rlamana","url":"https://github.com/rlamana","imageURL":"https://github.com/rlamana.png","key":"rlamana","page":null},{"name":"Sylvain Pace","alias":"s-pace","url":"https://github.com/s-pace","imageURL":"https://github.com/s-pace.png","key":"s-pace","page":null},{"name":"Scott Lee","alias":"scottilee","url":"https://github.com/scottilee","imageURL":"https://github.com/scottilee.png","key":"scottilee","page":null},{"name":"Theodore Chu","alias":"TheodoreChu","url":"https://github.com/TheodoreChu","imageURL":"https://github.com/TheodoreChu.png","key":"TheodoreChu","page":null},{"name":"Yangshun Tay","alias":"yangshun","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png","key":"yangshun","page":null},{"name":"Zhenchao Cai","alias":"Zhencha0Cai","url":"https://github.com/Zhencha0Cai","imageURL":"https://github.com/Zhencha0Cai.png","key":"Zhencha0Cai","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-03-08T19:00","authors":["amilajack","balloob","deniaz","hassanfarid","jartuso","jsjoeio","lex111","mohamedsgap","Noah-Silvera","phoqe","rlamana","s-pace","scottilee","TheodoreChu","yangshun","Zhencha0Cai"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.48","permalink":"/changelog/2.0.0-alpha.48"},"nextItem":{"title":"2.0.0-alpha.43","permalink":"/changelog/2.0.0-alpha.43"},"listPageLink":"/changelog/page/4"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-theme-classic`\\n - [#2250](https://github.com/facebook/docusaurus/pull/2250) feat(v2): add support specify new languages for Prism ([@lex111](https://github.com/lex111))\\n - [#2344](https://github.com/facebook/docusaurus/pull/2344) feat(v2): allow specifying custom target for logo link ([@lex111](https://github.com/lex111))\\n - [#2327](https://github.com/facebook/docusaurus/pull/2327) feat(v2): add ability to use HTML in footer copyright ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-blog`\\n - [#2335](https://github.com/facebook/docusaurus/pull/2335) feat(v2): add draft feature to blog posts ([@lex111](https://github.com/lex111))\\n- `docusaurus-init`, `docusaurus-theme-classic`\\n - [#2303](https://github.com/facebook/docusaurus/pull/2303) docs(v2): Nav links activeBasePath ([@yangshun](https://github.com/yangshun))\\n- `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`, `docusaurus`\\n - [#2296](https://github.com/facebook/docusaurus/pull/2296) feat(v2): add ExecutionEnvironment API ([@yangshun](https://github.com/yangshun))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus`\\n - [#2345](https://github.com/facebook/docusaurus/pull/2345) fix(v2): force terminate building if client bundle failed ([@lex111](https://github.com/lex111))\\n - [#2310](https://github.com/facebook/docusaurus/pull/2310) fix(v2): add @babel/preset-typescript to babel-loader ([@deniaz](https://github.com/deniaz))\\n- `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`\\n - [#2371](https://github.com/facebook/docusaurus/pull/2371) fix(v2): remove line break from end of code blocks ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-blog`\\n - [#2326](https://github.com/facebook/docusaurus/pull/2326) fix(v2): linkify blog posts ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`\\n - [#2324](https://github.com/facebook/docusaurus/pull/2324) fix(v2): properly set dark mode logo on build-time prerendering ([@lex111](https://github.com/lex111))\\n - [#2325](https://github.com/facebook/docusaurus/pull/2325) fix(v2): switch a toggle when system theme changed ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-pages`, `docusaurus-utils`\\n - [#2334](https://github.com/facebook/docusaurus/pull/2334) fix(v2): make proper path to pages in TS ([@lex111](https://github.com/lex111))\\n- Other\\n - [#2316](https://github.com/facebook/docusaurus/pull/2316) fix(v2): properly scale logo on IE 11 ([@lex111](https://github.com/lex111))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-search-algolia`\\n - [#2376](https://github.com/facebook/docusaurus/pull/2376) refactor(v2): clean up and improve Algolia styles ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`\\n - [#2372](https://github.com/facebook/docusaurus/pull/2372) chore(v2): upgrade Infima and remark-admonitions ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`\\n - [#2367](https://github.com/facebook/docusaurus/pull/2367) refactor(v2): increase CSS specificity on application container ([@lex111](https://github.com/lex111))\\n- `docusaurus-init`, `stylelint-copyright`\\n - [#2363](https://github.com/facebook/docusaurus/pull/2363) fix(v2): improve stylelint copyright header rule ([@yangshun](https://github.com/yangshun))\\n- `docusaurus-types`, `docusaurus`\\n - [#2342](https://github.com/facebook/docusaurus/pull/2342) chore(v2): mark tagline field as optional ([@lex111](https://github.com/lex111))\\n\\n## :memo: Documentation\\n\\n- [#2378](https://github.com/facebook/docusaurus/pull/2378) docs(v2): add section for docs-only mode ([@phoqe](https://github.com/phoqe))\\n- [#2357](https://github.com/facebook/docusaurus/pull/2357) docs(v2): fix getPathsToWatch() example syntax in lifecycle APIs ([@rlamana](https://github.com/rlamana))\\n- [#2351](https://github.com/facebook/docusaurus/pull/2351) docs(v2): add examples to plugin usage doc ([@Noah-Silvera](https://github.com/Noah-Silvera))\\n- [#2343](https://github.com/facebook/docusaurus/pull/2343) docs(v2): fix typo in remark-admonitions example ([@hassanfarid](https://github.com/hassanfarid))\\n- [#2340](https://github.com/facebook/docusaurus/pull/2340) docs(v2): mention about disabling Jekyll when using GitHub pages ([@amilajack](https://github.com/amilajack))\\n- [#2338](https://github.com/facebook/docusaurus/pull/2338) docs(v2): guide on upgrading Docusaurus within a project ([@TheodoreChu](https://github.com/TheodoreChu))\\n- [#2313](https://github.com/facebook/docusaurus/pull/2313) docs(v2): move the quotes to remark admonitions ([@Zhencha0Cai](https://github.com/Zhencha0Cai))\\n- [#2307](https://github.com/facebook/docusaurus/pull/2307) docs(v1): fix Windows instructions for GitHub Pages publishing ([@jartuso](https://github.com/jartuso))\\n- [#2300](https://github.com/facebook/docusaurus/pull/2300) docs(v2): make blog plugin config example valid ([@balloob](https://github.com/balloob))\\n- [#2289](https://github.com/facebook/docusaurus/pull/2289) docs(v2): add instructions on Travis CI deployment ([@mohamedsgap](https://github.com/mohamedsgap))\\n\\n## :house: Internal\\n\\n- Other\\n - [#2369](https://github.com/facebook/docusaurus/pull/2369) misc: mention about v2 in README file ([@lex111](https://github.com/lex111))\\n - [#2368](https://github.com/facebook/docusaurus/pull/2368) misc: add note about edits in versioned docs ([@lex111](https://github.com/lex111))\\n - [#2333](https://github.com/facebook/docusaurus/pull/2333) docs: update use of npm/yarn in contributing.md ([@jsjoeio](https://github.com/jsjoeio))\\n - [#2328](https://github.com/facebook/docusaurus/pull/2328) docs(v2): remove unwanted black line from DocSearch showcase image ([@s-pace](https://github.com/s-pace))\\n - [#2319](https://github.com/facebook/docusaurus/pull/2319) docs(v2): showcase user Algolia ([@scottilee](https://github.com/scottilee))\\n- `docusaurus-init`\\n - [#2322](https://github.com/facebook/docusaurus/pull/2322) docs(v2): fix misc styling ([@lex111](https://github.com/lex111))\\n\\n## Committers: 16\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Amila Welihinda ([@amilajack](https://github.com/amilajack))\\n- Hassan Farid ([@hassanfarid](https://github.com/hassanfarid))\\n- Joe Previte ([@jsjoeio](https://github.com/jsjoeio))\\n- Linus L\xe5ngberg ([@phoqe](https://github.com/phoqe))\\n- Mohamed Abdel Nasser ([@mohamedsgap](https://github.com/mohamedsgap))\\n- Noah Silvera ([@Noah-Silvera](https://github.com/Noah-Silvera))\\n- Paulus Schoutsen ([@balloob](https://github.com/balloob))\\n- Ram\xf3n Lamana ([@rlamana](https://github.com/rlamana))\\n- Robert ([@deniaz](https://github.com/deniaz))\\n- Scott Lee ([@scottilee](https://github.com/scottilee))\\n- Sylvain Pace ([@s-pace](https://github.com/s-pace))\\n- Theodore Chu ([@TheodoreChu](https://github.com/TheodoreChu))\\n- Yangshun Tay ([@yangshun](https://github.com/yangshun))\\n- Zhenchao Cai ([@Zhencha0Cai](https://github.com/Zhencha0Cai))\\n- [@jartuso](https://github.com/jartuso)"},{"id":"/2.0.0-alpha.43","metadata":{"permalink":"/changelog/2.0.0-alpha.43","source":"@site/changelog/source/2.0.0-alpha.43.md","title":"2.0.0-alpha.43","description":"HOTFIX for 2.0.0-alpha.41.","date":"2020-02-18T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Yangshun Tay","alias":"yangshun","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png","key":"yangshun","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-02-18T20:00","authors":["lex111","yangshun"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.44","permalink":"/changelog/2.0.0-alpha.44"},"nextItem":{"title":"2.0.0-alpha.41","permalink":"/changelog/2.0.0-alpha.41"},"listPageLink":"/changelog/page/5"},"content":"\x3c!-- truncate --\x3e\\n\\n**HOTFIX for 2.0.0-alpha.41**.\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`\\n - [#2292](https://github.com/facebook/docusaurus/pull/2292) chore(v2): update Infima to 0.2.0-alpha.4 ([@yangshun](https://github.com/yangshun))\\n - [#2291](https://github.com/facebook/docusaurus/pull/2291) fix(v2): fix build and deps install ([@lex111](https://github.com/lex111))\\n\\n## Committers: 2\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Yangshun Tay ([@yangshun](https://github.com/yangshun))"},{"id":"/2.0.0-alpha.41","metadata":{"permalink":"/changelog/2.0.0-alpha.41","source":"@site/changelog/source/2.0.0-alpha.41.md","title":"2.0.0-alpha.41","description":"New Feature","date":"2020-02-16T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"awalias","alias":"awalias","url":"https://github.com/awalias","imageURL":"https://github.com/awalias.png","key":"awalias","page":null},{"name":"Elie Dutheil","alias":"edwandr","url":"https://github.com/edwandr","imageURL":"https://github.com/edwandr.png","key":"edwandr","page":null},{"name":"Elvis Wolcott","alias":"elviswolcott","url":"https://github.com/elviswolcott","imageURL":"https://github.com/elviswolcott.png","key":"elviswolcott","page":null},{"name":"Evan Rubinton","alias":"erubi","url":"https://github.com/erubi","imageURL":"https://github.com/erubi.png","key":"erubi","page":null},{"name":"Gal Havivi","alias":"galhavivi","url":"https://github.com/galhavivi","imageURL":"https://github.com/galhavivi.png","key":"galhavivi","page":null},{"name":"Hendrik Bulens","alias":"hbulens","url":"https://github.com/hbulens","imageURL":"https://github.com/hbulens.png","key":"hbulens","page":null},{"name":"Ashley Jeffs","alias":"Jeffail","url":"https://github.com/Jeffail","imageURL":"https://github.com/Jeffail.png","key":"Jeffail","page":null},{"name":"Joshua Williams","alias":"jjwill","url":"https://github.com/jjwill","imageURL":"https://github.com/jjwill.png","key":"jjwill","page":null},{"name":"Joel Marcey","alias":"JoelMarcey","url":"https://github.com/JoelMarcey","imageURL":"https://github.com/JoelMarcey.png","key":"JoelMarcey","page":null},{"name":"Jonathan Delgado","alias":"jonathanrdelgado","url":"https://github.com/jonathanrdelgado","imageURL":"https://github.com/jonathanrdelgado.png","key":"jonathanrdelgado","page":null},{"name":"JavaScript Joe","alias":"jsjoeio","url":"https://github.com/jsjoeio","imageURL":"https://github.com/jsjoeio.png","key":"jsjoeio","page":null},{"name":"KohheePeace","alias":"KohheePeace","url":"https://github.com/KohheePeace","imageURL":"https://github.com/KohheePeace.png","key":"KohheePeace","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Mark Terrel","alias":"mterrel","url":"https://github.com/mterrel","imageURL":"https://github.com/mterrel.png","key":"mterrel","page":null},{"name":"Ond\u0159ej Nepo\u017Eitek","alias":"OndrejNepozitek","url":"https://github.com/OndrejNepozitek","imageURL":"https://github.com/OndrejNepozitek.png","key":"OndrejNepozitek","page":null},{"name":"Scott Dowding","alias":"sdowding","url":"https://github.com/sdowding","imageURL":"https://github.com/sdowding.png","key":"sdowding","page":null},{"name":"Hanseung Yoo","alias":"trustyoo86","url":"https://github.com/trustyoo86","imageURL":"https://github.com/trustyoo86.png","key":"trustyoo86","page":null},{"name":"Wei Gao","alias":"wgao19","url":"https://github.com/wgao19","imageURL":"https://github.com/wgao19.png","key":"wgao19","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2020-02-16T20:00","authors":["awalias","edwandr","elviswolcott","erubi","galhavivi","hbulens","Jeffail","jjwill","JoelMarcey","jonathanrdelgado","jsjoeio","KohheePeace","lex111","mterrel","OndrejNepozitek","sdowding","trustyoo86","wgao19"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.43","permalink":"/changelog/2.0.0-alpha.43"},"nextItem":{"title":"2.0.0-alpha.40","permalink":"/changelog/2.0.0-alpha.40"},"listPageLink":"/changelog/page/5"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-init`, `docusaurus-preset-classic`, `docusaurus-theme-classic`\\n - [#2224](https://github.com/facebook/docusaurus/pull/2224) feat(v2): add remark-admonitions to @docusaurus/preset-classic ([@elviswolcott](https://github.com/elviswolcott))\\n- `docusaurus-theme-classic`, `docusaurus`\\n - [#2263](https://github.com/facebook/docusaurus/pull/2263) feat(v2): pluralize posts on tag\'s page ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`\\n - [#2261](https://github.com/facebook/docusaurus/pull/2261) feat(v2): allow to specify different logo for dark mode ([@lex111](https://github.com/lex111))\\n - [#2253](https://github.com/facebook/docusaurus/pull/2253) feat(v2): allow specify custom link for logo ([@lex111](https://github.com/lex111))\\n - [#2255](https://github.com/facebook/docusaurus/pull/2255) feat(v2): add site title to meta title ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-pages`, `docusaurus-utils`, `docusaurus`\\n - [#2221](https://github.com/facebook/docusaurus/pull/2221) feat(v2): allow for TypeScript pages and components ([@jonathanrdelgado](https://github.com/jonathanrdelgado))\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-theme-classic`\\n - [#2235](https://github.com/facebook/docusaurus/pull/2235) fix(v2): show doc sidebar on pages with case-sensitive paths ([@lex111](https://github.com/lex111))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`\\n - [#2285](https://github.com/facebook/docusaurus/pull/2285) fix(v2): fix codeblock copy button not including blank lines ([@KohheePeace](https://github.com/KohheePeace))\\n - [#2241](https://github.com/facebook/docusaurus/pull/2241) fix(v2): make code blocks scrollable ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`\\n - [#2259](https://github.com/facebook/docusaurus/pull/2259) fix(v2): use site title if enabled blog-only mode ([@lex111](https://github.com/lex111))\\n - [#2248](https://github.com/facebook/docusaurus/pull/2248) fix(v2): adjust correct behavior of navbar when active anchor ([@lex111](https://github.com/lex111))\\n - [#2235](https://github.com/facebook/docusaurus/pull/2235) fix(v2): show doc sidebar on pages with case-sensitive paths ([@lex111](https://github.com/lex111))\\n - [#2162](https://github.com/facebook/docusaurus/pull/2162) fix(v2): unify anchor behavior ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-search-algolia`\\n - [#2262](https://github.com/facebook/docusaurus/pull/2262) fix(v2): remove focus on search input when hovering over it ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`\\n - [#2240](https://github.com/facebook/docusaurus/pull/2240) fix(v2): hide read more button on non-truncated posts ([@lex111](https://github.com/lex111))\\n- `docusaurus`\\n - [#2237](https://github.com/facebook/docusaurus/pull/2237) fix(v2): include base url in 404 route ([@lex111](https://github.com/lex111))\\n- `docusaurus-mdx-loader`\\n - [#2236](https://github.com/facebook/docusaurus/pull/2236) fix(v2): escape link text in TOC ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-live-codeblock`\\n - [#2227](https://github.com/facebook/docusaurus/pull/2227) fix(v2): render correct theme for live code blocks on SSR ([@lex111](https://github.com/lex111))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`\\n - [#2254](https://github.com/facebook/docusaurus/pull/2254) refactor(v2): avoid to use raw theme values ([@lex111](https://github.com/lex111))\\n\\n## :memo: Documentation\\n\\n- [#2281](https://github.com/facebook/docusaurus/pull/2281) docs: update windows deploy command ([@OndrejNepozitek](https://github.com/OndrejNepozitek))\\n- [#2257](https://github.com/facebook/docusaurus/pull/2257) docs(v2): require using JSX flavored style objects in mdx ([@wgao19](https://github.com/wgao19))\\n- [#2251](https://github.com/facebook/docusaurus/pull/2251) docs(v2): collapsible categories in sidebar ([@lex111](https://github.com/lex111))\\n- [#2218](https://github.com/facebook/docusaurus/pull/2218) docs(v2): update link to available prism themes ([@jsjoeio](https://github.com/jsjoeio))\\n- [#2216](https://github.com/facebook/docusaurus/pull/2216) docs(v2): fix plugin-content-docs config comment typo ([@sdowding](https://github.com/sdowding))\\n\\n## :house: Internal\\n\\n- Other\\n - [#2256](https://github.com/facebook/docusaurus/pull/2256) fix(v2): add title for Feedback page ([@lex111](https://github.com/lex111))\\n - [#2246](https://github.com/facebook/docusaurus/pull/2246) docs(v2): add Benthos to showcase ([@Jeffail](https://github.com/Jeffail))\\n - [#2242](https://github.com/facebook/docusaurus/pull/2242) docs(v1): showcase user Jafar ([@galhavivi](https://github.com/galhavivi))\\n - [#2238](https://github.com/facebook/docusaurus/pull/2238) docs(v1): showcase Dime ([@hbulens](https://github.com/hbulens))\\n - [#2233](https://github.com/facebook/docusaurus/pull/2233) docs(v2): showcase user supabase ([@awalias](https://github.com/awalias))\\n - [#2226](https://github.com/facebook/docusaurus/pull/2226) docs(v1): showcase user Adapt.js ([@mterrel](https://github.com/mterrel))\\n - [#2225](https://github.com/facebook/docusaurus/pull/2225) docs(v1): add The Diff Podcast to users ([@JoelMarcey](https://github.com/JoelMarcey))\\n - [#2219](https://github.com/facebook/docusaurus/pull/2219) chore(v1): Updated users list, removing sites not using docusaurus ([@jjwill](https://github.com/jjwill))\\n- `docusaurus-theme-classic`, `docusaurus`\\n - [#2239](https://github.com/facebook/docusaurus/pull/2239) chore(eslint): require curly brackets on all blocks ([@lex111](https://github.com/lex111))\\n\\n## Committers: 18\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Ashley Jeffs ([@Jeffail](https://github.com/Jeffail))\\n- Elie Dutheil ([@edwandr](https://github.com/edwandr))\\n- Elvis Wolcott ([@elviswolcott](https://github.com/elviswolcott))\\n- Evan Rubinton ([@erubi](https://github.com/erubi))\\n- Gal Havivi ([@galhavivi](https://github.com/galhavivi))\\n- Hanseung Yoo ([@trustyoo86](https://github.com/trustyoo86))\\n- Hendrik Bulens ([@hbulens](https://github.com/hbulens))\\n- JavaScript Joe ([@jsjoeio](https://github.com/jsjoeio))\\n- Joel Marcey ([@JoelMarcey](https://github.com/JoelMarcey))\\n- Jonathan Delgado ([@jonathanrdelgado](https://github.com/jonathanrdelgado))\\n- Joshua Williams ([@jjwill](https://github.com/jjwill))\\n- KohheePeace ([@KohheePeace](https://github.com/KohheePeace))\\n- Mark Terrel ([@mterrel](https://github.com/mterrel))\\n- Ond\u0159ej Nepo\u017Eitek ([@OndrejNepozitek](https://github.com/OndrejNepozitek))\\n- Scott Dowding ([@sdowding](https://github.com/sdowding))\\n- Wei Gao ([@wgao19](https://github.com/wgao19))\\n- [@awalias](https://github.com/awalias)"},{"id":"/2.0.0-alpha.40","metadata":{"permalink":"/changelog/2.0.0-alpha.40","source":"@site/changelog/source/2.0.0-alpha.40.md","title":"2.0.0-alpha.40","description":"New Feature","date":"2019-12-25T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Endi","alias":"endiliey","url":"https://github.com/endiliey","imageURL":"https://github.com/endiliey.png","key":"endiliey","page":null},{"name":"Janko Marohni\u0107","alias":"janko","url":"https://github.com/janko","imageURL":"https://github.com/janko.png","key":"janko","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Nick McCurdy","alias":"nickmccurdy","url":"https://github.com/nickmccurdy","imageURL":"https://github.com/nickmccurdy.png","key":"nickmccurdy","page":null},{"name":"t11s","alias":"TransmissionsDev","url":"https://github.com/TransmissionsDev","imageURL":"https://github.com/TransmissionsDev.png","key":"TransmissionsDev","page":null},{"name":"Yangshun Tay","alias":"yangshun","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png","key":"yangshun","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2019-12-25T20:00","authors":["endiliey","janko","lex111","nickmccurdy","TransmissionsDev","yangshun"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.41","permalink":"/changelog/2.0.0-alpha.41"},"nextItem":{"title":"2.0.0-alpha.39","permalink":"/changelog/2.0.0-alpha.39"},"listPageLink":"/changelog/page/5"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-theme-classic`\\n - [#2117](https://github.com/facebook/docusaurus/pull/2117) feat(v2): auto switch theme depending on the system theme ([@lex111](https://github.com/lex111))\\n - [#2055](https://github.com/facebook/docusaurus/pull/2055) feat(v2): hide navbar on scroll ([@lex111](https://github.com/lex111))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus`\\n - [#2145](https://github.com/facebook/docusaurus/pull/2145) fix(v2): remove style-loader, use minicssextract in both dev & prod ([@endiliey](https://github.com/endiliey))\\n - [#2122](https://github.com/facebook/docusaurus/pull/2122) fix(v2): dont collapse whitespace in minified html ([@endiliey](https://github.com/endiliey))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`\\n - [#2105](https://github.com/facebook/docusaurus/pull/2105) fix(v2): move metadata export after compiling MDX to avoid weird MDX parsing error. ([@endiliey](https://github.com/endiliey))\\n- `docusaurus-theme-classic`\\n - [#2113](https://github.com/facebook/docusaurus/pull/2113) fix(v2): set stored theme only if it exists ([@lex111](https://github.com/lex111))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#2129](https://github.com/facebook/docusaurus/pull/2129) fix(v2): disable scroll while mobile menu open ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`, `docusaurus`\\n - [#2127](https://github.com/facebook/docusaurus/pull/2127) refactor(v2): toggle data-theme with vanilla js instead of react helmet ([@endiliey](https://github.com/endiliey))\\n- `docusaurus-theme-search-algolia`, `docusaurus`\\n - [#2125](https://github.com/facebook/docusaurus/pull/2125) feat(v2): lazy load algolia css so its not render blocking ([@endiliey](https://github.com/endiliey))\\n\\n## :memo: Documentation\\n\\n- Other\\n - [#2135](https://github.com/facebook/docusaurus/pull/2135) docs(v1): add space between \\"out\\" and \\"Docusaurus\\" ([@TransmissionsDev](https://github.com/TransmissionsDev))\\n - [#2128](https://github.com/facebook/docusaurus/pull/2128) docs(v1): showcase user Shrine ([@janko](https://github.com/janko))\\n - [#2110](https://github.com/facebook/docusaurus/pull/2110) docs(v2): fix pages routing inaccurate info ([@endiliey](https://github.com/endiliey))\\n - [#2106](https://github.com/facebook/docusaurus/pull/2106) fix(v2): add missing hyphen in color generator ([@lex111](https://github.com/lex111))\\n - [#2104](https://github.com/facebook/docusaurus/pull/2104) feat(v2): add color generator for primary colors ([@yangshun](https://github.com/yangshun))\\n - [#2103](https://github.com/facebook/docusaurus/pull/2103) docs: mention about moving docs directory into website ([@yangshun](https://github.com/yangshun))\\n- `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`\\n - [#2114](https://github.com/facebook/docusaurus/pull/2114) fix(v2): add syntax highlight to generated colors ([@lex111](https://github.com/lex111))\\n\\n## :house: Internal\\n\\n- Other\\n - [#2126](https://github.com/facebook/docusaurus/pull/2126) docs: promote Docusaurus 2 usage ([@yangshun](https://github.com/yangshun))\\n - [#2119](https://github.com/facebook/docusaurus/pull/2119) fix(v2): align GH button in vertical center ([@lex111](https://github.com/lex111))\\n- `docusaurus-init`\\n - [#2124](https://github.com/facebook/docusaurus/pull/2124) feat(v2): add Facebook Docusaurus 2 template ([@yangshun](https://github.com/yangshun))\\n- `docusaurus`\\n - [#2111](https://github.com/facebook/docusaurus/pull/2111) feat(v2): explicit babel/runtime version ([@endiliey](https://github.com/endiliey))\\n- `docusaurus-1.x`, `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-ideal-image`, `docusaurus-theme-live-codeblock`, `docusaurus`\\n - [#2102](https://github.com/facebook/docusaurus/pull/2102) misc: add command to run prettier on docs ([@yangshun](https://github.com/yangshun))\\n\\n## :running: Performance\\n\\n- `docusaurus`\\n - [#2118](https://github.com/facebook/docusaurus/pull/2118) perf(v2): reduce HTML payload by eliminating chunk-map ([@endiliey](https://github.com/endiliey))\\n - [#2116](https://github.com/facebook/docusaurus/pull/2116) feat(v2): minify html ([@endiliey](https://github.com/endiliey))\\n\\n## Committers: 6\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Endi ([@endiliey](https://github.com/endiliey))\\n- Janko Marohni\u0107 ([@janko](https://github.com/janko))\\n- Nick McCurdy ([@nickmccurdy](https://github.com/nickmccurdy))\\n- Yangshun Tay ([@yangshun](https://github.com/yangshun))\\n- t11s ([@TransmissionsDev](https://github.com/TransmissionsDev))"},{"id":"/2.0.0-alpha.39","metadata":{"permalink":"/changelog/2.0.0-alpha.39","source":"@site/changelog/source/2.0.0-alpha.39.md","title":"2.0.0-alpha.39","description":"Bug Fix","date":"2019-12-07T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Endi","alias":"endiliey","url":"https://github.com/endiliey","imageURL":"https://github.com/endiliey.png","key":"endiliey","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2019-12-07T20:00","authors":["endiliey"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.40","permalink":"/changelog/2.0.0-alpha.40"},"nextItem":{"title":"2.0.0-alpha.38","permalink":"/changelog/2.0.0-alpha.38"},"listPageLink":"/changelog/page/5"},"content":"\x3c!-- truncate --\x3e\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus`\\n - [#2099](https://github.com/facebook/docusaurus/pull/2099) fix(v2): escape import path on windows ([@endiliey](https://github.com/endiliey))\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`\\n - [#2095](https://github.com/facebook/docusaurus/pull/2095) fix(v2): metadata error if markdown does not have ending line ([@endiliey](https://github.com/endiliey))\\n\\n## :house: Internal\\n\\n- Other\\n - [#2100](https://github.com/facebook/docusaurus/pull/2100) chore(CI): docusaurus build on Windows with GitHub actions ([@endiliey](https://github.com/endiliey))\\n- `docusaurus`\\n - [#2096](https://github.com/facebook/docusaurus/pull/2096) feat(v2): better & nice looking error overlay ([@endiliey](https://github.com/endiliey))\\n\\n## Committers: 1\\n\\n- Endi ([@endiliey](https://github.com/endiliey))"},{"id":"/2.0.0-alpha.38","metadata":{"permalink":"/changelog/2.0.0-alpha.38","source":"@site/changelog/source/2.0.0-alpha.38.md","title":"2.0.0-alpha.38","description":"Breaking Change","date":"2019-12-06T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Endi","alias":"endiliey","url":"https://github.com/endiliey","imageURL":"https://github.com/endiliey.png","key":"endiliey","page":null},{"name":"KYY","alias":"FeynmanDNA","url":"https://github.com/FeynmanDNA","imageURL":"https://github.com/FeynmanDNA.png","key":"FeynmanDNA","page":null},{"name":"kaichu","alias":"qshiwu","url":"https://github.com/qshiwu","imageURL":"https://github.com/qshiwu.png","key":"qshiwu","page":null},{"name":"Shivangna Kaistha","alias":"shivangna","url":"https://github.com/shivangna","imageURL":"https://github.com/shivangna.png","key":"shivangna","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2019-12-06T20:00","authors":["endiliey","FeynmanDNA","qshiwu","shivangna"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.39","permalink":"/changelog/2.0.0-alpha.39"},"nextItem":{"title":"2.0.0-alpha.37","permalink":"/changelog/2.0.0-alpha.37"},"listPageLink":"/changelog/page/5"},"content":"\x3c!-- truncate --\x3e\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`, `docusaurus-utils`\\n - [#2088](https://github.com/facebook/docusaurus/pull/2088) perf(v2): smaller bundlesize by embedding metadata to content ([@endiliey](https://github.com/endiliey))\\n\\nIf you have swizzled any Docs/Blog component that depends on metadata, you\'ll have to update. If you haven\'t, no action is needed.\\n\\nFor example, if you\'ve swizzled `@theme/DocItem`. You\'ll have to update\\n\\n```diff\\n- const {metadata, content: DocContent} = props;\\n+ const {content: DocContent} = props;\\n+ const {metadata} = DocContent;\\n```\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus`\\n - [#2086](https://github.com/facebook/docusaurus/pull/2086) fix(v2): windows compatibility regression ([@endiliey](https://github.com/endiliey))\\n- `docusaurus-plugin-ideal-image`\\n - [#2074](https://github.com/facebook/docusaurus/pull/2074) fix(v2): fix plugin-ideal-image breaking website (exports not defined) ([@endiliey](https://github.com/endiliey))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-mdx-loader`\\n - [#2085](https://github.com/facebook/docusaurus/pull/2085) misc(v2): update mdx loader plugin README ([@shivangna](https://github.com/shivangna))\\n\\n## :house: Internal\\n\\n- `docusaurus-1.x`\\n - [#2087](https://github.com/facebook/docusaurus/pull/2087) fix(v1): add key to versions.map in versions.js ([@FeynmanDNA](https://github.com/FeynmanDNA))\\n - [#2083](https://github.com/facebook/docusaurus/pull/2083) refactor(v1): fix props for ProjectTitle ([@FeynmanDNA](https://github.com/FeynmanDNA))\\n- `docusaurus`\\n - [#2081](https://github.com/facebook/docusaurus/pull/2081) refactor(v2): move scripts/stylesheets injection to server side ([@endiliey](https://github.com/endiliey))\\n - [#2080](https://github.com/facebook/docusaurus/pull/2080) refactor(v2): minor code refactoring on component creator ([@endiliey](https://github.com/endiliey))\\n\\n## :running: Performance\\n\\n- `docusaurus-utils`\\n - [#2089](https://github.com/facebook/docusaurus/pull/2089) perf(v2): improve dev build time by not overwriting file if possible ([@endiliey](https://github.com/endiliey))\\n- `docusaurus-theme-search-algolia`\\n - [#2079](https://github.com/facebook/docusaurus/pull/2079) perf(v2): algolia search result no longer cause full page refresh ([@endiliey](https://github.com/endiliey))\\n - [#2076](https://github.com/facebook/docusaurus/pull/2076) perf(v2): load algolia JS only when user interacts with search ([@endiliey](https://github.com/endiliey))\\n\\n## Committers: 4\\n\\n- Endi ([@endiliey](https://github.com/endiliey))\\n- KYY ([@FeynmanDNA](https://github.com/FeynmanDNA))\\n- Shivangna Kaistha ([@shivangna](https://github.com/shivangna))\\n- kaichu ([@qshiwu](https://github.com/qshiwu))"},{"id":"/2.0.0-alpha.37","metadata":{"permalink":"/changelog/2.0.0-alpha.37","source":"@site/changelog/source/2.0.0-alpha.37.md","title":"2.0.0-alpha.37","description":"Breaking Change","date":"2019-12-01T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Binary Logic","alias":"binarylogic","url":"https://github.com/binarylogic","imageURL":"https://github.com/binarylogic.png","key":"binarylogic","page":null},{"name":"Endi","alias":"endiliey","url":"https://github.com/endiliey","imageURL":"https://github.com/endiliey.png","key":"endiliey","page":null},{"name":"Dongwoo Gim","alias":"gimdongwoo","url":"https://github.com/gimdongwoo","imageURL":"https://github.com/gimdongwoo.png","key":"gimdongwoo","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Wei Gao","alias":"wgao19","url":"https://github.com/wgao19","imageURL":"https://github.com/wgao19.png","key":"wgao19","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2019-12-01T20:00","authors":["binarylogic","endiliey","gimdongwoo","lex111","wgao19"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.38","permalink":"/changelog/2.0.0-alpha.38"},"nextItem":{"title":"2.0.0-alpha.36","permalink":"/changelog/2.0.0-alpha.36"},"listPageLink":"/changelog/page/5"},"content":"\x3c!-- truncate --\x3e\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-init`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-content-pages`, `docusaurus-theme-classic`, `docusaurus-theme-live-codeblock`, `docusaurus-theme-search-algolia`, `docusaurus-utils`, `docusaurus`\\n - [#2045](https://github.com/facebook/docusaurus/pull/2045) breaking(v2): minimum required nodejs version 8.9-> 8.10 so we can use es2017 ([@endiliey](https://github.com/endiliey))\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-theme-classic`, `docusaurus`\\n - [#2069](https://github.com/facebook/docusaurus/pull/2069) feat(v2): support prefers-color-scheme & fix dark mode FOUC on refresh ([@endiliey](https://github.com/endiliey))\\n- `docusaurus-plugin-content-blog`\\n - [#2000](https://github.com/facebook/docusaurus/pull/2000) feat(v2): add meta RSS/Atom feed links to head ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-docs`, `docusaurus-types`, `docusaurus`\\n - [#2057](https://github.com/facebook/docusaurus/pull/2057) feat(v2): injectHtmlTags API to inject head and/or body html tags ([@endiliey](https://github.com/endiliey))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-sitemap`, `docusaurus-theme-classic`, `docusaurus`\\n - [#2032](https://github.com/facebook/docusaurus/pull/2032) feat(v2): allow non sidebar category to be first item of sidebar ([@endiliey](https://github.com/endiliey))\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-types`, `docusaurus`\\n - [#1983](https://github.com/facebook/docusaurus/pull/1983) feat(v2): docs versioning \u2744\uFE0F\uD83D\uDD25 ([@endiliey](https://github.com/endiliey))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`, `docusaurus`\\n - [#2069](https://github.com/facebook/docusaurus/pull/2069) feat(v2): support prefers-color-scheme & fix dark mode FOUC on refresh ([@endiliey](https://github.com/endiliey))\\n- `docusaurus-mdx-loader`\\n - [#2067](https://github.com/facebook/docusaurus/pull/2067) fix(v2): toc should not be broken for heading with html inline code ([@endiliey](https://github.com/endiliey))\\n- `docusaurus-theme-classic`\\n - [#2064](https://github.com/facebook/docusaurus/pull/2064) fix(v2): markdown reference to file should not be page not found ([@endiliey](https://github.com/endiliey))\\n - [#2061](https://github.com/facebook/docusaurus/pull/2061) fix(v2): fix docs sidebar highlighting if link is partially matched ([@endiliey](https://github.com/endiliey))\\n- `docusaurus`\\n - [#2042](https://github.com/facebook/docusaurus/pull/2042) fix(v2): remove css order warning if css imports are not sorted ([@endiliey](https://github.com/endiliey))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#2066](https://github.com/facebook/docusaurus/pull/2066) refactor(v2): add title attribute to anchor link ([@lex111](https://github.com/lex111))\\n - [#1990](https://github.com/facebook/docusaurus/pull/1990) refactor(v2): make better a11y for tabs ([@lex111](https://github.com/lex111))\\n - [#2034](https://github.com/facebook/docusaurus/pull/2034) feat(v2): style sidebar on overflow ([@endiliey](https://github.com/endiliey))\\n\\n## :memo: Documentation\\n\\n- Other\\n - [#2068](https://github.com/facebook/docusaurus/pull/2068) docs(v2): quick proofread docs ([@endiliey](https://github.com/endiliey))\\n - [#2047](https://github.com/facebook/docusaurus/pull/2047) docs(v2): add manual migration guide for versioning ([@endiliey](https://github.com/endiliey))\\n - [#2036](https://github.com/facebook/docusaurus/pull/2036) docs(v2): Reorganize migration guide ([@wgao19](https://github.com/wgao19))\\n - [#2052](https://github.com/facebook/docusaurus/pull/2052) fix(v2): make proper spelling of Yarn in tabs ([@lex111](https://github.com/lex111))\\n - [#2040](https://github.com/facebook/docusaurus/pull/2040) docs(v2): showcase user vector.dev :) ([@binarylogic](https://github.com/binarylogic))\\n - [#2038](https://github.com/facebook/docusaurus/pull/2038) docs(v2): add documentation on versioning ([@endiliey](https://github.com/endiliey))\\n - [#2037](https://github.com/facebook/docusaurus/pull/2037) docs(v2): display yarn and npm command on website ([@endiliey](https://github.com/endiliey))\\n - [#2051](https://github.com/facebook/docusaurus/pull/2051) docs(v2): more examples on lifecycle apis, cleanup ([@endiliey](https://github.com/endiliey))\\n\\n## :house: Internal\\n\\n- `docusaurus-plugin-content-blog`\\n - [#2072](https://github.com/facebook/docusaurus/pull/2072) refactor(v2): stronger typing for blog plugin ([@endiliey](https://github.com/endiliey))\\n- `docusaurus`\\n - [#2060](https://github.com/facebook/docusaurus/pull/2060) fix(v2): clean generated manifest from previous build so we dont use the wrong one ([@endiliey](https://github.com/endiliey))\\n - [#2033](https://github.com/facebook/docusaurus/pull/2033) refactor(v2): move unused generated files out from build folder ([@endiliey](https://github.com/endiliey))\\n- `docusaurus-types`, `docusaurus`\\n - [#2043](https://github.com/facebook/docusaurus/pull/2043) refactor(v2): stronger typing for route gen ([@endiliey](https://github.com/endiliey))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-ideal-image`, `docusaurus-types`, `docusaurus`\\n - [#2044](https://github.com/facebook/docusaurus/pull/2044) chore(v2): bump deps ([@endiliey](https://github.com/endiliey))\\n- `docusaurus-init`, `docusaurus-mdx-loader`, `docusaurus-plugin-content-docs`, `docusaurus`\\n - [#2029](https://github.com/facebook/docusaurus/pull/2029) chore(v2): bump deps and remove unused deps ([@endiliey](https://github.com/endiliey))\\n\\n## :running: Performance\\n\\n- `docusaurus-plugin-google-analytics`, `docusaurus-plugin-google-gtag`\\n - [#2070](https://github.com/facebook/docusaurus/pull/2070) perf(v2): more performant gtag and analytics plugin ([@endiliey](https://github.com/endiliey))\\n- `docusaurus`\\n - [#2046](https://github.com/facebook/docusaurus/pull/2046) perf(v2): use webpack future version of asset emitting logic to free memory ([@endiliey](https://github.com/endiliey))\\n - [#2039](https://github.com/facebook/docusaurus/pull/2039) perf(v2): replace unnecessary json stringify(string) with inline string ([@endiliey](https://github.com/endiliey))\\n - [#2035](https://github.com/facebook/docusaurus/pull/2035) perf(v2): use @babel/runtime plugin to reduce codesize ([@endiliey](https://github.com/endiliey))\\n- `docusaurus-plugin-content-docs`\\n - [#2054](https://github.com/facebook/docusaurus/pull/2054) perf(v2): unblock metadata processing when possible ([@endiliey](https://github.com/endiliey))\\n\\n## Committers: 5\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Binary Logic ([@binarylogic](https://github.com/binarylogic))\\n- Dongwoo Gim ([@gimdongwoo](https://github.com/gimdongwoo))\\n- Endi ([@endiliey](https://github.com/endiliey))\\n- Wei Gao ([@wgao19](https://github.com/wgao19))"},{"id":"/2.0.0-alpha.36","metadata":{"permalink":"/changelog/2.0.0-alpha.36","source":"@site/changelog/source/2.0.0-alpha.36.md","title":"2.0.0-alpha.36","description":"Breaking Change","date":"2019-11-22T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Endi","alias":"endiliey","url":"https://github.com/endiliey","imageURL":"https://github.com/endiliey.png","key":"endiliey","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Yangshun Tay","alias":"yangshun","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png","key":"yangshun","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2019-11-22T20:00","authors":["endiliey","lex111","yangshun"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.37","permalink":"/changelog/2.0.0-alpha.37"},"nextItem":{"title":"2.0.0-alpha.35","permalink":"/changelog/2.0.0-alpha.35"},"listPageLink":"/changelog/page/5"},"content":"\x3c!-- truncate --\x3e\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-init`, `docusaurus-plugin-content-blog`, `docusaurus-theme-classic`\\n - [#1989](https://github.com/facebook/docusaurus/pull/1989) misc(v2): change blog front matter to snake_case ([@yangshun](https://github.com/yangshun))\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`\\n - [#2012](https://github.com/facebook/docusaurus/pull/2012) feat(v2): allow hiding docs table of contents ([@yangshun](https://github.com/yangshun))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus`\\n - [#2007](https://github.com/facebook/docusaurus/pull/2007) feat(v2): only create one css file to avoid code-split css loading problem ([@endiliey](https://github.com/endiliey))\\n- `docusaurus-theme-classic`\\n - [#2005](https://github.com/facebook/docusaurus/pull/2005) fix(v2): adjust first-level heading offset ([@lex111](https://github.com/lex111))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-classic`\\n - [#2013](https://github.com/facebook/docusaurus/pull/2013) refactor(v2): split out dark mode toggle so it is easily swizzle-able ([@endiliey](https://github.com/endiliey))\\n - [#2017](https://github.com/facebook/docusaurus/pull/2017) feat(v2): style right sidebar scrollbar when overflow ([@endiliey](https://github.com/endiliey))\\n - [#2003](https://github.com/facebook/docusaurus/pull/2003) refactor(v2): improve semantic markup of blog ([@lex111](https://github.com/lex111))\\n\\n## :house: Internal\\n\\n- `docusaurus`\\n - [#2024](https://github.com/facebook/docusaurus/pull/2024) test(v2): babel exclude transpilation logic to prevent regression ([@endiliey](https://github.com/endiliey))\\n - [#2014](https://github.com/facebook/docusaurus/pull/2014) feat(v2): add meta generator docusaurus ([@endiliey](https://github.com/endiliey))\\n- `docusaurus-mdx-loader`, `docusaurus-plugin-ideal-image`\\n - [#2015](https://github.com/facebook/docusaurus/pull/2015) chore(v2): bump & remove unused deps ([@endiliey](https://github.com/endiliey))\\n- Other\\n - [#2009](https://github.com/facebook/docusaurus/pull/2009) misc(v2): branding update ([@yangshun](https://github.com/yangshun))\\n\\n## :memo: Documentation\\n\\n- [#2010](https://github.com/facebook/docusaurus/pull/2010) docs(v2): misc updates ([@yangshun](https://github.com/yangshun))\\n\\n## Committers: 3\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Endi ([@endiliey](https://github.com/endiliey))\\n- Yangshun Tay ([@yangshun](https://github.com/yangshun))"},{"id":"/2.0.0-alpha.35","metadata":{"permalink":"/changelog/2.0.0-alpha.35","source":"@site/changelog/source/2.0.0-alpha.35.md","title":"2.0.0-alpha.35","description":"New Feature","date":"2019-11-17T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Endi","alias":"endiliey","url":"https://github.com/endiliey","imageURL":"https://github.com/endiliey.png","key":"endiliey","page":null},{"name":"Eric Carboni","alias":"ericcarboni","url":"https://github.com/ericcarboni","imageURL":"https://github.com/ericcarboni.png","key":"ericcarboni","page":null},{"name":"Jamie Davenport","alias":"jamiedavenport","url":"https://github.com/jamiedavenport","imageURL":"https://github.com/jamiedavenport.png","key":"jamiedavenport","page":null},{"name":"Nick McCormick","alias":"kenning","url":"https://github.com/kenning","imageURL":"https://github.com/kenning.png","key":"kenning","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Vincent van der Walt","alias":"vinnytheviking","url":"https://github.com/vinnytheviking","imageURL":"https://github.com/vinnytheviking.png","key":"vinnytheviking","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2019-11-17T20:00","authors":["endiliey","ericcarboni","jamiedavenport","kenning","lex111","vinnytheviking"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.36","permalink":"/changelog/2.0.0-alpha.36"},"nextItem":{"title":"2.0.0-alpha.34","permalink":"/changelog/2.0.0-alpha.34"},"listPageLink":"/changelog/page/5"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-theme-classic`\\n - [#1965](https://github.com/facebook/docusaurus/pull/1965) feat(v2): add ability specify link in footer logo ([@lex111](https://github.com/lex111))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-mdx-loader`, `docusaurus-theme-classic`\\n - [#1992](https://github.com/facebook/docusaurus/pull/1992) fix(v2): static phrasing content should be rendered correctly in TOC ([@endiliey](https://github.com/endiliey))\\n- `docusaurus-theme-classic`\\n - [#1999](https://github.com/facebook/docusaurus/pull/1999) fix(v2): remove hashbang when click on category ([@lex111](https://github.com/lex111))\\n - [#1962](https://github.com/facebook/docusaurus/pull/1962) fix(v2): make not clickable post title on post item page ([@lex111](https://github.com/lex111))\\n - [#1980](https://github.com/facebook/docusaurus/pull/1980) fix(v2): remove invalid label attribute of footer links ([@lex111](https://github.com/lex111))\\n - [#1978](https://github.com/facebook/docusaurus/pull/1978) fix(v2): use regular div instead of main tag for wrapper layout page ([@lex111](https://github.com/lex111))\\n - [#1975](https://github.com/facebook/docusaurus/pull/1975) fix(v2): move header inside article tag in doc page ([@lex111](https://github.com/lex111))\\n - [#1974](https://github.com/facebook/docusaurus/pull/1974) fix(v2): remove invalid attributes of nav links ([@lex111](https://github.com/lex111))\\n - [#1963](https://github.com/facebook/docusaurus/pull/1963) fix(v2): remove empty containers when no data in blog pages ([@lex111](https://github.com/lex111))\\n - [#1966](https://github.com/facebook/docusaurus/pull/1966) fix(v2): remove duplicate meta tags ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-docs`\\n - [#1994](https://github.com/facebook/docusaurus/pull/1994) fix(v2): throw error if first level item of a sidebar is not category ([@endiliey](https://github.com/endiliey))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-theme-search-algolia`\\n - [#2001](https://github.com/facebook/docusaurus/pull/2001) fix(v2): improve UI of search ([@lex111](https://github.com/lex111))\\n- `docusaurus-theme-classic`\\n - [#1991](https://github.com/facebook/docusaurus/pull/1991) fix(v2): remove accessible anchors via keyboard ([@lex111](https://github.com/lex111))\\n - [#1987](https://github.com/facebook/docusaurus/pull/1987) refactor(v2): replace h1 tag with h2 in blog list pages ([@lex111](https://github.com/lex111))\\n - [#1981](https://github.com/facebook/docusaurus/pull/1981) fix(v2): use tag time for showing last update of doc item ([@lex111](https://github.com/lex111))\\n - [#1977](https://github.com/facebook/docusaurus/pull/1977) feat(v2): add aria-label to read more links for a11y ([@lex111](https://github.com/lex111))\\n - [#1964](https://github.com/facebook/docusaurus/pull/1964) fix(v2): use tag time for showing post item date ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-docs`\\n - [#1994](https://github.com/facebook/docusaurus/pull/1994) fix(v2): throw error if first level item of a sidebar is not category ([@endiliey](https://github.com/endiliey))\\n- Other\\n - [#1986](https://github.com/facebook/docusaurus/pull/1986) fix(v2): remove obsolete iframe attributes ([@lex111](https://github.com/lex111))\\n- `docusaurus-init`\\n - [#1982](https://github.com/facebook/docusaurus/pull/1982) feat(v2): add FB link to footer ([@lex111](https://github.com/lex111))\\n- `docusaurus-plugin-content-blog`\\n - [#1968](https://github.com/facebook/docusaurus/pull/1968) refactor(v2): simplify blog truncate function ([@endiliey](https://github.com/endiliey))\\n\\n## :memo: Documentation\\n\\n- Other\\n - [#1988](https://github.com/facebook/docusaurus/pull/1988) docs(v2): fix syntax highlighting for YML code blocks ([@lex111](https://github.com/lex111))\\n - [#1976](https://github.com/facebook/docusaurus/pull/1976) docs(v2): Add section to blog document about feed location ([@vinnytheviking](https://github.com/vinnytheviking))\\n - [#1970](https://github.com/facebook/docusaurus/pull/1970) docs(v2): update configureWebpack utility functions ([@jamiedavenport](https://github.com/jamiedavenport))\\n- `docusaurus-1.x`\\n - [#1961](https://github.com/facebook/docusaurus/pull/1961) docs(v1): remove exclusive language ([@ericcarboni](https://github.com/ericcarboni))\\n\\n## :house: Internal\\n\\n- Other\\n - [#2002](https://github.com/facebook/docusaurus/pull/2002) fix(v2): fix browser window menu icon on smaller screen ([@lex111](https://github.com/lex111))\\n - [#1986](https://github.com/facebook/docusaurus/pull/1986) fix(v2): remove obsolete iframe attributes ([@lex111](https://github.com/lex111))\\n- `docusaurus-init`\\n - [#1982](https://github.com/facebook/docusaurus/pull/1982) feat(v2): add FB link to footer ([@lex111](https://github.com/lex111))\\n- `docusaurus-1.x`, `docusaurus-init-1.x`, `docusaurus-init`, `docusaurus-plugin-content-docs`, `docusaurus-plugin-ideal-image`, `docusaurus-types`, `docusaurus`\\n - [#1985](https://github.com/facebook/docusaurus/pull/1985) chore(v2): update dependencies ([@endiliey](https://github.com/endiliey))\\n\\n## :running: Performance\\n\\n- `docusaurus`\\n - [#1979](https://github.com/facebook/docusaurus/pull/1979) perf(v2): reduce main bundle size by using es5 if possible ([@endiliey](https://github.com/endiliey))\\n\\n## Committers: 6\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Endi ([@endiliey](https://github.com/endiliey))\\n- Eric Carboni ([@ericcarboni](https://github.com/ericcarboni))\\n- Jamie Davenport ([@jamiedavenport](https://github.com/jamiedavenport))\\n- Nick McCormick ([@kenning](https://github.com/kenning))\\n- Vincent van der Walt ([@vinnytheviking](https://github.com/vinnytheviking))"},{"id":"/2.0.0-alpha.34","metadata":{"permalink":"/changelog/2.0.0-alpha.34","source":"@site/changelog/source/2.0.0-alpha.34.md","title":"2.0.0-alpha.34","description":"New Feature","date":"2019-11-11T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[{"name":"Endi","alias":"endiliey","url":"https://github.com/endiliey","imageURL":"https://github.com/endiliey.png","key":"endiliey","page":null},{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},{"name":"Yangshun Tay","alias":"yangshun","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png","key":"yangshun","page":null}],"frontMatter":{"mdx":{"format":"md"},"date":"2019-11-11T20:00","authors":["endiliey","lex111","yangshun"]},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.35","permalink":"/changelog/2.0.0-alpha.35"},"nextItem":{"title":"2.0.0-alpha.33","permalink":"/changelog/2.0.0-alpha.33"},"listPageLink":"/changelog/page/5"},"content":"\x3c!-- truncate --\x3e\\n\\n## :rocket: New Feature\\n\\n- `docusaurus-theme-classic`\\n - [#1956](https://github.com/facebook/docusaurus/pull/1956) feat(v2): add ability hide dark mode toggle ([@lex111](https://github.com/lex111))\\n\\n## :boom: Breaking Change\\n\\n- `docusaurus-plugin-content-docs`\\n - [#1958](https://github.com/facebook/docusaurus/pull/1958) breaking(v2): editUrl should point to website instead of docsDir ([@endiliey](https://github.com/endiliey))\\n\\n## :bug: Bug Fix\\n\\n- `docusaurus-theme-classic`\\n - [#1959](https://github.com/facebook/docusaurus/pull/1959) fix(v2): useTOC hooks should not be called in each nested children ([@endiliey](https://github.com/endiliey))\\n\\n## :nail_care: Polish\\n\\n- `docusaurus-plugin-content-docs`, `docusaurus`\\n - [#1957](https://github.com/facebook/docusaurus/pull/1957) refactor(v2): avoid synchronous/ blocking operation when possible ([@endiliey](https://github.com/endiliey))\\n\\n## :memo: Documentation\\n\\n- [#1953](https://github.com/facebook/docusaurus/pull/1953) fix(v2): update Infima website URL ([@yangshun](https://github.com/yangshun))\\n\\n## :house: Internal\\n\\n- `docusaurus-1.x`, `docusaurus-plugin-content-blog`, `docusaurus-plugin-content-docs`, `docusaurus-theme-classic`, `docusaurus-theme-search-algolia`, `docusaurus-types`, `docusaurus-utils`, `docusaurus`\\n - [#1955](https://github.com/facebook/docusaurus/pull/1955) chore: bump dev dependencies ([@endiliey](https://github.com/endiliey))\\n- Other\\n - [#1952](https://github.com/facebook/docusaurus/pull/1952) chore(v2): add lerna-changelog ([@endiliey](https://github.com/endiliey))\\n\\n## :running: Performance\\n\\n- `docusaurus-plugin-content-docs`, `docusaurus-utils`, `docusaurus`\\n - [#1951](https://github.com/facebook/docusaurus/pull/1951) perf(v2): skip runtime fileHash cache in prod & get timestamp asynchronously ([@endiliey](https://github.com/endiliey))\\n - [#1950](https://github.com/facebook/docusaurus/pull/1950) perf(v2): more efficient hot reload & consistent filegen ([@endiliey](https://github.com/endiliey))\\n\\n## Committers: 3\\n\\n- Alexey Pyltsyn ([@lex111](https://github.com/lex111))\\n- Endi ([@endiliey](https://github.com/endiliey))\\n- Yangshun Tay ([@yangshun](https://github.com/yangshun))"},{"id":"/2.0.0-alpha.33","metadata":{"permalink":"/changelog/2.0.0-alpha.33","source":"@site/changelog/source/2.0.0-alpha.33.md","title":"2.0.0-alpha.33","description":"Features","date":"2019-11-08T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[],"frontMatter":{"mdx":{"format":"md"},"date":"2019-11-08T20:00"},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.34","permalink":"/changelog/2.0.0-alpha.34"},"nextItem":{"title":"2.0.0-alpha.32","permalink":"/changelog/2.0.0-alpha.32"},"listPageLink":"/changelog/page/5"},"content":"\x3c!-- truncate --\x3e\\n\\n## Features\\n\\n- Table of contents is now highlighted depending on current active headings. (thanks to awesome @SantiagoGdaR) [#1896](https://github.com/facebook/docusaurus/pull/1896)\\n- Official blog plugin can now generate feed for blog posts. (thanks to awesome @moozzyk) [#1916](https://github.com/facebook/docusaurus/pull/1916)\\n- **BREAKING** `prismTheme` is renamed to `theme` as part new `prism` object in `themeConfig` field in your `docusaurus.config.js`. Eg:\\n ```diff\\n themeConfig: {\\n - prismTheme: require(\'prism-react-renderer/themes/dracula\'),\\n + prism: {\\n + theme: require(\'prism-react-renderer/themes/dracula\'),\\n + },\\n },\\n ```\\n- Added new `prism` option `defaultLanguage` that is used if the language is not specified in code blocks. [#1910](https://github.com/facebook/docusaurus/pull/1910)\\n\\n## Fixes\\n\\n- Fix babel/env not picking the correct browserslist configuration during development. When running `docusaurus start`, `process.env.NODE_ENV` is now consistently set to `development`.\\n- Ensure routes config generation to be more consistent in ordering. Nested routes should be placed last in routes.js. This will allow user to create `src/pages/docs.js` to create custom docs page for `/docs` or even `src/pages/docs/super.js` to create page for `/docs/super/`;\\n- Fix watcher does not trigger reload on windows.\\n- Fix build compilation error if exists only one code tab.\\n- Add minor padding to docs container so that hash-link won\'t be cut off.\\n\\n## Others\\n\\n- Misc dependency upgrades.\\n- Stability improvement (more tests) & refactoring on docs plugin to prevent regression."},{"id":"/2.0.0-alpha.32","metadata":{"permalink":"/changelog/2.0.0-alpha.32","source":"@site/changelog/source/2.0.0-alpha.32.md","title":"2.0.0-alpha.32","description":"Features","date":"2019-11-04T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[],"frontMatter":{"mdx":{"format":"md"},"date":"2019-11-04T20:00"},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.33","permalink":"/changelog/2.0.0-alpha.33"},"nextItem":{"title":"2.0.0-alpha.31","permalink":"/changelog/2.0.0-alpha.31"},"listPageLink":"/changelog/page/5"},"content":"\x3c!-- truncate --\x3e\\n\\n## Features\\n\\n- Add `<Redirect>` component for client side redirect. Example Usage:\\n\\n```js\\nimport React from \'react\';\\nimport {Redirect} from \'@docusaurus/router\';\\n\\nfunction Home() {\\n return <Redirect to=\\"/docs/test\\" />;\\n}\\n```\\n\\n- Allow user to add custom HTML to footer items. [#1905](https://github.com/facebook/docusaurus/pull/1905)\\n- Added code block line highlighting feature (thanks @lex111)! If you have previously swizzled the `CodeBlock` theme component, it is recommended to update your source code to have this feature. ([#1860](https://github.com/facebook/Docusaurus/issues/1860))\\n\\n## Bug Fixes\\n\\n- Fix `@theme/Tabs` component to be able to create tabs with only one item.\\n- Fix MDX `@theme/Heading` component. If there is no id, it should not create anchor link.\\n- Fixed a bug in which if `themeConfig.algolia` is not defined, the custom searchbar won\'t appear. If you\'ve swizzled Algolia `SearchBar` component before, please update your source code otherwise CSS might break. See [#1909](https://github.com/facebook/docusaurus/pull/1909/files) for reference.\\n\\n```js\\n- <Fragment>\\n+ <div className=\\"navbar__search\\" key=\\"search-box\\">\\n```\\n\\n- Slightly adjust search icon position to be more aligned on small width device. ([#1893](https://github.com/facebook/Docusaurus/issues/1893))\\n- Fix algolia styling bug, previously search suggestion result is sometimes hidden. ([#1915](https://github.com/facebook/Docusaurus/issues/1915))\\n- Changed the way we read the `USE_SSH` env variable during deployment to be the same as in v1.\\n- Fix accessing `docs/` or `/docs/xxxx` that does not match any existing doc page should return 404 (Not found) page, not blank page. ([#1903](https://github.com/facebook/Docusaurus/issues/1903))\\n- Prioritize `@docusaurus/core` dependencies/ node_modules over user\'s node_modules. This fix a bug whereby if user has core-js@3 on its own node_modules but docusaurus depends on core-js@2, we previously encounter `Module not found: core-js/modules/xxxx` (because core-js@3 doesn\'t have that).\\n- Fix a bug where docs plugin add `/docs` route even if docs folder is empty. We also improved docs plugin test coverage to 100% for stability before working on docs versioning. ([#1912](https://github.com/facebook/Docusaurus/issues/1912))\\n\\n## Performance Improvement\\n\\n- Reduce memory usage consumption. ([#1900](https://github.com/facebook/Docusaurus/issues/1900))\\n- Significantly reduce main bundle size and initial HTML payload on production build. Generated files from webpack is also shorter in name. ([#1898](https://github.com/facebook/Docusaurus/issues/1898))\\n- Simplify blog metadata. Previously, accessing `/blog/post-xxx` will request for next and prev blog post metadata too aside from target post metadata. We should only request target post metadata. ([#1908](https://github.com/facebook/Docusaurus/issues/1908))\\n\\n## Others\\n\\n- Convert sitemap plugin to TypeScript. ([#1894](https://github.com/facebook/Docusaurus/issues/1894))\\n- Refactor dark mode toggle into a hook. ([#1899](https://github.com/facebook/Docusaurus/issues/1899))"},{"id":"/2.0.0-alpha.31","metadata":{"permalink":"/changelog/2.0.0-alpha.31","source":"@site/changelog/source/2.0.0-alpha.31.md","title":"2.0.0-alpha.31","description":"- Footer is now sticky/ pinned to the bottom of the viewport in desktop browsers.","date":"2019-10-26T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[],"frontMatter":{"mdx":{"format":"md"},"date":"2019-10-26T20:00"},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.32","permalink":"/changelog/2.0.0-alpha.32"},"nextItem":{"title":"2.0.0-alpha.30","permalink":"/changelog/2.0.0-alpha.30"},"listPageLink":"/changelog/page/5"},"content":"\x3c!-- truncate --\x3e\\n\\n- Footer is now sticky/ pinned to the bottom of the viewport in desktop browsers.\\n- Footer is now also displayed in docs page for consistency.\\n- Remove empty doc sidebar container if sidebar for a particular doc page does not exist. Otherwise, it will cause an additional empty space.\\n- Default PostCSS loader now only polyfills stage 3+ features (previously it was stage 2) like Create React App. Stage 2 CSS is considered relatively unstable and subject to change while Stage 3 features will likely become a standard.\\n- Fix search bar focus bug. When you put the focus on search input, previously the focus will remain although we have clicked to other area outside of the search input.\\n- New themeConfig option `sidebarCollapsible`. It is on by default. If explicitly set to `false`, all doc items in sidebar is expanded. Otherwise, it will still be a collapsible sidebar.\\n- Disable adding hashes to the generated class names of CSS modules in dev mode. Generating unique identifiers takes some time, which can be saved since including paths to files in class names is enough to avoid collisions.\\n- Fix showing sidebar category with empty items.\\n- Update infima from 0.2.0-alpha.2 to 0.2.0-alpha.3\\n - Fix pagination nav and right sidebar color contrast ratio\\n - Fix sidebar arrow color in dark mode\\n - Fix footer mobile issue\\n - Increase sidebar width\\n - etc"},{"id":"/2.0.0-alpha.30","metadata":{"permalink":"/changelog/2.0.0-alpha.30","source":"@site/changelog/source/2.0.0-alpha.30.md","title":"2.0.0-alpha.30","description":"- Fix babel transpilation include/exclude logic to be more efficient. This also fix a very weird bug TypeError: Cannot assign to read only property \'exports\' of object \'#\'.(#1868)","date":"2019-10-22T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[],"frontMatter":{"mdx":{"format":"md"},"date":"2019-10-22T20:00"},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.31","permalink":"/changelog/2.0.0-alpha.31"},"nextItem":{"title":"2.0.0-alpha.29","permalink":"/changelog/2.0.0-alpha.29"},"listPageLink":"/changelog/page/5"},"content":"\x3c!-- truncate --\x3e\\n\\n- Fix babel transpilation include/exclude logic to be more efficient. This also fix a very weird bug `TypeError: Cannot assign to read only property \'exports\' of object \'#<Object>\'`.([#1868](https://github.com/facebook/docusaurus/pull/1868))\\n\\nIf you are still encountering the error. Please check whether you use `module.exports` for your `.js` file instead of doing `export` (mixing CJS and ES). See https://github.com/webpack/webpack/issues/4039#issuecomment-477779322 and https://github.com/webpack/webpack/issues/4039#issuecomment-273804003 for more context."},{"id":"/2.0.0-alpha.29","metadata":{"permalink":"/changelog/2.0.0-alpha.29","source":"@site/changelog/source/2.0.0-alpha.29.md","title":"2.0.0-alpha.29","description":"HOTFIX for 2.0.0-alpha.28.","date":"2019-10-21T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[],"frontMatter":{"mdx":{"format":"md"},"date":"2019-10-21T20:00"},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.30","permalink":"/changelog/2.0.0-alpha.30"},"nextItem":{"title":"2.0.0-alpha.28","permalink":"/changelog/2.0.0-alpha.28"},"listPageLink":"/changelog/page/5"},"content":"\x3c!-- truncate --\x3e\\n\\n**HOTFIX for 2.0.0-alpha.28**.\\n\\n- Fix missing `core-js` dependencies on `@docusaurus/core`.\\n- Fix wrong `@babel/env` preset configuration that causes build compilation error.\\n- New UI for webpack compilation progress bar."},{"id":"/2.0.0-alpha.28","metadata":{"permalink":"/changelog/2.0.0-alpha.28","source":"@site/changelog/source/2.0.0-alpha.28.md","title":"2.0.0-alpha.28","description":"- Further reduce memory usage to avoid heap memory allocation failure.","date":"2019-10-21T19:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[],"frontMatter":{"mdx":{"format":"md"},"date":"2019-10-21T19:00"},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.29","permalink":"/changelog/2.0.0-alpha.29"},"nextItem":{"title":"2.0.0-alpha.27","permalink":"/changelog/2.0.0-alpha.27"},"listPageLink":"/changelog/page/5"},"content":"\x3c!-- truncate --\x3e\\n\\n- Further reduce memory usage to avoid heap memory allocation failure.\\n- Fix `keywords` frontmatter for SEO not working properly.\\n- Fix `swizzle` command not passing context properly to theme packages.\\n- Add `extendCli` api for plugins. This will allow plugin to further extend Docusaurus CLI.\\n- Fix `swizzle` command not being able to swizzle single js file.\\n- Fix logo URL in footer to be appended with baseUrl automatically.\\n- Add the option `--no-open` for `start` command.\\n- Set `@babel/env` useBuiltins to `usage`. This will automatically use browserlist and import polyfills required.\\n- Modified TerserWebpackPlugin `terserOptions` for better cross-browser compatibility.\\n- **BREAKING** `withBaseUrl` is renamed to `useBaseUrl` because its a React Hooks. Make sure you import/rename it correctly. Eg: `import useBaseUrl from \'@docusaurus/useBaseUrl`;\\n- Fix potential security vulnerability because we\'re exposing the directory structure of the host machine.\\n- Upgrade dependencies."},{"id":"/2.0.0-alpha.27","metadata":{"permalink":"/changelog/2.0.0-alpha.27","source":"@site/changelog/source/2.0.0-alpha.27.md","title":"2.0.0-alpha.27","description":"- Add @theme/Tabs which can be used to implement multi-language code tabs.","date":"2019-10-14T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[],"frontMatter":{"mdx":{"format":"md"},"date":"2019-10-14T20:00"},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.28","permalink":"/changelog/2.0.0-alpha.28"},"nextItem":{"title":"2.0.0-alpha.26","permalink":"/changelog/2.0.0-alpha.26"},"listPageLink":"/changelog/page/5"},"content":"\x3c!-- truncate --\x3e\\n\\n- Add `@theme/Tabs` which can be used to implement multi-language code tabs.\\n- Implement `custom_edit_url` and `hide_title` markdown header for docusaurus v1 feature parity.\\n- Reduce memory usage and slightly faster production build.\\n- Misc dependency upgrades."},{"id":"/2.0.0-alpha.26","metadata":{"permalink":"/changelog/2.0.0-alpha.26","source":"@site/changelog/source/2.0.0-alpha.26.md","title":"2.0.0-alpha.26","description":"- Docs, pages plugin is rewritten in TypeScript","date":"2019-10-12T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[],"frontMatter":{"mdx":{"format":"md"},"date":"2019-10-12T20:00"},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.27","permalink":"/changelog/2.0.0-alpha.27"},"nextItem":{"title":"2.0.0-alpha.25","permalink":"/changelog/2.0.0-alpha.25"},"listPageLink":"/changelog/page/5"},"content":"\x3c!-- truncate --\x3e\\n\\n- Docs, pages plugin is rewritten in TypeScript\\n- Docs improvements and tweaks\\n - Improved metadata which results in smaller bundle size.\\n - Docs sidebar can now be more than one level deep, theoretically up to infinity\\n - Collapsible docs sidebar!\\n - Make doc page title larger\\n - Add `editUrl` option (URL for editing) to docs plugin. If this field is set, there will be an \\"Edit this page\\" link for each doc page. Example: \'https://github.com/facebook/docusaurus/edit/master/docs\'\\n - Add `showLastUpdateTime` and `showLastUpdateAuthor` options to docs plugin to further achieve v1 parity of showing last update data for a particular doc\\n- Slight tweaks to the Blog components - blog title is larger now\\n- Code Blocks\\n - Change default theme from Night Owl to Palenight\\n - Slight tweaks to playground/preview components\\n- Add `scripts` and `stylesheets` field to `docusaurus.config.js`\\n- More documentation..."},{"id":"/2.0.0-alpha.25","metadata":{"permalink":"/changelog/2.0.0-alpha.25","source":"@site/changelog/source/2.0.0-alpha.25.md","title":"2.0.0-alpha.25","description":"- Blog plugin is rewritten in TypeScript and can now support CJK","date":"2019-10-01T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[],"frontMatter":{"mdx":{"format":"md"},"date":"2019-10-01T20:00"},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.26","permalink":"/changelog/2.0.0-alpha.26"},"nextItem":{"title":"2.0.0-alpha.24","permalink":"/changelog/2.0.0-alpha.24"},"listPageLink":"/changelog/page/5"},"content":"\x3c!-- truncate --\x3e\\n\\n- Blog plugin is rewritten in TypeScript and can now support CJK\\n- Upgrade key direct dependencies such as webpack, mdx and babel to latest\\n- Do not escape html and body attributes\\n- For devices with very small viewport width, the searchbar is replaced with a search icon. On tap of the search icon the searchbar is expanded and the text beside the logo is hidden and remains hidden while the search bar is expanded.\\n- Add `date` frontMatter support for blog plugin\\n- Add `truncateMarker` option to blog plugin, support string or regex.\\n- Webpack `optimization.removeAvailableModules` is now disabled for performance gain. See https://github.com/webpack/webpack/releases/tag/v4.38.0 for more context."},{"id":"/2.0.0-alpha.24","metadata":{"permalink":"/changelog/2.0.0-alpha.24","source":"@site/changelog/source/2.0.0-alpha.24.md","title":"2.0.0-alpha.24","description":"- Remove unused metadata for pages. This minimize number of http request & smaller bundle size.","date":"2019-07-24T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[],"frontMatter":{"mdx":{"format":"md"},"date":"2019-07-24T20:00"},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.25","permalink":"/changelog/2.0.0-alpha.25"},"nextItem":{"title":"2.0.0-alpha.23","permalink":"/changelog/2.0.0-alpha.23"},"listPageLink":"/changelog/page/5"},"content":"\x3c!-- truncate --\x3e\\n\\n- Remove unused metadata for pages. This minimize number of http request & smaller bundle size.\\n- Upgrade dependencies of css-loader from 2.x to 3.x. CSS modules localIdentName hash now only use the last 4 characters instead of 8.\\n- Fix broken markdown linking replacement for mdx files\\n- Fix potential security vulnerability because we\'re exposing the directory structure of the host machine. Instead of absolute path, we use relative path from site directory. Resulting in shorter webpack chunk naming and smaller bundle size.\\n- Use contenthash instead of chunkhash for better long term caching\\n- Allow user to customize generated heading from MDX. Swizzle `@theme/Heading`"},{"id":"/2.0.0-alpha.23","metadata":{"permalink":"/changelog/2.0.0-alpha.23","source":"@site/changelog/source/2.0.0-alpha.23.md","title":"2.0.0-alpha.23","description":"- Fix docusaurus route config generation for certain edge case","date":"2019-07-21T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[],"frontMatter":{"mdx":{"format":"md"},"date":"2019-07-21T20:00"},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.24","permalink":"/changelog/2.0.0-alpha.24"},"nextItem":{"title":"2.0.0-alpha.22","permalink":"/changelog/2.0.0-alpha.22"},"listPageLink":"/changelog/page/5"},"content":"\x3c!-- truncate --\x3e\\n\\n- Fix docusaurus route config generation for certain edge case"},{"id":"/2.0.0-alpha.22","metadata":{"permalink":"/changelog/2.0.0-alpha.22","source":"@site/changelog/source/2.0.0-alpha.22.md","title":"2.0.0-alpha.22","description":"- Add missing dependencies on @docusaurus/preset-classic","date":"2019-07-20T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[],"frontMatter":{"mdx":{"format":"md"},"date":"2019-07-20T20:00"},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.23","permalink":"/changelog/2.0.0-alpha.23"},"nextItem":{"title":"2.0.0-alpha.21","permalink":"/changelog/2.0.0-alpha.21"},"listPageLink":"/changelog/page/6"},"content":"\x3c!-- truncate --\x3e\\n\\n- Add missing dependencies on `@docusaurus/preset-classic`\\n- New plugin `@docusaurus/plugin-ideal-image` to generate an almost ideal image (responsive, lazy-loading, and low quality placeholder)\\n- Better Twitter/discord image preview. Previously the size is too zoomed\\n- Allow prism syntax highlighting theme customization. Refer to https://docusaurus.io/docs/markdown-features#syntax-highlighting\\n- CSS is now autoprefixed using postcss\\n- Faster, lighter webpack bundle size\\n- `@docusaurus/theme-live-codeblock` is now much smaller in size and no longer only load on viewport\\n- Blog markdown files now support using the id field to specify the path"},{"id":"/2.0.0-alpha.21","metadata":{"permalink":"/changelog/2.0.0-alpha.21","source":"@site/changelog/source/2.0.0-alpha.21.md","title":"2.0.0-alpha.21","description":"- Fix babel-loader not transpiling docusaurus package","date":"2019-07-14T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[],"frontMatter":{"mdx":{"format":"md"},"date":"2019-07-14T20:00"},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.22","permalink":"/changelog/2.0.0-alpha.22"},"nextItem":{"title":"2.0.0-alpha.20","permalink":"/changelog/2.0.0-alpha.20"},"listPageLink":"/changelog/page/6"},"content":"\x3c!-- truncate --\x3e\\n\\n- Fix babel-loader not transpiling docusaurus package"},{"id":"/2.0.0-alpha.20","metadata":{"permalink":"/changelog/2.0.0-alpha.20","source":"@site/changelog/source/2.0.0-alpha.20.md","title":"2.0.0-alpha.20","description":"- Add copy codeblock button","date":"2019-07-14T19:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[],"frontMatter":{"mdx":{"format":"md"},"date":"2019-07-14T19:00"},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.21","permalink":"/changelog/2.0.0-alpha.21"},"nextItem":{"title":"2.0.0-alpha.19","permalink":"/changelog/2.0.0-alpha.19"},"listPageLink":"/changelog/page/6"},"content":"\x3c!-- truncate --\x3e\\n\\n- Add copy codeblock button\\n- Add Google analytics and Google gtag plugins.\\n- Move source components to `/src`. Please create a `website/src` directory and move your `/pages` and `/theme` code into it. This is to make it easier to integrate your website with external build/static analysis tooling (you can now just pass in `src/**/*.js` as the path to process).\\n- Adde more documentation thanks to @wgao19.\\n- Deprecate the current docs plugin. The docs plugin as of 2.0.0-alpha.19 is heavily based on V1 specifications and we intend to create a better one that fixes some of the inconsistencies in V1. If you have swizzled any doc components, you will have to update their names. You are highly encourages to not swizzle the legacy doc components until we have completed the new docs plugin.\\n- Separate v2 init command to new package @docusaurus/init\\n- Render 404.html page\\n- Improve SEO\\n- Clicking on the logo in the mobile sliding navigation will now bring you to the homepage.\\n- Performance\\n - Disable webpack output pathinfo. Webpack has the ability to generate path info in the output bundle. However, this puts garbage collection pressure on projects that bundle thousands of modules. Not very useful for our case\\n - Drop cache-loader in CI and test environment because it has an initial overhead. We always start from scratch in vm instance like CI so cache-loader is useless\\n - Better splitchunks and babel default webpack config"},{"id":"/2.0.0-alpha.19","metadata":{"permalink":"/changelog/2.0.0-alpha.19","source":"@site/changelog/source/2.0.0-alpha.19.md","title":"2.0.0-alpha.19","description":"- Add a sensible default for browserslist config.","date":"2019-06-07T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[],"frontMatter":{"mdx":{"format":"md"},"date":"2019-06-07T20:00"},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.20","permalink":"/changelog/2.0.0-alpha.20"},"nextItem":{"title":"V2 Changelog","permalink":"/changelog/V2 Changelog"},"listPageLink":"/changelog/page/6"},"content":"\x3c!-- truncate --\x3e\\n\\n- Add a sensible default for browserslist config.\\n- UI\\n - Add sun and moon emoji to the dark mode toggle.\\n - Mobile responsive menu.\\n - Right table of contents for docs is now sticky.\\n- Plugins\\n - Change plugin definitions from classes to functions. Refer to the new plugin docs.\\n - Implement Clients module API.\\n - Change format within `docusaurus.config.js` to be like presets.\\n- Deps\\n - Infima CSS is now locked down to specific versions and not relying upon the CDN which reads from trunk.\\n - Update dependencies to latest\\n- Customize/ Override infima CSS variables by passing options into the classic preset.\\n\\n```\\npresets: [\\n [\\n \'@docusaurus/preset-classic\',\\n {\\n theme: {\\n customCss: require.resolve(\'./css/custom.css\'),\\n },\\n ...\\n },\\n ],\\n],\\n```\\n\\n- Allow passing remark and rehype plugins to mdx-loader for docs and blog plugin\\n- Move themes component of docs and blog to be part of theme-classic\\n- Use composition style for prism syntax highlighting instead of doing it via rehype plugin\\n- Pass MDXProvider to docs and blog. To change the provided MDX components, run `docusaurus swizzle @docusaurus/theme-classic MDXComponents`\\n- Add @docusaurus/theme-livecodeblock plugin\\n- Better run-time code generation & webpack splitchunks optimization\\n- Minify css for production build\\n- Fix weird scrolling problem when navigating to a route with a `hash` location"},{"id":"/V2 Changelog","metadata":{"permalink":"/changelog/V2 Changelog","source":"@site/changelog/source/V2 Changelog.md","title":"V2 Changelog","description":"siteConfig.js changes","date":"2019-04-10T20:00:00.000Z","tags":[],"hasTruncateMarker":true,"authors":[],"frontMatter":{"mdx":{"format":"md"},"date":"2019-04-10T20:00"},"unlisted":false,"prevItem":{"title":"2.0.0-alpha.19","permalink":"/changelog/2.0.0-alpha.19"},"listPageLink":"/changelog/page/6"},"content":"\x3c!-- truncate --\x3e\\n\\n### `siteConfig.js` changes\\n\\n- `siteConfig.js` renamed to `docusaurus.config.js`.\\n- Remove the following config options:\\n - `docsUrl`. Use the plugin option on `docusaurus-plugin-content-docs` instead.\\n - `customDocsPath`. Use the plugin option on `docusaurus-plugin-content-docs` instead.\\n - `sidebars.json` now has to be explicitly loaded by users and passed into the plugin option on `docusaurus-plugin-content-docs`.\\n - `headerLinks` doc, page, blog is deprecated and has been to moved into `themeConfig` under the name `navbar`. The syntax is now:\\n\\n```js\\nthemeConfig: {\\n navbar: {\\n title: \'Docusaurus\',\\n logo: {\\n alt: \'Docusaurus Logo\',\\n src: \'img/docusaurus.svg\',\\n },\\n links: [\\n {to: \'docs/introduction\', label: \'Docs\', position: \'left\'},\\n {to: \'blog\', label: \'Blog\', position: \'left\'},\\n {to: \'feedback\', label: \'Feedback\', position: \'left\'},\\n {\\n href: \'https://github.com/facebook/docusaurus\',\\n label: \'GitHub\',\\n position: \'right\',\\n },\\n ],\\n },\\n}\\n```\\n\\n### Migration Guide\\n\\n_Work in Progress_\\n\\n### Presets\\n\\n- Add presets for plugins that follow the [Babel preset convention](https://babeljs.io/docs/en/presets)."}],"blogListPaginated":[{"items":["/3.7.0","/3.6.3","/3.6.2","/3.6.1","/3.6.0","/3.5.2","/3.5.1","/3.5.0","/3.4.0","/3.3.2","/3.3.1","/3.3.0","/3.2.1","/3.2.0","/3.1.1","/3.1.0","/3.0.1","/3.0.0","/2.4.3","/2.4.2"],"metadata":{"permalink":"/changelog","page":1,"postsPerPage":20,"totalPages":6,"totalCount":105,"nextPage":"/changelog/page/2","blogDescription":"Keep yourself up-to-date about new features in every release","blogTitle":"Docusaurus changelog"}},{"items":["/2.4.1","/2.4.0","/2.3.1","/2.3.0","/2.2.0","/2.1.0","/2.0.1","/2.0.0","/2.0.0-rc.1","/2.0.0-beta.22","/2.0.0-beta.21","/2.0.0-beta.20","/2.0.0-beta.19","/2.0.0-beta.18","/2.0.0-beta.17","/2.0.0-beta.16","/2.0.0-beta.15","/2.0.0-beta.14","/2.0.0-beta.13","/2.0.0-beta.12"],"metadata":{"permalink":"/changelog/page/2","page":2,"postsPerPage":20,"totalPages":6,"totalCount":105,"previousPage":"/changelog","nextPage":"/changelog/page/3","blogDescription":"Keep yourself up-to-date about new features in every release","blogTitle":"Docusaurus changelog"}},{"items":["/2.0.0-beta.11","/2.0.0-beta.10","/2.0.0-beta.9","/2.0.0-beta.8","/2.0.0-beta.7","/2.0.0-beta.6","/2.0.0-beta.5","/2.0.0-beta.4","/2.0.0-beta.3","/2.0.0-beta.2","/2.0.0-beta.1","/2.0.0-beta.0","/2.0.0-alpha.75","/2.0.0-alpha.74","/2.0.0-alpha.73","/2.0.0-alpha.72","/2.0.0-alpha.71","/2.0.0-alpha.70","/2.0.0-alpha.69","/2.0.0-alpha.68"],"metadata":{"permalink":"/changelog/page/3","page":3,"postsPerPage":20,"totalPages":6,"totalCount":105,"previousPage":"/changelog/page/2","nextPage":"/changelog/page/4","blogDescription":"Keep yourself up-to-date about new features in every release","blogTitle":"Docusaurus changelog"}},{"items":["/2.0.0-alpha.67","/2.0.0-alpha.66","/2.0.0-alpha.65","/2.0.0-alpha.64","/2.0.0-alpha.63","/2.0.0-alpha.62","/2.0.0-alpha.61","/2.0.0-alpha.60","/2.0.0-alpha.59","/2.0.0-alpha.58","/2.0.0-alpha.57","/2.0.0-alpha.56","/2.0.0-alpha.55","/2.0.0-alpha.54","/2.0.0-alpha.53","/2.0.0-alpha.51","/2.0.0-alpha.50","/2.0.0-alpha.49","/2.0.0-alpha.48","/2.0.0-alpha.44"],"metadata":{"permalink":"/changelog/page/4","page":4,"postsPerPage":20,"totalPages":6,"totalCount":105,"previousPage":"/changelog/page/3","nextPage":"/changelog/page/5","blogDescription":"Keep yourself up-to-date about new features in every release","blogTitle":"Docusaurus changelog"}},{"items":["/2.0.0-alpha.43","/2.0.0-alpha.41","/2.0.0-alpha.40","/2.0.0-alpha.39","/2.0.0-alpha.38","/2.0.0-alpha.37","/2.0.0-alpha.36","/2.0.0-alpha.35","/2.0.0-alpha.34","/2.0.0-alpha.33","/2.0.0-alpha.32","/2.0.0-alpha.31","/2.0.0-alpha.30","/2.0.0-alpha.29","/2.0.0-alpha.28","/2.0.0-alpha.27","/2.0.0-alpha.26","/2.0.0-alpha.25","/2.0.0-alpha.24","/2.0.0-alpha.23"],"metadata":{"permalink":"/changelog/page/5","page":5,"postsPerPage":20,"totalPages":6,"totalCount":105,"previousPage":"/changelog/page/4","nextPage":"/changelog/page/6","blogDescription":"Keep yourself up-to-date about new features in every release","blogTitle":"Docusaurus changelog"}},{"items":["/2.0.0-alpha.22","/2.0.0-alpha.21","/2.0.0-alpha.20","/2.0.0-alpha.19","/V2 Changelog"],"metadata":{"permalink":"/changelog/page/6","page":6,"postsPerPage":20,"totalPages":6,"totalCount":105,"previousPage":"/changelog/page/5","blogDescription":"Keep yourself up-to-date about new features in every release","blogTitle":"Docusaurus changelog"}}],"blogTags":{},"blogTagsListPath":"/changelog/tags","authorsMap":{"6543":{"name":"6543","alias":"6543","url":"https://github.com/6543","imageURL":"https://github.com/6543.png","key":"6543","page":null},"1084350607":{"name":"\u4E45\u67D3 | JiuRan","alias":"1084350607","url":"https://github.com/1084350607","imageURL":"https://github.com/1084350607.png","key":"1084350607","page":null},"alvinometric":{"name":"Alvin Bryan","alias":"alvinometric","url":"https://github.com/alvinometric","imageURL":"https://github.com/alvinometric.png","key":"alvinometric","page":null},"codimiracle":{"name":"Lin Huang","alias":"codimiracle","url":"https://github.com/codimiracle","imageURL":"https://github.com/codimiracle.png","key":"codimiracle","page":null},"effozen":{"name":"Zen","alias":"effozen","url":"https://github.com/effozen","imageURL":"https://github.com/effozen.png","key":"effozen","page":null},"GingerGeek":{"name":"Zed Spencer-Milnes","alias":"GingerGeek","url":"https://github.com/GingerGeek","imageURL":"https://github.com/GingerGeek.png","key":"GingerGeek","page":null},"hichemfantar":{"name":"Hichem Fantar","alias":"hichemfantar","url":"https://github.com/hichemfantar","imageURL":"https://github.com/hichemfantar.png","key":"hichemfantar","page":null},"ivancheban":{"name":"Ivan Cheban","alias":"ivancheban","url":"https://github.com/ivancheban","imageURL":"https://github.com/ivancheban.png","key":"ivancheban","page":null},"jakeboone02":{"name":"Jake Boone","alias":"jakeboone02","url":"https://github.com/jakeboone02","imageURL":"https://github.com/jakeboone02.png","key":"jakeboone02","page":null},"janaukema":{"name":"Jan Aukema","alias":"janaukema","url":"https://github.com/janaukema","imageURL":"https://github.com/janaukema.png","key":"janaukema","page":null},"Lehoczky":{"name":"Lehoczky Zolt\xe1n","alias":"Lehoczky","url":"https://github.com/Lehoczky","imageURL":"https://github.com/Lehoczky.png","key":"Lehoczky","page":null},"millotp":{"name":"Pierre Millot","alias":"millotp","url":"https://github.com/millotp","imageURL":"https://github.com/millotp.png","key":"millotp","page":null},"slorber":{"name":"S\xe9bastien Lorber","alias":"slorber","url":"https://github.com/slorber","imageURL":"https://github.com/slorber.png","key":"slorber","page":null},"taylorreece":{"name":"Taylor Reece","alias":"taylorreece","url":"https://github.com/taylorreece","imageURL":"https://github.com/taylorreece.png","key":"taylorreece","page":null},"waldyrious":{"name":"Waldir Pimenta","alias":"waldyrious","url":"https://github.com/waldyrious","imageURL":"https://github.com/waldyrious.png","key":"waldyrious","page":null},"WillBlack403":{"name":"William Black","alias":"WillBlack403","url":"https://github.com/WillBlack403","imageURL":"https://github.com/WillBlack403.png","key":"WillBlack403","page":null},"goffxnca":{"name":"Junior_Gx","alias":"goffxnca","url":"https://github.com/goffxnca","imageURL":"https://github.com/goffxnca.png","key":"goffxnca","page":null},"kyletsang":{"name":"Kyle Tsang","alias":"kyletsang","url":"https://github.com/kyletsang","imageURL":"https://github.com/kyletsang.png","key":"kyletsang","page":null},"Ryoga-exe":{"name":"Ryoga","alias":"Ryoga-exe","url":"https://github.com/Ryoga-exe","imageURL":"https://github.com/Ryoga-exe.png","key":"Ryoga-exe","page":null},"Zwyx":{"name":"Zwyx","alias":"Zwyx","url":"https://github.com/Zwyx","imageURL":"https://github.com/Zwyx.png","key":"Zwyx","page":null},"lebalz":{"name":"Balthasar Hofer","alias":"lebalz","url":"https://github.com/lebalz","imageURL":"https://github.com/lebalz.png","key":"lebalz","page":null},"andrewasche":{"name":"Andrew Asche","alias":"andrewasche","url":"https://github.com/andrewasche","imageURL":"https://github.com/andrewasche.png","key":"andrewasche","page":null},"B0r1sD":{"name":"Boris Depoortere","alias":"B0r1sD","url":"https://github.com/B0r1sD","imageURL":"https://github.com/B0r1sD.png","key":"B0r1sD","page":null},"ccho-mongodb":{"name":"Chris Cho","alias":"ccho-mongodb","url":"https://github.com/ccho-mongodb","imageURL":"https://github.com/ccho-mongodb.png","key":"ccho-mongodb","page":null},"flixyudh":{"name":"Flix","alias":"flixyudh","url":"https://github.com/flixyudh","imageURL":"https://github.com/flixyudh.png","key":"flixyudh","page":null},"ilg-ul":{"name":"Liviu Ionescu","alias":"ilg-ul","url":"https://github.com/ilg-ul","imageURL":"https://github.com/ilg-ul.png","key":"ilg-ul","page":null},"jackrabbit128":{"name":"jackrabbit128","alias":"jackrabbit128","url":"https://github.com/jackrabbit128","imageURL":"https://github.com/jackrabbit128.png","key":"jackrabbit128","page":null},"k-seltzer":{"name":"k-seltzer","alias":"k-seltzer","url":"https://github.com/k-seltzer","imageURL":"https://github.com/k-seltzer.png","key":"k-seltzer","page":null},"kenrick95":{"name":"Kenrick","alias":"kenrick95","url":"https://github.com/kenrick95","imageURL":"https://github.com/kenrick95.png","key":"kenrick95","page":null},"moonrailgun":{"name":"moonrailgun","alias":"moonrailgun","url":"https://github.com/moonrailgun","imageURL":"https://github.com/moonrailgun.png","key":"moonrailgun","page":null},"moskalakamil":{"name":"Kamil Moska\u0142a","alias":"moskalakamil","url":"https://github.com/moskalakamil","imageURL":"https://github.com/moskalakamil.png","key":"moskalakamil","page":null},"namnguyenthanhwork":{"name":"Nguy\u1EC5n Th\xe0nh Nam","alias":"namnguyenthanhwork","url":"https://github.com/namnguyenthanhwork","imageURL":"https://github.com/namnguyenthanhwork.png","key":"namnguyenthanhwork","page":null},"Olexandr88":{"name":"Olexandr88","alias":"Olexandr88","url":"https://github.com/Olexandr88","imageURL":"https://github.com/Olexandr88.png","key":"Olexandr88","page":null},"OzakIOne":{"name":"ozaki","alias":"OzakIOne","url":"https://github.com/OzakIOne","imageURL":"https://github.com/OzakIOne.png","key":"OzakIOne","page":null},"patik123":{"name":"Patrick","alias":"patik123","url":"https://github.com/patik123","imageURL":"https://github.com/patik123.png","key":"patik123","page":null},"Radovenchyk":{"name":"Radovenchyk","alias":"Radovenchyk","url":"https://github.com/Radovenchyk","imageURL":"https://github.com/Radovenchyk.png","key":"Radovenchyk","page":null},"raghav2005":{"name":"Raghav","alias":"raghav2005","url":"https://github.com/raghav2005","imageURL":"https://github.com/raghav2005.png","key":"raghav2005","page":null},"TheMineWay":{"name":"Joel Campos","alias":"TheMineWay","url":"https://github.com/TheMineWay","imageURL":"https://github.com/TheMineWay.png","key":"TheMineWay","page":null},"Zenahr":{"name":"Zenahr Barzani","alias":"Zenahr","url":"https://github.com/Zenahr","imageURL":"https://github.com/Zenahr.png","key":"Zenahr","page":null},"cstangerup":{"name":"Christian Stangerup","alias":"cstangerup","url":"https://github.com/cstangerup","imageURL":"https://github.com/cstangerup.png","key":"cstangerup","page":null},"GatienBoquet":{"name":"Gatien Boquet","alias":"GatienBoquet","url":"https://github.com/GatienBoquet","imageURL":"https://github.com/GatienBoquet.png","key":"GatienBoquet","page":null},"josh-wong":{"name":"Josh Wong","alias":"josh-wong","url":"https://github.com/josh-wong","imageURL":"https://github.com/josh-wong.png","key":"josh-wong","page":null},"anaclumos":{"name":"Sunghyun Cho","alias":"anaclumos","url":"https://github.com/anaclumos","imageURL":"https://github.com/anaclumos.png","key":"anaclumos","page":null},"alicelovescake":{"name":"Alice Zhao","alias":"alicelovescake","url":"https://github.com/alicelovescake","imageURL":"https://github.com/alicelovescake.png","key":"alicelovescake","page":null},"ashiq-firoz":{"name":"Ashiq Firoz","alias":"ashiq-firoz","url":"https://github.com/ashiq-firoz","imageURL":"https://github.com/ashiq-firoz.png","key":"ashiq-firoz","page":null},"Aslemammad":{"name":"Mohammad Bagher Abiyat","alias":"Aslemammad","url":"https://github.com/Aslemammad","imageURL":"https://github.com/Aslemammad.png","key":"Aslemammad","page":null},"bharateshwq":{"name":"Bharatesh","alias":"bharateshwq","url":"https://github.com/bharateshwq","imageURL":"https://github.com/bharateshwq.png","key":"bharateshwq","page":null},"bohyunjung":{"name":"\uC815\uBCF4\uD604 Bohyun Jung","alias":"bohyunjung","url":"https://github.com/bohyunjung","imageURL":"https://github.com/bohyunjung.png","key":"bohyunjung","page":null},"chirbard":{"name":"Markus Tamm","alias":"chirbard","url":"https://github.com/chirbard","imageURL":"https://github.com/chirbard.png","key":"chirbard","page":null},"d4nyll":{"name":"Daniel Li","alias":"d4nyll","url":"https://github.com/d4nyll","imageURL":"https://github.com/d4nyll.png","key":"d4nyll","page":null},"dhayab":{"name":"Dhaya","alias":"dhayab","url":"https://github.com/dhayab","imageURL":"https://github.com/dhayab.png","key":"dhayab","page":null},"franzd1":{"name":"franzd1","alias":"franzd1","url":"https://github.com/franzd1","imageURL":"https://github.com/franzd1.png","key":"franzd1","page":null},"Gekd":{"name":"Robin Otter","alias":"Gekd","url":"https://github.com/Gekd","imageURL":"https://github.com/Gekd.png","key":"Gekd","page":null},"johnnyreilly":{"name":"John Reilly","alias":"johnnyreilly","url":"https://github.com/johnnyreilly","imageURL":"https://github.com/johnnyreilly.png","key":"johnnyreilly","page":null},"Josh-Cena":{"name":"Joshua Chen","alias":"Josh-Cena","url":"https://github.com/Josh-Cena","imageURL":"https://github.com/Josh-Cena.png","key":"Josh-Cena","page":null},"mxschmitt":{"name":"Max Schmitt","alias":"mxschmitt","url":"https://github.com/mxschmitt","imageURL":"https://github.com/mxschmitt.png","key":"mxschmitt","page":null},"Paneedah":{"name":"Paneedah","alias":"Paneedah","url":"https://github.com/Paneedah","imageURL":"https://github.com/Paneedah.png","key":"Paneedah","page":null},"pjchender":{"name":"Aaron Chen","alias":"pjchender","url":"https://github.com/pjchender","imageURL":"https://github.com/pjchender.png","key":"pjchender","page":null},"priyadi":{"name":"Priyadi Iman Nurcahyo","alias":"priyadi","url":"https://github.com/priyadi","imageURL":"https://github.com/priyadi.png","key":"priyadi","page":null},"sergioalmela":{"name":"Sergio","alias":"sergioalmela","url":"https://github.com/sergioalmela","imageURL":"https://github.com/sergioalmela.png","key":"sergioalmela","page":null},"tats-u":{"name":"Tatsunori Uchino","alias":"tats-u","url":"https://github.com/tats-u","imageURL":"https://github.com/tats-u.png","key":"tats-u","page":null},"ultimate":{"name":"Julian V","alias":"ultimate","url":"https://github.com/ultimate","imageURL":"https://github.com/ultimate.png","key":"ultimate","page":null},"Xebec19":{"name":"Rohan Thakur","alias":"Xebec19","url":"https://github.com/Xebec19","imageURL":"https://github.com/Xebec19.png","key":"Xebec19","page":null},"yujonglee":{"name":"yujonglee","alias":"yujonglee","url":"https://github.com/yujonglee","imageURL":"https://github.com/yujonglee.png","key":"yujonglee","page":null},"Arsero":{"name":"Azzedine E.","alias":"Arsero","url":"https://github.com/Arsero","imageURL":"https://github.com/Arsero.png","key":"Arsero","page":null},"CodeDoctorDE":{"name":"CodeDoctor","alias":"CodeDoctorDE","url":"https://github.com/CodeDoctorDE","imageURL":"https://github.com/CodeDoctorDE.png","key":"CodeDoctorDE","page":null},"homotechsual":{"name":"Mikey O\'Toole","alias":"homotechsual","url":"https://github.com/homotechsual","imageURL":"https://github.com/homotechsual.png","key":"homotechsual","page":null},"ilmedova":{"name":"Mahri Ilmedova","alias":"ilmedova","url":"https://github.com/ilmedova","imageURL":"https://github.com/ilmedova.png","key":"ilmedova","page":null},"ncoughlin":{"name":"Nick Coughlin","alias":"ncoughlin","url":"https://github.com/ncoughlin","imageURL":"https://github.com/ncoughlin.png","key":"ncoughlin","page":null},"PetarMc1":{"name":"Petar_mc","alias":"PetarMc1","url":"https://github.com/PetarMc1","imageURL":"https://github.com/PetarMc1.png","key":"PetarMc1","page":null},"revi":{"name":"Yongmin Hong","alias":"revi","url":"https://github.com/revi","imageURL":"https://github.com/revi.png","key":"revi","page":null},"Abdullah-03":{"name":"Abdullah Saud","alias":"Abdullah-03","url":"https://github.com/Abdullah-03","imageURL":"https://github.com/Abdullah-03.png","key":"Abdullah-03","page":null},"andrmaz":{"name":"Andrea Mazzucchelli","alias":"andrmaz","url":"https://github.com/andrmaz","imageURL":"https://github.com/andrmaz.png","key":"andrmaz","page":null},"eldemcan":{"name":"Can Eldem","alias":"eldemcan","url":"https://github.com/eldemcan","imageURL":"https://github.com/eldemcan.png","key":"eldemcan","page":null},"gagdiez":{"name":"Guille","alias":"gagdiez","url":"https://github.com/gagdiez","imageURL":"https://github.com/gagdiez.png","key":"gagdiez","page":null},"h3nr1ke":{"name":"H3NR1KE","alias":"h3nr1ke","url":"https://github.com/h3nr1ke","imageURL":"https://github.com/h3nr1ke.png","key":"h3nr1ke","page":null},"iAdramelk":{"name":"Alexey Ivanov","alias":"iAdramelk","url":"https://github.com/iAdramelk","imageURL":"https://github.com/iAdramelk.png","key":"iAdramelk","page":null},"kaihoffman":{"name":"Kai Hoffman","alias":"kaihoffman","url":"https://github.com/kaihoffman","imageURL":"https://github.com/kaihoffman.png","key":"kaihoffman","page":null},"pearmini":{"name":"Bairui Su","alias":"pearmini","url":"https://github.com/pearmini","imageURL":"https://github.com/pearmini.png","key":"pearmini","page":null},"SandPod":{"name":"Alexander Sandor","alias":"SandPod","url":"https://github.com/SandPod","imageURL":"https://github.com/SandPod.png","key":"SandPod","page":null},"tomsotte":{"name":"Tommaso Sotte","alias":"tomsotte","url":"https://github.com/tomsotte","imageURL":"https://github.com/tomsotte.png","key":"tomsotte","page":null},"tomy0000000":{"name":"Tomy Hsieh","alias":"tomy0000000","url":"https://github.com/tomy0000000","imageURL":"https://github.com/tomy0000000.png","key":"tomy0000000","page":null},"Virgil993":{"name":"Virgil993","alias":"Virgil993","url":"https://github.com/Virgil993","imageURL":"https://github.com/Virgil993.png","key":"Virgil993","page":null},"volcanofr":{"name":"volcanofr","alias":"volcanofr","url":"https://github.com/volcanofr","imageURL":"https://github.com/volcanofr.png","key":"volcanofr","page":null},"4troDev":{"name":"Josue [4tro] A","alias":"4troDev","url":"https://github.com/4troDev","imageURL":"https://github.com/4troDev.png","key":"4troDev","page":null},"anatolykopyl":{"name":"Anatoly Kopyl","alias":"anatolykopyl","url":"https://github.com/anatolykopyl","imageURL":"https://github.com/anatolykopyl.png","key":"anatolykopyl","page":null},"axel7083":{"name":"axel7083","alias":"axel7083","url":"https://github.com/axel7083","imageURL":"https://github.com/axel7083.png","key":"axel7083","page":null},"baradusov":{"name":"\u041D\u0443\u0440\u0438\u043B\u044C \u0411\u0430\u0440\u0430\u0434\u0443\u0441\u043E\u0432","alias":"baradusov","url":"https://github.com/baradusov","imageURL":"https://github.com/baradusov.png","key":"baradusov","page":null},"chris-bateman":{"name":"Chris Bateman","alias":"chris-bateman","url":"https://github.com/chris-bateman","imageURL":"https://github.com/chris-bateman.png","key":"chris-bateman","page":null},"Hallinn":{"name":"Hallbj\xf6rn Magn\xfasson","alias":"Hallinn","url":"https://github.com/Hallinn","imageURL":"https://github.com/Hallinn.png","key":"Hallinn","page":null},"Its-Just-Nans":{"name":"n4n5","alias":"Its-Just-Nans","url":"https://github.com/Its-Just-Nans","imageURL":"https://github.com/Its-Just-Nans.png","key":"Its-Just-Nans","page":null},"kaymomin":{"name":"krinza.eth","alias":"kaymomin","url":"https://github.com/kaymomin","imageURL":"https://github.com/kaymomin.png","key":"kaymomin","page":null},"Oreoxmt":{"name":"Aolin","alias":"Oreoxmt","url":"https://github.com/Oreoxmt","imageURL":"https://github.com/Oreoxmt.png","key":"Oreoxmt","page":null},"Rafael-Martins":{"name":"Rafael Martins","alias":"Rafael-Martins","url":"https://github.com/Rafael-Martins","imageURL":"https://github.com/Rafael-Martins.png","key":"Rafael-Martins","page":null},"Suenaga-Ryuya":{"name":"suenryu","alias":"Suenaga-Ryuya","url":"https://github.com/Suenaga-Ryuya","imageURL":"https://github.com/Suenaga-Ryuya.png","key":"Suenaga-Ryuya","page":null},"sunkanmii":{"name":"Fafowora Sunkanmi","alias":"sunkanmii","url":"https://github.com/sunkanmii","imageURL":"https://github.com/sunkanmii.png","key":"sunkanmii","page":null},"VahidNaderi":{"name":"Vahid Naderi","alias":"VahidNaderi","url":"https://github.com/VahidNaderi","imageURL":"https://github.com/VahidNaderi.png","key":"VahidNaderi","page":null},"vlad-nestorov":{"name":"Vlad Nestorov","alias":"vlad-nestorov","url":"https://github.com/vlad-nestorov","imageURL":"https://github.com/vlad-nestorov.png","key":"vlad-nestorov","page":null},"yixiaojiu":{"name":"\u7FCA\u5C0F\u4E45","alias":"yixiaojiu","url":"https://github.com/yixiaojiu","imageURL":"https://github.com/yixiaojiu.png","key":"yixiaojiu","page":null},"dawei-wang":{"name":"dawei-wang","alias":"dawei-wang","url":"https://github.com/dawei-wang","imageURL":"https://github.com/dawei-wang.png","key":"dawei-wang","page":null},"eitsupi":{"name":"eitsupi","alias":"eitsupi","url":"https://github.com/eitsupi","imageURL":"https://github.com/eitsupi.png","key":"eitsupi","page":null},"jack-robson":{"name":"Jack Robson","alias":"jack-robson","url":"https://github.com/jack-robson","imageURL":"https://github.com/jack-robson.png","key":"jack-robson","page":null},"sanjaiyan-dev":{"name":"Sanjaiyan Parthipan","alias":"sanjaiyan-dev","url":"https://github.com/sanjaiyan-dev","imageURL":"https://github.com/sanjaiyan-dev.png","key":"sanjaiyan-dev","page":null},"axmmisaka":{"name":"axmmisaka","alias":"axmmisaka","url":"https://github.com/axmmisaka","imageURL":"https://github.com/axmmisaka.png","key":"axmmisaka","page":null},"c0h1b4":{"name":"c0h1b4","alias":"c0h1b4","url":"https://github.com/c0h1b4","imageURL":"https://github.com/c0h1b4.png","key":"c0h1b4","page":null},"jgarrow":{"name":"Janessa Garrow","alias":"jgarrow","url":"https://github.com/jgarrow","imageURL":"https://github.com/jgarrow.png","key":"jgarrow","page":null},"SimenB":{"name":"Simen Bekkhus","alias":"SimenB","url":"https://github.com/SimenB","imageURL":"https://github.com/SimenB.png","key":"SimenB","page":null},"harryzcy":{"name":"Chongyi Zheng","alias":"harryzcy","url":"https://github.com/harryzcy","imageURL":"https://github.com/harryzcy.png","key":"harryzcy","page":null},"mcrstudio":{"name":"MCR Studio","alias":"mcrstudio","url":"https://github.com/mcrstudio","imageURL":"https://github.com/mcrstudio.png","key":"mcrstudio","page":null},"NickGerleman":{"name":"Nick Gerleman","alias":"NickGerleman","url":"https://github.com/NickGerleman","imageURL":"https://github.com/NickGerleman.png","key":"NickGerleman","page":null},"reece-white":{"name":"reece-white","alias":"reece-white","url":"https://github.com/reece-white","imageURL":"https://github.com/reece-white.png","key":"reece-white","page":null},"Shreesh09":{"name":"Shreesh Nautiyal","alias":"Shreesh09","url":"https://github.com/Shreesh09","imageURL":"https://github.com/Shreesh09.png","key":"Shreesh09","page":null},"0420syj":{"name":"Wan Sim","alias":"0420syj","url":"https://github.com/0420syj","imageURL":"https://github.com/0420syj.png","key":"0420syj","page":null},"abhinandanwadwa":{"name":"Abhinandan Wadhwa","alias":"abhinandanwadwa","url":"https://github.com/abhinandanwadwa","imageURL":"https://github.com/abhinandanwadwa.png","key":"abhinandanwadwa","page":null},"Abinashbunty":{"name":"Abinash Satapathy","alias":"Abinashbunty","url":"https://github.com/Abinashbunty","imageURL":"https://github.com/Abinashbunty.png","key":"Abinashbunty","page":null},"adampatterson":{"name":"Adam Patterson","alias":"adampatterson","url":"https://github.com/adampatterson","imageURL":"https://github.com/adampatterson.png","key":"adampatterson","page":null},"adithyaakrishna":{"name":"Adithya Krishna","alias":"adithyaakrishna","url":"https://github.com/adithyaakrishna","imageURL":"https://github.com/adithyaakrishna.png","key":"adithyaakrishna","page":null},"AFRUITPIE":{"name":"Hayden Hong","alias":"AFRUITPIE","url":"https://github.com/AFRUITPIE","imageURL":"https://github.com/AFRUITPIE.png","key":"AFRUITPIE","page":null},"AgentEnder":{"name":"Craigory Coppola","alias":"AgentEnder","url":"https://github.com/AgentEnder","imageURL":"https://github.com/AgentEnder.png","key":"AgentEnder","page":null},"akshaybhalotia":{"name":"Akshay Bhalotia","alias":"akshaybhalotia","url":"https://github.com/akshaybhalotia","imageURL":"https://github.com/akshaybhalotia.png","key":"akshaybhalotia","page":null},"allyw2002":{"name":"allyw2002","alias":"allyw2002","url":"https://github.com/allyw2002","imageURL":"https://github.com/allyw2002.png","key":"allyw2002","page":null},"amdshrif":{"name":"Ahmad Shrif","alias":"amdshrif","url":"https://github.com/amdshrif","imageURL":"https://github.com/amdshrif.png","key":"amdshrif","page":null},"amm98d":{"name":"Ahmed Mustafa Malik","alias":"amm98d","url":"https://github.com/amm98d","imageURL":"https://github.com/amm98d.png","key":"amm98d","page":null},"andrewnicols":{"name":"Andrew Lyons","alias":"andrewnicols","url":"https://github.com/andrewnicols","imageURL":"https://github.com/andrewnicols.png","key":"andrewnicols","page":null},"antonk52":{"name":"Anton Kastritskii","alias":"antonk52","url":"https://github.com/antonk52","imageURL":"https://github.com/antonk52.png","key":"antonk52","page":null},"antonyoni":{"name":"Antony Onipko","alias":"antonyoni","url":"https://github.com/antonyoni","imageURL":"https://github.com/antonyoni.png","key":"antonyoni","page":null},"aqueeb":{"name":"Aqueeb","alias":"aqueeb","url":"https://github.com/aqueeb","imageURL":"https://github.com/aqueeb.png","key":"aqueeb","page":null},"attitude":{"name":"Martin Adamko","alias":"attitude","url":"https://github.com/attitude","imageURL":"https://github.com/attitude.png","key":"attitude","page":null},"billy1624":{"name":"Billy Chan","alias":"billy1624","url":"https://github.com/billy1624","imageURL":"https://github.com/billy1624.png","key":"billy1624","page":null},"biplavmz":{"name":"biplavmz","alias":"biplavmz","url":"https://github.com/biplavmz","imageURL":"https://github.com/biplavmz.png","key":"biplavmz","page":null},"bitpredator":{"name":"bitpredator","alias":"bitpredator","url":"https://github.com/bitpredator","imageURL":"https://github.com/bitpredator.png","key":"bitpredator","page":null},"BubbaJoe":{"name":"Joe Williams","alias":"BubbaJoe","url":"https://github.com/BubbaJoe","imageURL":"https://github.com/BubbaJoe.png","key":"BubbaJoe","page":null},"chillinPanda":{"name":"Dinh Bao Dang","alias":"chillinPanda","url":"https://github.com/chillinPanda","imageURL":"https://github.com/chillinPanda.png","key":"chillinPanda","page":null},"chubei":{"name":"Bei Chu","alias":"chubei","url":"https://github.com/chubei","imageURL":"https://github.com/chubei.png","key":"chubei","page":null},"chudongvip":{"name":"\u521D\u51AC","alias":"chudongvip","url":"https://github.com/chudongvip","imageURL":"https://github.com/chudongvip.png","key":"chudongvip","page":null},"cm-igarashi-ryosuke":{"name":"Ryosuke Igarashi","alias":"cm-igarashi-ryosuke","url":"https://github.com/cm-igarashi-ryosuke","imageURL":"https://github.com/cm-igarashi-ryosuke.png","key":"cm-igarashi-ryosuke","page":null},"colinhacks":{"name":"Colin McDonnell","alias":"colinhacks","url":"https://github.com/colinhacks","imageURL":"https://github.com/colinhacks.png","key":"colinhacks","page":null},"conlacda":{"name":"conlacda","alias":"conlacda","url":"https://github.com/conlacda","imageURL":"https://github.com/conlacda.png","key":"conlacda","page":null},"dandv":{"name":"Dan Dascalescu","alias":"dandv","url":"https://github.com/dandv","imageURL":"https://github.com/dandv.png","key":"dandv","page":null},"danilowoz":{"name":"Danilo Woznica","alias":"danilowoz","url":"https://github.com/danilowoz","imageURL":"https://github.com/danilowoz.png","key":"danilowoz","page":null},"DanRoscigno":{"name":"Dan Roscigno","alias":"DanRoscigno","url":"https://github.com/DanRoscigno","imageURL":"https://github.com/DanRoscigno.png","key":"DanRoscigno","page":null},"DavidJFelix":{"name":"David J. Felix","alias":"DavidJFelix","url":"https://github.com/DavidJFelix","imageURL":"https://github.com/DavidJFelix.png","key":"DavidJFelix","page":null},"debs-obrien":{"name":"Debbie O\'Brien","alias":"debs-obrien","url":"https://github.com/debs-obrien","imageURL":"https://github.com/debs-obrien.png","key":"debs-obrien","page":null},"Devansu-Yadav":{"name":"Devansu Yadav","alias":"Devansu-Yadav","url":"https://github.com/Devansu-Yadav","imageURL":"https://github.com/Devansu-Yadav.png","key":"Devansu-Yadav","page":null},"Djunnni":{"name":"Dongjoon Lee","alias":"Djunnni","url":"https://github.com/Djunnni","imageURL":"https://github.com/Djunnni.png","key":"Djunnni","page":null},"Dr-Electron":{"name":"Dr-Electron","alias":"Dr-Electron","url":"https://github.com/Dr-Electron","imageURL":"https://github.com/Dr-Electron.png","key":"Dr-Electron","page":null},"e-minguez":{"name":"Eduardo M\xednguez","alias":"e-minguez","url":"https://github.com/e-minguez","imageURL":"https://github.com/e-minguez.png","key":"e-minguez","page":null},"edno":{"name":"Gr\xe9gory Heitz","alias":"edno","url":"https://github.com/edno","imageURL":"https://github.com/edno.png","key":"edno","page":null},"FlorinaPacurar":{"name":"FlorinaPacurar","alias":"FlorinaPacurar","url":"https://github.com/FlorinaPacurar","imageURL":"https://github.com/FlorinaPacurar.png","key":"FlorinaPacurar","page":null},"Foosballfan":{"name":"Charles Killer","alias":"Foosballfan","url":"https://github.com/Foosballfan","imageURL":"https://github.com/Foosballfan.png","key":"Foosballfan","page":null},"forresst":{"name":"Forresst","alias":"forresst","url":"https://github.com/forresst","imageURL":"https://github.com/forresst.png","key":"forresst","page":null},"FrancescoXX":{"name":"Francesco Ciulla","alias":"FrancescoXX","url":"https://github.com/FrancescoXX","imageURL":"https://github.com/FrancescoXX.png","key":"FrancescoXX","page":null},"fredrikstave":{"name":"Fredrik Stave","alias":"fredrikstave","url":"https://github.com/fredrikstave","imageURL":"https://github.com/fredrikstave.png","key":"fredrikstave","page":null},"fxpby":{"name":"Fxpby","alias":"fxpby","url":"https://github.com/fxpby","imageURL":"https://github.com/fxpby.png","key":"fxpby","page":null},"gabrielcsapo":{"name":"Gabriel Csapo","alias":"gabrielcsapo","url":"https://github.com/gabrielcsapo","imageURL":"https://github.com/gabrielcsapo.png","key":"gabrielcsapo","page":null},"GalexyN":{"name":"Alexander Nguyen","alias":"GalexyN","url":"https://github.com/GalexyN","imageURL":"https://github.com/GalexyN.png","key":"GalexyN","page":null},"gazab":{"name":"Gustav Ton\xe9r","alias":"gazab","url":"https://github.com/gazab","imageURL":"https://github.com/gazab.png","key":"gazab","page":null},"gracefullight":{"name":"Eunkwang Shin","alias":"gracefullight","url":"https://github.com/gracefullight","imageURL":"https://github.com/gracefullight.png","key":"gracefullight","page":null},"gregberge":{"name":"Greg Berg\xe9","alias":"gregberge","url":"https://github.com/gregberge","imageURL":"https://github.com/gregberge.png","key":"gregberge","page":null},"heysujal":{"name":"Sujal Gupta","alias":"heysujal","url":"https://github.com/heysujal","imageURL":"https://github.com/heysujal.png","key":"heysujal","page":null},"hidde":{"name":"Hidde de Vries","alias":"hidde","url":"https://github.com/hidde","imageURL":"https://github.com/hidde.png","key":"hidde","page":null},"hslee2008":{"name":"Hyunseung","alias":"hslee2008","url":"https://github.com/hslee2008","imageURL":"https://github.com/hslee2008.png","key":"hslee2008","page":null},"HumbleDeer":{"name":"Anna","alias":"HumbleDeer","url":"https://github.com/HumbleDeer","imageURL":"https://github.com/HumbleDeer.png","key":"HumbleDeer","page":null},"HyeokjinKang":{"name":"Coupy","alias":"HyeokjinKang","url":"https://github.com/HyeokjinKang","imageURL":"https://github.com/HyeokjinKang.png","key":"HyeokjinKang","page":null},"jean-humann":{"name":"Jean Humann","alias":"jean-humann","url":"https://github.com/jean-humann","imageURL":"https://github.com/jean-humann.png","key":"jean-humann","page":null},"jeengbe":{"name":"Jesper Engberg","alias":"jeengbe","url":"https://github.com/jeengbe","imageURL":"https://github.com/jeengbe.png","key":"jeengbe","page":null},"jhcao23":{"name":"John Cao","alias":"jhcao23","url":"https://github.com/jhcao23","imageURL":"https://github.com/jhcao23.png","key":"jhcao23","page":null},"jj-style":{"name":"JJ Style","alias":"jj-style","url":"https://github.com/jj-style","imageURL":"https://github.com/jj-style.png","key":"jj-style","page":null},"jodyheavener":{"name":"Jody Heavener","alias":"jodyheavener","url":"https://github.com/jodyheavener","imageURL":"https://github.com/jodyheavener.png","key":"jodyheavener","page":null},"JohnVicke":{"name":"Viktor Malmedal","alias":"JohnVicke","url":"https://github.com/JohnVicke","imageURL":"https://github.com/JohnVicke.png","key":"JohnVicke","page":null},"JorensM":{"name":"Jorens Merenjanu","alias":"JorensM","url":"https://github.com/JorensM","imageURL":"https://github.com/JorensM.png","key":"JorensM","page":null},"juanpicado":{"name":"Juan Picado","alias":"juanpicado","url":"https://github.com/juanpicado","imageURL":"https://github.com/juanpicado.png","key":"juanpicado","page":null},"KarthickSakthi":{"name":"0x24Karthick","alias":"KarthickSakthi","url":"https://github.com/KarthickSakthi","imageURL":"https://github.com/KarthickSakthi.png","key":"KarthickSakthi","page":null},"Kesyau":{"name":"Serenus","alias":"Kesyau","url":"https://github.com/Kesyau","imageURL":"https://github.com/Kesyau.png","key":"Kesyau","page":null},"knownasnaffy":{"name":"Naffy Dharni","alias":"knownasnaffy","url":"https://github.com/knownasnaffy","imageURL":"https://github.com/knownasnaffy.png","key":"knownasnaffy","page":null},"la55u":{"name":"la55u","alias":"la55u","url":"https://github.com/la55u","imageURL":"https://github.com/la55u.png","key":"la55u","page":null},"lanegoolsby":{"name":"Lane Goolsby","alias":"lanegoolsby","url":"https://github.com/lanegoolsby","imageURL":"https://github.com/lanegoolsby.png","key":"lanegoolsby","page":null},"layershifter":{"name":"Oleksandr Fediashov","alias":"layershifter","url":"https://github.com/layershifter","imageURL":"https://github.com/layershifter.png","key":"layershifter","page":null},"lex111":{"name":"Alexey Pyltsyn","alias":"lex111","url":"https://github.com/lex111","imageURL":"https://github.com/lex111.png","key":"lex111","page":null},"lorenzolewis":{"name":"Lorenzo Lewis","alias":"lorenzolewis","url":"https://github.com/lorenzolewis","imageURL":"https://github.com/lorenzolewis.png","key":"lorenzolewis","page":null},"maliMirkec":{"name":"Silvestar Bistrovi\u0107","alias":"maliMirkec","url":"https://github.com/maliMirkec","imageURL":"https://github.com/maliMirkec.png","key":"maliMirkec","page":null},"manuel-rw":{"name":"Manuel","alias":"manuel-rw","url":"https://github.com/manuel-rw","imageURL":"https://github.com/manuel-rw.png","key":"manuel-rw","page":null},"MarkShawn2020":{"name":"Markshawn","alias":"MarkShawn2020","url":"https://github.com/MarkShawn2020","imageURL":"https://github.com/MarkShawn2020.png","key":"MarkShawn2020","page":null},"mcallisto":{"name":"mcallisto","alias":"mcallisto","url":"https://github.com/mcallisto","imageURL":"https://github.com/mcallisto.png","key":"mcallisto","page":null},"mickremedi":{"name":"Michael Remediakis","alias":"mickremedi","url":"https://github.com/mickremedi","imageURL":"https://github.com/mickremedi.png","key":"mickremedi","page":null},"ModupeD":{"name":"ModupeD","alias":"ModupeD","url":"https://github.com/ModupeD","imageURL":"https://github.com/ModupeD.png","key":"ModupeD","page":null},"Mogyuchi":{"name":"Mogyuchi","alias":"Mogyuchi","url":"https://github.com/Mogyuchi","imageURL":"https://github.com/Mogyuchi.png","key":"Mogyuchi","page":null},"moojing":{"name":"Mu-Jing-Tsai","alias":"moojing","url":"https://github.com/moojing","imageURL":"https://github.com/moojing.png","key":"moojing","page":null},"mrazauskas":{"name":"Tom Mrazauskas","alias":"mrazauskas","url":"https://github.com/mrazauskas","imageURL":"https://github.com/mrazauskas.png","key":"mrazauskas","page":null},"mstroppel":{"name":"Marco Stroppel","alias":"mstroppel","url":"https://github.com/mstroppel","imageURL":"https://github.com/mstroppel.png","key":"mstroppel","page":null},"Mysterious-Dev":{"name":"Mysterious_Dev","alias":"Mysterious-Dev","url":"https://github.com/Mysterious-Dev","imageURL":"https://github.com/Mysterious-Dev.png","key":"Mysterious-Dev","page":null},"NamanGarg2075":{"name":"Naman Garg","alias":"NamanGarg2075","url":"https://github.com/NamanGarg2075","imageURL":"https://github.com/NamanGarg2075.png","key":"NamanGarg2075","page":null},"ntucker":{"name":"Nathaniel Tucker","alias":"ntucker","url":"https://github.com/ntucker","imageURL":"https://github.com/ntucker.png","key":"ntucker","page":null},"oluwatobiss":{"name":"Oluwatobi Sofela","alias":"oluwatobiss","url":"https://github.com/oluwatobiss","imageURL":"https://github.com/oluwatobiss.png","key":"oluwatobiss","page":null},"palmiak":{"name":"Maciek Palmowski","alias":"palmiak","url":"https://github.com/palmiak","imageURL":"https://github.com/palmiak.png","key":"palmiak","page":null},"PaulRBerg":{"name":"Paul Razvan Berg","alias":"PaulRBerg","url":"https://github.com/PaulRBerg","imageURL":"https://github.com/PaulRBerg.png","key":"PaulRBerg","page":null},"pinakipb2":{"name":"Pinaki Bhattacharjee","alias":"pinakipb2","url":"https://github.com/pinakipb2","imageURL":"https://github.com/pinakipb2.png","key":"pinakipb2","page":null},"prateekbytes":{"name":"prateekbytes","alias":"prateekbytes","url":"https://github.com/prateekbytes","imageURL":"https://github.com/prateekbytes.png","key":"prateekbytes","page":null},"qwerzl":{"name":"qwerzl","alias":"qwerzl","url":"https://github.com/qwerzl","imageURL":"https://github.com/qwerzl.png","key":"qwerzl","page":null},"rashidmya":{"name":"Rashid","alias":"rashidmya","url":"https://github.com/rashidmya","imageURL":"https://github.com/rashidmya.png","key":"rashidmya","page":null},"razzeee":{"name":"Kolja","alias":"razzeee","url":"https://github.com/razzeee","imageURL":"https://github.com/razzeee.png","key":"razzeee","page":null},"rbarbazz":{"name":"Rapha\xebl Barbazza","alias":"rbarbazz","url":"https://github.com/rbarbazz","imageURL":"https://github.com/rbarbazz.png","key":"rbarbazz","page":null},"recallwei":{"name":"Bruce Song","alias":"recallwei","url":"https://github.com/recallwei","imageURL":"https://github.com/recallwei.png","key":"recallwei","page":null},"rojakcoder":{"name":"Chua Chee How","alias":"rojakcoder","url":"https://github.com/rojakcoder","imageURL":"https://github.com/rojakcoder.png","key":"rojakcoder","page":null},"rsteele6":{"name":"rsteele6","alias":"rsteele6","url":"https://github.com/rsteele6","imageURL":"https://github.com/rsteele6.png","key":"rsteele6","page":null},"sadikkuzu":{"name":"SADIK KUZU","alias":"sadikkuzu","url":"https://github.com/sadikkuzu","imageURL":"https://github.com/sadikkuzu.png","key":"sadikkuzu","page":null},"Sainan":{"name":"Sainan","alias":"Sainan","url":"https://github.com/Sainan","imageURL":"https://github.com/Sainan.png","key":"Sainan","page":null},"samatt14":{"name":"samatt14","alias":"samatt14","url":"https://github.com/samatt14","imageURL":"https://github.com/samatt14.png","key":"samatt14","page":null},"sashashura":{"name":"Alex","alias":"sashashura","url":"https://github.com/sashashura","imageURL":"https://github.com/sashashura.png","key":"sashashura","page":null},"schneegansm":{"name":"Marie","alias":"schneegansm","url":"https://github.com/schneegansm","imageURL":"https://github.com/schneegansm.png","key":"schneegansm","page":null},"scubamaggo":{"name":"Marco Kuper","alias":"scubamaggo","url":"https://github.com/scubamaggo","imageURL":"https://github.com/scubamaggo.png","key":"scubamaggo","page":null},"ShahriarKh":{"name":"Shahriar","alias":"ShahriarKh","url":"https://github.com/ShahriarKh","imageURL":"https://github.com/ShahriarKh.png","key":"ShahriarKh","page":null},"shawshankkumar":{"name":"Shashank Kumar","alias":"shawshankkumar","url":"https://github.com/shawshankkumar","imageURL":"https://github.com/shawshankkumar.png","key":"shawshankkumar","page":null},"shortcuts":{"name":"Cl\xe9ment Vannicatte","alias":"shortcuts","url":"https://github.com/shortcuts","imageURL":"https://github.com/shortcuts.png","key":"shortcuts","page":null},"shwaka":{"name":"Shun Wakatsuki","alias":"shwaka","url":"https://github.com/shwaka","imageURL":"https://github.com/shwaka.png","key":"shwaka","page":null},"sixhobbits":{"name":"Gareth Dwyer","alias":"sixhobbits","url":"https://github.com/sixhobbits","imageURL":"https://github.com/sixhobbits.png","key":"sixhobbits","page":null},"suravshrestha":{"name":"Surav Shrestha","alias":"suravshrestha","url":"https://github.com/suravshrestha","imageURL":"https://github.com/suravshrestha.png","key":"suravshrestha","page":null},"sykp241095":{"name":"sykp241095","alias":"sykp241095","url":"https://github.com/sykp241095","imageURL":"https://github.com/sykp241095.png","key":"sykp241095","page":null},"tamalchowdhury":{"name":"Tamal Anwar Chowdhury","alias":"tamalchowdhury","url":"https://github.com/tamalchowdhury","imageURL":"https://github.com/tamalchowdhury.png","key":"tamalchowdhury","page":null},"tarunrajput":{"name":"Tarun Chauhan","alias":"tarunrajput","url":"https://github.com/tarunrajput","imageURL":"https://github.com/tarunrajput.png","key":"tarunrajput","page":null},"thadguidry":{"name":"Thad Guidry","alias":"thadguidry","url":"https://github.com/thadguidry","imageURL":"https://github.com/thadguidry.png","key":"thadguidry","page":null},"thatrobotdev":{"name":"James Kerrane","alias":"thatrobotdev","url":"https://github.com/thatrobotdev","imageURL":"https://github.com/thatrobotdev.png","key":"thatrobotdev","page":null},"thedevwonder":{"name":"thedevwonder","alias":"thedevwonder","url":"https://github.com/thedevwonder","imageURL":"https://github.com/thedevwonder.png","key":"thedevwonder","page":null},"Villanuevand":{"name":"Andr\xe9s Villanueva","alias":"Villanuevand","url":"https://github.com/Villanuevand","imageURL":"https://github.com/Villanuevand.png","key":"Villanuevand","page":null},"VinceCYLiao":{"name":"VinceCYLiao","alias":"VinceCYLiao","url":"https://github.com/VinceCYLiao","imageURL":"https://github.com/VinceCYLiao.png","key":"VinceCYLiao","page":null},"wceolin":{"name":"Will Ceolin","alias":"wceolin","url":"https://github.com/wceolin","imageURL":"https://github.com/wceolin.png","key":"wceolin","page":null},"webbertakken":{"name":"Webber Takken","alias":"webbertakken","url":"https://github.com/webbertakken","imageURL":"https://github.com/webbertakken.png","key":"webbertakken","page":null},"werner33":{"name":"Jordan Manley","alias":"werner33","url":"https://github.com/werner33","imageURL":"https://github.com/werner33.png","key":"werner33","page":null},"yangshun":{"name":"Yangshun Tay","alias":"yangshun","url":"https://github.com/yangshun","imageURL":"https://github.com/yangshun.png","key":"yangshun","page":null},"yosukekato165":{"name":"yosukekato165","alias":"yosukekato165","url":"https://github.com/yosukekato165","imageURL":"https://github.com/yosukekato165.png","key":"yosukekato165","page":null},"ori-shalom":{"name":"Ori Shalom","alias":"ori-shalom","url":"https://github.com/ori-shalom","imageURL":"https://github.com/ori-shalom.png","key":"ori-shalom","page":null},"TheCatLady":{"name":"TheCatLady","alias":"TheCatLady","url":"https://github.com/TheCatLady","imageURL":"https://github.com/TheCatLady.png","key":"TheCatLady","page":null},"armano2":{"name":"Armano","alias":"armano2","url":"https://github.com/armano2","imageURL":"https://github.com/armano2.png","key":"armano2","page":null},"LiberaTeMetuMortis":{"name":"MetuMortis","alias":"LiberaTeMetuMortis","url":"https://github.com/LiberaTeMetuMortis","imageURL":"https://github.com/LiberaTeMetuMortis.png","key":"LiberaTeMetuMortis","page":null},"morsko1":{"name":"Aleksandr Vladykin","alias":"morsko1","url":"https://github.com/morsko1","imageURL":"https://github.com/morsko1.png","key":"morsko1","page":null},"SACHINnANYAKKARA":{"name":"Sachin Nanayakkara","alias":"SACHINnANYAKKARA","url":"https://github.com/SACHINnANYAKKARA","imageURL":"https://github.com/SACHINnANYAKKARA.png","key":"SACHINnANYAKKARA","page":null},"Anasqx":{"name":"Anas","alias":"Anasqx","url":"https://github.com/Anasqx","imageURL":"https://github.com/Anasqx.png","key":"Anasqx","page":null},"dewanshDT":{"name":"Dewansh Thakur","alias":"dewanshDT","url":"https://github.com/dewanshDT","imageURL":"https://github.com/dewanshDT.png","key":"dewanshDT","page":null},"dr0nn1":{"name":"Petter Dr\xf8nnen","alias":"dr0nn1","url":"https://github.com/dr0nn1","imageURL":"https://github.com/dr0nn1.png","key":"dr0nn1","page":null},"kagankan":{"name":"Kagan","alias":"kagankan","url":"https://github.com/kagankan","imageURL":"https://github.com/kagankan.png","key":"kagankan","page":null},"pReya":{"name":"Moritz St\xfcckler","alias":"pReya","url":"https://github.com/pReya","imageURL":"https://github.com/pReya.png","key":"pReya","page":null},"tannerdolby":{"name":"Tanner Dolby","alias":"tannerdolby","url":"https://github.com/tannerdolby","imageURL":"https://github.com/tannerdolby.png","key":"tannerdolby","page":null},"trueqap":{"name":"TrueQAP","alias":"trueqap","url":"https://github.com/trueqap","imageURL":"https://github.com/trueqap.png","key":"trueqap","page":null},"Vishruta-Patil":{"name":"Vishruta Patil","alias":"Vishruta-Patil","url":"https://github.com/Vishruta-Patil","imageURL":"https://github.com/Vishruta-Patil.png","key":"Vishruta-Patil","page":null},"ZarakiKanzaki":{"name":"Davide Donadio","alias":"ZarakiKanzaki","url":"https://github.com/ZarakiKanzaki","imageURL":"https://github.com/ZarakiKanzaki.png","key":"ZarakiKanzaki","page":null},"scastiel":{"name":"S\xe9bastien Castiel","alias":"scastiel","url":"https://github.com/scastiel","imageURL":"https://github.com/scastiel.png","key":"scastiel","page":null},"0916dhkim":{"name":"Danny Kim","alias":"0916dhkim","url":"https://github.com/0916dhkim","imageURL":"https://github.com/0916dhkim.png","key":"0916dhkim","page":null},"3v0k4":{"name":"Riccardo","alias":"3v0k4","url":"https://github.com/3v0k4","imageURL":"https://github.com/3v0k4.png","key":"3v0k4","page":null},"denis-alkhelali":{"name":"Denis Al-Khelali","alias":"denis-alkhelali","url":"https://github.com/denis-alkhelali","imageURL":"https://github.com/denis-alkhelali.png","key":"denis-alkhelali","page":null},"friederbluemle":{"name":"Frieder Bluemle","alias":"friederbluemle","url":"https://github.com/friederbluemle","imageURL":"https://github.com/friederbluemle.png","key":"friederbluemle","page":null},"JoshuaKGoldberg":{"name":"Josh Goldberg","alias":"JoshuaKGoldberg","url":"https://github.com/JoshuaKGoldberg","imageURL":"https://github.com/JoshuaKGoldberg.png","key":"JoshuaKGoldberg","page":null},"lachieh":{"name":"Lachlan Heywood","alias":"lachieh","url":"https://github.com/lachieh","imageURL":"https://github.com/lachieh.png","key":"lachieh","page":null},"MatijaSi":{"name":"Matija Sirk","alias":"MatijaSi","url":"https://github.com/MatijaSi","imageURL":"https://github.com/MatijaSi.png","key":"MatijaSi","page":null},"mhnaeem":{"name":"Muhammad Hammad","alias":"mhnaeem","url":"https://github.com/mhnaeem","imageURL":"https://github.com/mhnaeem.png","key":"mhnaeem","page":null},"mturoci":{"name":"mturoci","alias":"mturoci","url":"https://github.com/mturoci","imageURL":"https://github.com/mturoci.png","key":"mturoci","page":null},"SJFCS":{"name":"\u5B8B\u9526\u4E30","alias":"SJFCS","url":"https://github.com/SJFCS","imageURL":"https://github.com/SJFCS.png","key":"SJFCS","page":null},"stnor":{"name":"Stefan Norberg","alias":"stnor","url":"https://github.com/stnor","imageURL":"https://github.com/stnor.png","key":"stnor","page":null},"Thomascogez":{"name":"Thomas.CA","alias":"Thomascogez","url":"https://github.com/Thomascogez","imageURL":"https://github.com/Thomascogez.png","key":"Thomascogez","page":null},"adnanhashmi09":{"name":"Adnan Hashmi","alias":"adnanhashmi09","url":"https://github.com/adnanhashmi09","imageURL":"https://github.com/adnanhashmi09.png","key":"adnanhashmi09","page":null},"birjj":{"name":"Johan Fagerberg","alias":"birjj","url":"https://github.com/birjj","imageURL":"https://github.com/birjj.png","key":"birjj","page":null},"e-im":{"name":"evan","alias":"e-im","url":"https://github.com/e-im","imageURL":"https://github.com/e-im.png","key":"e-im","page":null},"forgeRW":{"name":"forgeRW","alias":"forgeRW","url":"https://github.com/forgeRW","imageURL":"https://github.com/forgeRW.png","key":"forgeRW","page":null},"jeferson-sb":{"name":"Jeferson S. Brito","alias":"jeferson-sb","url":"https://github.com/jeferson-sb","imageURL":"https://github.com/jeferson-sb.png","key":"jeferson-sb","page":null},"JPeer264":{"name":"Jan Peer St\xf6cklmair","alias":"JPeer264","url":"https://github.com/JPeer264","imageURL":"https://github.com/JPeer264.png","key":"JPeer264","page":null},"LittleboyHarry":{"name":"LittleboyHarry","alias":"LittleboyHarry","url":"https://github.com/LittleboyHarry","imageURL":"https://github.com/LittleboyHarry.png","key":"LittleboyHarry","page":null},"pasora":{"name":"Masahiko Hara","alias":"pasora","url":"https://github.com/pasora","imageURL":"https://github.com/pasora.png","key":"pasora","page":null},"Pranav2612000":{"name":"Pranav Joglekar","alias":"Pranav2612000","url":"https://github.com/Pranav2612000","imageURL":"https://github.com/Pranav2612000.png","key":"Pranav2612000","page":null},"ramazansancar":{"name":"Ramazan SANCAR","alias":"ramazansancar","url":"https://github.com/ramazansancar","imageURL":"https://github.com/ramazansancar.png","key":"ramazansancar","page":null},"shanpriyan":{"name":"Shanmughapriyan S","alias":"shanpriyan","url":"https://github.com/shanpriyan","imageURL":"https://github.com/shanpriyan.png","key":"shanpriyan","page":null},"sjwall":{"name":"Sam Wall","alias":"sjwall","url":"https://github.com/sjwall","imageURL":"https://github.com/sjwall.png","key":"sjwall","page":null},"Xabilahu":{"name":"Xabier Lahuerta Vazquez","alias":"Xabilahu","url":"https://github.com/Xabilahu","imageURL":"https://github.com/Xabilahu.png","key":"Xabilahu","page":null},"adventure-yunfei":{"name":"adventure-yunfei","alias":"adventure-yunfei","url":"https://github.com/adventure-yunfei","imageURL":"https://github.com/adventure-yunfei.png","key":"adventure-yunfei","page":null},"b-ovsepian":{"name":"Bagdasar Ovsepyan","alias":"b-ovsepian","url":"https://github.com/b-ovsepian","imageURL":"https://github.com/b-ovsepian.png","key":"b-ovsepian","page":null},"datlechin":{"name":"Ng\xf4 Qu\u1ED1c \u0110\u1EA1t","alias":"datlechin","url":"https://github.com/datlechin","imageURL":"https://github.com/datlechin.png","key":"datlechin","page":null},"Kosai106":{"name":"Kevin \xd8sterkilde","alias":"Kosai106","url":"https://github.com/Kosai106","imageURL":"https://github.com/Kosai106.png","key":"Kosai106","page":null},"mdubus":{"name":"Morgane Dubus","alias":"mdubus","url":"https://github.com/mdubus","imageURL":"https://github.com/mdubus.png","key":"mdubus","page":null},"whiteand":{"name":"whiteand","alias":"whiteand","url":"https://github.com/whiteand","imageURL":"https://github.com/whiteand.png","key":"whiteand","page":null},"YoniChechik":{"name":"Yoni Chechik","alias":"YoniChechik","url":"https://github.com/YoniChechik","imageURL":"https://github.com/YoniChechik.png","key":"YoniChechik","page":null},"yzhe819":{"name":"yzhe819","alias":"yzhe819","url":"https://github.com/yzhe819","imageURL":"https://github.com/yzhe819.png","key":"yzhe819","page":null},"DigiPie":{"name":"Evan","alias":"DigiPie","url":"https://github.com/DigiPie","imageURL":"https://github.com/DigiPie.png","key":"DigiPie","page":null},"Gary50613":{"name":"\u51F1\u6069 Kane","alias":"Gary50613","url":"https://github.com/Gary50613","imageURL":"https://github.com/Gary50613.png","key":"Gary50613","page":null},"ghostsquad":{"name":"Wes McNamee","alias":"ghostsquad","url":"https://github.com/ghostsquad","imageURL":"https://github.com/ghostsquad.png","key":"ghostsquad","page":null},"jeffreyaven":{"name":"Jeffrey Aven","alias":"jeffreyaven","url":"https://github.com/jeffreyaven","imageURL":"https://github.com/jeffreyaven.png","key":"jeffreyaven","page":null},"LichLord91":{"name":"LichLord91","alias":"LichLord91","url":"https://github.com/LichLord91","imageURL":"https://github.com/LichLord91.png","key":"LichLord91","page":null},"RoiArthurB":{"name":"Arthur Brugi\xe8re","alias":"RoiArthurB","url":"https://github.com/RoiArthurB","imageURL":"https://github.com/RoiArthurB.png","key":"RoiArthurB","page":null},"treoden":{"name":"The Nguyen","alias":"treoden","url":"https://github.com/treoden","imageURL":"https://github.com/treoden.png","key":"treoden","page":null},"201flaviosilva":{"name":"Fl\xe1vio Silva","alias":"201flaviosilva","url":"https://github.com/201flaviosilva","imageURL":"https://github.com/201flaviosilva.png","key":"201flaviosilva","page":null},"7Wate":{"name":"7Wate","alias":"7Wate","url":"https://github.com/7Wate","imageURL":"https://github.com/7Wate.png","key":"7Wate","page":null},"AkagiYui":{"name":"\u8D64\u57CE\u7ED3\u8863","alias":"AkagiYui","url":"https://github.com/AkagiYui","imageURL":"https://github.com/AkagiYui.png","key":"AkagiYui","page":null},"alewolf":{"name":"alewolf","alias":"alewolf","url":"https://github.com/alewolf","imageURL":"https://github.com/alewolf.png","key":"alewolf","page":null},"alexandernst":{"name":"Alexander Nestorov","alias":"alexandernst","url":"https://github.com/alexandernst","imageURL":"https://github.com/alexandernst.png","key":"alexandernst","page":null},"Altomy":{"name":"Ahmed Altomy","alias":"Altomy","url":"https://github.com/Altomy","imageURL":"https://github.com/Altomy.png","key":"Altomy","page":null},"bcabanes":{"name":"Benjamin Cabanes","alias":"bcabanes","url":"https://github.com/bcabanes","imageURL":"https://github.com/bcabanes.png","key":"bcabanes","page":null},"BenDMyers":{"name":"Ben Myers","alias":"BenDMyers","url":"https://github.com/BenDMyers","imageURL":"https://github.com/BenDMyers.png","key":"BenDMyers","page":null},"Boulet-":{"name":"Boulet","alias":"Boulet-","url":"https://github.com/Boulet-","imageURL":"https://github.com/Boulet-.png","key":"Boulet-","page":null},"cbebe":{"name":"Charles Ancheta","alias":"cbebe","url":"https://github.com/cbebe","imageURL":"https://github.com/cbebe.png","key":"cbebe","page":null},"clemiee":{"name":"Clemie McCartney","alias":"clemiee","url":"https://github.com/clemiee","imageURL":"https://github.com/clemiee.png","key":"clemiee","page":null},"DharsanB":{"name":"Dharsan B","alias":"DharsanB","url":"https://github.com/DharsanB","imageURL":"https://github.com/DharsanB.png","key":"DharsanB","page":null},"dht":{"name":"dht","alias":"dht","url":"https://github.com/dht","imageURL":"https://github.com/dht.png","key":"dht","page":null},"difranca":{"name":"Diego Fran\xe7a","alias":"difranca","url":"https://github.com/difranca","imageURL":"https://github.com/difranca.png","key":"difranca","page":null},"dpang314":{"name":"dpang314","alias":"dpang314","url":"https://github.com/dpang314","imageURL":"https://github.com/dpang314.png","key":"dpang314","page":null},"emattia":{"name":"emattia","alias":"emattia","url":"https://github.com/emattia","imageURL":"https://github.com/emattia.png","key":"emattia","page":null},"HyunseungLee-Travis":{"name":"Hyunseung Lee","alias":"HyunseungLee-Travis","url":"https://github.com/HyunseungLee-Travis","imageURL":"https://github.com/HyunseungLee-Travis.png","key":"HyunseungLee-Travis","page":null},"JeremyDolle":{"name":"DOLLE","alias":"JeremyDolle","url":"https://github.com/JeremyDolle","imageURL":"https://github.com/JeremyDolle.png","key":"JeremyDolle","page":null},"johnie":{"name":"Johnie Hjelm","alias":"johnie","url":"https://github.com/johnie","imageURL":"https://github.com/johnie.png","key":"johnie","page":null},"jpdriver":{"name":"JP","alias":"jpdriver","url":"https://github.com/jpdriver","imageURL":"https://github.com/jpdriver.png","key":"jpdriver","page":null},"jqshuv":{"name":"Joshua Schmitt","alias":"jqshuv","url":"https://github.com/jqshuv","imageURL":"https://github.com/jqshuv.png","key":"jqshuv","page":null},"kursatsmsek":{"name":"K\xfcr\u015Fat \u015Eim\u015Fek","alias":"kursatsmsek","url":"https://github.com/kursatsmsek","imageURL":"https://github.com/kursatsmsek.png","key":"kursatsmsek","page":null},"matkoch":{"name":"Matthias Koch","alias":"matkoch","url":"https://github.com/matkoch","imageURL":"https://github.com/matkoch.png","key":"matkoch","page":null},"metal-young":{"name":"\u674E\u5C0F\u96E8","alias":"metal-young","url":"https://github.com/metal-young","imageURL":"https://github.com/metal-young.png","key":"metal-young","page":null},"pincman":{"name":"pincman","alias":"pincman","url":"https://github.com/pincman","imageURL":"https://github.com/pincman.png","key":"pincman","page":null},"redcamel":{"name":"Redcamel","alias":"redcamel","url":"https://github.com/redcamel","imageURL":"https://github.com/redcamel.png","key":"redcamel","page":null},"reinvanhaaren":{"name":"Rein van Haaren","alias":"reinvanhaaren","url":"https://github.com/reinvanhaaren","imageURL":"https://github.com/reinvanhaaren.png","key":"reinvanhaaren","page":null},"RudraSen2":{"name":"Rudra Sen","alias":"RudraSen2","url":"https://github.com/RudraSen2","imageURL":"https://github.com/RudraSen2.png","key":"RudraSen2","page":null},"sado0823":{"name":"sado","alias":"sado0823","url":"https://github.com/sado0823","imageURL":"https://github.com/sado0823.png","key":"sado0823","page":null},"saosangmo":{"name":"Dzung Do","alias":"saosangmo","url":"https://github.com/saosangmo","imageURL":"https://github.com/saosangmo.png","key":"saosangmo","page":null},"scopsy":{"name":"Dima Grossman","alias":"scopsy","url":"https://github.com/scopsy","imageURL":"https://github.com/scopsy.png","key":"scopsy","page":null},"SheetJSDev":{"name":"SheetJSDev","alias":"SheetJSDev","url":"https://github.com/SheetJSDev","imageURL":"https://github.com/SheetJSDev.png","key":"SheetJSDev","page":null},"sigwinch28":{"name":"Joe Harrison","alias":"sigwinch28","url":"https://github.com/sigwinch28","imageURL":"https://github.com/sigwinch28.png","key":"sigwinch28","page":null},"Smilefounder":{"name":"Huy Nguyen","alias":"Smilefounder","url":"https://github.com/Smilefounder","imageURL":"https://github.com/Smilefounder.png","key":"Smilefounder","page":null},"sserrata":{"name":"Steven Serrata","alias":"sserrata","url":"https://github.com/sserrata","imageURL":"https://github.com/sserrata.png","key":"sserrata","page":null},"szilarddoro":{"name":"Szil\xe1rd D\xf3r\xf3","alias":"szilarddoro","url":"https://github.com/szilarddoro","imageURL":"https://github.com/szilarddoro.png","key":"szilarddoro","page":null},"vannyle":{"name":"Le Thi Van","alias":"vannyle","url":"https://github.com/vannyle","imageURL":"https://github.com/vannyle.png","key":"vannyle","page":null},"zpao":{"name":"Paul O\u2019Shannessy","alias":"zpao","url":"https://github.com/zpao","imageURL":"https://github.com/zpao.png","key":"zpao","page":null},"BenDz":{"name":"Benjamin Diolez","alias":"BenDz","url":"https://github.com/BenDz","imageURL":"https://github.com/BenDz.png","key":"BenDz","page":null},"charleskorn":{"name":"Charles Korn","alias":"charleskorn","url":"https://github.com/charleskorn","imageURL":"https://github.com/charleskorn.png","key":"charleskorn","page":null},"Designatory":{"name":"Designatory","alias":"Designatory","url":"https://github.com/Designatory","imageURL":"https://github.com/Designatory.png","key":"Designatory","page":null},"ggicci":{"name":"Ggicci","alias":"ggicci","url":"https://github.com/ggicci","imageURL":"https://github.com/ggicci.png","key":"ggicci","page":null},"jrmyw92":{"name":"Jeremy","alias":"jrmyw92","url":"https://github.com/jrmyw92","imageURL":"https://github.com/jrmyw92.png","key":"jrmyw92","page":null},"junjieweb":{"name":"Junjie","alias":"junjieweb","url":"https://github.com/junjieweb","imageURL":"https://github.com/junjieweb.png","key":"junjieweb","page":null},"massoudmaboudi":{"name":"Massoud Maboudi","alias":"massoudmaboudi","url":"https://github.com/massoudmaboudi","imageURL":"https://github.com/massoudmaboudi.png","key":"massoudmaboudi","page":null},"Messiahhh":{"name":"Akara","alias":"Messiahhh","url":"https://github.com/Messiahhh","imageURL":"https://github.com/Messiahhh.png","key":"Messiahhh","page":null},"mhughes2k":{"name":"Michael Hughes","alias":"mhughes2k","url":"https://github.com/mhughes2k","imageURL":"https://github.com/mhughes2k.png","key":"mhughes2k","page":null},"nitya":{"name":"Nitya Narasimhan","alias":"nitya","url":"https://github.com/nitya","imageURL":"https://github.com/nitya.png","key":"nitya","page":null},"pranabdas":{"name":"Pranab Das","alias":"pranabdas","url":"https://github.com/pranabdas","imageURL":"https://github.com/pranabdas.png","key":"pranabdas","page":null},"RuiAAPeres":{"name":"Rui Peres","alias":"RuiAAPeres","url":"https://github.com/RuiAAPeres","imageURL":"https://github.com/RuiAAPeres.png","key":"RuiAAPeres","page":null},"Zamiell":{"name":"James","alias":"Zamiell","url":"https://github.com/Zamiell","imageURL":"https://github.com/Zamiell.png","key":"Zamiell","page":null},"pepopowitz":{"name":"Steven Hicks","alias":"pepopowitz","url":"https://github.com/pepopowitz","imageURL":"https://github.com/pepopowitz.png","key":"pepopowitz","page":null},"RDIL":{"name":"Reece Dunham","alias":"RDIL","url":"https://github.com/RDIL","imageURL":"https://github.com/RDIL.png","key":"RDIL","page":null},"sgromkov":{"name":"Sergey Gromkov","alias":"sgromkov","url":"https://github.com/sgromkov","imageURL":"https://github.com/sgromkov.png","key":"sgromkov","page":null},"aerovulpe":{"name":"Aaron Nwabuoku","alias":"aerovulpe","url":"https://github.com/aerovulpe","imageURL":"https://github.com/aerovulpe.png","key":"aerovulpe","page":null},"AkiraVoid":{"name":"AkiraVoid","alias":"AkiraVoid","url":"https://github.com/AkiraVoid","imageURL":"https://github.com/AkiraVoid.png","key":"AkiraVoid","page":null},"AntonPalmqvist":{"name":"apq","alias":"AntonPalmqvist","url":"https://github.com/AntonPalmqvist","imageURL":"https://github.com/AntonPalmqvist.png","key":"AntonPalmqvist","page":null},"ApsarasX":{"name":"ApsarasX","alias":"ApsarasX","url":"https://github.com/ApsarasX","imageURL":"https://github.com/ApsarasX.png","key":"ApsarasX","page":null},"chelproc":{"name":"chelproc","alias":"chelproc","url":"https://github.com/chelproc","imageURL":"https://github.com/chelproc.png","key":"chelproc","page":null},"chernodub":{"name":"Viktor Chernodub","alias":"chernodub","url":"https://github.com/chernodub","imageURL":"https://github.com/chernodub.png","key":"chernodub","page":null},"CuratorCat":{"name":"curatorcat.pcc.eth","alias":"CuratorCat","url":"https://github.com/CuratorCat","imageURL":"https://github.com/CuratorCat.png","key":"CuratorCat","page":null},"cwen0":{"name":"Cwen Yin","alias":"cwen0","url":"https://github.com/cwen0","imageURL":"https://github.com/cwen0.png","key":"cwen0","page":null},"cxOrz":{"name":"Fusang\u2740","alias":"cxOrz","url":"https://github.com/cxOrz","imageURL":"https://github.com/cxOrz.png","key":"cxOrz","page":null},"deiucanta":{"name":"Andrei Canta","alias":"deiucanta","url":"https://github.com/deiucanta","imageURL":"https://github.com/deiucanta.png","key":"deiucanta","page":null},"deployn":{"name":"deployn","alias":"deployn","url":"https://github.com/deployn","imageURL":"https://github.com/deployn.png","key":"deployn","page":null},"dr-ngubo":{"name":"Chinazaekpere Ngubo","alias":"dr-ngubo","url":"https://github.com/dr-ngubo","imageURL":"https://github.com/dr-ngubo.png","key":"dr-ngubo","page":null},"duanwilliam":{"name":"duanwilliam","alias":"duanwilliam","url":"https://github.com/duanwilliam","imageURL":"https://github.com/duanwilliam.png","key":"duanwilliam","page":null},"elias-pap":{"name":"Elias Papavasileiou","alias":"elias-pap","url":"https://github.com/elias-pap","imageURL":"https://github.com/elias-pap.png","key":"elias-pap","page":null},"imsingh":{"name":"Indermohan Singh","alias":"imsingh","url":"https://github.com/imsingh","imageURL":"https://github.com/imsingh.png","key":"imsingh","page":null},"JohnnyMcWeed":{"name":"JMW","alias":"JohnnyMcWeed","url":"https://github.com/JohnnyMcWeed","imageURL":"https://github.com/JohnnyMcWeed.png","key":"JohnnyMcWeed","page":null},"kaycebasques":{"name":"Kayce Basques","alias":"kaycebasques","url":"https://github.com/kaycebasques","imageURL":"https://github.com/kaycebasques.png","key":"kaycebasques","page":null},"kgolubic":{"name":"kgolubic","alias":"kgolubic","url":"https://github.com/kgolubic","imageURL":"https://github.com/kgolubic.png","key":"kgolubic","page":null},"layerzzzio":{"name":"loic","alias":"layerzzzio","url":"https://github.com/layerzzzio","imageURL":"https://github.com/layerzzzio.png","key":"layerzzzio","page":null},"leedom92":{"name":"Leedom","alias":"leedom92","url":"https://github.com/leedom92","imageURL":"https://github.com/leedom92.png","key":"leedom92","page":null},"LeviticusMB":{"name":"Martin Blom","alias":"LeviticusMB","url":"https://github.com/LeviticusMB","imageURL":"https://github.com/LeviticusMB.png","key":"LeviticusMB","page":null},"lukasbach":{"name":"Lukas Bach","alias":"lukasbach","url":"https://github.com/lukasbach","imageURL":"https://github.com/lukasbach.png","key":"lukasbach","page":null},"mjau-mjau":{"name":"Karl Ward","alias":"mjau-mjau","url":"https://github.com/mjau-mjau","imageURL":"https://github.com/mjau-mjau.png","key":"mjau-mjau","page":null},"mxhdx":{"name":"mehdim","alias":"mxhdx","url":"https://github.com/mxhdx","imageURL":"https://github.com/mxhdx.png","key":"mxhdx","page":null},"nartc":{"name":"Chau Tran","alias":"nartc","url":"https://github.com/nartc","imageURL":"https://github.com/nartc.png","key":"nartc","page":null},"naveensrinivasan":{"name":"Naveen","alias":"naveensrinivasan","url":"https://github.com/naveensrinivasan","imageURL":"https://github.com/naveensrinivasan.png","key":"naveensrinivasan","page":null},"pcordon":{"name":"Pablo Cordon","alias":"pcordon","url":"https://github.com/pcordon","imageURL":"https://github.com/pcordon.png","key":"pcordon","page":null},"phryneas":{"name":"Lenz Weber-Tronic","alias":"phryneas","url":"https://github.com/phryneas","imageURL":"https://github.com/phryneas.png","key":"phryneas","page":null},"Pierre-Gilles":{"name":"Pierre-Gilles Leymarie","alias":"Pierre-Gilles","url":"https://github.com/Pierre-Gilles","imageURL":"https://github.com/Pierre-Gilles.png","key":"Pierre-Gilles","page":null},"redhat123456":{"name":"redhat123456","alias":"redhat123456","url":"https://github.com/redhat123456","imageURL":"https://github.com/redhat123456.png","key":"redhat123456","page":null},"rev4324":{"name":"rev","alias":"rev4324","url":"https://github.com/rev4324","imageURL":"https://github.com/rev4324.png","key":"rev4324","page":null},"sandypockets":{"name":"Zac A","alias":"sandypockets","url":"https://github.com/sandypockets","imageURL":"https://github.com/sandypockets.png","key":"sandypockets","page":null},"shczhen":{"name":"czhen","alias":"shczhen","url":"https://github.com/shczhen","imageURL":"https://github.com/shczhen.png","key":"shczhen","page":null},"sulu5890":{"name":"Evan","alias":"sulu5890","url":"https://github.com/sulu5890","imageURL":"https://github.com/sulu5890.png","key":"sulu5890","page":null},"surendran82":{"name":"surendran82","alias":"surendran82","url":"https://github.com/surendran82","imageURL":"https://github.com/surendran82.png","key":"surendran82","page":null},"svix-ken":{"name":"svix-ken","alias":"svix-ken","url":"https://github.com/svix-ken","imageURL":"https://github.com/svix-ken.png","key":"svix-ken","page":null},"zzzhangqi":{"name":"Qi Zhang","alias":"zzzhangqi","url":"https://github.com/zzzhangqi","imageURL":"https://github.com/zzzhangqi.png","key":"zzzhangqi","page":null},"afonsojramos":{"name":"Afonso Jorge Ramos","alias":"afonsojramos","url":"https://github.com/afonsojramos","imageURL":"https://github.com/afonsojramos.png","key":"afonsojramos","page":null},"alefesta":{"name":"Alessandro Festa","alias":"alefesta","url":"https://github.com/alefesta","imageURL":"https://github.com/alefesta.png","key":"alefesta","page":null},"aloisklink":{"name":"Alois Klink","alias":"aloisklink","url":"https://github.com/aloisklink","imageURL":"https://github.com/aloisklink.png","key":"aloisklink","page":null},"arifszn":{"name":"Ariful Alam","alias":"arifszn","url":"https://github.com/arifszn","imageURL":"https://github.com/arifszn.png","key":"arifszn","page":null},"dragomano":{"name":"Bugo","alias":"dragomano","url":"https://github.com/dragomano","imageURL":"https://github.com/dragomano.png","key":"dragomano","page":null},"felipecrs":{"name":"Felipe Santos","alias":"felipecrs","url":"https://github.com/felipecrs","imageURL":"https://github.com/felipecrs.png","key":"felipecrs","page":null},"hand-dot":{"name":"Kyohei Fukuda","alias":"hand-dot","url":"https://github.com/hand-dot","imageURL":"https://github.com/hand-dot.png","key":"hand-dot","page":null},"heowc":{"name":"WonChul Heo","alias":"heowc","url":"https://github.com/heowc","imageURL":"https://github.com/heowc.png","key":"heowc","page":null},"jadonn":{"name":"Jadon N","alias":"jadonn","url":"https://github.com/jadonn","imageURL":"https://github.com/jadonn.png","key":"jadonn","page":null},"jrvidal":{"name":"Roberto Vidal","alias":"jrvidal","url":"https://github.com/jrvidal","imageURL":"https://github.com/jrvidal.png","key":"jrvidal","page":null},"nathan-contino-mongo":{"name":"nate contino","alias":"nathan-contino-mongo","url":"https://github.com/nathan-contino-mongo","imageURL":"https://github.com/nathan-contino-mongo.png","key":"nathan-contino-mongo","page":null},"odarpi":{"name":"Odarpi","alias":"odarpi","url":"https://github.com/odarpi","imageURL":"https://github.com/odarpi.png","key":"odarpi","page":null},"PatelN123":{"name":"Nayan Patel","alias":"PatelN123","url":"https://github.com/PatelN123","imageURL":"https://github.com/PatelN123.png","key":"PatelN123","page":null},"pkowaluk":{"name":"Pawel Kowaluk","alias":"pkowaluk","url":"https://github.com/pkowaluk","imageURL":"https://github.com/pkowaluk.png","key":"pkowaluk","page":null},"rccttwd":{"name":"Tsz W. TAM","alias":"rccttwd","url":"https://github.com/rccttwd","imageURL":"https://github.com/rccttwd.png","key":"rccttwd","page":null},"samgutentag":{"name":"Sam Gutentag","alias":"samgutentag","url":"https://github.com/samgutentag","imageURL":"https://github.com/samgutentag.png","key":"samgutentag","page":null},"seladb":{"name":"seladb","alias":"seladb","url":"https://github.com/seladb","imageURL":"https://github.com/seladb.png","key":"seladb","page":null},"taejs":{"name":"tae","alias":"taejs","url":"https://github.com/taejs","imageURL":"https://github.com/taejs.png","key":"taejs","page":null},"vedantmgoyal2009":{"name":"Begula","alias":"vedantmgoyal2009","url":"https://github.com/vedantmgoyal2009","imageURL":"https://github.com/vedantmgoyal2009.png","key":"vedantmgoyal2009","page":null},"yorkie":{"name":"Yorkie Liu","alias":"yorkie","url":"https://github.com/yorkie","imageURL":"https://github.com/yorkie.png","key":"yorkie","page":null},"anicholls":{"name":"Alex Nicholls","alias":"anicholls","url":"https://github.com/anicholls","imageURL":"https://github.com/anicholls.png","key":"anicholls","page":null},"dmitryvinn":{"name":"Dmitry Vinnik","alias":"dmitryvinn","url":"https://github.com/dmitryvinn","imageURL":"https://github.com/dmitryvinn.png","key":"dmitryvinn","page":null},"dstotijn":{"name":"David Stotijn","alias":"dstotijn","url":"https://github.com/dstotijn","imageURL":"https://github.com/dstotijn.png","key":"dstotijn","page":null},"vaibhavshn":{"name":"Vaibhav Shinde","alias":"vaibhavshn","url":"https://github.com/vaibhavshn","imageURL":"https://github.com/vaibhavshn.png","key":"vaibhavshn","page":null},"apidev234":{"name":"Gaurish","alias":"apidev234","url":"https://github.com/apidev234","imageURL":"https://github.com/apidev234.png","key":"apidev234","page":null},"artemkovalyov":{"name":"Artem Kovalov","alias":"artemkovalyov","url":"https://github.com/artemkovalyov","imageURL":"https://github.com/artemkovalyov.png","key":"artemkovalyov","page":null},"BigDataWriter":{"name":"BigDataWriter","alias":"BigDataWriter","url":"https://github.com/BigDataWriter","imageURL":"https://github.com/BigDataWriter.png","key":"BigDataWriter","page":null},"cdemonchy-pro":{"name":"Clement Demonchy","alias":"cdemonchy-pro","url":"https://github.com/cdemonchy-pro","imageURL":"https://github.com/cdemonchy-pro.png","key":"cdemonchy-pro","page":null},"CookieJarApps":{"name":"CookieJarApps","alias":"CookieJarApps","url":"https://github.com/CookieJarApps","imageURL":"https://github.com/CookieJarApps.png","key":"CookieJarApps","page":null},"dmitryvinn-fb":{"name":"Dmitry Vinnik | Meta","alias":"dmitryvinn-fb","url":"https://github.com/dmitryvinn-fb","imageURL":"https://github.com/dmitryvinn-fb.png","key":"dmitryvinn-fb","page":null},"ebarojas":{"name":"Everardo J. Barojas M.","alias":"ebarojas","url":"https://github.com/ebarojas","imageURL":"https://github.com/ebarojas.png","key":"ebarojas","page":null},"erickzhao":{"name":"Erick Zhao","alias":"erickzhao","url":"https://github.com/erickzhao","imageURL":"https://github.com/erickzhao.png","key":"erickzhao","page":null},"kalevski":{"name":"Daniel Kalevski","alias":"kalevski","url":"https://github.com/kalevski","imageURL":"https://github.com/kalevski.png","key":"kalevski","page":null},"kgajera":{"name":"Kishan Gajera","alias":"kgajera","url":"https://github.com/kgajera","imageURL":"https://github.com/kgajera.png","key":"kgajera","page":null},"koistya":{"name":"Konstantin Tarkus","alias":"koistya","url":"https://github.com/koistya","imageURL":"https://github.com/koistya.png","key":"koistya","page":null},"milesj":{"name":"Miles Johnson","alias":"milesj","url":"https://github.com/milesj","imageURL":"https://github.com/milesj.png","key":"milesj","page":null},"mrbrunelli":{"name":"Matheus Ricardo Brunelli","alias":"mrbrunelli","url":"https://github.com/mrbrunelli","imageURL":"https://github.com/mrbrunelli.png","key":"mrbrunelli","page":null},"NaseelNiyas":{"name":"Naseel Niyas","alias":"NaseelNiyas","url":"https://github.com/NaseelNiyas","imageURL":"https://github.com/NaseelNiyas.png","key":"NaseelNiyas","page":null},"nick-verida":{"name":"nick-verida","alias":"nick-verida","url":"https://github.com/nick-verida","imageURL":"https://github.com/nick-verida.png","key":"nick-verida","page":null},"nschonni":{"name":"Nick Schonning","alias":"nschonni","url":"https://github.com/nschonni","imageURL":"https://github.com/nschonni.png","key":"nschonni","page":null},"redhoyasa":{"name":"Muhammad Redho Ayassa","alias":"redhoyasa","url":"https://github.com/redhoyasa","imageURL":"https://github.com/redhoyasa.png","key":"redhoyasa","page":null},"Ruben-Arushanyan":{"name":"Ruben Arushanyan","alias":"Ruben-Arushanyan","url":"https://github.com/Ruben-Arushanyan","imageURL":"https://github.com/Ruben-Arushanyan.png","key":"Ruben-Arushanyan","page":null},"seyoon20087":{"name":"seyoon20087","alias":"seyoon20087","url":"https://github.com/seyoon20087","imageURL":"https://github.com/seyoon20087.png","key":"seyoon20087","page":null},"tamalweb":{"name":"Tamal Web","alias":"tamalweb","url":"https://github.com/tamalweb","imageURL":"https://github.com/tamalweb.png","key":"tamalweb","page":null},"thedanielhanke":{"name":"Daniel Hanke","alias":"thedanielhanke","url":"https://github.com/thedanielhanke","imageURL":"https://github.com/thedanielhanke.png","key":"thedanielhanke","page":null},"toto6038":{"name":"toto6038","alias":"toto6038","url":"https://github.com/toto6038","imageURL":"https://github.com/toto6038.png","key":"toto6038","page":null},"vidarc":{"name":"Matthew Ailes","alias":"vidarc","url":"https://github.com/vidarc","imageURL":"https://github.com/vidarc.png","key":"vidarc","page":null},"winterlood":{"name":"\uC774\uC815\uD658","alias":"winterlood","url":"https://github.com/winterlood","imageURL":"https://github.com/winterlood.png","key":"winterlood","page":null},"abahmed":{"name":"Abdelrahman Ahmed","alias":"abahmed","url":"https://github.com/abahmed","imageURL":"https://github.com/abahmed.png","key":"abahmed","page":null},"ajrice6713":{"name":"AJ Rice","alias":"ajrice6713","url":"https://github.com/ajrice6713","imageURL":"https://github.com/ajrice6713.png","key":"ajrice6713","page":null},"alexgrigoras":{"name":"Alexandru Grigoras","alias":"alexgrigoras","url":"https://github.com/alexgrigoras","imageURL":"https://github.com/alexgrigoras.png","key":"alexgrigoras","page":null},"alias-mac":{"name":"Filipe Guerra","alias":"alias-mac","url":"https://github.com/alias-mac","imageURL":"https://github.com/alias-mac.png","key":"alias-mac","page":null},"amir2mi":{"name":"Amir M. Mohamadi","alias":"amir2mi","url":"https://github.com/amir2mi","imageURL":"https://github.com/amir2mi.png","key":"amir2mi","page":null},"antmcc49":{"name":"Anthony McCaigue","alias":"antmcc49","url":"https://github.com/antmcc49","imageURL":"https://github.com/antmcc49.png","key":"antmcc49","page":null},"brendannee":{"name":"Brendan Nee","alias":"brendannee","url":"https://github.com/brendannee","imageURL":"https://github.com/brendannee.png","key":"brendannee","page":null},"cerkiewny":{"name":"Devtato","alias":"cerkiewny","url":"https://github.com/cerkiewny","imageURL":"https://github.com/cerkiewny.png","key":"cerkiewny","page":null},"davidebianchi":{"name":"Davide Bianchi","alias":"davidebianchi","url":"https://github.com/davidebianchi","imageURL":"https://github.com/davidebianchi.png","key":"davidebianchi","page":null},"edouardb":{"name":"Edouard Bonlieu","alias":"edouardb","url":"https://github.com/edouardb","imageURL":"https://github.com/edouardb.png","key":"edouardb","page":null},"FeodorFitsner":{"name":"Feodor Fitsner","alias":"FeodorFitsner","url":"https://github.com/FeodorFitsner","imageURL":"https://github.com/FeodorFitsner.png","key":"FeodorFitsner","page":null},"HiChen404":{"name":"Chen","alias":"HiChen404","url":"https://github.com/HiChen404","imageURL":"https://github.com/HiChen404.png","key":"HiChen404","page":null},"josephriosIO":{"name":"Joseph","alias":"josephriosIO","url":"https://github.com/josephriosIO","imageURL":"https://github.com/josephriosIO.png","key":"josephriosIO","page":null},"jwitz":{"name":"Jake Witz","alias":"jwitz","url":"https://github.com/jwitz","imageURL":"https://github.com/jwitz.png","key":"jwitz","page":null},"kaustubhk24":{"name":"Kaustubh Kulkarni","alias":"kaustubhk24","url":"https://github.com/kaustubhk24","imageURL":"https://github.com/kaustubhk24.png","key":"kaustubhk24","page":null},"kuizuo":{"name":"kuizuo","alias":"kuizuo","url":"https://github.com/kuizuo","imageURL":"https://github.com/kuizuo.png","key":"kuizuo","page":null},"lmpham1":{"name":"Minh Pham","alias":"lmpham1","url":"https://github.com/lmpham1","imageURL":"https://github.com/lmpham1.png","key":"lmpham1","page":null},"ltm":{"name":"Lars Mikkelsen","alias":"ltm","url":"https://github.com/ltm","imageURL":"https://github.com/ltm.png","key":"ltm","page":null},"megasanjay":{"name":"Sanjay Soundarajan","alias":"megasanjay","url":"https://github.com/megasanjay","imageURL":"https://github.com/megasanjay.png","key":"megasanjay","page":null},"MorookaKotaro":{"name":"Morooka Kotaro","alias":"MorookaKotaro","url":"https://github.com/MorookaKotaro","imageURL":"https://github.com/MorookaKotaro.png","key":"MorookaKotaro","page":null},"noomorph":{"name":"Yaroslav Serhieiev","alias":"noomorph","url":"https://github.com/noomorph","imageURL":"https://github.com/noomorph.png","key":"noomorph","page":null},"omeraplak":{"name":"\xd6mer Faruk APLAK","alias":"omeraplak","url":"https://github.com/omeraplak","imageURL":"https://github.com/omeraplak.png","key":"omeraplak","page":null},"rishi-raj-jain":{"name":"Rishi Raj Jain","alias":"rishi-raj-jain","url":"https://github.com/rishi-raj-jain","imageURL":"https://github.com/rishi-raj-jain.png","key":"rishi-raj-jain","page":null},"roydukkey":{"name":"roydukkey","alias":"roydukkey","url":"https://github.com/roydukkey","imageURL":"https://github.com/roydukkey.png","key":"roydukkey","page":null},"ruanqizhen":{"name":"ruanqizhen","alias":"ruanqizhen","url":"https://github.com/ruanqizhen","imageURL":"https://github.com/ruanqizhen.png","key":"ruanqizhen","page":null},"sgenoud":{"name":"sgenoud","alias":"sgenoud","url":"https://github.com/sgenoud","imageURL":"https://github.com/sgenoud.png","key":"sgenoud","page":null},"tapanchudasama":{"name":"Tapan Chudasama","alias":"tapanchudasama","url":"https://github.com/tapanchudasama","imageURL":"https://github.com/tapanchudasama.png","key":"tapanchudasama","page":null},"vandreleal":{"name":"Vandr\xe9 Leal","alias":"vandreleal","url":"https://github.com/vandreleal","imageURL":"https://github.com/vandreleal.png","key":"vandreleal","page":null},"wood3n":{"name":"wood3n","alias":"wood3n","url":"https://github.com/wood3n","imageURL":"https://github.com/wood3n.png","key":"wood3n","page":null},"christopherklint97":{"name":"Christopher Klint","alias":"christopherklint97","url":"https://github.com/christopherklint97","imageURL":"https://github.com/christopherklint97.png","key":"christopherklint97","page":null},"cmpadden":{"name":"colton","alias":"cmpadden","url":"https://github.com/cmpadden","imageURL":"https://github.com/cmpadden.png","key":"cmpadden","page":null},"Drylozu":{"name":"Drylozu","alias":"Drylozu","url":"https://github.com/Drylozu","imageURL":"https://github.com/Drylozu.png","key":"Drylozu","page":null},"favna":{"name":"Jeroen Claassens","alias":"favna","url":"https://github.com/favna","imageURL":"https://github.com/favna.png","key":"favna","page":null},"HarshCasper":{"name":"Harsh Mishra","alias":"HarshCasper","url":"https://github.com/HarshCasper","imageURL":"https://github.com/HarshCasper.png","key":"HarshCasper","page":null},"himanshu007-creator":{"name":"Himanshu","alias":"himanshu007-creator","url":"https://github.com/himanshu007-creator","imageURL":"https://github.com/himanshu007-creator.png","key":"himanshu007-creator","page":null},"merceyz":{"name":"Kristoffer K.","alias":"merceyz","url":"https://github.com/merceyz","imageURL":"https://github.com/merceyz.png","key":"merceyz","page":null},"notzheng":{"name":"\u4E0D\u90D1","alias":"notzheng","url":"https://github.com/notzheng","imageURL":"https://github.com/notzheng.png","key":"notzheng","page":null},"wewoor":{"name":"Ziv","alias":"wewoor","url":"https://github.com/wewoor","imageURL":"https://github.com/wewoor.png","key":"wewoor","page":null},"withshubh":{"name":"Shubhendra Singh Chauhan","alias":"withshubh","url":"https://github.com/withshubh","imageURL":"https://github.com/withshubh.png","key":"withshubh","page":null},"wowtvds":{"name":"Wout Vandesompele","alias":"wowtvds","url":"https://github.com/wowtvds","imageURL":"https://github.com/wowtvds.png","key":"wowtvds","page":null},"afshinm":{"name":"Afshin Mehrabani","alias":"afshinm","url":"https://github.com/afshinm","imageURL":"https://github.com/afshinm.png","key":"afshinm","page":null},"agrawal-rohit":{"name":"Rohit Agrawal","alias":"agrawal-rohit","url":"https://github.com/agrawal-rohit","imageURL":"https://github.com/agrawal-rohit.png","key":"agrawal-rohit","page":null},"cchaudier":{"name":"Christophe Chaudier","alias":"cchaudier","url":"https://github.com/cchaudier","imageURL":"https://github.com/cchaudier.png","key":"cchaudier","page":null},"chimailo":{"name":"chima ilo","alias":"chimailo","url":"https://github.com/chimailo","imageURL":"https://github.com/chimailo.png","key":"chimailo","page":null},"dexbiobot":{"name":"Shoaib Sajid","alias":"dexbiobot","url":"https://github.com/dexbiobot","imageURL":"https://github.com/dexbiobot.png","key":"dexbiobot","page":null},"dsmmcken":{"name":"Don","alias":"dsmmcken","url":"https://github.com/dsmmcken","imageURL":"https://github.com/dsmmcken.png","key":"dsmmcken","page":null},"fishmandev":{"name":"Dmitriy Fishman","alias":"fishmandev","url":"https://github.com/fishmandev","imageURL":"https://github.com/fishmandev.png","key":"fishmandev","page":null},"fsmaia":{"name":"Fernando Maia","alias":"fsmaia","url":"https://github.com/fsmaia","imageURL":"https://github.com/fsmaia.png","key":"fsmaia","page":null},"hbulens":{"name":"Hendrik Bulens","alias":"hbulens","url":"https://github.com/hbulens","imageURL":"https://github.com/hbulens.png","key":"hbulens","page":null},"HemantSachdeva":{"name":"Hemant Sachdeva","alias":"HemantSachdeva","url":"https://github.com/HemantSachdeva","imageURL":"https://github.com/HemantSachdeva.png","key":"HemantSachdeva","page":null},"JararvisQ":{"name":"Jarar","alias":"JararvisQ","url":"https://github.com/JararvisQ","imageURL":"https://github.com/JararvisQ.png","key":"JararvisQ","page":null},"jeffski":{"name":"Jeff Shillitto","alias":"jeffski","url":"https://github.com/jeffski","imageURL":"https://github.com/jeffski.png","key":"jeffski","page":null},"juffalow":{"name":"Matej Jellus","alias":"juffalow","url":"https://github.com/juffalow","imageURL":"https://github.com/juffalow.png","key":"juffalow","page":null},"juzhiyuan":{"name":"\u741A\u81F4\u8FDC","alias":"juzhiyuan","url":"https://github.com/juzhiyuan","imageURL":"https://github.com/juzhiyuan.png","key":"juzhiyuan","page":null},"KonstHardy":{"name":"Konstantin Popov","alias":"KonstHardy","url":"https://github.com/KonstHardy","imageURL":"https://github.com/KonstHardy.png","key":"KonstHardy","page":null},"ludofischer":{"name":"Ludovico Fischer","alias":"ludofischer","url":"https://github.com/ludofischer","imageURL":"https://github.com/ludofischer.png","key":"ludofischer","page":null},"Martinsos":{"name":"Martin \u0160o\u0161i\u0107","alias":"Martinsos","url":"https://github.com/Martinsos","imageURL":"https://github.com/Martinsos.png","key":"Martinsos","page":null},"matthijsgroen":{"name":"Matthijs Groen","alias":"matthijsgroen","url":"https://github.com/matthijsgroen","imageURL":"https://github.com/matthijsgroen.png","key":"matthijsgroen","page":null},"MisterFISHUP":{"name":"MisterFISHUP","alias":"MisterFISHUP","url":"https://github.com/MisterFISHUP","imageURL":"https://github.com/MisterFISHUP.png","key":"MisterFISHUP","page":null},"molly":{"name":"Molly White","alias":"molly","url":"https://github.com/molly","imageURL":"https://github.com/molly.png","key":"molly","page":null},"oriooctopus":{"name":"Oliver Ullman","alias":"oriooctopus","url":"https://github.com/oriooctopus","imageURL":"https://github.com/oriooctopus.png","key":"oriooctopus","page":null},"pal-sig":{"name":"pal-sig","alias":"pal-sig","url":"https://github.com/pal-sig","imageURL":"https://github.com/pal-sig.png","key":"pal-sig","page":null},"Patitotective":{"name":"Patitotective","alias":"Patitotective","url":"https://github.com/Patitotective","imageURL":"https://github.com/Patitotective.png","key":"Patitotective","page":null},"patrikmasiar":{"name":"Patrik M\xe4siar","alias":"patrikmasiar","url":"https://github.com/patrikmasiar","imageURL":"https://github.com/patrikmasiar.png","key":"patrikmasiar","page":null},"pbiggar":{"name":"Paul Biggar","alias":"pbiggar","url":"https://github.com/pbiggar","imageURL":"https://github.com/pbiggar.png","key":"pbiggar","page":null},"polarathene":{"name":"Brennan Kinney","alias":"polarathene","url":"https://github.com/polarathene","imageURL":"https://github.com/polarathene.png","key":"polarathene","page":null},"robinmetral":{"name":"Robin M\xe9tral","alias":"robinmetral","url":"https://github.com/robinmetral","imageURL":"https://github.com/robinmetral.png","key":"robinmetral","page":null},"ronnyroeller":{"name":"Ronny Roeller","alias":"ronnyroeller","url":"https://github.com/ronnyroeller","imageURL":"https://github.com/ronnyroeller.png","key":"ronnyroeller","page":null},"rootwork":{"name":"Ivan Boothe","alias":"rootwork","url":"https://github.com/rootwork","imageURL":"https://github.com/rootwork.png","key":"rootwork","page":null},"rsapkf":{"name":"Rey","alias":"rsapkf","url":"https://github.com/rsapkf","imageURL":"https://github.com/rsapkf.png","key":"rsapkf","page":null},"semoal":{"name":"Sergio Moreno","alias":"semoal","url":"https://github.com/semoal","imageURL":"https://github.com/semoal.png","key":"semoal","page":null},"shafy":{"name":"Can Olcer","alias":"shafy","url":"https://github.com/shafy","imageURL":"https://github.com/shafy.png","key":"shafy","page":null},"sivapalan":{"name":"Varun Sivapalan","alias":"sivapalan","url":"https://github.com/sivapalan","imageURL":"https://github.com/sivapalan.png","key":"sivapalan","page":null},"skoech":{"name":"Sharon Koech","alias":"skoech","url":"https://github.com/skoech","imageURL":"https://github.com/skoech.png","key":"skoech","page":null},"sohamsshah":{"name":"Soham Shah","alias":"sohamsshah","url":"https://github.com/sohamsshah","imageURL":"https://github.com/sohamsshah.png","key":"sohamsshah","page":null},"spyke01":{"name":"Paden Clayton","alias":"spyke01","url":"https://github.com/spyke01","imageURL":"https://github.com/spyke01.png","key":"spyke01","page":null},"StanKocken":{"name":"Stan Kocken","alias":"StanKocken","url":"https://github.com/StanKocken","imageURL":"https://github.com/StanKocken.png","key":"StanKocken","page":null},"swalahamani":{"name":"Swalah Amani","alias":"swalahamani","url":"https://github.com/swalahamani","imageURL":"https://github.com/swalahamani.png","key":"swalahamani","page":null},"swapnilmmane":{"name":"Swapnil M Mane","alias":"swapnilmmane","url":"https://github.com/swapnilmmane","imageURL":"https://github.com/swapnilmmane.png","key":"swapnilmmane","page":null},"wpyoga":{"name":"William Poetra Yoga","alias":"wpyoga","url":"https://github.com/wpyoga","imageURL":"https://github.com/wpyoga.png","key":"wpyoga","page":null},"AviVahl":{"name":"Avi Vahl","alias":"AviVahl","url":"https://github.com/AviVahl","imageURL":"https://github.com/AviVahl.png","key":"AviVahl","page":null},"dominikmeyersap":{"name":"Dominik Meyer","alias":"dominikmeyersap","url":"https://github.com/dominikmeyersap","imageURL":"https://github.com/dominikmeyersap.png","key":"dominikmeyersap","page":null},"gabrielfalcao":{"name":"Gabriel Falc\xe3o","alias":"gabrielfalcao","url":"https://github.com/gabrielfalcao","imageURL":"https://github.com/gabrielfalcao.png","key":"gabrielfalcao","page":null},"oscard0m":{"name":"Oscar Dominguez","alias":"oscard0m","url":"https://github.com/oscard0m","imageURL":"https://github.com/oscard0m.png","key":"oscard0m","page":null},"robbieaverill":{"name":"Robbie Averill","alias":"robbieaverill","url":"https://github.com/robbieaverill","imageURL":"https://github.com/robbieaverill.png","key":"robbieaverill","page":null},"utajum":{"name":"Vladimir Tasic","alias":"utajum","url":"https://github.com/utajum","imageURL":"https://github.com/utajum.png","key":"utajum","page":null},"wingclover":{"name":"Ying Wang","alias":"wingclover","url":"https://github.com/wingclover","imageURL":"https://github.com/wingclover.png","key":"wingclover","page":null},"ataft":{"name":"Andrew Taft","alias":"ataft","url":"https://github.com/ataft","imageURL":"https://github.com/ataft.png","key":"ataft","page":null},"canercanbaz":{"name":"Caner Canbaz","alias":"canercanbaz","url":"https://github.com/canercanbaz","imageURL":"https://github.com/canercanbaz.png","key":"canercanbaz","page":null},"DimiMikadze":{"name":"Dimi Mikadze","alias":"DimiMikadze","url":"https://github.com/DimiMikadze","imageURL":"https://github.com/DimiMikadze.png","key":"DimiMikadze","page":null},"ipavlic":{"name":"Ilija Pavlic","alias":"ipavlic","url":"https://github.com/ipavlic","imageURL":"https://github.com/ipavlic.png","key":"ipavlic","page":null},"nlfurniss":{"name":"Nathaniel Furniss","alias":"nlfurniss","url":"https://github.com/nlfurniss","imageURL":"https://github.com/nlfurniss.png","key":"nlfurniss","page":null},"philipp985":{"name":"philipp985","alias":"philipp985","url":"https://github.com/philipp985","imageURL":"https://github.com/philipp985.png","key":"philipp985","page":null},"thanasis00":{"name":"Thanasis Katsadas","alias":"thanasis00","url":"https://github.com/thanasis00","imageURL":"https://github.com/thanasis00.png","key":"thanasis00","page":null},"zxuqian":{"name":"Xuqian","alias":"zxuqian","url":"https://github.com/zxuqian","imageURL":"https://github.com/zxuqian.png","key":"zxuqian","page":null},"akajla09":{"name":"Aditya Kajla","alias":"akajla09","url":"https://github.com/akajla09","imageURL":"https://github.com/akajla09.png","key":"akajla09","page":null},"Andrewnt219":{"name":"Andrew Nguyen","alias":"Andrewnt219","url":"https://github.com/Andrewnt219","imageURL":"https://github.com/Andrewnt219.png","key":"Andrewnt219","page":null},"BattleOfPlassey":{"name":"Palash Shrivastava","alias":"BattleOfPlassey","url":"https://github.com/BattleOfPlassey","imageURL":"https://github.com/BattleOfPlassey.png","key":"BattleOfPlassey","page":null},"bmiddha":{"name":"Bharat Middha","alias":"bmiddha","url":"https://github.com/bmiddha","imageURL":"https://github.com/bmiddha.png","key":"bmiddha","page":null},"caleeli":{"name":"David Callizaya","alias":"caleeli","url":"https://github.com/caleeli","imageURL":"https://github.com/caleeli.png","key":"caleeli","page":null},"ChrisChinchilla":{"name":"Chris Chinchilla","alias":"ChrisChinchilla","url":"https://github.com/ChrisChinchilla","imageURL":"https://github.com/ChrisChinchilla.png","key":"ChrisChinchilla","page":null},"djamaile":{"name":"djamaile","alias":"djamaile","url":"https://github.com/djamaile","imageURL":"https://github.com/djamaile.png","key":"djamaile","page":null},"dr5hn":{"name":"Darshan Gada","alias":"dr5hn","url":"https://github.com/dr5hn","imageURL":"https://github.com/dr5hn.png","key":"dr5hn","page":null},"EkaterinaMozheiko":{"name":"Ekaterina Mozheiko","alias":"EkaterinaMozheiko","url":"https://github.com/EkaterinaMozheiko","imageURL":"https://github.com/EkaterinaMozheiko.png","key":"EkaterinaMozheiko","page":null},"gtnardy":{"name":"Gabriel T. Nardy","alias":"gtnardy","url":"https://github.com/gtnardy","imageURL":"https://github.com/gtnardy.png","key":"gtnardy","page":null},"headline-design":{"name":"headline-design","alias":"headline-design","url":"https://github.com/headline-design","imageURL":"https://github.com/headline-design.png","key":"headline-design","page":null},"hughlilly":{"name":"Hugh Lilly","alias":"hughlilly","url":"https://github.com/hughlilly","imageURL":"https://github.com/hughlilly.png","key":"hughlilly","page":null},"ivarconr":{"name":"Ivar Conradi \xd8sthus","alias":"ivarconr","url":"https://github.com/ivarconr","imageURL":"https://github.com/ivarconr.png","key":"ivarconr","page":null},"jasonbosco":{"name":"Jason Bosco","alias":"jasonbosco","url":"https://github.com/jasonbosco","imageURL":"https://github.com/jasonbosco.png","key":"jasonbosco","page":null},"jkhaui":{"name":"Jordan Lee","alias":"jkhaui","url":"https://github.com/jkhaui","imageURL":"https://github.com/jkhaui.png","key":"jkhaui","page":null},"kingo55":{"name":"Robert Kingston","alias":"kingo55","url":"https://github.com/kingo55","imageURL":"https://github.com/kingo55.png","key":"kingo55","page":null},"KyrietS":{"name":"Kyriet","alias":"KyrietS","url":"https://github.com/KyrietS","imageURL":"https://github.com/KyrietS.png","key":"KyrietS","page":null},"MrTechHunter":{"name":"Mahdi Hamldar","alias":"MrTechHunter","url":"https://github.com/MrTechHunter","imageURL":"https://github.com/MrTechHunter.png","key":"MrTechHunter","page":null},"ohkimur":{"name":"Daniel Costrasel","alias":"ohkimur","url":"https://github.com/ohkimur","imageURL":"https://github.com/ohkimur.png","key":"ohkimur","page":null},"printf-ana":{"name":"Ana Carolina","alias":"printf-ana","url":"https://github.com/printf-ana","imageURL":"https://github.com/printf-ana.png","key":"printf-ana","page":null},"Shrugsy":{"name":"Shrugsy","alias":"Shrugsy","url":"https://github.com/Shrugsy","imageURL":"https://github.com/Shrugsy.png","key":"Shrugsy","page":null},"sw-yx":{"name":"swyx","alias":"sw-yx","url":"https://github.com/sw-yx","imageURL":"https://github.com/sw-yx.png","key":"sw-yx","page":null},"vinckr":{"name":"Vincent","alias":"vinckr","url":"https://github.com/vinckr","imageURL":"https://github.com/vinckr.png","key":"vinckr","page":null},"Whirl21":{"name":"Whirl","alias":"Whirl21","url":"https://github.com/Whirl21","imageURL":"https://github.com/Whirl21.png","key":"Whirl21","page":null},"3alisaki":{"name":"Ali Saki","alias":"3alisaki","url":"https://github.com/3alisaki","imageURL":"https://github.com/3alisaki.png","key":"3alisaki","page":null},"antonym":{"name":"Antony Messerli","alias":"antonym","url":"https://github.com/antonym","imageURL":"https://github.com/antonym.png","key":"antonym","page":null},"farshidinanloo":{"name":"farshid","alias":"farshidinanloo","url":"https://github.com/farshidinanloo","imageURL":"https://github.com/farshidinanloo.png","key":"farshidinanloo","page":null},"oscarlorentzon":{"name":"Oscar Lorentzon","alias":"oscarlorentzon","url":"https://github.com/oscarlorentzon","imageURL":"https://github.com/oscarlorentzon.png","key":"oscarlorentzon","page":null},"rohit-gohri":{"name":"Rohit Gohri","alias":"rohit-gohri","url":"https://github.com/rohit-gohri","imageURL":"https://github.com/rohit-gohri.png","key":"rohit-gohri","page":null},"dbseal":{"name":"David Seal","alias":"dbseal","url":"https://github.com/dbseal","imageURL":"https://github.com/dbseal.png","key":"dbseal","page":null},"deepakprabhakara":{"name":"Deepak Prabhakara","alias":"deepakprabhakara","url":"https://github.com/deepakprabhakara","imageURL":"https://github.com/deepakprabhakara.png","key":"deepakprabhakara","page":null},"faloi":{"name":"Federico Aloi","alias":"faloi","url":"https://github.com/faloi","imageURL":"https://github.com/faloi.png","key":"faloi","page":null},"fouad":{"name":"Fouad Matin","alias":"fouad","url":"https://github.com/fouad","imageURL":"https://github.com/fouad.png","key":"fouad","page":null},"gulien":{"name":"Julien Neuhart","alias":"gulien","url":"https://github.com/gulien","imageURL":"https://github.com/gulien.png","key":"gulien","page":null},"hamzahamidi":{"name":"Hamza Hamidi","alias":"hamzahamidi","url":"https://github.com/hamzahamidi","imageURL":"https://github.com/hamzahamidi.png","key":"hamzahamidi","page":null},"HaochenQ":{"name":"HaochenQ","alias":"HaochenQ","url":"https://github.com/HaochenQ","imageURL":"https://github.com/HaochenQ.png","key":"HaochenQ","page":null},"incendial":{"name":"Dmitry Zhifarsky","alias":"incendial","url":"https://github.com/incendial","imageURL":"https://github.com/incendial.png","key":"incendial","page":null},"isaac-philip":{"name":"Isaac Philip","alias":"isaac-philip","url":"https://github.com/isaac-philip","imageURL":"https://github.com/isaac-philip.png","key":"isaac-philip","page":null},"jansivans":{"name":"Yan Ivan Evdokimov","alias":"jansivans","url":"https://github.com/jansivans","imageURL":"https://github.com/jansivans.png","key":"jansivans","page":null},"JonnyBurger":{"name":"Jonny Burger","alias":"JonnyBurger","url":"https://github.com/JonnyBurger","imageURL":"https://github.com/JonnyBurger.png","key":"JonnyBurger","page":null},"metmarkosaric":{"name":"Marko Saric","alias":"metmarkosaric","url":"https://github.com/metmarkosaric","imageURL":"https://github.com/metmarkosaric.png","key":"metmarkosaric","page":null},"michalsanger":{"name":"Michal S\xe4nger","alias":"michalsanger","url":"https://github.com/michalsanger","imageURL":"https://github.com/michalsanger.png","key":"michalsanger","page":null},"neaped":{"name":"Garry","alias":"neaped","url":"https://github.com/neaped","imageURL":"https://github.com/neaped.png","key":"neaped","page":null},"sparanoid":{"name":"Tunghsiao Liu","alias":"sparanoid","url":"https://github.com/sparanoid","imageURL":"https://github.com/sparanoid.png","key":"sparanoid","page":null},"wan-nyan-wan":{"name":"wan-nyan-wan","alias":"wan-nyan-wan","url":"https://github.com/wan-nyan-wan","imageURL":"https://github.com/wan-nyan-wan.png","key":"wan-nyan-wan","page":null},"antonvasilev52":{"name":"antonvasilev52","alias":"antonvasilev52","url":"https://github.com/antonvasilev52","imageURL":"https://github.com/antonvasilev52.png","key":"antonvasilev52","page":null},"arnaudjnn":{"name":"Arnaud Jeannin","alias":"arnaudjnn","url":"https://github.com/arnaudjnn","imageURL":"https://github.com/arnaudjnn.png","key":"arnaudjnn","page":null},"cmfcmf":{"name":"Christian Flach","alias":"cmfcmf","url":"https://github.com/cmfcmf","imageURL":"https://github.com/cmfcmf.png","key":"cmfcmf","page":null},"covalentbond":{"name":"Arijit Kundu","alias":"covalentbond","url":"https://github.com/covalentbond","imageURL":"https://github.com/covalentbond.png","key":"covalentbond","page":null},"davidzhao":{"name":"David Zhao","alias":"davidzhao","url":"https://github.com/davidzhao","imageURL":"https://github.com/davidzhao.png","key":"davidzhao","page":null},"dbrrt":{"name":"David Barrat","alias":"dbrrt","url":"https://github.com/dbrrt","imageURL":"https://github.com/dbrrt.png","key":"dbrrt","page":null},"dgeb":{"name":"Dan Gebhardt","alias":"dgeb","url":"https://github.com/dgeb","imageURL":"https://github.com/dgeb.png","key":"dgeb","page":null},"fmassot":{"name":"Fran\xe7ois Massot","alias":"fmassot","url":"https://github.com/fmassot","imageURL":"https://github.com/fmassot.png","key":"fmassot","page":null},"lennartkoopmann":{"name":"Lennart Koopmann","alias":"lennartkoopmann","url":"https://github.com/lennartkoopmann","imageURL":"https://github.com/lennartkoopmann.png","key":"lennartkoopmann","page":null},"marssaljr":{"name":"Mar\xe7al Junior","alias":"marssaljr","url":"https://github.com/marssaljr","imageURL":"https://github.com/marssaljr.png","key":"marssaljr","page":null},"mweststrate":{"name":"Michel Weststrate","alias":"mweststrate","url":"https://github.com/mweststrate","imageURL":"https://github.com/mweststrate.png","key":"mweststrate","page":null},"NazarStreletskyi":{"name":"Nazar","alias":"NazarStreletskyi","url":"https://github.com/NazarStreletskyi","imageURL":"https://github.com/NazarStreletskyi.png","key":"NazarStreletskyi","page":null},"nirtamir2":{"name":"nirtamir2","alias":"nirtamir2","url":"https://github.com/nirtamir2","imageURL":"https://github.com/nirtamir2.png","key":"nirtamir2","page":null},"pcho":{"name":"Przemys\u0142aw Chojecki","alias":"pcho","url":"https://github.com/pcho","imageURL":"https://github.com/pcho.png","key":"pcho","page":null},"pmuens":{"name":"Philipp Muens","alias":"pmuens","url":"https://github.com/pmuens","imageURL":"https://github.com/pmuens.png","key":"pmuens","page":null},"rluvaton":{"name":"Raz Luvaton","alias":"rluvaton","url":"https://github.com/rluvaton","imageURL":"https://github.com/rluvaton.png","key":"rluvaton","page":null},"tohidnateghi":{"name":"tohid nateghi","alias":"tohidnateghi","url":"https://github.com/tohidnateghi","imageURL":"https://github.com/tohidnateghi.png","key":"tohidnateghi","page":null},"wenerme":{"name":"\u9648\u6768\u6587","alias":"wenerme","url":"https://github.com/wenerme","imageURL":"https://github.com/wenerme.png","key":"wenerme","page":null},"AuHau":{"name":"Adam Uhl\xed\u0159","alias":"AuHau","url":"https://github.com/AuHau","imageURL":"https://github.com/AuHau.png","key":"AuHau","page":null},"bperlmutter":{"name":"bperlmutter","alias":"bperlmutter","url":"https://github.com/bperlmutter","imageURL":"https://github.com/bperlmutter.png","key":"bperlmutter","page":null},"dirslashls":{"name":"dirslashls","alias":"dirslashls","url":"https://github.com/dirslashls","imageURL":"https://github.com/dirslashls.png","key":"dirslashls","page":null},"iamayushdas":{"name":"Ayush das","alias":"iamayushdas","url":"https://github.com/iamayushdas","imageURL":"https://github.com/iamayushdas.png","key":"iamayushdas","page":null},"jsamr":{"name":"Jules Sam. Randolph","alias":"jsamr","url":"https://github.com/jsamr","imageURL":"https://github.com/jsamr.png","key":"jsamr","page":null},"kdrag0n":{"name":"Danny Lin","alias":"kdrag0n","url":"https://github.com/kdrag0n","imageURL":"https://github.com/kdrag0n.png","key":"kdrag0n","page":null},"ramiy":{"name":"Rami Yushuvaev","alias":"ramiy","url":"https://github.com/ramiy","imageURL":"https://github.com/ramiy.png","key":"ramiy","page":null},"eshantri":{"name":"Eshan Tripathi","alias":"eshantri","url":"https://github.com/eshantri","imageURL":"https://github.com/eshantri.png","key":"eshantri","page":null},"loozhengyuan":{"name":"ZhengYuan Loo","alias":"loozhengyuan","url":"https://github.com/loozhengyuan","imageURL":"https://github.com/loozhengyuan.png","key":"loozhengyuan","page":null},"manuelmeurer":{"name":"Manuel Meurer","alias":"manuelmeurer","url":"https://github.com/manuelmeurer","imageURL":"https://github.com/manuelmeurer.png","key":"manuelmeurer","page":null},"teikjun":{"name":"Teik Jun","alias":"teikjun","url":"https://github.com/teikjun","imageURL":"https://github.com/teikjun.png","key":"teikjun","page":null},"tomekpapiernik":{"name":"Tomasz Papiernik","alias":"tomekpapiernik","url":"https://github.com/tomekpapiernik","imageURL":"https://github.com/tomekpapiernik.png","key":"tomekpapiernik","page":null},"antonygibbs":{"name":"antonygibbs","alias":"antonygibbs","url":"https://github.com/antonygibbs","imageURL":"https://github.com/antonygibbs.png","key":"antonygibbs","page":null},"ArtFlag":{"name":"Arthur","alias":"ArtFlag","url":"https://github.com/ArtFlag","imageURL":"https://github.com/ArtFlag.png","key":"ArtFlag","page":null},"besemuna":{"name":"besemuna","alias":"besemuna","url":"https://github.com/besemuna","imageURL":"https://github.com/besemuna.png","key":"besemuna","page":null},"Christopher-Hsieh":{"name":"Christopher Hsieh","alias":"Christopher-Hsieh","url":"https://github.com/Christopher-Hsieh","imageURL":"https://github.com/Christopher-Hsieh.png","key":"Christopher-Hsieh","page":null},"dabeeeenster":{"name":"Ben Rometsch","alias":"dabeeeenster","url":"https://github.com/dabeeeenster","imageURL":"https://github.com/dabeeeenster.png","key":"dabeeeenster","page":null},"e271828-":{"name":"e271828-","alias":"e271828-","url":"https://github.com/e271828-","imageURL":"https://github.com/e271828-.png","key":"e271828-","page":null},"fgatti675":{"name":"fgatti675","alias":"fgatti675","url":"https://github.com/fgatti675","imageURL":"https://github.com/fgatti675.png","key":"fgatti675","page":null},"HunteRoi":{"name":"Tina\xebl Devresse","alias":"HunteRoi","url":"https://github.com/HunteRoi","imageURL":"https://github.com/HunteRoi.png","key":"HunteRoi","page":null},"jmazin":{"name":"Jonathan Mazin","alias":"jmazin","url":"https://github.com/jmazin","imageURL":"https://github.com/jmazin.png","key":"jmazin","page":null},"Joelpo":{"name":"Joel","alias":"Joelpo","url":"https://github.com/Joelpo","imageURL":"https://github.com/Joelpo.png","key":"Joelpo","page":null},"jonbarker68":{"name":"Jon Barker","alias":"jonbarker68","url":"https://github.com/jonbarker68","imageURL":"https://github.com/jonbarker68.png","key":"jonbarker68","page":null},"l0u1sg":{"name":"Louis Gallet","alias":"l0u1sg","url":"https://github.com/l0u1sg","imageURL":"https://github.com/l0u1sg.png","key":"l0u1sg","page":null},"limkinZero":{"name":"Pablo Vidal","alias":"limkinZero","url":"https://github.com/limkinZero","imageURL":"https://github.com/limkinZero.png","key":"limkinZero","page":null},"liorheber":{"name":"Lior Heber","alias":"liorheber","url":"https://github.com/liorheber","imageURL":"https://github.com/liorheber.png","key":"liorheber","page":null},"louistiti":{"name":"Louis Grenard","alias":"louistiti","url":"https://github.com/louistiti","imageURL":"https://github.com/louistiti.png","key":"louistiti","page":null},"Massibian":{"name":"Massibian","alias":"Massibian","url":"https://github.com/Massibian","imageURL":"https://github.com/Massibian.png","key":"Massibian","page":null},"nam-hle":{"name":"Nam Hoang Le","alias":"nam-hle","url":"https://github.com/nam-hle","imageURL":"https://github.com/nam-hle.png","key":"nam-hle","page":null},"Neilblaze":{"name":"Pratyay Banerjee","alias":"Neilblaze","url":"https://github.com/Neilblaze","imageURL":"https://github.com/Neilblaze.png","key":"Neilblaze","page":null},"phwt":{"name":"phwt.smwt","alias":"phwt","url":"https://github.com/phwt","imageURL":"https://github.com/phwt.png","key":"phwt","page":null},"pmqueiroz":{"name":"Pedro Queiroz","alias":"pmqueiroz","url":"https://github.com/pmqueiroz","imageURL":"https://github.com/pmqueiroz.png","key":"pmqueiroz","page":null},"PsychTechApS":{"name":"PsychTech","alias":"PsychTechApS","url":"https://github.com/PsychTechApS","imageURL":"https://github.com/PsychTechApS.png","key":"PsychTechApS","page":null},"SamChou19815":{"name":"Sam Zhou","alias":"SamChou19815","url":"https://github.com/SamChou19815","imageURL":"https://github.com/SamChou19815.png","key":"SamChou19815","page":null},"silva-nick":{"name":"silva-nick","alias":"silva-nick","url":"https://github.com/silva-nick","imageURL":"https://github.com/silva-nick.png","key":"silva-nick","page":null},"tiny-dancer":{"name":"mg","alias":"tiny-dancer","url":"https://github.com/tiny-dancer","imageURL":"https://github.com/tiny-dancer.png","key":"tiny-dancer","page":null},"tsirlucas":{"name":"Lucas Correia","alias":"tsirlucas","url":"https://github.com/tsirlucas","imageURL":"https://github.com/tsirlucas.png","key":"tsirlucas","page":null},"wise-introvert":{"name":"Fardeen Panjwani","alias":"wise-introvert","url":"https://github.com/wise-introvert","imageURL":"https://github.com/wise-introvert.png","key":"wise-introvert","page":null},"ChrisOwen101":{"name":"Chris Owen","alias":"ChrisOwen101","url":"https://github.com/ChrisOwen101","imageURL":"https://github.com/ChrisOwen101.png","key":"ChrisOwen101","page":null},"gianu":{"name":"Sergio Rafael Gianazza","alias":"gianu","url":"https://github.com/gianu","imageURL":"https://github.com/gianu.png","key":"gianu","page":null},"joelhans":{"name":"Joel Hans","alias":"joelhans","url":"https://github.com/joelhans","imageURL":"https://github.com/joelhans.png","key":"joelhans","page":null},"KostyaTretyak":{"name":"\u041A\u043E\u0441\u0442\u044F \u0422\u0440\u0435\u0442\u044F\u043A","alias":"KostyaTretyak","url":"https://github.com/KostyaTretyak","imageURL":"https://github.com/KostyaTretyak.png","key":"KostyaTretyak","page":null},"rodmoreno":{"name":"Rodrigo Moreno","alias":"rodmoreno","url":"https://github.com/rodmoreno","imageURL":"https://github.com/rodmoreno.png","key":"rodmoreno","page":null},"yiliansource":{"name":"Ian Hornik","alias":"yiliansource","url":"https://github.com/yiliansource","imageURL":"https://github.com/yiliansource.png","key":"yiliansource","page":null},"gempain":{"name":"Geoffroy Empain","alias":"gempain","url":"https://github.com/gempain","imageURL":"https://github.com/gempain.png","key":"gempain","page":null},"tommy351":{"name":"Tommy Chen","alias":"tommy351","url":"https://github.com/tommy351","imageURL":"https://github.com/tommy351.png","key":"tommy351","page":null},"alena-ko":{"name":"alena-ko","alias":"alena-ko","url":"https://github.com/alena-ko","imageURL":"https://github.com/alena-ko.png","key":"alena-ko","page":null},"kazk":{"name":"kazk","alias":"kazk","url":"https://github.com/kazk","imageURL":"https://github.com/kazk.png","key":"kazk","page":null},"lisa761":{"name":"Lisa Chandra","alias":"lisa761","url":"https://github.com/lisa761","imageURL":"https://github.com/lisa761.png","key":"lisa761","page":null},"luism3861":{"name":"Luis Medina Huerta","alias":"luism3861","url":"https://github.com/luism3861","imageURL":"https://github.com/luism3861.png","key":"luism3861","page":null},"react-learner":{"name":"Tommy","alias":"react-learner","url":"https://github.com/react-learner","imageURL":"https://github.com/react-learner.png","key":"react-learner","page":null},"aehrea":{"name":"aehrea","alias":"aehrea","url":"https://github.com/aehrea","imageURL":"https://github.com/aehrea.png","key":"aehrea","page":null},"ajeetraina":{"name":"Ajeet Singh Raina, Docker Captain, RedisLabs","alias":"ajeetraina","url":"https://github.com/ajeetraina","imageURL":"https://github.com/ajeetraina.png","key":"ajeetraina","page":null},"akepecs":{"name":"akepecs","alias":"akepecs","url":"https://github.com/akepecs","imageURL":"https://github.com/akepecs.png","key":"akepecs","page":null},"AnthonyBobsin":{"name":"Anthony Bobsin","alias":"AnthonyBobsin","url":"https://github.com/AnthonyBobsin","imageURL":"https://github.com/AnthonyBobsin.png","key":"AnthonyBobsin","page":null},"arturcarvalho":{"name":"Artur Carvalho","alias":"arturcarvalho","url":"https://github.com/arturcarvalho","imageURL":"https://github.com/arturcarvalho.png","key":"arturcarvalho","page":null},"atomicpages":{"name":"Dennis Thompson","alias":"atomicpages","url":"https://github.com/atomicpages","imageURL":"https://github.com/atomicpages.png","key":"atomicpages","page":null},"clarus":{"name":"Guillaume Claret","alias":"clarus","url":"https://github.com/clarus","imageURL":"https://github.com/clarus.png","key":"clarus","page":null},"dickwyn":{"name":"Dick Wyn Yong","alias":"dickwyn","url":"https://github.com/dickwyn","imageURL":"https://github.com/dickwyn.png","key":"dickwyn","page":null},"Foxeye-Rinx":{"name":"Foxeye-Rinx","alias":"Foxeye-Rinx","url":"https://github.com/Foxeye-Rinx","imageURL":"https://github.com/Foxeye-Rinx.png","key":"Foxeye-Rinx","page":null},"gitbrent":{"name":"Brent Ely","alias":"gitbrent","url":"https://github.com/gitbrent","imageURL":"https://github.com/gitbrent.png","key":"gitbrent","page":null},"gumacahin":{"name":"Marco Enrico","alias":"gumacahin","url":"https://github.com/gumacahin","imageURL":"https://github.com/gumacahin.png","key":"gumacahin","page":null},"jknoxville":{"name":"John Knox","alias":"jknoxville","url":"https://github.com/jknoxville","imageURL":"https://github.com/jknoxville.png","key":"jknoxville","page":null},"kaytwo":{"name":"Chris Kanich","alias":"kaytwo","url":"https://github.com/kaytwo","imageURL":"https://github.com/kaytwo.png","key":"kaytwo","page":null},"lucalves":{"name":"Lucas Alves","alias":"lucalves","url":"https://github.com/lucalves","imageURL":"https://github.com/lucalves.png","key":"lucalves","page":null},"miku86":{"name":"miku86","alias":"miku86","url":"https://github.com/miku86","imageURL":"https://github.com/miku86.png","key":"miku86","page":null},"pepibumur":{"name":"Pedro Pi\xf1era Buend\xeda","alias":"pepibumur","url":"https://github.com/pepibumur","imageURL":"https://github.com/pepibumur.png","key":"pepibumur","page":null},"serut":{"name":"serut","alias":"serut","url":"https://github.com/serut","imageURL":"https://github.com/serut.png","key":"serut","page":null},"ShinteiMai":{"name":"Steven Hansel","alias":"ShinteiMai","url":"https://github.com/ShinteiMai","imageURL":"https://github.com/ShinteiMai.png","key":"ShinteiMai","page":null},"steveworley":{"name":"Steve","alias":"steveworley","url":"https://github.com/steveworley","imageURL":"https://github.com/steveworley.png","key":"steveworley","page":null},"sunny0826":{"name":"guoxudong","alias":"sunny0826","url":"https://github.com/sunny0826","imageURL":"https://github.com/sunny0826.png","key":"sunny0826","page":null},"talesporto":{"name":"Tales Porto","alias":"talesporto","url":"https://github.com/talesporto","imageURL":"https://github.com/talesporto.png","key":"talesporto","page":null},"thiagog3":{"name":"Thiago Sciotta","alias":"thiagog3","url":"https://github.com/thiagog3","imageURL":"https://github.com/thiagog3.png","key":"thiagog3","page":null},"tiago-rr":{"name":"Tiago Ribeiro","alias":"tiago-rr","url":"https://github.com/tiago-rr","imageURL":"https://github.com/tiago-rr.png","key":"tiago-rr","page":null},"tomrav":{"name":"Tom Raviv","alias":"tomrav","url":"https://github.com/tomrav","imageURL":"https://github.com/tomrav.png","key":"tomrav","page":null},"tony":{"name":"Tony Narlock","alias":"tony","url":"https://github.com/tony","imageURL":"https://github.com/tony.png","key":"tony","page":null},"Harvtronix":{"name":"Harvtronix","alias":"Harvtronix","url":"https://github.com/Harvtronix","imageURL":"https://github.com/Harvtronix.png","key":"Harvtronix","page":null},"koko8829":{"name":"Joon-Ha Lee","alias":"koko8829","url":"https://github.com/koko8829","imageURL":"https://github.com/koko8829.png","key":"koko8829","page":null},"leandrooriente":{"name":"Leandro Oriente","alias":"leandrooriente","url":"https://github.com/leandrooriente","imageURL":"https://github.com/leandrooriente.png","key":"leandrooriente","page":null},"longlho":{"name":"Long Ho","alias":"longlho","url":"https://github.com/longlho","imageURL":"https://github.com/longlho.png","key":"longlho","page":null},"lowenhere":{"name":"Lowen","alias":"lowenhere","url":"https://github.com/lowenhere","imageURL":"https://github.com/lowenhere.png","key":"lowenhere","page":null},"quanengineering":{"name":"Quan","alias":"quanengineering","url":"https://github.com/quanengineering","imageURL":"https://github.com/quanengineering.png","key":"quanengineering","page":null},"Rhodanthe1116":{"name":"Rhodanthe1116","alias":"Rhodanthe1116","url":"https://github.com/Rhodanthe1116","imageURL":"https://github.com/Rhodanthe1116.png","key":"Rhodanthe1116","page":null},"zkochan":{"name":"Zoltan Kochan","alias":"zkochan","url":"https://github.com/zkochan","imageURL":"https://github.com/zkochan.png","key":"zkochan","page":null},"9oelM":{"name":"Joel M","alias":"9oelM","url":"https://github.com/9oelM","imageURL":"https://github.com/9oelM.png","key":"9oelM","page":null},"apurvaojas":{"name":"Apurva Ojas","alias":"apurvaojas","url":"https://github.com/apurvaojas","imageURL":"https://github.com/apurvaojas.png","key":"apurvaojas","page":null},"asystentka-jolka":{"name":"Jola","alias":"asystentka-jolka","url":"https://github.com/asystentka-jolka","imageURL":"https://github.com/asystentka-jolka.png","key":"asystentka-jolka","page":null},"aukokyong":{"name":"aukokyong","alias":"aukokyong","url":"https://github.com/aukokyong","imageURL":"https://github.com/aukokyong.png","key":"aukokyong","page":null},"ayonious":{"name":"Nahiyan Kamal","alias":"ayonious","url":"https://github.com/ayonious","imageURL":"https://github.com/ayonious.png","key":"ayonious","page":null},"B4nan":{"name":"Martin Ad\xe1mek","alias":"B4nan","url":"https://github.com/B4nan","imageURL":"https://github.com/B4nan.png","key":"B4nan","page":null},"ben-qnimble":{"name":"Ben","alias":"ben-qnimble","url":"https://github.com/ben-qnimble","imageURL":"https://github.com/ben-qnimble.png","key":"ben-qnimble","page":null},"bennodev19":{"name":"BennoDev","alias":"bennodev19","url":"https://github.com/bennodev19","imageURL":"https://github.com/bennodev19.png","key":"bennodev19","page":null},"caglarturali":{"name":"\xc7a\u011Flar Tural\u0131","alias":"caglarturali","url":"https://github.com/caglarturali","imageURL":"https://github.com/caglarturali.png","key":"caglarturali","page":null},"christian-bromann":{"name":"Christian Bromann","alias":"christian-bromann","url":"https://github.com/christian-bromann","imageURL":"https://github.com/christian-bromann.png","key":"christian-bromann","page":null},"edulazaro":{"name":"Eduardo L\xe1zaro","alias":"edulazaro","url":"https://github.com/edulazaro","imageURL":"https://github.com/edulazaro.png","key":"edulazaro","page":null},"eric-hc":{"name":"Eric Carboni","alias":"eric-hc","url":"https://github.com/eric-hc","imageURL":"https://github.com/eric-hc.png","key":"eric-hc","page":null},"iamshadmirza":{"name":"Mohd Shad Mirza","alias":"iamshadmirza","url":"https://github.com/iamshadmirza","imageURL":"https://github.com/iamshadmirza.png","key":"iamshadmirza","page":null},"imbhargav5":{"name":"Bhargav Ponnapalli","alias":"imbhargav5","url":"https://github.com/imbhargav5","imageURL":"https://github.com/imbhargav5.png","key":"imbhargav5","page":null},"iruzevic":{"name":"Ivan Ru\u017Eevi\u0107","alias":"iruzevic","url":"https://github.com/iruzevic","imageURL":"https://github.com/iruzevic.png","key":"iruzevic","page":null},"jlin27":{"name":"Jessica Lin","alias":"jlin27","url":"https://github.com/jlin27","imageURL":"https://github.com/jlin27.png","key":"jlin27","page":null},"JoelMarcey":{"name":"Joel Marcey","alias":"JoelMarcey","url":"https://github.com/JoelMarcey","imageURL":"https://github.com/JoelMarcey.png","key":"JoelMarcey","page":null},"juancarlosjr97":{"name":"Juan Carlos Blanco Delgado","alias":"juancarlosjr97","url":"https://github.com/juancarlosjr97","imageURL":"https://github.com/juancarlosjr97.png","key":"juancarlosjr97","page":null},"kumaraditya303":{"name":"Kumar Aditya","alias":"kumaraditya303","url":"https://github.com/kumaraditya303","imageURL":"https://github.com/kumaraditya303.png","key":"kumaraditya303","page":null},"linyuxuanlin":{"name":"Power Lin","alias":"linyuxuanlin","url":"https://github.com/linyuxuanlin","imageURL":"https://github.com/linyuxuanlin.png","key":"linyuxuanlin","page":null},"manzinello":{"name":"Matteo Manzinello","alias":"manzinello","url":"https://github.com/manzinello","imageURL":"https://github.com/manzinello.png","key":"manzinello","page":null},"MatanBobi":{"name":"Matan Borenkraout","alias":"MatanBobi","url":"https://github.com/MatanBobi","imageURL":"https://github.com/MatanBobi.png","key":"MatanBobi","page":null},"miroiu":{"name":"Miroiu Emanuel","alias":"miroiu","url":"https://github.com/miroiu","imageURL":"https://github.com/miroiu.png","key":"miroiu","page":null},"natac13":{"name":"Sean Campbell","alias":"natac13","url":"https://github.com/natac13","imageURL":"https://github.com/natac13.png","key":"natac13","page":null},"nicojs":{"name":"Nico Jansen","alias":"nicojs","url":"https://github.com/nicojs","imageURL":"https://github.com/nicojs.png","key":"nicojs","page":null},"NikolayS":{"name":"Nikolay Samokhvalov","alias":"NikolayS","url":"https://github.com/NikolayS","imageURL":"https://github.com/NikolayS.png","key":"NikolayS","page":null},"ntbosscher":{"name":"Nathan Bosscher","alias":"ntbosscher","url":"https://github.com/ntbosscher","imageURL":"https://github.com/ntbosscher.png","key":"ntbosscher","page":null},"oze4":{"name":"Matt Oestreich","alias":"oze4","url":"https://github.com/oze4","imageURL":"https://github.com/oze4.png","key":"oze4","page":null},"saihaj":{"name":"Saihajpreet Singh","alias":"saihaj","url":"https://github.com/saihaj","imageURL":"https://github.com/saihaj.png","key":"saihaj","page":null},"samhrncir":{"name":"Sam Hrncir","alias":"samhrncir","url":"https://github.com/samhrncir","imageURL":"https://github.com/samhrncir.png","key":"samhrncir","page":null},"sammychinedu2ky":{"name":"sammychinedu2ky","alias":"sammychinedu2ky","url":"https://github.com/sammychinedu2ky","imageURL":"https://github.com/sammychinedu2ky.png","key":"sammychinedu2ky","page":null},"saydo17":{"name":"saydo17","alias":"saydo17","url":"https://github.com/saydo17","imageURL":"https://github.com/saydo17.png","key":"saydo17","page":null},"Siemienik":{"name":"Siemienik Pawel","alias":"Siemienik","url":"https://github.com/Siemienik","imageURL":"https://github.com/Siemienik.png","key":"Siemienik","page":null},"Simek":{"name":"Bartosz Kaszubowski","alias":"Simek","url":"https://github.com/Simek","imageURL":"https://github.com/Simek.png","key":"Simek","page":null},"sksamuel":{"name":"Sam Sam","alias":"sksamuel","url":"https://github.com/sksamuel","imageURL":"https://github.com/sksamuel.png","key":"sksamuel","page":null},"theankurkedia":{"name":"Ankur Kedia","alias":"theankurkedia","url":"https://github.com/theankurkedia","imageURL":"https://github.com/theankurkedia.png","key":"theankurkedia","page":null},"TheodoreChu":{"name":"Theodore Chu","alias":"TheodoreChu","url":"https://github.com/TheodoreChu","imageURL":"https://github.com/TheodoreChu.png","key":"TheodoreChu","page":null},"tienvx":{"name":"Tien Vo Xuan","alias":"tienvx","url":"https://github.com/tienvx","imageURL":"https://github.com/tienvx.png","key":"tienvx","page":null},"tokarchyn":{"name":"tokarchyn","alias":"tokarchyn","url":"https://github.com/tokarchyn","imageURL":"https://github.com/tokarchyn.png","key":"tokarchyn","page":null},"tomsfernandez":{"name":"Tomas Fernandez","alias":"tomsfernandez","url":"https://github.com/tomsfernandez","imageURL":"https://github.com/tomsfernandez.png","key":"tomsfernandez","page":null},"vamsi3":{"name":"Vamsi Krishna Reddy Satti","alias":"vamsi3","url":"https://github.com/vamsi3","imageURL":"https://github.com/vamsi3.png","key":"vamsi3","page":null},"viglucci":{"name":"Kevin Viglucci","alias":"viglucci","url":"https://github.com/viglucci","imageURL":"https://github.com/viglucci.png","key":"viglucci","page":null},"wellyshen":{"name":"Welly","alias":"wellyshen","url":"https://github.com/wellyshen","imageURL":"https://github.com/wellyshen.png","key":"wellyshen","page":null},"wolf20482":{"name":"wolf20482","alias":"wolf20482","url":"https://github.com/wolf20482","imageURL":"https://github.com/wolf20482.png","key":"wolf20482","page":null},"YashTotale":{"name":"Yash Totale","alias":"YashTotale","url":"https://github.com/YashTotale","imageURL":"https://github.com/YashTotale.png","key":"YashTotale","page":null},"ykzts":{"name":"Yamagishi Kazutoshi","alias":"ykzts","url":"https://github.com/ykzts","imageURL":"https://github.com/ykzts.png","key":"ykzts","page":null},"ysulyma":{"name":"Yuri Sulyma","alias":"ysulyma","url":"https://github.com/ysulyma","imageURL":"https://github.com/ysulyma.png","key":"ysulyma","page":null},"yuval-hazaz":{"name":"Yuval Hazaz","alias":"yuval-hazaz","url":"https://github.com/yuval-hazaz","imageURL":"https://github.com/yuval-hazaz.png","key":"yuval-hazaz","page":null},"aarongarciah":{"name":"Aar\xf3n Garc\xeda Herv\xe1s","alias":"aarongarciah","url":"https://github.com/aarongarciah","imageURL":"https://github.com/aarongarciah.png","key":"aarongarciah","page":null},"aeneasr":{"name":"hackerman","alias":"aeneasr","url":"https://github.com/aeneasr","imageURL":"https://github.com/aeneasr.png","key":"aeneasr","page":null},"Alex1304":{"name":"Alex1304","alias":"Alex1304","url":"https://github.com/Alex1304","imageURL":"https://github.com/Alex1304.png","key":"Alex1304","page":null},"borool":{"name":"borool","alias":"borool","url":"https://github.com/borool","imageURL":"https://github.com/borool.png","key":"borool","page":null},"cindygu4":{"name":"Cindy Gu","alias":"cindygu4","url":"https://github.com/cindygu4","imageURL":"https://github.com/cindygu4.png","key":"cindygu4","page":null},"davidmauskop":{"name":"davidmauskop","alias":"davidmauskop","url":"https://github.com/davidmauskop","imageURL":"https://github.com/davidmauskop.png","key":"davidmauskop","page":null},"dgilling":{"name":"Derric Gilling","alias":"dgilling","url":"https://github.com/dgilling","imageURL":"https://github.com/dgilling.png","key":"dgilling","page":null},"francoischalifour":{"name":"Fran\xe7ois Chalifour","alias":"francoischalifour","url":"https://github.com/francoischalifour","imageURL":"https://github.com/francoischalifour.png","key":"francoischalifour","page":null},"hmil":{"name":"Hadrien Milano","alias":"hmil","url":"https://github.com/hmil","imageURL":"https://github.com/hmil.png","key":"hmil","page":null},"LoicPoullain":{"name":"Lo\xefc Poullain","alias":"LoicPoullain","url":"https://github.com/LoicPoullain","imageURL":"https://github.com/LoicPoullain.png","key":"LoicPoullain","page":null},"matijaSos":{"name":"Matija Sosic","alias":"matijaSos","url":"https://github.com/matijaSos","imageURL":"https://github.com/matijaSos.png","key":"matijaSos","page":null},"mpsq":{"name":"M\xe9ril","alias":"mpsq","url":"https://github.com/mpsq","imageURL":"https://github.com/mpsq.png","key":"mpsq","page":null},"Romstar":{"name":"Rami","alias":"Romstar","url":"https://github.com/Romstar","imageURL":"https://github.com/Romstar.png","key":"Romstar","page":null},"sarthakkundra":{"name":"Sarthak kundra","alias":"sarthakkundra","url":"https://github.com/sarthakkundra","imageURL":"https://github.com/sarthakkundra.png","key":"sarthakkundra","page":null},"sivaraam":{"name":"Kaartic Sivaraam","alias":"sivaraam","url":"https://github.com/sivaraam","imageURL":"https://github.com/sivaraam.png","key":"sivaraam","page":null},"Varshit07":{"name":"Varshit Shah","alias":"Varshit07","url":"https://github.com/Varshit07","imageURL":"https://github.com/Varshit07.png","key":"Varshit07","page":null},"woodrufs":{"name":"Stephen Woodruff","alias":"woodrufs","url":"https://github.com/woodrufs","imageURL":"https://github.com/woodrufs.png","key":"woodrufs","page":null},"arcanis":{"name":"Ma\xebl Nison","alias":"arcanis","url":"https://github.com/arcanis","imageURL":"https://github.com/arcanis.png","key":"arcanis","page":null},"camiluc":{"name":"camiluc","alias":"camiluc","url":"https://github.com/camiluc","imageURL":"https://github.com/camiluc.png","key":"camiluc","page":null},"AmyrAhmady":{"name":"iAmir","alias":"AmyrAhmady","url":"https://github.com/AmyrAhmady","imageURL":"https://github.com/AmyrAhmady.png","key":"AmyrAhmady","page":null},"belemaire":{"name":"Beno\xeet Lemaire","alias":"belemaire","url":"https://github.com/belemaire","imageURL":"https://github.com/belemaire.png","key":"belemaire","page":null},"davidjgoss":{"name":"David Goss","alias":"davidjgoss","url":"https://github.com/davidjgoss","imageURL":"https://github.com/davidjgoss.png","key":"davidjgoss","page":null},"egbobright":{"name":"Bright Egbo","alias":"egbobright","url":"https://github.com/egbobright","imageURL":"https://github.com/egbobright.png","key":"egbobright","page":null},"haivp3010":{"name":"Hai","alias":"haivp3010","url":"https://github.com/haivp3010","imageURL":"https://github.com/haivp3010.png","key":"haivp3010","page":null},"hong4rc":{"name":"Anh Hong","alias":"hong4rc","url":"https://github.com/hong4rc","imageURL":"https://github.com/hong4rc.png","key":"hong4rc","page":null},"jcs98":{"name":"Jainam Chirag Shah","alias":"jcs98","url":"https://github.com/jcs98","imageURL":"https://github.com/jcs98.png","key":"jcs98","page":null},"ka1bi4":{"name":"Roman Bug","alias":"ka1bi4","url":"https://github.com/ka1bi4","imageURL":"https://github.com/ka1bi4.png","key":"ka1bi4","page":null},"kenve":{"name":"kenve","alias":"kenve","url":"https://github.com/kenve","imageURL":"https://github.com/kenve.png","key":"kenve","page":null},"nategiraudeau":{"name":"Nate Giraudeau","alias":"nategiraudeau","url":"https://github.com/nategiraudeau","imageURL":"https://github.com/nategiraudeau.png","key":"nategiraudeau","page":null},"ndom91":{"name":"Nico Domino","alias":"ndom91","url":"https://github.com/ndom91","imageURL":"https://github.com/ndom91.png","key":"ndom91","page":null},"rarkins":{"name":"Rhys Arkins","alias":"rarkins","url":"https://github.com/rarkins","imageURL":"https://github.com/rarkins.png","key":"rarkins","page":null},"sigewuzhere":{"name":"Gergely Sinka","alias":"sigewuzhere","url":"https://github.com/sigewuzhere","imageURL":"https://github.com/sigewuzhere.png","key":"sigewuzhere","page":null},"smcelhinney":{"name":"Stephen McElhinney","alias":"smcelhinney","url":"https://github.com/smcelhinney","imageURL":"https://github.com/smcelhinney.png","key":"smcelhinney","page":null},"ThakurKarthik":{"name":"Thakur Karthik","alias":"ThakurKarthik","url":"https://github.com/ThakurKarthik","imageURL":"https://github.com/ThakurKarthik.png","key":"ThakurKarthik","page":null},"vanbasten17":{"name":"Marc Rabat Pla","alias":"vanbasten17","url":"https://github.com/vanbasten17","imageURL":"https://github.com/vanbasten17.png","key":"vanbasten17","page":null},"weareoutman":{"name":"Shenwei Wang","alias":"weareoutman","url":"https://github.com/weareoutman","imageURL":"https://github.com/weareoutman.png","key":"weareoutman","page":null},"ylemkimon":{"name":"ylemkimon","alias":"ylemkimon","url":"https://github.com/ylemkimon","imageURL":"https://github.com/ylemkimon.png","key":"ylemkimon","page":null},"aakhtar3":{"name":"aakhtar3","alias":"aakhtar3","url":"https://github.com/aakhtar3","imageURL":"https://github.com/aakhtar3.png","key":"aakhtar3","page":null},"abhishektiwari":{"name":"Abhishek Tiwari","alias":"abhishektiwari","url":"https://github.com/abhishektiwari","imageURL":"https://github.com/abhishektiwari.png","key":"abhishektiwari","page":null},"fanny":{"name":"Fanny","alias":"fanny","url":"https://github.com/fanny","imageURL":"https://github.com/fanny.png","key":"fanny","page":null},"honlyHuang":{"name":"honlyHuang","alias":"honlyHuang","url":"https://github.com/honlyHuang","imageURL":"https://github.com/honlyHuang.png","key":"honlyHuang","page":null},"imskr":{"name":"Shubham Kumar","alias":"imskr","url":"https://github.com/imskr","imageURL":"https://github.com/imskr.png","key":"imskr","page":null},"jagracey":{"name":"John Gracey","alias":"jagracey","url":"https://github.com/jagracey","imageURL":"https://github.com/jagracey.png","key":"jagracey","page":null},"russtaylor":{"name":"Russ Taylor","alias":"russtaylor","url":"https://github.com/russtaylor","imageURL":"https://github.com/russtaylor.png","key":"russtaylor","page":null},"saintmalik":{"name":"SaintMalik","alias":"saintmalik","url":"https://github.com/saintmalik","imageURL":"https://github.com/saintmalik.png","key":"saintmalik","page":null},"shubhamzanwar":{"name":"Shubham Zanwar","alias":"shubhamzanwar","url":"https://github.com/shubhamzanwar","imageURL":"https://github.com/shubhamzanwar.png","key":"shubhamzanwar","page":null},"UmairKamran":{"name":"Umair Kamran","alias":"UmairKamran","url":"https://github.com/UmairKamran","imageURL":"https://github.com/UmairKamran.png","key":"UmairKamran","page":null},"utkarsh867":{"name":"Utkarsh Goel","alias":"utkarsh867","url":"https://github.com/utkarsh867","imageURL":"https://github.com/utkarsh867.png","key":"utkarsh867","page":null},"abadon7":{"name":"Henry V\xe9lez","alias":"abadon7","url":"https://github.com/abadon7","imageURL":"https://github.com/abadon7.png","key":"abadon7","page":null},"anru":{"name":"Andrey Rublev","alias":"anru","url":"https://github.com/anru","imageURL":"https://github.com/anru.png","key":"anru","page":null},"ayshiff":{"name":"R\xe9mi Doreau","alias":"ayshiff","url":"https://github.com/ayshiff","imageURL":"https://github.com/ayshiff.png","key":"ayshiff","page":null},"jeremyhager":{"name":"Jeremy Hager","alias":"jeremyhager","url":"https://github.com/jeremyhager","imageURL":"https://github.com/jeremyhager.png","key":"jeremyhager","page":null},"muskanvk":{"name":"Muskan Kumar","alias":"muskanvk","url":"https://github.com/muskanvk","imageURL":"https://github.com/muskanvk.png","key":"muskanvk","page":null},"timgates42":{"name":"Tim Gates","alias":"timgates42","url":"https://github.com/timgates42","imageURL":"https://github.com/timgates42.png","key":"timgates42","page":null},"ashscodes":{"name":"Ash","alias":"ashscodes","url":"https://github.com/ashscodes","imageURL":"https://github.com/ashscodes.png","key":"ashscodes","page":null},"josephMG":{"name":"josephMG","alias":"josephMG","url":"https://github.com/josephMG","imageURL":"https://github.com/josephMG.png","key":"josephMG","page":null},"rutikwankhade":{"name":"Rutik Wankhade","alias":"rutikwankhade","url":"https://github.com/rutikwankhade","imageURL":"https://github.com/rutikwankhade.png","key":"rutikwankhade","page":null},"samsisle":{"name":"Sam Ko","alias":"samsisle","url":"https://github.com/samsisle","imageURL":"https://github.com/samsisle.png","key":"samsisle","page":null},"adinaja":{"name":"adinaja","alias":"adinaja","url":"https://github.com/adinaja","imageURL":"https://github.com/adinaja.png","key":"adinaja","page":null},"ajifrank75":{"name":"Franklyn Chisom","alias":"ajifrank75","url":"https://github.com/ajifrank75","imageURL":"https://github.com/ajifrank75.png","key":"ajifrank75","page":null},"Ako92":{"name":"Ali Hosseini","alias":"Ako92","url":"https://github.com/Ako92","imageURL":"https://github.com/Ako92.png","key":"Ako92","page":null},"amy-lei":{"name":"Amy Lei","alias":"amy-lei","url":"https://github.com/amy-lei","imageURL":"https://github.com/amy-lei.png","key":"amy-lei","page":null},"anshulrgoyal":{"name":"Anshul Goyal","alias":"anshulrgoyal","url":"https://github.com/anshulrgoyal","imageURL":"https://github.com/anshulrgoyal.png","key":"anshulrgoyal","page":null},"arcvats":{"name":"Archit","alias":"arcvats","url":"https://github.com/arcvats","imageURL":"https://github.com/arcvats.png","key":"arcvats","page":null},"arthur-flam":{"name":"Arthur Flam","alias":"arthur-flam","url":"https://github.com/arthur-flam","imageURL":"https://github.com/arthur-flam.png","key":"arthur-flam","page":null},"BogdanDor":{"name":"Bogdan Doroschenko","alias":"BogdanDor","url":"https://github.com/BogdanDor","imageURL":"https://github.com/BogdanDor.png","key":"BogdanDor","page":null},"boosh511":{"name":"alex busnelli","alias":"boosh511","url":"https://github.com/boosh511","imageURL":"https://github.com/boosh511.png","key":"boosh511","page":null},"Danon":{"name":"Daniel Wilkowski","alias":"Danon","url":"https://github.com/Danon","imageURL":"https://github.com/Danon.png","key":"Danon","page":null},"Drewbi":{"name":"Drew Alexander","alias":"Drewbi","url":"https://github.com/Drewbi","imageURL":"https://github.com/Drewbi.png","key":"Drewbi","page":null},"dschaller":{"name":"Derek","alias":"dschaller","url":"https://github.com/dschaller","imageURL":"https://github.com/dschaller.png","key":"dschaller","page":null},"FocalChord":{"name":"Nisarag","alias":"FocalChord","url":"https://github.com/FocalChord","imageURL":"https://github.com/FocalChord.png","key":"FocalChord","page":null},"govardhan-srinivas":{"name":"Govardhan Srinivas","alias":"govardhan-srinivas","url":"https://github.com/govardhan-srinivas","imageURL":"https://github.com/govardhan-srinivas.png","key":"govardhan-srinivas","page":null},"hsluoyz":{"name":"Yang Luo","alias":"hsluoyz","url":"https://github.com/hsluoyz","imageURL":"https://github.com/hsluoyz.png","key":"hsluoyz","page":null},"JeanMarcSaad":{"name":"Jean-Marc Saad","alias":"JeanMarcSaad","url":"https://github.com/JeanMarcSaad","imageURL":"https://github.com/JeanMarcSaad.png","key":"JeanMarcSaad","page":null},"JohnnyCrazy":{"name":"Jonas Dellinger","alias":"JohnnyCrazy","url":"https://github.com/JohnnyCrazy","imageURL":"https://github.com/JohnnyCrazy.png","key":"JohnnyCrazy","page":null},"Jonathannsegal":{"name":"Jonathan","alias":"Jonathannsegal","url":"https://github.com/Jonathannsegal","imageURL":"https://github.com/Jonathannsegal.png","key":"Jonathannsegal","page":null},"lebogangolifant":{"name":"lebogang Olifant","alias":"lebogangolifant","url":"https://github.com/lebogangolifant","imageURL":"https://github.com/lebogangolifant.png","key":"lebogangolifant","page":null},"leoigel":{"name":"leoigel","alias":"leoigel","url":"https://github.com/leoigel","imageURL":"https://github.com/leoigel.png","key":"leoigel","page":null},"mecm1993":{"name":"Manuel Cepeda","alias":"mecm1993","url":"https://github.com/mecm1993","imageURL":"https://github.com/mecm1993.png","key":"mecm1993","page":null},"MirzayevFarid":{"name":"Mirzayev Farid","alias":"MirzayevFarid","url":"https://github.com/MirzayevFarid","imageURL":"https://github.com/MirzayevFarid.png","key":"MirzayevFarid","page":null},"nebrelbug":{"name":"Ben Gubler","alias":"nebrelbug","url":"https://github.com/nebrelbug","imageURL":"https://github.com/nebrelbug.png","key":"nebrelbug","page":null},"olawanlejoel":{"name":"Olawanle Joel","alias":"olawanlejoel","url":"https://github.com/olawanlejoel","imageURL":"https://github.com/olawanlejoel.png","key":"olawanlejoel","page":null},"orta":{"name":"Orta Therox","alias":"orta","url":"https://github.com/orta","imageURL":"https://github.com/orta.png","key":"orta","page":null},"shalinikumari50":{"name":"shalinikumari50","alias":"shalinikumari50","url":"https://github.com/shalinikumari50","imageURL":"https://github.com/shalinikumari50.png","key":"shalinikumari50","page":null},"Souravdey777":{"name":"Sourav Dey","alias":"Souravdey777","url":"https://github.com/Souravdey777","imageURL":"https://github.com/Souravdey777.png","key":"Souravdey777","page":null},"thehanimo":{"name":"Hani Mohammed","alias":"thehanimo","url":"https://github.com/thehanimo","imageURL":"https://github.com/thehanimo.png","key":"thehanimo","page":null},"tolunayakbulut":{"name":"Tolunay Akbulut","alias":"tolunayakbulut","url":"https://github.com/tolunayakbulut","imageURL":"https://github.com/tolunayakbulut.png","key":"tolunayakbulut","page":null},"Vinnl":{"name":"Vincent","alias":"Vinnl","url":"https://github.com/Vinnl","imageURL":"https://github.com/Vinnl.png","key":"Vinnl","page":null},"BuckyMaler":{"name":"Bucky Maler","alias":"BuckyMaler","url":"https://github.com/BuckyMaler","imageURL":"https://github.com/BuckyMaler.png","key":"BuckyMaler","page":null},"mdfaizan7":{"name":"Faizan","alias":"mdfaizan7","url":"https://github.com/mdfaizan7","imageURL":"https://github.com/mdfaizan7.png","key":"mdfaizan7","page":null},"hobadams":{"name":"Hob Adams","alias":"hobadams","url":"https://github.com/hobadams","imageURL":"https://github.com/hobadams.png","key":"hobadams","page":null},"aladin002dz":{"name":"Mahfoudh Arous","alias":"aladin002dz","url":"https://github.com/aladin002dz","imageURL":"https://github.com/aladin002dz.png","key":"aladin002dz","page":null},"aldeed":{"name":"Eric Dobbertin","alias":"aldeed","url":"https://github.com/aldeed","imageURL":"https://github.com/aldeed.png","key":"aldeed","page":null},"amirulahmad":{"name":"Amirul Ahmad","alias":"amirulahmad","url":"https://github.com/amirulahmad","imageURL":"https://github.com/amirulahmad.png","key":"amirulahmad","page":null},"ayan-b":{"name":"Ayan Banerjee","alias":"ayan-b","url":"https://github.com/ayan-b","imageURL":"https://github.com/ayan-b.png","key":"ayan-b","page":null},"codemonkey800":{"name":"Jeremy Asuncion","alias":"codemonkey800","url":"https://github.com/codemonkey800","imageURL":"https://github.com/codemonkey800.png","key":"codemonkey800","page":null},"danielhochman":{"name":"Daniel Hochman","alias":"danielhochman","url":"https://github.com/danielhochman","imageURL":"https://github.com/danielhochman.png","key":"danielhochman","page":null},"dpkg":{"name":"Deepak Giri","alias":"dpkg","url":"https://github.com/dpkg","imageURL":"https://github.com/dpkg.png","key":"dpkg","page":null},"ehsanjso":{"name":"ehsan jso","alias":"ehsanjso","url":"https://github.com/ehsanjso","imageURL":"https://github.com/ehsanjso.png","key":"ehsanjso","page":null},"eKhattak":{"name":"Arsalan Khattak","alias":"eKhattak","url":"https://github.com/eKhattak","imageURL":"https://github.com/eKhattak.png","key":"eKhattak","page":null},"hi-matbub":{"name":"matbub","alias":"hi-matbub","url":"https://github.com/hi-matbub","imageURL":"https://github.com/hi-matbub.png","key":"hi-matbub","page":null},"jordanliu":{"name":"Jordan Liu","alias":"jordanliu","url":"https://github.com/jordanliu","imageURL":"https://github.com/jordanliu.png","key":"jordanliu","page":null},"pcowgill":{"name":"Paul Cowgill","alias":"pcowgill","url":"https://github.com/pcowgill","imageURL":"https://github.com/pcowgill.png","key":"pcowgill","page":null},"svtfrida":{"name":"Frida Hjelm","alias":"svtfrida","url":"https://github.com/svtfrida","imageURL":"https://github.com/svtfrida.png","key":"svtfrida","page":null},"taylorallen0913":{"name":"Taylor Allen","alias":"taylorallen0913","url":"https://github.com/taylorallen0913","imageURL":"https://github.com/taylorallen0913.png","key":"taylorallen0913","page":null},"xtellurian":{"name":"Rian Finnegan","alias":"xtellurian","url":"https://github.com/xtellurian","imageURL":"https://github.com/xtellurian.png","key":"xtellurian","page":null},"belokonm":{"name":"belokonm","alias":"belokonm","url":"https://github.com/belokonm","imageURL":"https://github.com/belokonm.png","key":"belokonm","page":null},"guillaumejacquart":{"name":"Guillaume Jacquart","alias":"guillaumejacquart","url":"https://github.com/guillaumejacquart","imageURL":"https://github.com/guillaumejacquart.png","key":"guillaumejacquart","page":null},"jsjoeio":{"name":"JavaScript Joe","alias":"jsjoeio","url":"https://github.com/jsjoeio","imageURL":"https://github.com/jsjoeio.png","key":"jsjoeio","page":null},"Nishikoh":{"name":"Koki Nishihara","alias":"Nishikoh","url":"https://github.com/Nishikoh","imageURL":"https://github.com/Nishikoh.png","key":"Nishikoh","page":null},"pglezen":{"name":"Paul Glezen","alias":"pglezen","url":"https://github.com/pglezen","imageURL":"https://github.com/pglezen.png","key":"pglezen","page":null},"tetunori":{"name":"tetunori","alias":"tetunori","url":"https://github.com/tetunori","imageURL":"https://github.com/tetunori.png","key":"tetunori","page":null},"TomBrien":{"name":"Tom Brien","alias":"TomBrien","url":"https://github.com/TomBrien","imageURL":"https://github.com/TomBrien.png","key":"TomBrien","page":null},"jmcshane":{"name":"James McShane","alias":"jmcshane","url":"https://github.com/jmcshane","imageURL":"https://github.com/jmcshane.png","key":"jmcshane","page":null},"kasperp":{"name":"Kasper B\xf8gebjerg Pedersen","alias":"kasperp","url":"https://github.com/kasperp","imageURL":"https://github.com/kasperp.png","key":"kasperp","page":null},"mrmuhammadali":{"name":"Muhammad Ali","alias":"mrmuhammadali","url":"https://github.com/mrmuhammadali","imageURL":"https://github.com/mrmuhammadali.png","key":"mrmuhammadali","page":null},"piotros":{"name":"Piotr Baran","alias":"piotros","url":"https://github.com/piotros","imageURL":"https://github.com/piotros.png","key":"piotros","page":null},"s-pace":{"name":"Sylvain Pace","alias":"s-pace","url":"https://github.com/s-pace","imageURL":"https://github.com/s-pace.png","key":"s-pace","page":null},"iamrajiv":{"name":"Rajiv Singh","alias":"iamrajiv","url":"https://github.com/iamrajiv","imageURL":"https://github.com/iamrajiv.png","key":"iamrajiv","page":null},"jcomack":{"name":"Jimmy","alias":"jcomack","url":"https://github.com/jcomack","imageURL":"https://github.com/jcomack.png","key":"jcomack","page":null},"jdeniau":{"name":"Julien Deniau","alias":"jdeniau","url":"https://github.com/jdeniau","imageURL":"https://github.com/jdeniau.png","key":"jdeniau","page":null},"jonnynabors":{"name":"Jonny Nabors","alias":"jonnynabors","url":"https://github.com/jonnynabors","imageURL":"https://github.com/jonnynabors.png","key":"jonnynabors","page":null},"marcosvega91":{"name":"Marco Moretti","alias":"marcosvega91","url":"https://github.com/marcosvega91","imageURL":"https://github.com/marcosvega91.png","key":"marcosvega91","page":null},"AnayoOleru":{"name":"Anayo Oleru","alias":"AnayoOleru","url":"https://github.com/AnayoOleru","imageURL":"https://github.com/AnayoOleru.png","key":"AnayoOleru","page":null},"jaylees14":{"name":"Jay Lees","alias":"jaylees14","url":"https://github.com/jaylees14","imageURL":"https://github.com/jaylees14.png","key":"jaylees14","page":null},"JoseRenan":{"name":"Jos\xe9 Renan","alias":"JoseRenan","url":"https://github.com/JoseRenan","imageURL":"https://github.com/JoseRenan.png","key":"JoseRenan","page":null},"kamilkisiela":{"name":"Kamil Kisiela","alias":"kamilkisiela","url":"https://github.com/kamilkisiela","imageURL":"https://github.com/kamilkisiela.png","key":"kamilkisiela","page":null},"kripod":{"name":"Krist\xf3f Poduszl\xf3","alias":"kripod","url":"https://github.com/kripod","imageURL":"https://github.com/kripod.png","key":"kripod","page":null},"Noah-Silvera":{"name":"Noah Silvera","alias":"Noah-Silvera","url":"https://github.com/Noah-Silvera","imageURL":"https://github.com/Noah-Silvera.png","key":"Noah-Silvera","page":null},"watzon":{"name":"Chris Watson","alias":"watzon","url":"https://github.com/watzon","imageURL":"https://github.com/watzon.png","key":"watzon","page":null},"yatki":{"name":"Mehmet Yatk\u0131","alias":"yatki","url":"https://github.com/yatki","imageURL":"https://github.com/yatki.png","key":"yatki","page":null},"cangencer":{"name":"Can Gencer","alias":"cangencer","url":"https://github.com/cangencer","imageURL":"https://github.com/cangencer.png","key":"cangencer","page":null},"iWun":{"name":"Richard Chan","alias":"iWun","url":"https://github.com/iWun","imageURL":"https://github.com/iWun.png","key":"iWun","page":null},"38elements":{"name":"38elements","alias":"38elements","url":"https://github.com/38elements","imageURL":"https://github.com/38elements.png","key":"38elements","page":null},"bravo-kernel":{"name":"bravo-kernel","alias":"bravo-kernel","url":"https://github.com/bravo-kernel","imageURL":"https://github.com/bravo-kernel.png","key":"bravo-kernel","page":null},"elviswolcott":{"name":"Elvis Wolcott","alias":"elviswolcott","url":"https://github.com/elviswolcott","imageURL":"https://github.com/elviswolcott.png","key":"elviswolcott","page":null},"fakela":{"name":"Favour Kelvin","alias":"fakela","url":"https://github.com/fakela","imageURL":"https://github.com/fakela.png","key":"fakela","page":null},"GermaVinsmoke":{"name":"GermaVinsmoke","alias":"GermaVinsmoke","url":"https://github.com/GermaVinsmoke","imageURL":"https://github.com/GermaVinsmoke.png","key":"GermaVinsmoke","page":null},"iamkun":{"name":"iamkun","alias":"iamkun","url":"https://github.com/iamkun","imageURL":"https://github.com/iamkun.png","key":"iamkun","page":null},"jeffersonlicet":{"name":"Jefferson Licet","alias":"jeffersonlicet","url":"https://github.com/jeffersonlicet","imageURL":"https://github.com/jeffersonlicet.png","key":"jeffersonlicet","page":null},"KohheePeace":{"name":"KohheePeace","alias":"KohheePeace","url":"https://github.com/KohheePeace","imageURL":"https://github.com/KohheePeace.png","key":"KohheePeace","page":null},"lukecollier":{"name":"Luke Collier","alias":"lukecollier","url":"https://github.com/lukecollier","imageURL":"https://github.com/lukecollier.png","key":"lukecollier","page":null},"mohrash92":{"name":"mohrash92","alias":"mohrash92","url":"https://github.com/mohrash92","imageURL":"https://github.com/mohrash92.png","key":"mohrash92","page":null},"nisarhassan12":{"name":"Nisar Hassan Naqvi","alias":"nisarhassan12","url":"https://github.com/nisarhassan12","imageURL":"https://github.com/nisarhassan12.png","key":"nisarhassan12","page":null},"paularmstrong":{"name":"Paul Armstrong","alias":"paularmstrong","url":"https://github.com/paularmstrong","imageURL":"https://github.com/paularmstrong.png","key":"paularmstrong","page":null},"phoqe":{"name":"Linus L\xe5ngberg","alias":"phoqe","url":"https://github.com/phoqe","imageURL":"https://github.com/phoqe.png","key":"phoqe","page":null},"rlamana":{"name":"Ram\xf3n Lamana","alias":"rlamana","url":"https://github.com/rlamana","imageURL":"https://github.com/rlamana.png","key":"rlamana","page":null},"ZachJW34":{"name":"ZachJW34","alias":"ZachJW34","url":"https://github.com/ZachJW34","imageURL":"https://github.com/ZachJW34.png","key":"ZachJW34","page":null},"amilajack":{"name":"Amila Welihinda","alias":"amilajack","url":"https://github.com/amilajack","imageURL":"https://github.com/amilajack.png","key":"amilajack","page":null},"balloob":{"name":"Paulus Schoutsen","alias":"balloob","url":"https://github.com/balloob","imageURL":"https://github.com/balloob.png","key":"balloob","page":null},"deniaz":{"name":"Robert","alias":"deniaz","url":"https://github.com/deniaz","imageURL":"https://github.com/deniaz.png","key":"deniaz","page":null},"hassanfarid":{"name":"Hassan Farid","alias":"hassanfarid","url":"https://github.com/hassanfarid","imageURL":"https://github.com/hassanfarid.png","key":"hassanfarid","page":null},"jartuso":{"name":"jartuso","alias":"jartuso","url":"https://github.com/jartuso","imageURL":"https://github.com/jartuso.png","key":"jartuso","page":null},"mohamedsgap":{"name":"Mohamed Abdel Nasser","alias":"mohamedsgap","url":"https://github.com/mohamedsgap","imageURL":"https://github.com/mohamedsgap.png","key":"mohamedsgap","page":null},"scottilee":{"name":"Scott Lee","alias":"scottilee","url":"https://github.com/scottilee","imageURL":"https://github.com/scottilee.png","key":"scottilee","page":null},"Zhencha0Cai":{"name":"Zhenchao Cai","alias":"Zhencha0Cai","url":"https://github.com/Zhencha0Cai","imageURL":"https://github.com/Zhencha0Cai.png","key":"Zhencha0Cai","page":null},"awalias":{"name":"awalias","alias":"awalias","url":"https://github.com/awalias","imageURL":"https://github.com/awalias.png","key":"awalias","page":null},"edwandr":{"name":"Elie Dutheil","alias":"edwandr","url":"https://github.com/edwandr","imageURL":"https://github.com/edwandr.png","key":"edwandr","page":null},"erubi":{"name":"Evan Rubinton","alias":"erubi","url":"https://github.com/erubi","imageURL":"https://github.com/erubi.png","key":"erubi","page":null},"galhavivi":{"name":"Gal Havivi","alias":"galhavivi","url":"https://github.com/galhavivi","imageURL":"https://github.com/galhavivi.png","key":"galhavivi","page":null},"Jeffail":{"name":"Ashley Jeffs","alias":"Jeffail","url":"https://github.com/Jeffail","imageURL":"https://github.com/Jeffail.png","key":"Jeffail","page":null},"jjwill":{"name":"Joshua Williams","alias":"jjwill","url":"https://github.com/jjwill","imageURL":"https://github.com/jjwill.png","key":"jjwill","page":null},"jonathanrdelgado":{"name":"Jonathan Delgado","alias":"jonathanrdelgado","url":"https://github.com/jonathanrdelgado","imageURL":"https://github.com/jonathanrdelgado.png","key":"jonathanrdelgado","page":null},"mterrel":{"name":"Mark Terrel","alias":"mterrel","url":"https://github.com/mterrel","imageURL":"https://github.com/mterrel.png","key":"mterrel","page":null},"OndrejNepozitek":{"name":"Ond\u0159ej Nepo\u017Eitek","alias":"OndrejNepozitek","url":"https://github.com/OndrejNepozitek","imageURL":"https://github.com/OndrejNepozitek.png","key":"OndrejNepozitek","page":null},"sdowding":{"name":"Scott Dowding","alias":"sdowding","url":"https://github.com/sdowding","imageURL":"https://github.com/sdowding.png","key":"sdowding","page":null},"trustyoo86":{"name":"Hanseung Yoo","alias":"trustyoo86","url":"https://github.com/trustyoo86","imageURL":"https://github.com/trustyoo86.png","key":"trustyoo86","page":null},"wgao19":{"name":"Wei Gao","alias":"wgao19","url":"https://github.com/wgao19","imageURL":"https://github.com/wgao19.png","key":"wgao19","page":null},"endiliey":{"name":"Endi","alias":"endiliey","url":"https://github.com/endiliey","imageURL":"https://github.com/endiliey.png","key":"endiliey","page":null},"janko":{"name":"Janko Marohni\u0107","alias":"janko","url":"https://github.com/janko","imageURL":"https://github.com/janko.png","key":"janko","page":null},"nickmccurdy":{"name":"Nick McCurdy","alias":"nickmccurdy","url":"https://github.com/nickmccurdy","imageURL":"https://github.com/nickmccurdy.png","key":"nickmccurdy","page":null},"TransmissionsDev":{"name":"t11s","alias":"TransmissionsDev","url":"https://github.com/TransmissionsDev","imageURL":"https://github.com/TransmissionsDev.png","key":"TransmissionsDev","page":null},"FeynmanDNA":{"name":"KYY","alias":"FeynmanDNA","url":"https://github.com/FeynmanDNA","imageURL":"https://github.com/FeynmanDNA.png","key":"FeynmanDNA","page":null},"qshiwu":{"name":"kaichu","alias":"qshiwu","url":"https://github.com/qshiwu","imageURL":"https://github.com/qshiwu.png","key":"qshiwu","page":null},"shivangna":{"name":"Shivangna Kaistha","alias":"shivangna","url":"https://github.com/shivangna","imageURL":"https://github.com/shivangna.png","key":"shivangna","page":null},"binarylogic":{"name":"Binary Logic","alias":"binarylogic","url":"https://github.com/binarylogic","imageURL":"https://github.com/binarylogic.png","key":"binarylogic","page":null},"gimdongwoo":{"name":"Dongwoo Gim","alias":"gimdongwoo","url":"https://github.com/gimdongwoo","imageURL":"https://github.com/gimdongwoo.png","key":"gimdongwoo","page":null},"ericcarboni":{"name":"Eric Carboni","alias":"ericcarboni","url":"https://github.com/ericcarboni","imageURL":"https://github.com/ericcarboni.png","key":"ericcarboni","page":null},"jamiedavenport":{"name":"Jamie Davenport","alias":"jamiedavenport","url":"https://github.com/jamiedavenport","imageURL":"https://github.com/jamiedavenport.png","key":"jamiedavenport","page":null},"kenning":{"name":"Nick McCormick","alias":"kenning","url":"https://github.com/kenning","imageURL":"https://github.com/kenning.png","key":"kenning","page":null},"vinnytheviking":{"name":"Vincent van der Walt","alias":"vinnytheviking","url":"https://github.com/vinnytheviking","imageURL":"https://github.com/vinnytheviking.png","key":"vinnytheviking","page":null}}}},"docusaurus-plugin-ideal-image":{},"docusaurus-theme-mermaid":{},"feature-requests-plugin":{},"client-module-test-plugin":{},"docusaurus-theme-live-codeblock":{},"swizzle-theme-tests":{},"docusaurus-bootstrap-plugin":{},"docusaurus-mdx-fallback-plugin":{}}}')}}]);