Markdown .mdx tests
This is a page generated from Markdown to illustrate the Markdown page feature and test some edge cases.
Useful information.
function Button() { return ( <button type="button" onClick={() => alert('hey')}> Click me! </button> ); }
Using absolute path
Tab
- Apple
 - Orange
 - Banana
 
This is an apple 🍎
This is an orange 🍊
This is a banana 🍌
Comments
Html comment:
Html comment multi-line:
MDX comment:
MDX comment multi-line:
Import code block from source code file
Let's say you have a React component.
You can import and use it in MDX:
import MyComponent from './myComponent';
<MyComponent />;
MyComponent rendered !
bool=false
But you can also display its source code directly in MDX, thanks to Webpack raw-loader
import CodeBlock from '@theme/CodeBlock';
import MyComponentSource from '!!raw-loader!./myComponent';
<CodeBlock className="language-jsx">{MyComponentSource}</CodeBlock>;
/**
 * Copyright (c) Facebook, Inc. and its affiliates.
 *
 * This source code is licensed under the MIT license found in the
 * LICENSE file in the root directory of this source tree.
 */
import React, {useState} from 'react';
export default function MyComponent() {
  const [bool, setBool] = useState(false);
  return (
    <div>
      <p>MyComponent rendered !</p>
      <p>bool={bool ? 'true' : 'false'}</p>
      <p>
        <button onClick={() => setBool((b) => !b)}>toggle bool</button>
      </p>
    </div>
  );
}
Test
function Demo() { useEffect(() => console.log('mount'), []); return null; }
Code block test
function Clock(props) {
  const [date, setDate] = useState(new Date());
  useEffect(() => {
    var timerID = setInterval(() => tick(), 1000);
    return function cleanup() {
      clearInterval(timerID);
    };
  });
  function tick() {
    setDate(new Date());
  }
  return (
    <div>
      <h2>It is {date.toLocaleTimeString()}.</h2>
      {/* prettier-ignore */}
      long long long long long long long long long long long long line
      {/* prettier-ignore */}
    </div>
  );
}
function Clock(props) { const [date, setDate] = useState(new Date()); useEffect(() => { var timerID = setInterval(() => tick(), 1000); return function cleanup() { clearInterval(timerID); }; }); function tick() { setDate(new Date()); } return ( <div> <h2>It is {date.toLocaleTimeString()}.</h2> </div> ); }
Mermaid
Custom heading ID
Weird heading
Weird heading
Weird heading
Weird heading
Weird heading
Pipe
Code tag + double pipe: ||
Code tag + double pipe: ||
Images

Details
Details
Details without a summary
My Headline
Details
This is a fragment:
HelloIt should work :)
Task list
A list:
- Simple
 - Tasks
 - Has simple
 - Styles
 
Another list:
- Nested
- Tasks
 - Should be well-formatted
 
 - No matter
 - How weird
 
Can be arbitrarily nested:
- Level
- Task
 - Task
 - Another level
- Task
 - Task
 - Deeper
- Task
 - Task
 
 - Task
 - Task
 
 
 - Task
 
Emojis
Emojis in this text will be replaced with remark-emoji: 🐶 👍
Admonitions
title with a  (old syntax)Admonition body
title with a  (directive label syntax)Admonition body
Admonition alias :::important should have Important title
Some content with Markdown syntax.
Some content with Markdown syntax.
Some content with Markdown syntax.
hey
test
- Apple
 - Orange
 - Banana
 
test
Linking
This is a test page to see if Docusaurus Markdown features are working properly
Linking to assets
See #3337
Linking to non-SPA page hosted within website
See #3309
Linking to non-SPA page with Link component
See #9758, these external urls should not be reported by the broken links checker:
- ✅ pathname:///dogfooding/javadoc#goodlink1
 - ✅ pathname:///dogfooding/javadoc#goodlink2
 - ✅ /dogfooding/javadoc#goodlink3 (target=_blank)
 - ✅ /dogfooding/javadoc#goodlink4 (target=_blank)
 
These links are broken (try to single click on them) and should be reported. We need to explicitly disable the broken link checker for them:
- ❌ /dogfooding/javadoc#badlink1
 - ❌ /dogfooding/javadoc#badlink2
 - ❌ /dogfooding/javadoc#badlink3 (target=_self)
 - ❌ /dogfooding/javadoc#badlink4 (target=_self)