CINXE.COM
Docusaurus · Easy to Maintain Open Source Documentation Websites
<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Docusaurus · Easy to Maintain Open Source Documentation Websites</title><meta name="viewport" content="width=device-width, initial-scale=1.0"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Easy to Maintain Open Source Documentation Websites"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Docusaurus · Easy to Maintain Open Source Documentation Websites"/><meta property="og:type" content="website"/><meta property="og:url" content="https://docusaurus.io/"/><meta property="og:description" content="Easy to Maintain Open Source Documentation Websites"/><meta property="og:image" content="https://docusaurus.io/img/docusaurus.png"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://docusaurus.io/img/docusaurus.png"/><link rel="shortcut icon" href="/img/docusaurus.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://docusaurus.io/blog/atom.xml" title="Docusaurus Blog ATOM Feed"/><link rel="alternate" type="application/rss+xml" href="https://docusaurus.io/blog/feed.xml" title="Docusaurus Blog RSS Feed"/><script> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','https://www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-44373548-31', 'auto'); ga('send', 'pageview'); </script><script type="text/javascript" src="https://buttons.github.io/buttons.js"></script><script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/clipboard.js/2.0.0/clipboard.min.js"></script><script type="text/javascript" src="/js/code-blocks-buttons.js"></script><script src="https://unpkg.com/vanilla-back-to-top@7.1.14/dist/vanilla-back-to-top.min.js"></script><script> document.addEventListener('DOMContentLoaded', function() { addBackToTop( {"zIndex":100} ) }); </script><script src="/js/scrollSpy.js"></script><link rel="stylesheet" href="/css/prism.css"/><link rel="stylesheet" href="/css/main.css"/><script src="/js/codetabs.js"></script></head><body><div class="fixedHeaderContainer"><div class="headerWrapper wrapper"><header><a href="/en"><img class="logo" src="/img/docusaurus.svg" alt="Docusaurus"/><h2 class="headerTitleWithLogo">Docusaurus</h2></a><a href="/en/versions"><h3>1.14.7</h3></a><div class="navigationWrapper navigationSlider"><nav class="slidingNav"><ul class="nav-site nav-site-internal"><li class=""><a href="/docs/en/installation" target="_self">Docs</a></li><li class=""><a href="/docs/en/tutorial-setup" target="_self">Tutorial</a></li><li class=""><a href="/en/users" target="_self">Users</a></li><li class=""><a href="/blog/" target="_self">Blog</a></li><li class=""><a href="https://github.com/facebook/docusaurus" target="_blank">GitHub</a></li><span><li><a id="languages-menu" href="#"><img class="languages-icon" src="/img/language.svg" alt="Languages icon"/>English</a><div id="languages-dropdown" class="hide"><ul id="languages-dropdown-items"><li><a href="/fr">Français</a></li><li><a href="/ko">한국어</a></li><li><a href="/pt-BR">Português (Brasil)</a></li><li><a href="/ro">Română</a></li><li><a href="/ru">Русский</a></li><li><a href="/zh-CN">简体中文</a></li><li><a href="https://crowdin.com/project/docusaurus" target="_blank" rel="noreferrer noopener">Help Us Translate</a></li></ul></div></li><script> const languagesMenuItem = document.getElementById("languages-menu"); const languagesDropDown = document.getElementById("languages-dropdown"); languagesMenuItem.addEventListener("click", function(event) { event.preventDefault(); if (languagesDropDown.className == "hide") { languagesDropDown.className = "visible"; } else { languagesDropDown.className = "hide"; } }); </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div><div class="index-hero"><div class="index-hero-inner"><h1 class="index-hero-project-tagline"><img alt="Docusaurus with Keytar" class="index-hero-logo" src="/img/docusaurus_keytar.svg"/>Docusaurus makes it easy to maintain <span class="index-hero-project-keywords">Open Source</span> documentation websites.</h1><div class="index-ctas"><a class="button index-ctas-get-started-button" href="/docs/en/installation">Get Started</a><span class="index-ctas-github-button"><iframe src="https://ghbtns.com/github-btn.html?user=facebook&repo=docusaurus&type=star&count=true&size=large" frameBorder="0" scrolling="0" width="160" height="30" title="GitHub Stars"></iframe></span></div></div></div><div class="announcement"><div class="announcement-inner"><div><span class="announcement-important">IMPORTANT</span>: this is the documentation of <span class="announcement-important">Docusaurus v1</span>.</div><div>We now recommend using <a href="https://docusaurus.io">Docusaurus 2</a> instead!</div></div></div><div class="mainContainer"><div class="container lightBackground paddingBottom paddingTop"><div class="wrapper"><div class="gridBlock"><div class="blockElement alignCenter imageAlignTop threeByGridBlock"><div class="blockImage"><img src="/img/undraw_typewriter.svg" alt="Markdown"/></div><div class="blockContent"><h2><div><span><p>Powered by Markdown</p> </span></div></h2><div><span><p>Save time and focus on your project's documentation. Simply write docs and blog posts with <a href="/docs/en/doc-markdown">Markdown</a> and Docusaurus will publish a set of static html files ready to serve.</p> </span></div></div></div><div class="blockElement alignCenter imageAlignTop threeByGridBlock"><div class="blockImage"><img src="/img/undraw_react.svg" alt="React"/></div><div class="blockContent"><h2><div><span><p>Built Using React</p> </span></div></h2><div><span><p><a href="/docs/en/api-pages">Extend or customize</a> your project's layout by reusing React. Docusaurus can be extended while reusing the same header and footer.</p> </span></div></div></div><div class="blockElement alignCenter imageAlignTop threeByGridBlock"><div class="blockImage"><img src="/img/undraw_around_the_world.svg" alt="Translation"/></div><div class="blockContent"><h2><div><span><p>Ready for Translations</p> </span></div></h2><div><span><p><a href="/docs/en/translation">Localization</a> comes pre-configured. Use <a href="https://crowdin.com/">Crowdin</a> to translate your docs into over 70 languages.</p> </span></div></div></div></div><br/><br/><div class="gridBlock"><div class="blockElement alignCenter imageAlignTop twoByGridBlock"><div class="blockImage"><img src="/img/undraw_version_control.svg" alt="Document Versioning"/></div><div class="blockContent"><h2><div><span><p>Document Versioning</p> </span></div></h2><div><span><p>Support users on all versions of your project. Document <a href="/docs/en/versioning">versioning</a> helps you keep documentation in sync with project releases.</p> </span></div></div></div><div class="blockElement alignCenter imageAlignTop twoByGridBlock"><div class="blockImage"><img src="/img/undraw_algolia.svg" alt="Document Search"/></div><div class="blockContent"><h2><div><span><p>Document Search</p> </span></div></h2><div><span><p>Make it easy for your community to <a href="/docs/en/search">find</a> what they need in your documentation. We proudly support <a href="https://www.algolia.com/">Algolia documentation search</a>.</p> </span></div></div></div></div></div></div><div class="container paddingBottom paddingTop"><div class="wrapper"><div class="gridBlock"><div class="blockElement imageAlignSide imageAlignRight twoByGridBlock"><div class="blockContent"><h2><div><span><p>Quick Setup</p> </span></div></h2><div><span><p>Get <a href="/docs/en/site-creation">up and running</a> quickly without having to worry about site design.</p> </span></div></div><div class="blockImage"><img src="/img/undraw_setup_wizard.svg" alt="Docusaurus on a Scooter"/></div></div></div></div></div><div class="container lightBackground paddingBottom paddingTop"><div class="wrapper"><div class="gridBlock"><div class="blockElement imageAlignSide imageAlignLeft twoByGridBlock"><div class="blockImage"><img src="/img/docusaurus_live.gif" alt="Docusaurus Demo"/></div><div class="blockContent"><h2><div><span><p>Develop and Deploy</p> </span></div></h2><div><span><p>Make design and documentation changes by using the included <a href="/docs/en/site-preparation#verifying-installation">live server</a>. <a href="/docs/en/publishing">Publish</a> your site to GitHub pages or other static file hosts manually, using a script, or with continuous integration like CircleCI.</p> </span></div></div></div></div></div></div><div class="container paddingBottom paddingTop"><div class="wrapper"><div class="gridBlock"><div class="blockElement imageAlignSide imageAlignRight twoByGridBlock"><div class="blockContent"><h2><div><span><p>Website Features</p> </span></div></h2><div><span><p>Docusaurus currently provides support to help your website use <a href="/docs/en/translation">translations</a>, <a href="/docs/en/search">search</a>, and <a href="/docs/en/versioning">versioning</a>, along with some other special <a href="/docs/en/doc-markdown">documentation markdown features</a>. If you have ideas for useful features, feel free to contribute on <a href="https://github.com/facebook/docusaurus">GitHub</a>!</p> </span></div></div><div class="blockImage"><img src="/img/undraw_features_overview.svg" alt="Monochromatic Docusaurus"/></div></div></div></div></div><div class="productShowcaseSection paddingBottom"><h2>Who is Using Docusaurus?</h2><p>Docusaurus is building websites for these projects...</p><div class="showcase"><a class="link" href="https://allcontributors.org/"><img src="/img/users/allcontributors.png" alt="All Contributors" title="All Contributors"/><span class="caption">All Contributors</span></a><a class="link" href="https://ax.dev/"><img src="/img/users/ax.svg" alt="Ax" title="Ax"/><span class="caption">Ax</span></a><a class="link" href="https://babeljs.io/"><img src="/img/users/babel.svg" alt="Babel" title="Babel"/><span class="caption">Babel</span></a><a class="link" href="https://pybowler.io/"><img src="/img/users/bowler.svg" alt="Bowler" title="Bowler"/><span class="caption">Bowler</span></a><a class="link" href="https://bucklescript.github.io/"><img src="/img/users/bucklescript.svg" alt="BuckleScript" title="BuckleScript"/><span class="caption">BuckleScript</span></a><a class="link" href="https://facebook.github.io/create-react-app/"><img src="/img/users/react.svg" alt="Create React App" title="Create React App"/><span class="caption">Create React App</span></a><a class="link" href="https://www.docusaurus.io"><img src="/img/users/docusaurus.svg" alt="Docusaurus" title="Docusaurus"/><span class="caption">Docusaurus</span></a><a class="link" href="https://draftjs.org/"><img src="/img/users/draftjs.png" alt="Draft.js" title="Draft.js"/><span class="caption">Draft.js</span></a><a class="link" href="https://fasttext.cc"><img src="/img/users/fasttext.png" alt="FastText" title="FastText"/><span class="caption">FastText</span></a><a class="link" href="https://facebookincubator.github.io/fbt/"><img src="/img/users/fbt_blue.png" alt="FBT" title="FBT"/><span class="caption">FBT</span></a><a class="link" href="https://fbflipper.com"><img src="/img/users/flipper.png" alt="Flipper" title="Flipper"/><span class="caption">Flipper</span></a><a class="link" href="https://gulpjs.com"><img src="/img/users/gulp.svg" alt="Gulp" title="Gulp"/><span class="caption">Gulp</span></a><a class="link" href="https://www.fbidb.io/"><img src="/img/users/idb.svg" alt="Idb" title="Idb"/><span class="caption">Idb</span></a><a class="link" href="https://jestjs.io"><img src="/img/users/jest.png" alt="Jest" title="Jest"/><span class="caption">Jest</span></a><a class="link" href="https://developers.libra.org"><img src="/img/users/libra.svg" alt="Libra" title="Libra"/><span class="caption">Libra</span></a><a class="link" href="https://makeitopen.com/"><img src="/img/users/makeitopen.png" alt="MakeItOpen" title="MakeItOpen"/><span class="caption">MakeItOpen</span></a><a class="link" href="https://mailgo.js.org/"><img src="/img/users/mailgo.png" alt="mailgo" title="mailgo"/><span class="caption">mailgo</span></a><a class="link" href="https://facebook.github.io/metro/"><img src="/img/users/metro.svg" alt="Metro" title="Metro"/><span class="caption">Metro</span></a><a class="link" href="https://facebookmicrosites.github.io/netconsd/"><img src="/img/users/netconsd.svg" alt="Netconsd" title="Netconsd"/><span class="caption">Netconsd</span></a><a class="link" href="https://www.prettier.io"><img src="/img/users/prettier.png" alt="Prettier" title="Prettier"/><span class="caption">Prettier</span></a><a class="link" href="https://facebookincubator.github.io/profilo/"><img src="/img/users/profilo.png" alt="Profilo" title="Profilo"/><span class="caption">Profilo</span></a><a class="link" href="https://pulsar.apache.org/"><img src="/img/users/pulsar.svg" alt="Pulsar" title="Pulsar"/><span class="caption">Pulsar</span></a><a class="link" href="https://pyre-check.org"><img src="/img/users/pyre.svg" alt="Pyre" title="Pyre"/><span class="caption">Pyre</span></a><a class="link" href="https://facebook.github.io/react-360"><img src="/img/users/react-360.svg" alt="React 360" title="React 360"/><span class="caption">React 360</span></a><a class="link" href="https://facebook.github.io/react-native"><img src="/img/users/react-native.svg" alt="React Native" title="React Native"/><span class="caption">React Native</span></a><a class="link" href="https://react-redux.js.org"><img src="/img/users/react-redux.svg" alt="React Redux" title="React Redux"/><span class="caption">React Redux</span></a><a class="link" href="https://reasonml.github.io/"><img src="/img/users/reason.svg" alt="Reason" title="Reason"/><span class="caption">Reason</span></a><a class="link" href="https://reasonml.github.io/reason-react/"><img src="/img/users/reason-react.svg" alt="ReasonReact" title="ReasonReact"/><span class="caption">ReasonReact</span></a><a class="link" href="https://fbredex.com/"><img src="/img/users/redex.png" alt="Redex" title="Redex"/><span class="caption">Redex</span></a><a class="link" href="https://redux.js.org/"><img src="/img/users/redux.svg" alt="Redux" title="Redux"/><span class="caption">Redux</span></a><a class="link" href="https://facebook.github.io/relay/"><img src="/img/users/relay.svg" alt="Relay" title="Relay"/><span class="caption">Relay</span></a><a class="link" href="http://skiplang.com"><img src="/img/users/skiplang.png" alt="Skip" title="Skip"/><span class="caption">Skip</span></a><a class="link" href="https://libspectrum.io"><img src="/img/users/spectrum.svg" alt="Spectrum" title="Spectrum"/><span class="caption">Spectrum</span></a><a class="link" href="https://thediffpodcast.com"><img src="/img/users/the-diff.svg" alt="The Diff Podcast" title="The Diff Podcast"/><span class="caption">The Diff Podcast</span></a><a class="link" href="https://torchcraft.github.io/TorchCraftAI/"><img src="/img/users/torchcraftai.png" alt="TorchCraftAI" title="TorchCraftAI"/><span class="caption">TorchCraftAI</span></a></div><div class="more-users"><a class="button" href="/en/users">All Docusaurus Users</a></div></div><div class="testimonials"><div class="container paddingBottom paddingTop"><div class="wrapper"><div class="gridBlock"><div class="blockElement alignCenter imageAlignTop threeByGridBlock"><div class="blockImage"><img src="/img/christopher-chedeau.jpg" alt="Christopher "vjeux" Chedeau"/></div><div class="blockContent"><h2><div><span><p>Christopher "vjeux" Chedeau <br/><font size="2">Lead Prettier Developer</font></p> </span></div></h2><div><span><p><em>I've helped open source many projects at Facebook and every one needed a website. They all had very similar constraints: the documentation should be written in markdown and be deployed via GitHub pages. None of the existing solutions were great, so I hacked my own and then forked it whenever we needed a new website. I’m so glad that Docusaurus now exists so that I don’t have to spend a week each time spinning up a new one.</em></p> </span></div></div></div><div class="blockElement alignCenter imageAlignTop threeByGridBlock"><div class="blockImage"><img src="/img/hector-ramos.png" alt="Hector Ramos"/></div><div class="blockContent"><h2><div><span><p>Hector Ramos <br/><font size="2">Lead React Native Advocate</font></p> </span></div></h2><div><span><p><em>Open source contributions to the React Native docs have skyrocketed after our move to Docusaurus. The docs are now hosted on a small repo in plain markdown, with none of the clutter that a typical static site generator would require. Thanks Slash!</em></p> </span></div></div></div><div class="blockElement alignCenter imageAlignTop threeByGridBlock"><div class="blockImage"><img src="/img/ricky-vetter.jpg" alt="Ricky Vetter"/></div><div class="blockContent"><h2><div><span><p>Ricky Vetter <br/><font size="2">ReasonReact Developer</font></p> </span></div></h2><div><span><p><em>Docusaurus has been a great choice for the ReasonML family of projects. It makes our documentation consistent, i18n-friendly, easy to maintain, and friendly for new contributors.</em></p> </span></div></div></div></div></div></div></div></div></div><footer class="nav-footer" id="footer"><section class="sitemap"><a href="/" class="nav-home"><img src="/img/docusaurus_monochrome.svg" alt="Docusaurus" width="66" height="58"/></a><div class="footerSection"><h5>Docs</h5><a href=" /docs/en/installation">Getting Started</a><a href=" /docs/en/versioning">Versioning</a><a href=" /docs/en/translation">Localization</a><a href=" /docs/en/search">Adding Search</a></div><div class="footerSection"><h5>Community</h5><a href="/en/help">Help</a><a href="/en/users">User Showcase</a><a href="/en/about-slash">About</a></div><div class="footerSection"><h5>Legal</h5><a href="https://opensource.facebook.com/legal/privacy/" target="_blank" rel="noreferrer noopener">Privacy</a><a href="https://opensource.facebook.com/legal/terms/" target="_blank" rel="noreferrer noopener">Terms</a><a href="https://opensource.facebook.com/legal/data-policy/" target="_blank" rel="noreferrer noopener">Data Policy</a><a href="https://opensource.facebook.com/legal/cookie-policy/" target="_blank" rel="noreferrer noopener">Cookie Policy</a></div><div class="footerSection"><h5>Social</h5><div class="social"><a class="github-button" href="https://github.com/facebook/docusaurus" data-count-href="https://github.com/facebook/docusaurus/stargazers" data-show-count="true" data-count-aria-label="# stargazers on GitHub" aria-label="Star this project on GitHub">docusaurus</a></div><div class="social"><a href="https://twitter.com/docusaurus" class="twitter-follow-button">Follow @docusaurus</a></div><div class="social"><div class="fb-like" data-href="https://docusaurus.io" data-colorscheme="dark" data-layout="standard" data-share="true" data-width="225" data-show-faces="false"></div></div></div></section><a href="https://opensource.facebook.com/" target="_blank" rel="noreferrer noopener" class="fbOpenSource"><img src="/img/oss_logo.png" alt="Facebook Open Source" width="170" height="45"/></a><section class="copyright"><span>Copyright © 2022 Facebook Inc.</span> Landing images by <a href="https://undraw.co/">unDraw</a>.</section></footer></div><script type="text/javascript" src="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.js"></script><script>window.fbAsyncInit = function() {FB.init({appId:'199138890728411',xfbml:true,version:'v2.7'});};(function(d, s, id){var js, fjs = d.getElementsByTagName(s)[0];if (d.getElementById(id)) {return;}js = d.createElement(s); js.id = id;js.src = '//connect.facebook.net/en_US/sdk.js';fjs.parentNode.insertBefore(js, fjs);}(document, 'script','facebook-jssdk')); </script><script>window.twttr=(function(d,s, id){var js,fjs=d.getElementsByTagName(s)[0],t=window.twttr||{};if(d.getElementById(id))return t;js=d.createElement(s);js.id=id;js.src='https://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js, fjs);t._e = [];t.ready = function(f) {t._e.push(f);};return t;}(document, 'script', 'twitter-wjs'));</script><script> document.addEventListener('keyup', function(e) { if (e.target !== document.body) { return; } // keyCode for '/' (slash) if (e.keyCode === 191) { const search = document.getElementById('search_input_react'); search && search.focus(); } }); </script><script> var search = docsearch({ appId: 'NHNLQ9RRTP', apiKey: '9fd932b3605878e173f39bf8e2049466', indexName: 'docusaurus', inputSelector: '#search_input_react', algoliaOptions: {"facetFilters":["language:en","version:1.14.7"]} }); </script></body></html>