diff --git a/website/versioned_docs/version-2.0.0-alpha.38/creating-pages.md b/website/versioned_docs/version-2.0.0-alpha.38/creating-pages.md
deleted file mode 100644
index 0afcfdb9c5..0000000000
--- a/website/versioned_docs/version-2.0.0-alpha.38/creating-pages.md
+++ /dev/null
@@ -1,79 +0,0 @@
----
-id: creating-pages
-title: Creating Pages
----
-
-In this section, we will learn about creating ad-hoc pages in Docusaurus using React. This is most useful for creating one-off standalone pages like a showcase page, playground page or support page.
-
-## Adding a new page
-
-
-
-In the `/src/pages/` directory, create a file called `hello.js` with the following contents:
-
-```jsx
-import React from 'react';
-import Layout from '@theme/Layout';
-
-function Hello() {
- return (
-
-
-
- Edit pages/hello.js and save to reload.
-
-
-
- );
-}
-
-export default Hello;
-```
-
-Once you save the file, the development server will automatically reload the changes. Now open http://localhost:3000/hello, you will see the new page you just created.
-
-Each page doesn't come with any styling. You will need to import the `Layout` component from `@theme/Layout` and wrap your contents within that component if you want the navbar and/or footer to appear.
-
-## Routing
-
-If you are familiar with other static site generators like Jekyll and Next, this routing approach will feel familiar to you. Any JavaScript file you create under `/src/pages/` directory will be automatically converted to a website page, following the `/src/pages/` directory hierarchy. For example:
-
-- `/src/pages/index.js` → `/`
-- `/src/pages/test.js` → `/test`
-- `/src/pages/foo/test.js` → `/foo/test`
-- `/src/pages/foo/index.js` → `/foo`
-
-In this component-based development era, it is encouraged to co-locate your styling, markup and behavior together into components. Each page is a component, and if you need to customize your page design with your own styles, we recommend co-locating your styles with the page component in its own directory. For example, to create a "Support" page, you could do one of the following:
-
-- Add a `/src/pages/support.js` file
-- Create a `/src/pages/support/` directory and a `/src/pages/support/index.js` file.
-
-The latter is preferred as it has the benefits of letting you put files related to the page within that directory. For e.g. a CSS module file (`styles.module.css`) with styles meant to only be used on the "Support" page. **Note:** this is merely a recommended directory structure and you will still need to manually import the CSS module file within your component module (`support/index.js`).
-
-```sh
-my-website
-├── src
-│ └── pages
-│ ├── styles.module.css
-│ ├── index.js
-│ └── support
-│ ├── index.js
-│ └── styles.module.css
-.
-```
-
-## Using React
-
-React is used as the UI library to create pages. Every page component should export a React component and you can leverage on the expressiveness of React to build rich and interactive content.
-
-
diff --git a/website/versioned_docs/version-2.0.0-alpha.38/installation.md b/website/versioned_docs/version-2.0.0-alpha.38/installation.md
deleted file mode 100644
index a98051d0c7..0000000000
--- a/website/versioned_docs/version-2.0.0-alpha.38/installation.md
+++ /dev/null
@@ -1,96 +0,0 @@
----
-id: installation
-title: Installation
----
-
-Docusaurus is essentially a set of npm [packages](https://github.com/facebook/docusaurus/tree/master/packages) that can be installed over npm.
-
-## Requirements
-
-- [Node.js](https://nodejs.org/en/download/) version >= 8.10.0 or above (which can be checked by running `node -v`). You can use [nvm](https://github.com/nvm-sh/nvm) for managing multiple Node versions on a single machine installed
-- [Yarn](https://yarnpkg.com/en/) version >= 1.5 (which can be checked by running `yarn version`). Yarn is a performant package manager for JavaScript and replaces the `npm` client. It is not strictly necessary but highly encouraged.
-
-## Scaffold project website
-
-The easiest way to install Docusaurus is to use the command line tool that helps you scaffold a skeleton Docusaurus website. You can run this command anywhere in a new empty repository or within an existing repository, it will create a new directory containing the scaffolded files.
-
-```bash
-npx @docusaurus/init@next init [name] [template]
-```
-
-Example:
-
-```bash
-npx @docusaurus/init@next init my-website classic
-```
-
-If you do not specify `name` or `template`, it will prompt you for them. We recommend the `classic` template so that you can get started quickly and it contains features found in Docusaurus 1. The `classic` template contains `@docusaurus/preset-classic` which includes standard documentation, a blog, custom pages, and a CSS framework (with dark mode support). You can get up and running extremely quickly with the classic template and customize things later on when you have gained more familiarity with Docusaurus.
-
-## Project structure
-
-Assuming you chose the classic template and named your site `my-website`, you will see the following files generated under a new directory `my-website/`:
-
-```sh
-my-website
-├── blog
-│ ├── 2019-05-28-hola.md
-│ ├── 2019-05-29-hello-world.md
-│ └── 2020-05-30-welcome.md
-├── docs
-│ ├── doc1.md
-│ ├── doc2.md
-│ ├── doc3.md
-│ └── mdx.md
-├── package.json
-├── src
-│ ├── css
-│ │ └── custom.css
-│ └── pages
-│ ├── styles.module.css
-│ └── index.js
-├── static
-│ └── img
-├── docusaurus.config.js
-├── package.json
-├── README.md
-├── sidebars.js
-└── yarn.lock
-```
-
-### Project structure rundown
-
-- `/blog/` - Contains the blog markdown files. You can delete the directory if you do not want/need a blog. More details can be found in the [blog guide](blog.md).
-- `/docs/` - Contains the markdown files for the docs. Customize the order of the docs sidebar in `sidebars.js`. More details can be found in the [docs guide](markdown-features.mdx).
-- `/src/` - Non-documentation files like pages or custom React components. You don't have to strictly put your non-documentation files in here but putting them under a centralized directory makes it easier to specify in case you need to do some sort of linting/processing
- - `/src/pages` - Any files within this directory will be converted into a website page. More details can be found in the [pages guide](creating-pages.md).
-- `/static/` - Static directory. Any contents inside here will be copied into the root of the final `build` directory.
-- `/docusaurus.config.js` - A config file containing the site configuration. This is the equivalent of `siteConfig.js` in Docusaurus 1.
-- `/package.json` - A Docusaurus website is a React app. You can install and use any npm packages you like in them.
-- `/sidebar.js` - Used by the documentation to specify the order of documents in the sidebar.
-
-## Running the development server
-
-To preview your changes as you edit the files, you can run a local development server that will serve your website and it will reflect the latest changes.
-
-```bash npm2yarn
-cd my-website
-npm run start
-```
-
-By default, a browser window will open at http://localhost:3000.
-
-Congratulations! You have just created your first Docusaurus site! Browse around the site to see what's available.
-
-## Build
-
-Docusaurus is a modern static website generator so we need to build the website into a directory of static contents and put it on a web server so that it can be viewed. To build the website:
-
-```bash npm2yarn
-npm run build
-```
-
-and contents will be generated within the `/build` directory, which can be copied to any static file hosting service like [GitHub pages](https://pages.github.com/), [Now](https://zeit.co/now) or [Netlify](https://www.netlify.com/). Check out the docs on [deployment](deployment.md) for more details.
-
-## Problems?
-
-Ask for help on [Stack Overflow](https://stackoverflow.com/questions/tagged/docusaurus), on our [GitHub repository](https://github.com/facebook/docusaurus) or [Twitter](https://twitter.com/docusaurus).
diff --git a/website/versioned_docs/version-2.0.0-alpha.38/lifecycle-apis.md b/website/versioned_docs/version-2.0.0-alpha.38/lifecycle-apis.md
deleted file mode 100644
index 73fb577fa0..0000000000
--- a/website/versioned_docs/version-2.0.0-alpha.38/lifecycle-apis.md
+++ /dev/null
@@ -1,426 +0,0 @@
----
-id: lifecycle-apis
-title: Lifecycle APIs
----
-
-> :warning: _This section is a work in progress._
-
-Lifecycle APIs are shared by Themes and Plugins.
-
-## `getPathsToWatch()`
-
-Specifies the paths to watch for plugins and themes. The paths are watched by the dev server so that the plugin lifecycles are reloaded when contents in the watched paths change. Note that the plugins and themes modules are initially called with `context` and `options` from Node, which you may use to find the necessary directory information about the site.
-
-Example:
-
-```js {6-8}
-// docusaurus-plugin/src/index.js
-const path = require('path');
-module.exports = function(context, options) {
- return {
- name: 'docusaurus-plugin',
- getPathsToWatch() {
- const contentPath = path.resolve(context.siteDir, options.path);
- return [`${contentPath}/**/*.{ts,tsx}`);
- },
- };
-};
-```
-
-## `async loadContent()`
-
-Plugins should use this lifecycle to fetch from data sources (filesystem, remote API, headless CMS, etc) or doing some server processing.
-
-For example, this plugin below return a random integer between 1 to 10 as content;
-
-```js {6-7}
-// docusaurus-plugin/src/index.js
-const path = require('path');
-module.exports = function(context, options) {
- return {
- name: 'docusaurus-plugin',
- async loadContent() {
- return 1 + Math.floor(Math.random() * 10);
- },
- };
-};
-```
-
-## `async contentLoaded({content, actions})`
-
-Plugins should use the data loaded in `loadContent` and construct the pages/routes that consume the loaded data (optional).
-
-### `content`
-
-`contentLoaded` will be called _after_ `loadContent` is done, the return value of `loadContent()` will be passed to `contentLoaded` as `content`.
-
-### `actions`
-
-`actions` contain two functions:
-
-- `addRoute(config: RouteConfig): void`
-
-Create a route to add to the website.
-
-```typescript
-interface RouteConfig {
- path: string;
- component: string;
- modules?: RouteModule;
- routes?: RouteConfig[];
- exact?: boolean;
- priority?: number;
-}
-interface RouteModule {
- [module: string]: Module | RouteModule | RouteModule[];
-}
-type Module =
- | {
- path: string;
- __import?: boolean;
- query?: ParsedUrlQueryInput;
- }
- | string;
-```
-
-- `createData(name: string, data: any): Promise`
-
-A helper function to help you write some data (usually a string or JSON) to disk with in-built caching. It takes a file name relative to to your plugin's directory **(name)**, your data **(data)**, and will return a path to where the data is created.
-
-For example, this plugin below create a `/roll` page which display "You won xxxx" to user.
-
-```jsx
-// website/src/components/roll.js
-import React from 'react';
-
-export default function(props) {
- const {prizes} = props;
- const index = Math.floor(Math.random() * 3);
- return
You won ${prizes[index]}
;
-}
-```
-
-```javascript {5-20}
-// docusaurus-plugin/src/index.js
-module.exports = function(context, options) {
- return {
- name: 'docusaurus-plugin',
- async contentLoaded({content, actions}) {
- const {createData, addRoute} = actions;
- // create a data named 'prizes.json'
- const prizes = JSON.stringify(['$1', 'a cybertruck', 'nothing']);
- const prizesDataPath = await createData('prizes.json', prizes);
-
- // add '/roll' page using 'website/src/component/roll.js` as the component
- // and providing 'prizes' as props
- addRoute({
- path: '/roll',
- component: '@site/src/components/roll.js',
- modules: {
- prizes: prizesDataPath
- }
- exact: true,
- });
- },
- };
-};
-```
-
-## `configureWebpack(config, isServer, utils)`
-
-Modifies the internal webpack config. If the return value is a JavaScript object, it will be merged into the final config using [`webpack-merge`](https://github.com/survivejs/webpack-merge). If it is a function, it will be called and receive `config` as the first argument and an `isServer` flag as the argument argument.
-
-### `config`
-
-`configureWebpack` is called with `config` generated according to client/server build. You may treat this as the base config to be merged with.
-
-### `isServer`
-
-`configureWebpack` will be called both in server build and in client build. The server build receives `true` and the client build receives `false` as `isServer`.
-
-### `utils`
-
-The initial call to `configureWebpack` also receives a util object consists of three functions:
-
-- `getStyleLoaders(isServer: boolean, cssOptions: {[key: string]: any}): Loader[]`
-- `getCacheLoader(isServer: boolean, cacheOptions?: {}): Loader | null`
-- `getBabelLoader(isServer: boolean, babelOptions?: {}): Loader`
-
-You may use them to return your webpack configures conditionally.
-
-For example, this plugin below modify the webpack config to transpile `.foo` file.
-
-```js {5-12}
-// docusaurus-plugin/src/index.js
-module.exports = function(context, options) {
- return {
- name: 'docusaurus-plugin',
- configureWebpack(config, isServer, utils) {
- const {getCacheLoader} = utils;
- config.module.rules.push({
- test: /\.foo$/,
- use: [getCacheLoader(isServer), 'my-custom-webpack-loader'],
- });
- return config;
- },
- };
-};
-```
-
-## postBuild(props)
-
-Called when a (production) build finishes.
-
-```ts
-type Props = {
- siteDir: string;
- generatedFilesDir: string;
- siteConfig: DocusaurusConfig;
- outDir: string;
- baseUrl: string;
- headTags: string;
- preBodyTags: string;
- postBodyTags: string;
- routesPaths: string[];
- plugins: Plugin[];
-};
-```
-
-Example:
-
-```js {5-10}
-// docusaurus-plugin/src/index.js
-module.exports = function(context, options) {
- return {
- name: 'docusaurus-plugin',
- async postBuild({siteConfig = {}, routesPaths = [], outDir}) {
- // Print out to console all the rendered routes
- routesPaths.map(route => {
- console.log(route);
- });
- },
- };
-};
-```
-
-## `extendCli(cli)`
-
-Register an extra command to enhance the CLI of docusaurus. `cli` is [commander](https://www.npmjs.com/package/commander) object.
-
-Example:
-
-```js {5-12}
-// docusaurus-plugin/src/index.js
-module.exports = function(context, options) {
- return {
- name: 'docusaurus-plugin',
- extendCli(cli) {
- cli
- .command('roll')
- .description('Roll a random number between 1 and 1000')
- .action(() => {
- console.log(Math.floor(Math.random() * 1000 + 1));
- });
- },
- };
-};
-```
-
-## `injectHtmlTags()`
-
-Inject head and/or body html tags to Docusaurus generated html.
-
-```typescript
-function injectHtmlTags(): {
- headTags?: HtmlTags;
- preBodyTags?: HtmlTags;
- postBodyTags?: HtmlTags;
-};
-
-type HtmlTags = string | HtmlTagObject | (string | HtmlTagObject)[];
-
-interface HtmlTagObject {
- /**
- * Attributes of the html tag
- * E.g. `{'disabled': true, 'value': 'demo', 'rel': 'preconnect'}`
- */
- attributes?: {
- [attributeName: string]: string | boolean;
- };
- /**
- * The tag name e.g. `div`, `script`, `link`, `meta`
- */
- tagName: string;
- /**
- * The inner HTML
- */
- innerHTML?: string;
-}
-```
-
-Example:
-
-```js {5-29}
-// docusaurus-plugin/src/index.js
-module.exports = function(context, options) {
- return {
- name: 'docusaurus-plugin',
- injectHtmlTags() {
- return {
- headTags: [
- {
- tagName: 'link',
- attributes: {
- rel: 'preconnect',
- href: 'https://www.github.com',
- },
- },
- ],
- preBodyTags: [
- {
- tagName: 'script',
- attributes: {
- charset: 'utf-8',
- src: '/noflash.js',
- },
- },
- ],
- postBodyTags: [`
This is post body
`],
- };
- },
- };
-};
-```
-
-## `getThemePath()`
-
-Returns the path to the directory where the theme components can be found. When your users calls `swizzle`, `getThemePath` is called and its returned path is used to find your theme components.
-
-If you use the folder directory above, your `getThemePath` can be:
-
-```js {7-9}
-// my-theme/src/index.js
-const path = require('path');
-
-module.exports = function(context, options) {
- return {
- name: 'name-of-my-theme',
- getThemePath() {
- return path.resolve(__dirname, './theme');
- },
- };
-};
-```
-
-## `getClientModules()`
-
-Returns an array of paths to the modules that are to be imported in the client bundle. These modules are imported globally before React even renders the initial UI.
-
-As an example, to make your theme load a `customCss` object from `options` passed in by the user:
-
-```js {8-10}
-// my-theme/src/index.js
-const path = require('path');
-
-module.exports = function(context, options) {
- const {customCss} = options || {};
- return {
- name: 'name-of-my-theme',
- getClientModules() {
- return [customCss];
- },
- };
-};
-```
-
-
-
-## Example
-
-Here's a mind model for a presumptuous plugin implementation.
-
-```jsx
-const DEFAULT_OPTIONS = {
- // Some defaults.
-};
-
-// A JavaScript function that returns an object.
-// `context` is provided by Docusaurus. Example: siteConfig can be accessed from context.
-// `opts` is the user-defined options.
-module.exports = function(context, opts) {
- // Merge defaults with user-defined options.
- const options = {...DEFAULT_OPTIONS, ...options};
-
- return {
- // A compulsory field used as the namespace for directories to cache
- // the intermediate data for each plugin.
- // If you're writing your own local plugin, you will want it to
- // be unique in order not to potentially conflict with imported plugins.
- // A good way will be to add your own project name within.
- name: 'docusaurus-my-project-cool-plugin',
-
- async loadContent() {
- // The loadContent hook is executed after siteConfig and env has been loaded
- // You can return a JavaScript object that will be passed to contentLoaded hook
- },
-
- async contentLoaded({content, actions}) {
- // contentLoaded hook is done after loadContent hook is done
- // actions are set of functional API provided by Docusaurus. e.g: addRoute
- },
-
- async postBuild(props) {
- // after docusaurus finish
- },
-
- // TODO
- async postStart(props) {
- // docusaurus finish
- },
-
- // TODO
- afterDevServer(app, server) {
- // https://webpack.js.org/configuration/dev-server/#devserverbefore
- },
-
- // TODO
- beforeDevServer(app, server) {
- // https://webpack.js.org/configuration/dev-server/#devserverafter
- },
-
- configureWebpack(config, isServer) {
- // Modify internal webpack config. If returned value is an Object, it
- // will be merged into the final config using webpack-merge;
- // If the returned value is a function, it will receive the config as the 1st argument and an isServer flag as the 2nd argument.
- },
-
- getPathsToWatch() {
- // Path to watch
- },
-
- getThemePath() {
- // Returns the path to the directory where the theme components can
- // be found.
- },
-
- getClientModules() {
- // Return an array of paths to the modules that are to be imported
- // in the client bundle. These modules are imported globally before
- // React even renders the initial UI.
- },
-
- extendCli(cli) {
- // Register an extra command to enhance the CLI of docusaurus
- },
-
- injectHtmlTags() {
- // Inject head and/or body html tags
- },
- };
-};
-```
diff --git a/website/versioned_docs/version-2.0.0-alpha.38/markdown-features.mdx b/website/versioned_docs/version-2.0.0-alpha.38/markdown-features.mdx
deleted file mode 100644
index 34c62c0ff0..0000000000
--- a/website/versioned_docs/version-2.0.0-alpha.38/markdown-features.mdx
+++ /dev/null
@@ -1,464 +0,0 @@
----
-id: markdown-features
-title: Markdown Features
-description: Docusaurus uses GitHub Flavored Markdown (GFM). Find out more about Docusaurus-specific features when writing Markdown.
----
-
-
-
-Documentation is one of your product's interfaces with your users. A well-written and well-organized set of docs helps your users understand your product quickly. Our aligned goal here is to help your users find and understand the information they need, as quickly as possible.
-
-Docusaurus 2 uses modern tooling to help you compose your interactive documentations with ease. You may embed React components, or build live coding blocks where your users may play with the code on the spot. Start sharing your eureka moments with the code your audience cannot walk away from. It is perhaps the most effective way of attracting potential users.
-
-In this section, we'd like to introduce you to the tools we've picked that we believe will help you build powerful documentation. Let us walk you through with an example.
-
-**Note:** All the following content assumes you are using `docusaurus-preset-classic`.
-
----
-
-Markdown is a syntax that enables you to write formatted content in a readable syntax. The [standard Markdown syntax](https://daringfireball.net/projects/markdown/syntax) is supported and we use [MDX](https://mdxjs.com/) as the parsing engine, which can do much more than just parsing Markdown. More on that later.
-
-Create a markdown file, `greeting.md`, and place it under the `docs` directory.
-
-```bash
-website # root directory of your site
-├── docs
-│ └── greeting.md
-├── src
-│ └── pages
-├── docusaurus.config.js
-├── ...
-```
-
-
-
-In the top of the file, specify `id` the `title` in the front matter, so that Docusaurus will pick them up correctly when generating your site.
-
-```yml
----
-id: greeting
-title: Hello
----
-
-## Hello from Docusaurus
-
-Are you ready to create the documentation site for your open source project?
-
-### Headers
-
-will show up on the table of contents on the upper right
-
-So that your users will know what this page is all about without scrolling down or even without reading too much.
-
-### Only h2 and h3 will be in the toc
-
-The headers are well-spaced so that the hierarchy is clear.
-
-- lists will help you
-- present the key points
-- that you want your users to remember
- - and you may nest them
- - multiple times
-```
-
-This will render in the browser as follows:
-
-import BrowserWindow from '@site/src/components/BrowserWindow';
-
-
-
Hello from Docusaurus
-
-Are you ready to create the documentation site for your open source project?
-
-
Headers
-
-will show up on the table of contents on the upper right
-
-So that your users will know what this page is all about without scrolling down or even without reading too much.
-
-
Only h2 and h3 will be in the toc
-
-The headers are well-spaced so that the hierarchy is clear.
-
-- lists will help you
-- present the key points
-- that you want your users to remember
- - and you may nest them
- - multiple times
-
-
-
-### Markdown Headers
-
-Documents use the following markdown header fields that are enclosed by a line `---` on either side:
-
-- `id`: A unique document id. If this field is not present, the document's `id` will default to its file name (without the extension).
-- `title`: The title of your document. If this field is not present, the document's `title` will default to its `id`.
-- `hide_title`: Whether to hide the title at the top of the doc. By default it is `false`.
-- `hide_table_of_contents`: Whether to hide the table of contents to the right. By default it is `false`.
-- `sidebar_label`: The text shown in the document sidebar and in the next/previous button for this document. If this field is not present, the document's `sidebar_label` will default to its `title`.
-- `custom_edit_url`: The URL for editing this document. If this field is not present, the document's edit URL will fall back to `editUrl` from options fields passed to `docusaurus-plugin-content-docs`.
-- `keywords`: Keywords meta tag for the document page, for search engines.
-- `description`: The description of your document, which will become the `` and `` in ``, used by search engines. If this field is not present, it will default to the first line of the contents.
-- `image`: Cover or thumbnail image that will be used when displaying the link to your post.
-
-Example:
-
-```yml
----
-id: doc-markdown
-title: Markdown Features
-hide_title: false
-hide_table_of_contents: false
-sidebar_label: Markdown :)
-custom_edit_url: https://github.com/facebook/docusaurus/edit/master/docs/api-doc-markdown.md
-description: How do I find you when I cannot solve this problem
-keywords:
- - docs
- - docusaurus
-image: https://i.imgur.com/mErPwqL.png
----
-```
-
-### Embedding React components
-
-Docusaurus has built-in support for [MDX](https://mdxjs.com), which allows you to write JSX within your Markdown files and render them as React components.
-
-**Note 1:** While both `.md` and `.mdx` files are parsed using MDX, some of the syntax are treated slightly differently. For the most accurate parsing and better editor support, we recommend using the `.mdx` extension for files containing MDX syntax. Let's rename the previous file to `greeting.mdx`.
-
-**Note 2:** Since all doc files are parsed using MDX, any HTML is treated as JSX. Therefore, if you need to inline-style a component, follow JSX flavor and provide style objects. This behavior is different from Docusaurus 1. See also [Migrating from v1 to v2](./migrating-from-v1-to-v2.md#convert-style-attributes-to-style-objects-in-mdx).
-
-Try this block here:
-
-```jsx
-export const Highlight = ({children, color}) => (
-
- {children}
-
-);
-
-Docusaurus green and Facebook blue are my favorite colors.
-
-I can write **Markdown** alongside my _JSX_!
-```
-
-Notice how it renders both the markup from your React component and the Markdown syntax:
-
-export const Highlight = ({children, color}) => (
-
- {children}
-
-);
-
-
-Docusaurus green and Facebook blue are my favorite colors.
-
-I can write **Markdown** alongside my _JSX_!
-
-
-
-
-
-You can also import your own components defined in other files or third-party components installed via npm! Check out the [MDX docs](https://mdxjs.com/) to see what other fancy stuff you can do with MDX.
-
-### Referencing other documents
-
-If you want to reference another document file, you should use the name of the document you want to reference. Docusaurus will convert the file path to be the final website path (and remove the `.md`).
-
-For example, if you are in `doc2.md` and you want to reference `doc1.md` and `folder/doc3.md`:
-
-```md
-I am referencing a [document](doc1.md). Reference to another [document in a folder](folder/doc3.md)
-[Relative document](../doc2.md) referencing works as well.
-```
-
-One benefit of this approach is that the links to external files will still work if you are viewing the file on GitHub.
-
-### Syntax highlighting
-
-Code blocks are text blocks wrapped around by strings of 3 backticks. You may check out [this reference](https://github.com/mdx-js/specification) for specifications of MDX.
-
- ```jsx
- console.log('Every repo must come with a mascot.');
- ```
-
-
-
-Use the matching language meta string for your code block, and Docusaurus will pick up syntax highlighting automatically, powered by [Prism React Renderer](https://github.com/FormidableLabs/prism-react-renderer).
-
-```jsx
-console.log('Every repo must come with a mascot.');
-```
-
-By default, the Prism [syntax highlighting theme](https://github.com/FormidableLabs/prism-react-renderer#theming) we use is [Palenight](https://github.com/FormidableLabs/prism-react-renderer/blob/master/src/themes/palenight.js). You can change this to another theme by passing `theme` field in `prism` as `themeConfig` in your docusaurus.config.js.
-
-For example, if you prefer to use the `dracula` highlighting theme:
-
-```js {4}
-// docusaurus.config.js
-module.exports = {
- themeConfig: {
- prism: {
- theme: require('prism-react-renderer/themes/dracula'),
- },
- },
-};
-```
-
-By default, Docusaurus comes with this subset of [commonly used languages](https://github.com/FormidableLabs/prism-react-renderer/blob/master/src/vendor/prism/includeLangs.js).
-
-To add syntax highlighting for any of the other [Prism supported languages](https://prismjs.com/#supported-languages), install the `prismjs` npm package, then swizzle the `CodeBlock` component and add the desired language(s) there.
-
-For example, if you want to add highlighting for the `powershell` language:
-
-```js
-// src/theme/CodeBlock/index.js
-import Prism from 'prism-react-renderer/prism';
-(typeof global !== 'undefined' ? global : window).Prism = Prism;
-require('prismjs/components/prism-powershell');
-```
-
-### Line highlighting
-
-You can bring emphasis to certain lines of code by specifying line ranges after the language meta string (leave a space after the language).
-
- ```jsx {3}
- function HighlightSomeText(highlight) {
- if (highlight) {
- return 'This text is highlighted!';
- }
-
- return 'Nothing highlighted';
- }
- ```
-
-```jsx {3}
-function HighlightSomeText(highlight) {
- if (highlight) {
- return 'This text is highlighted!';
- }
-
- return 'Nothing highlighted';
-}
-```
-
-To accomplish this, Docusaurus adds the `docusaurus-highlight-code-line` class to the highlighted lines. You will need to define your own styling for this CSS, possibly in your `src/css/custom.css` with a custom background color which is dependent on your selected syntax highlighting theme. The color given below works for the default highlighting theme (Palenight), so if you are using another theme will have to tweak the color accordingly.
-
-```css
-/* /src/css/custom.css */
-.docusaurus-highlight-code-line {
- background-color: rgb(72, 77, 91);
- display: block;
- margin: 0 calc(-1 * var(--ifm-pre-padding));
- padding: 0 var(--ifm-pre-padding);
-}
-```
-
-To highlight multiple lines, separate the line numbers by commas or use the range syntax to select a chunk of lines. This feature uses the `parse-number-range` library and you can find [more syntax](<(https://www.npmjs.com/package/parse-numeric-range)>) on their project details.
-
- ```jsx {1,4-6,11}
- import React from 'react';
-
- function MyComponent(props) {
- if (props.isBar) {
- return
-
- );
-}
-```
-
-### CSS modules
-
-To style your components using [CSS Modules](https://github.com/css-modules/css-modules), name your stylesheet files with the `.module.css` suffix (e.g. `welcome.module.css`). webpack will load such CSS files as CSS modules and you have to reference the class names from the imported CSS module (as opposed to using plain strings). This is similar to the convention used in [Create React App](https://facebook.github.io/create-react-app/docs/adding-a-css-modules-stylesheet).
-
-```css
-/* styles.module.css */
-.main {
- padding: 12px;
-}
-
-.heading {
- font-weight: bold;
-}
-
-.contents {
- color: #ccc;
-}
-```
-
-```jsx
-import styles from './styles.module.css';
-
-function MyComponent() {
- return (
-
-
;
-};
-```
-
-> If you just want to use those fields on the client side, you could create your own JS files and import them as ES6 modules, there is no need to put them in `docusaurus.config.js`.
diff --git a/website/versioned_docs/version-2.0.0-alpha.42/contributing.md b/website/versioned_docs/version-2.0.0-alpha.42/contributing.md
deleted file mode 100644
index 4099d63be7..0000000000
--- a/website/versioned_docs/version-2.0.0-alpha.42/contributing.md
+++ /dev/null
@@ -1,190 +0,0 @@
----
-id: contributing
-title: Contributing
----
-
-[Docusaurus 2](https://v2.docusaurus.io) is currently under alpha development. We have [early adopters who already started using it](/showcase). We are now welcoming contributors to collaborate on the next Docusaurus.
-
-The [Open Source Guides](https://opensource.guide/) website has a collection of resources for individuals, communities, and companies who want to learn how to run and contribute to an open source project. Contributors and people new to open source alike will find the following guides especially useful:
-
-- [How to Contribute to Open Source](https://opensource.guide/how-to-contribute/)
-- [Building Welcoming Communities](https://opensource.guide/building-community/)
-
-## [Code of Conduct](https://code.fb.com/codeofconduct)
-
-Facebook has adopted a Code of Conduct that we expect project participants to adhere to. Please read [the full text](https://code.fb.com/codeofconduct) so that you can understand what actions will and will not be tolerated.
-
-## Get involved
-
-There are many ways to contribute to Docusaurus, and many of them do not involve writing any code. Here's a few ideas to get started:
-
-- Start using Docusaurus 2! Go through the [Getting Started](installation.md) guides. Does everything work as expected? If not, we're always looking for improvements. Let us know by [opening an issue](#reporting-new-issues).
-- Look through the [v2.0 issues](https://github.com/facebook/docusaurus/labels/v2). If you find an issue you would like to fix, [open a pull request](#your-first-pull-request). Issues tagged as [_Good first issue_](https://github.com/facebook/docusaurus/labels/Good%20first%20issue) are a good place to get started.
-- Help us making the docs better. File an issue if you find anything that is confusing or can be improved. We also have [an umbrella issue for v2 docs](https://github.com/facebook/docusaurus/issues/1640) where we are planning and working on all v2 docs. You may adopt a doc piece there to work on.
-- Take a look at the [features requested](https://github.com/facebook/docusaurus/labels/enhancement) by others in the community and consider opening a pull request if you see something you want to work on.
-
-Contributions are very welcome. If you think you need help planning your contribution, please ping us on Twitter at [@docusaurus](https://twitter.com/docusaurus) and let us know you are looking for a bit of help.
-
-### Join our Discord channel
-
-To participate in Docusaurus 2 dev, join the [#docusaurus-2-dev](https://discord.gg/Je6Ash6) channel.
-
-## Our development process
-
-Docusaurus uses [GitHub](https://github.com/facebook/docusaurus) as its source of truth. The core team will be working directly there. All changes will be public from the beginning.
-
-When a change made on GitHub is approved, it will be checked by our continuous integration system, CircleCI.
-
-### Reporting new issues
-
-When [opening a new issue](https://github.com/facebook/docusaurus/issues/new/choose), always make sure to fill out the issue template. **This step is very important!** Not doing so may result in your issue not managed in a timely fashion. Don't take this personally if this happens, and feel free to open a new issue once you've gathered all the information required by the template.
-
-- **One issue, one bug:** Please report a single bug per issue.
-- **Provide reproduction steps:** List all the steps necessary to reproduce the issue. The person reading your bug report should be able to follow these steps to reproduce your issue with minimal effort.
-
-### Reporting bugs
-
-We use [GitHub Issues](https://github.com/facebook/docusaurus/issues) for our public bugs. If you would like to report a problem, take a look around and see if someone already opened an issue about it. If you a are certain this is a new, unreported bug, you can submit a [bug report](#reporting-new-issues).
-
-If you have questions about using Docusaurus, contact the Docusaurus Twitter account at [@docusaurus](https://twitter.com/docusaurus), and we will do our best to answer your questions.
-
-You can also file issues as [feature requests or enhancements](https://github.com/facebook/docusaurus/labels/feature). If you see anything you'd like to be implemented, create an issue with [feature template](https://raw.githubusercontent.com/facebook/docusaurus/master/.github/ISSUE_TEMPLATE/feature.md)
-
-### Reporting security bugs
-
-Facebook has a [bounty program](https://www.facebook.com/whitehat/) for the safe disclosure of security bugs. With that in mind, please do not file public issues; go through the process outlined on that page.
-
-## Working on Docusaurus code
-
-### Installation
-
-1. Ensure you have [Yarn](https://yarnpkg.com/) installed
-2. After cloning the repository, run `yarn install` in the root of the repository
-3. To start a local development server serving the Docusaurus docs, go into the `website` directory and run `yarn start`
-
-### Semantic commit messages
-
-See how a minor change to your commit message style can make you a better programmer.
-
-Format: `(): `
-
-`` is optional
-
-**Example**
-
-```
-feat: allow overriding of webpack config
-^--^ ^------------^
-| |
-| +-> Summary in present tense.
-|
-+-------> Type: chore, docs, feat, fix, refactor, style, or test.
-```
-
-The various types of commits:
-
-- `feat`: (new feature for the user, not a new feature for build script)
-- `fix`: (bug fix for the user, not a fix to a build script)
-- `docs`: (changes to the documentation)
-- `style`: (formatting, missing semi colons, etc; no production code change)
-- `refactor`: (refactoring production code, eg. renaming a variable)
-- `test`: (adding missing tests, refactoring tests; no production code change)
-- `chore`: (updating grunt tasks etc; no production code change)
-
-Use lower case not title case!
-
-### Code conventions
-
-#### Style guide
-
-[Prettier](https://prettier.io) will catch most styling issues that may exist in your code. You can check the status of your code styling by simply running `npm run prettier`.
-
-However, there are still some styles that Prettier cannot pick up.
-
-#### General
-
-- **Most important: Look around.** Match the style you see used in the rest of the project. This includes formatting, naming files, naming things in code, naming things in documentation.
-- "Attractive"
-
-#### Documentation
-
-- Do not wrap lines at 80 characters - configure your editor to soft-wrap when editing documentation.
-
-## Pull requests
-
-### Your first pull request
-
-So you have decided to contribute code back to upstream by opening a pull request. You've invested a good chunk of time, and we appreciate it. We will do our best to work with you and get the PR looked at.
-
-Working on your first Pull Request? You can learn how from this free video series:
-
-[**How to Contribute to an Open Source Project on GitHub**](https://egghead.io/courses/how-to-contribute-to-an-open-source-project-on-github)
-
-We have a list of [beginner friendly issues](https://github.com/facebook/docusaurus/labels/good%20first%20issue) to help you get your feet wet in the Docusaurus codebase and familiar with our contribution process. This is a great place to get started.
-
-### Proposing a change
-
-If you would like to request a new feature or enhancement but are not yet thinking about opening a pull request, you can also file an issue with [feature template](https://github.com/facebook/docusaurus/issues/new?template=feature.md).
-
-If you intend to change the public API (e.g., something in `docusaurus.config.js`), or make any non-trivial changes to the implementation, we recommend filing an issue with [proposal template](https://github.com/facebook/docusaurus/issues/new?template=proposal.md) and including `[Proposal]` in the title. This lets us reach an agreement on your proposal before you put significant effort into it. These types of issues should be rare.
-
-If you're only fixing a bug, it's fine to submit a pull request right away but we still recommend to file an issue detailing what you're fixing. This is helpful in case we don't accept that specific fix but want to keep track of the issue.
-
-### Sending a pull request
-
-Small pull requests are much easier to review and more likely to get merged. Make sure the PR does only one thing, otherwise please split it. It is recommended to follow this [commit message style](#semantic-commit-messages).
-
-Please make sure the following is done when submitting a pull request:
-
-1. Fork [the repository](https://github.com/facebook/docusaurus) and create your branch from `master`.
-1. Add the copyright notice to the top of any code new files you've added.
-1. Describe your [test plan](#test-plan) in your pull request description. Make sure to [test your changes](https://github.com/facebook/docusaurus/blob/master/admin/testing-changes-on-Docusaurus-itself.md)!
-1. Make sure your code lints (`yarn prettier && yarn lint`).
-1. Make sure your Jest tests pass (`yarn test`).
-1. If you haven't already, [sign the CLA](https://code.facebook.com/cla).
-
-All pull requests should be opened against the `master` branch.
-
-#### Test plan
-
-A good test plan has the exact commands you ran and their output, provides screenshots or videos if the pull request changes UI.
-
-- If you've changed APIs, update the documentation.
-
-#### Breaking changes
-
-When adding a new breaking change, follow this template in your pull request:
-
-```md
-### New breaking change here
-
-- **Who does this affect**:
-- **How to migrate**:
-- **Why make this breaking change**:
-- **Severity (number of people affected x effort)**:
-```
-
-#### Copyright header for source code
-
-Copy and paste this to the top of your new file(s):
-
-```js
-/**
- * Copyright (c) 2017-present, Facebook, Inc.
- *
- * This source code is licensed under the MIT license found in the
- * LICENSE file in the root directory of this source tree.
- */
-```
-
-#### Contributor License Agreement (CLA)
-
-In order to accept your pull request, we need you to submit a CLA. You only need to do this once, so if you've done this for another Facebook open source project, you're good to go. If you are submitting a pull request for the first time, the Facebook GitHub Bot will reply with a link to the CLA form. You may also [complete your CLA here](https://code.facebook.com/cla).
-
-### What happens next?
-
-The core Docusaurus team will be monitoring for pull requests. Do help us by keeping pull requests consistent by following the guidelines above.
-
-## License
-
-By contributing to Docusaurus, you agree that your contributions will be licensed under its MIT license.
diff --git a/website/versioned_docs/version-2.0.0-alpha.42/deployment.md b/website/versioned_docs/version-2.0.0-alpha.42/deployment.md
deleted file mode 100644
index f12cf898b7..0000000000
--- a/website/versioned_docs/version-2.0.0-alpha.42/deployment.md
+++ /dev/null
@@ -1,148 +0,0 @@
----
-id: deployment
-title: Deployment
----
-
-To build the static files of your website for production, run:
-
-```bash npm2yarn
-npm run build
-```
-
-Once it finishes, you should see the production build under the `build/` directory.
-
-You can deploy your site to static site hosting services such as [ZEIT Now](https://zeit.co/now), [GitHub Pages](https://pages.github.com/), [Netlify](https://www.netlify.com/), and [Render](https://render.com/static-sites). Docusaurus sites are statically rendered so they work without JavaScript too!
-
-## Deploying to ZEIT Now
-
-Deploying your Docusaurus project to [ZEIT Now](https://zeit.co/now) will provide you with [various benefits](https://zeit.co/now) in the areas of performance and ease of use.
-
-Most importantly, however, deploying a Docusaurus project only takes a couple seconds:
-
-1. First, install their [command-line interface](https://zeit.co/download):
-
-```bash
-npm i -g now
-```
-
-2. Run a single command inside the root directory of your project:
-
-```bash
-now
-```
-
-**That's all.** Your docs will automatically be deployed.
-
-Now you can connect your site to [GitHub](https://zeit.co/github) or [GitLab](https://zeit.co/gitlab) to automatically receive a new deployment every time you push a commit.
-
-## Deploying to GitHub Pages
-
-Docusaurus provides a easy way to publish to GitHub Pages.
-
-### `docusaurus.config.js` settings
-
-First, modify your `docusaurus.config.js` and add the required params:
-
-| Name | Description |
-| --- | --- |
-| `organizationName` | The GitHub user or organization that owns the repository. If you are the owner, it is your GitHub username. In the case of Docusaurus, it is "_facebook_" which is the GitHub organization that owns Docusaurus. |
-| `projectName` | The name of the GitHub repository. For example, the repository name for Docusaurus is "docusaurus", so the project name is "docusaurus". |
-| `url` | URL for your GitHub Page's user/organization page. This is commonly https://_username_.github.io. |
-| `baseUrl` | Base URL for your project. For projects hosted on GitHub pages, it follows the format "/_projectName_/". For https://github.com/facebook/docusaurus, `baseUrl` is `/docusaurus/`. |
-
-In case you want to use your custom domain for GitHub Pages, create a `CNAME` file in the `static` directory. Anything within the `static` directory will be copied to the root of the `build` directory for deployment.
-
-You may refer to GitHub Pages' documentation [User, Organization, and Project Pages](https://help.github.com/en/articles/user-organization-and-project-pages) for more details.
-
-Example:
-
-```jsx {3-6}
-module.exports = {
- ...
- url: 'https://endiliey.github.io', // Your website URL
- baseUrl: '/',
- projectName: 'endiliey.github.io',
- organizationName: 'endiliey'
- ...
-}
-```
-
-### Environment settings
-
-Specify the Git user as an environment variable.
-
-| Name | Description |
-| --- | --- |
-| `GIT_USER` | The username for a GitHub account that has commit access to this repo. For your own repositories, this will usually be your GitHub username. The specified `GIT_USER` must have push access to the repository specified in the combination of `organizationName` and `projectName`. |
-
-There are two more optional parameters that are set as environment variables:
-
-| Name | Description |
-| --- | --- |
-| `USE_SSH` | Set to `true` to use SSH instead of the default HTTPS for the connection to the GitHub repo. |
-| `CURRENT_BRANCH` | The branch that contains the latest docs changes that will be deployed. Usually, the branch will be `master`, but it could be any branch (default or otherwise) except for `gh-pages`. If nothing is set for this variable, then the current branch will be used. |
-
-### Deploy
-
-Finally, to deploy your site to GitHub Pages, run:
-
-**Bash**
-
-```bash
-GIT_USER= yarn deploy
-```
-
-**Windows**
-
-```batch
-cmd /C "set "GIT_USER=" && yarn deploy"
-```
-
-
-
-## Deploying to Netlify
-
-To deploy your Docusaurus 2 sites to [Netlify](https://www.netlify.com/), first make sure the following options are properly configured:
-
-```js {3-4}
-// docusaurus.config.js
-module.exports = {
- url: 'https://docusaurus-2.netlify.com', // url to your site with no trailing slash
- baseUrl: '/', // base directory of your site relative to your repo
-};
-```
-
-Then, [create your site with Netlify](https://app.netlify.com/start).
-
-While you set up the site, specify the build commands and directories as follows:
-
-- build command: `npm run build`
-- build directory: `build`
-
-If you did not configure these build options, you may still go to "Site settings" -> "Build and deploy" after your site is created.
-
-Once properly configured with the above options, your site should deploy and automatically redeploy upon merging to your deploy branch, which defaults to `master`.
-
-## Deploying to Render
-
-Render offers [free static site hosting](https://render.com/docs/static-sites) with fully managed SSL, custom domains, a global CDN and continuous auto deploys from your Git repo. Deploy your app in just a few minutes by following these steps.
-
-1. Create a new **Web Service** on Render, and give Render permission to access your Docusaurus repo.
-
-2. Select the branch to deploy. The default is `master`.
-
-3. Enter the following values during creation.
-
- | Field | Value |
- | --------------------- | ------------- |
- | **Environment** | `Static Site` |
- | **Build Command** | `yarn build` |
- | **Publish Directory** | `build` |
-
-That's it! Your app will be live on your Render URL as soon as the build finishes.
diff --git a/website/versioned_docs/version-2.0.0-alpha.42/design-principles.md b/website/versioned_docs/version-2.0.0-alpha.42/design-principles.md
deleted file mode 100644
index 05d13d38b7..0000000000
--- a/website/versioned_docs/version-2.0.0-alpha.42/design-principles.md
+++ /dev/null
@@ -1,30 +0,0 @@
----
-id: design-principles
-title: Design Principles
----
-
-> :warning: _This section is a work in progress._
-
-- **Little to learn** - Docusaurus should be easy to learn and use as the API is quite small. Most things will still be achievable by users, even if it takes them more code and more time to write. Not having abstractions is better than having the wrong abstractions, and we don't want users to have to hack around the wrong abstractions. Mandatory talk - [Minimal API Surface Area](https://www.youtube.com/watch?v=4anAwXYqLG8).
-- **Intuitive** - Users will not feel overwhelmed when looking at the project directory of a Docusaurus project or adding new features. It should look intuitive and easy to build on top of, using approaches they are familiar with.
-- **Layered architecture** - The separations of concerns between each layer of our stack (content/theming/styling) should be clear - well-abstracted and modular.
-- **Sensible defaults** - Common and popular performance optimizations and configurations will be done for users but they are given the option to override them.
-- **No vendor-lock in** - Users are not required to use the default plugins or CSS, although they are highly encouraged to. Certain core lower-level infra level pieces like React Loadable, React Router cannot be swapped because we do default performance optimization on them. But not higher level ones, such as choice of Markdown engines, CSS frameworks, CSS methodology will be entirely up to users.
-
-## How Docusaurus works
-
-
-
-We believe that as developers, knowing how a library works is helpful in allowing us to become better at using it. Hence we're dedicating effort into explaining the architecture and various components of Docusaurus with the hope that users reading it will gain a deeper understanding of the tool and be even more proficient in using it.
-
-
diff --git a/website/versioned_docs/version-2.0.0-alpha.42/docusaurus-core.md b/website/versioned_docs/version-2.0.0-alpha.42/docusaurus-core.md
deleted file mode 100644
index 80bda8f829..0000000000
--- a/website/versioned_docs/version-2.0.0-alpha.42/docusaurus-core.md
+++ /dev/null
@@ -1,161 +0,0 @@
----
-id: docusaurus-core
-title: Docusaurus Client API
-sidebar_label: Client API
----
-
-Docusaurus provides some API on client that can be helpful when building your site.
-
-## `Head`
-
-This reusable React component will manage all of your changes to the document head. It takes plain HTML tags and outputs plain HTML tags and is beginner-friendly. It is a wrapper around [React Helmet](https://github.com/nfl/react-helmet).
-
-Usage Example:
-
-```jsx {2,6,11}
-import React from 'react';
-import Head from '@docusaurus/Head';
-
-const MySEO = () => (
- <>
-
-
-
- My Title
-
-
- >
-);
-```
-
-Nested or latter components will override duplicate usages:
-
-```jsx {2,5,8,11}
-
-
- My Title
-
-
-
-
-
- Nested Title
-
-
-
-
-```
-
-Outputs
-
-```html
-
- Nested Title
-
-
-```
-
-## `Link`
-
-This component enables linking to internal pages as well as a powerful performance feature called preloading. Preloading is used to prefetch resources so that the resources are fetched by the time the user navigates with this component. We use an `IntersectionObserver` to fetch a low-priority request when the `` is in the viewport and then use an `onMouseOver` event to trigger a high-priority request when it is likely that a user will navigate to the requested resource.
-
-The component is a wrapper around react-router’s `` component that adds useful enhancements specific to Docusaurus. All props are passed through to react-router’s `` component.
-
-```jsx {2,7}
-import React from 'react';
-import Link from '@docusaurus/Link';
-
-const Page = () => (
-
-
- Check out my blog!
-
-
- {/* Note that external links still use `a` tags. */}
- Follow me on Twitter!
-
-
-);
-```
-
-### `to`: string
-
-The target location to navigate to. Example: `/docs/introduction`.
-
-```jsx
-
-```
-
-### `activeClassName`: string
-
-The class to give the `` when it is active. The default given class is `active`. This will be joined with the `className` prop.
-
-```jsx {1}
-
- FAQs
-
-```
-
-## `useDocusaurusContext`
-
-React Hooks to access Docusaurus Context. Context contains `siteConfig` object from [docusaurus.config.js](docusaurus.config.js.md).
-
-```ts
-interface DocusaurusContext {
- siteConfig?: DocusaurusConfig;
-}
-```
-
-Usage example:
-
-```jsx {2,5}
-import React from 'react';
-import useDocusaurusContext from '@docusaurus/useDocusaurusContext';
-
-const Test = () => {
- const context = useDocusaurusContext();
- const {siteConfig = {}} = context;
- const {title} = siteConfig;
-
- return
{title}
;
-};
-```
-
-## `useBaseUrl`
-
-React Hook to automatically append `baseUrl` to a string automatically. This is particularly useful if you don't want to hardcode your baseUrl.
-
-Example usage:
-
-```jsx {3,11}
-import React, {useEffect} from 'react';
-import Link from '@docusaurus/Link';
-import useBaseUrl from '@docusaurus/useBaseUrl';
-
-function Help() {
- return (
-
-
Browse the docs
-
- Learn more about Docusaurus using the{' '}
- official documentation
-