Deploy website

Deploy website version based on 837dd38f1a
This commit is contained in:
Website Deployment Script 2018-04-08 04:17:35 +00:00
parent 837dd38f1a
commit b348c38f1c
8 changed files with 25 additions and 25 deletions

View file

@ -51,7 +51,7 @@
<h3><a class="anchor" aria-hidden="true" id="docusaurus-publish"></a><a href="#docusaurus-publish" aria-hidden="true" class="hash-link" ><svg aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a><code>docusaurus-publish</code></h3>
<p>Alias: <code>publish-gh-pages</code></p>
<p><a href="/docs/en/commands.html#docusaurus-build">Builds</a>, then deploys the static website to GitHub Pages. This command is meant to be run during the deployment step in Circle CI, and therefore expects a few environment variables to be defined:</p>
<p>The following is generally set manually by the user in the CircleCI <code>config.yml</code> file.</p>
<p>The following environment variables are generally set manually by the user in the CircleCI <code>config.yml</code> file.</p>
<ul>
<li><code>GIT_USER</code>: The git user to be associated with the deploy commit.</li>
<li><code>USE_SSH</code>: Whether to use SSH instead of HTTPS for your connection to the GitHub repo.</li>
@ -59,15 +59,15 @@
<p>e.g.,</p>
<pre><code class="hljs css bash">GIT_USER=docusaurus-bot USE_SSH=<span class="hljs-literal">true</span> yarn run publish-gh-pages
</code></pre>
<p>The following are set by the <a href="https://circleci.com/docs/1.0/environment-variables/">CircleCI environment</a> during the build process.</p>
<p>The following environment variables are <a href="https://circleci.com/docs/1.0/environment-variables/">set by CircleCI</a> during the build process.</p>
<ul>
<li><code>CIRCLE_BRANCH</code>: The git branch associated with the commit that triggered the CI run.</li>
<li><code>CI_PULL_REQUEST</code>: Expected to be truthy if the current CI run was triggered by a commit in a pull request.</li>
</ul>
<p>The following should be set by you in <code>siteConfig.js</code> as <code>organizationName</code> and <code>projectName</code>, respectively. If they are not set in your site configuration, they fall back to the <a href="https://circleci.com/docs/1.0/environment-variables/">CircleCI environment</a>.</p>
<ul>
<li><code>CIRCLE_PROJECT_USERNAME</code>: The GitHub username or organization name that hosts the git repo, e.g. &quot;facebook&quot;.</li>
<li><code>CIRCLE_PROJECT_REPONAME</code>: The name of the git repo, e.g. &quot;Docusaurus&quot;.</li>
<li><code>CIRCLE_PROJECT_USERNAME</code>: The GitHub username or organization name that hosts the Git repo, e.g. &quot;facebook&quot;.</li>
<li><code>CIRCLE_PROJECT_REPONAME</code>: The name of the Git repo, e.g. &quot;Docusaurus&quot;.</li>
</ul>
<p>You can learn more about configuring automatic deployments with CircleCI in the <a href="/docs/en/publishing.html">Publishing guide</a>.</p>
<hr>

View file

@ -115,14 +115,14 @@
<h2><a class="anchor" aria-hidden="true" id="active-links-in-site-navigation-bar"></a><a href="#active-links-in-site-navigation-bar" aria-hidden="true" class="hash-link" ><svg aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Active Links In Site Navigation Bar</h2>
<p>The links in the top navigation bar get <code>siteNavItemActive</code> and <code>siteNavGroupActive</code> class names to allow you to style the currently active link different from the others. <code>siteNavItemActive</code> is applied when there's an exact match between the navigation link and the currently displayed web page.</p>
<blockquote>
<p>This does not include links of type <code>href</code> which are meant for external links only. If you manually set an <code>href</code> in your headerLinks to an internal page, document, or blog post, it will not get the <code>siteNavItemActive</code> class even if that page is being displayed.</p>
<p>This does not include links of type <code>href</code> which are meant for external links only. If you manually set an <code>href</code> in your <code>headerLinks</code> to an internal page, document, or blog post, it will not get the <code>siteNavItemActive</code> class even if that page is being displayed.</p>
</blockquote>
<p><code>siteNavGroupActive</code> will be added to these links:</p>
<p>The <code>siteNavGroupActive</code> class will be added to these links:</p>
<ul>
<li><code>doc</code> links that belong to the same sidebar as the currently displayed document</li>
<li>The blog link when a blog post, or the blog listing page is being displayed</li>
</ul>
<p>These are two separate class names so you can have the active styles applied to either exact matches only or a bit more broadly for docs that belong together. If you don't want to make this distinction you can add both classes to the same css rule.</p>
<p>These are two separate class names so you can have the active styles applied to either exact matches only or a bit more broadly for docs that belong together. If you don't want to make this distinction you can add both classes to the same CSS rule.</p>
<h2><a class="anchor" aria-hidden="true" id="secondary-on-page-navigation"></a><a href="#secondary-on-page-navigation" aria-hidden="true" class="hash-link" ><svg aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Secondary On-Page Navigation</h2>
<p>We support secondary on-page navigation so you can more easily see the topics associated with a given document. To enable this feature, you need to add the <code>onPageNav</code> site configuration <a href="/docs/en/site-config.html#optional-fields">option</a> to your <code>siteConfig.js</code>.</p>
<pre><code class="hljs"><span class="hljs-string">onPageNav:</span> <span class="hljs-string">'separate'</span>,

View file

@ -113,7 +113,7 @@
<blockquote>
<p>If you would rather use a deploy key instead of a personal access token, you can by starting with the Circle CI <a href="https://circleci.com/docs/1.0/adding-read-write-deployment-key/">instructions</a> for adding a read/write deploy key.</p>
</blockquote>
<h4><a class="anchor" aria-hidden="true" id="tips-tricks"></a><a href="#tips-tricks" aria-hidden="true" class="hash-link" ><svg aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Tips &amp; Tricks</h4>
<h3><a class="anchor" aria-hidden="true" id="tips-tricks"></a><a href="#tips-tricks" aria-hidden="true" class="hash-link" ><svg aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Tips &amp; Tricks</h3>
<p>When initially deploying to a <code>gh-pages</code> branch using Circle CI, you may notice that some jobs triggered by commits to the <code>gh-pages</code> branch fail to run successfully due to a lack of tests. You can easily work around this by creating a basic Circle CI config with the following contents:</p>
<pre><code class="hljs css yml"><span class="hljs-comment"># Circle CI 2.0 Config File</span>
<span class="hljs-comment"># This config file will prevent tests from being run on the gh-pages branch.</span>

View file

@ -79,8 +79,8 @@ const translate = require("../../server/translate.js").translate;
<h3><a class="anchor" aria-hidden="true" id="other-pages"></a><a href="#other-pages" aria-hidden="true" class="hash-link" ><svg aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Other Pages</h3>
<p>For other pages, Docusaurus will automatically transform all <code>&lt;translate&gt;</code> tags it finds into function calls that return the translated strings from the corresponding localized file <em><code>locale.json</code></em>.</p>
<h2><a class="anchor" aria-hidden="true" id="crowdin"></a><a href="#crowdin" aria-hidden="true" class="hash-link" ><svg aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Crowdin</h2>
<p>Crowdin is a company that provides translation services. For Open Source projects, Crowdin provides free string translations</p>
<p>Create your translation project on <a href="https://crowdin.com/">Crowdin</a>. You can use <a href="https://support.crowdin.com/translation-process-overview/">Crowdin's guides</a> to learn more about the translations work flow. <em>We suggest that you deselect and do not include &quot;English&quot; as a translateable language to prevent the creation of <code>en-US</code> localization files as this can lead to confusion.</em></p>
<p>Crowdin is a company that provides translation services. For Open Source projects, Crowdin provides free string translations.</p>
<p>Create your translation project on <a href="https://crowdin.com/">Crowdin</a>. You can use <a href="https://support.crowdin.com/translation-process-overview/">Crowdin's guides</a> to learn more about the translations work flow. <em>We suggest that you deselect and do not include &quot;English&quot; as a translatable language to prevent the creation of <code>en-US</code> localization files as this can lead to confusion.</em></p>
<blockquote>
<p>Ensure in your Crowdin settings, in the Translations section, that &quot;Duplicate Strings&quot; are set to <a href="https://support.crowdin.com/api/create-project/">&quot;Hide - all duplicates will share the same translation&quot;</a>. This setting will ensure that identical strings between versions share a single translation.</p>
</blockquote>
@ -89,7 +89,7 @@ const translate = require("../../server/translate.js").translate;
<p>You will need to install the <code>crowdin</code> command line interface. Please follow the <a href="https://support.crowdin.com/cli-tool/">installation directions</a>.</p>
</blockquote>
<p>The example below can be automatically generated by the Docusaurus cli with the <code>examples</code> script. It should be placed in the top level of your project directory to configure how and what files are uploaded/downloaded.</p>
<p>Below is an example Crowdin configuration for the respective languages: German, Spanish, French, Japanese, Korean, Behasa Indonesia, Portuguese Brazilian, Chinese Simplified, and Chinese Traditional.</p>
<p>Below is an example Crowdin configuration for the respective languages: German, Spanish, French, Japanese, Korean, Bahasa Indonesia, Portuguese Brazilian, Chinese Simplified, and Chinese Traditional.</p>
<pre><code class="hljs css yaml"><span class="hljs-attr">project_identifier_env:</span> <span class="hljs-string">CROWDIN_DOCUSAURUS_PROJECT_ID</span>
<span class="hljs-attr">api_key_env:</span> <span class="hljs-string">CROWDIN_DOCUSAURUS_API_KEY</span>
<span class="hljs-attr">base_path:</span> <span class="hljs-string">"./"</span>
@ -113,8 +113,8 @@ const translate = require("../../server/translate.js").translate;
</code></pre>
<p>You can go <a href="https://support.crowdin.com/configuration-file/">here</a> to learn more about customizing your <code>crowdin.yaml</code> file.</p>
<h3><a class="anchor" aria-hidden="true" id="setup-the-crowdin-scripts"></a><a href="#setup-the-crowdin-scripts" aria-hidden="true" class="hash-link" ><svg aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Setup the Crowdin Scripts</h3>
<p>You will want to manually sync your files to and from crowdin. The sync process will upload any markdown files in <code>/docs</code> as well as translatable strings in <code>website/i18n/en.json</code>. (These strings can be generated by running <code>yarn write-translations</code>.)</p>
<p>You can add the following to your <code>package.json</code> to manually trigger crowdin.</p>
<p>You will want to manually sync your files to and from Crowdin. The sync process will upload any markdown files in <code>/docs</code> as well as translatable strings in <code>website/i18n/en.json</code>. (These strings can be generated by running <code>yarn write-translations</code>.)</p>
<p>You can add the following to your <code>package.json</code> to manually trigger Crowdin.</p>
<pre><code class="hljs css json">"scripts": {
"crowdin-upload": "crowdin --config ../crowdin.yaml upload sources --auto-update -b master",
"crowdin-download": "crowdin --config ../crowdin.yaml download -b master"
@ -129,7 +129,7 @@ const translate = require("../../server/translate.js").translate;
<p><code>YOUR_CROWDIN_PROJECT_ID</code> is the name of your Crowdin project. e.g., for <a href="https://crowdin.com/project/docusaurus/">https://crowdin.com/project/docusaurus/</a>, that variable would be set to <code>docusaurus</code>. <code>YOUR_CROWDIN_API_KEY</code> is a unique key that is like a password. You can find it in the <code>API</code> tab of your Crowdin project's <code>Settings</code>.</p>
</blockquote>
<blockquote>
<p>These commands require having an environment variable set with your crowdin project id and api key (<code>CROWDIN_PROJECT_ID</code>, <code>CROWDIN_API_KEY</code>). You can preface them inline as done above or add them permanently to your <code>.bashrc</code> or <code>.bash_profile</code>.</p>
<p>These commands require having an environment variable set with your Crowdin project id and api key (<code>CROWDIN_PROJECT_ID</code>, <code>CROWDIN_API_KEY</code>). You can preface them inline as done above or add them permanently to your <code>.bashrc</code> or <code>.bash_profile</code>.</p>
</blockquote>
<blockquote>
<p>If you run more than one localized Docusaurus project on your computer, you should change the name of the environment variables to something unique (<code>CROWDIN_PROJECTNAME_PROJECT_ID</code>, <code>CROWDIN_PROJECTNAME_API_KEY</code>).</p>

View file

@ -31,7 +31,7 @@
<p>You can create version numbers in whatever format you wish, and a new version can be created with any version number as long as it does not match an existing version. Version ordering is determined by the order in which versions are created, independently of how they are numbered.</p>
<h2><a class="anchor" aria-hidden="true" id="storing-files-for-each-version"></a><a href="#storing-files-for-each-version" aria-hidden="true" class="hash-link" ><svg aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Storing Files for Each Version</h2>
<p>Versioned documents are placed into <code>website/versioned_docs/version-${version}</code>, where <code>${version}</code> is the version number you supplied the <code>version</code> script.</p>
<p>The markdown header for each versioned doc is altered by renaming the id frontmatter field to <code>original_id</code>, then using <code>&quot;version-${version}-${original_id}&quot;</code> as the value for the actual <code>id</code> field.</p>
<p>The markdown header for each versioned doc is altered by renaming the id front matter field to <code>original_id</code>, then using <code>&quot;version-${version}-${original_id}&quot;</code> as the value for the actual <code>id</code> field.</p>
<p>Versioned sidebars are copied into <code>website/versioned_sidebars</code> and are named as <code>version-${version}-sidebars.json</code>.</p>
<p>A <code>website/versions.json</code> file is created the first time you cut a version and is used by Docusaurus to detect what versions exist. Each time a new version is added, it gets added to the <code>versions.json</code> file.</p>
<p>If you wish to change the documentation for a past version, you can access the files for that respective version.</p>

View file

@ -39,11 +39,11 @@ along with some other special <a href="/docs/en/doc-markdown.html">documentation
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/docusaurus_monochrome.svg" alt="Monochromatic Docusaurus"/></div></div></div></div></div><div class="productShowcaseSection paddingBottom"><h2>Who&#x27;s Using Docusaurus?</h2><p>Docusaurus is building websites for these projects...</p><div class="logos"><a href="https://www.docusaurus.io"><img src="/img/docusaurus.svg" alt="Docusaurus" title="Docusaurus"/></a><a href="https://bucklescript.github.io/"><img src="/img/bucklescript.svg" alt="BuckleScript" title="BuckleScript"/></a><a href="https://fasttext.cc"><img src="/img/fasttext.png" alt="FastText" title="FastText"/></a><a href="https://facebook.github.io/facebook-instant-articles-rules-editor/"><img src="/img/facebook-instant-articles-rules-editor.svg" alt="Facebook Instant Articles Rules Editor" title="Facebook Instant Articles Rules Editor"/></a><a href="https://facebook.github.io/jest/"><img src="/img/jest.png" alt="Jest" title="Jest"/></a><a href="http://makeitopen.com/"><img src="/img/makeitopen.png" alt="MakeItOpen" title="MakeItOpen"/></a><a href="https://www.prettier.io"><img src="/img/prettier.png" alt="Prettier" title="Prettier"/></a><a href="https://facebook.github.io/react-native"><img src="/img/react-native.svg" alt="React Native" title="React Native"/></a><a href="https://reasonml.github.io/"><img src="/img/reason.svg" alt="Reason" title="Reason"/></a><a href="https://reasonml.github.io/reason-react/"><img src="/img/reason-react.svg" alt="ReasonReact" title="ReasonReact"/></a><a href="https://facebook.github.io/relay/"><img src="/img/relay.svg" alt="Relay" title="Relay"/></a></div><div class="more-users"><a class="button" href="/en/users.html">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 &quot;vjeux&quot; Chedeau"/></div><div class="blockContent"><h2><div><span><p>Christopher &quot;vjeux&quot; Chedeau <br/><font size="2">Lead Prettier Developer</font></p>
</span></div></h2><div><span><p><i>Ive 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. Im so glad that Docusaurus now exists so that I dont have to spend a week each time spinning up a new one.</i></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. Im so glad that Docusaurus now exists so that I dont 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><i>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!</i></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><i>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.</i></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><h5>Docs</h5><a href="
/docs/en/installation.html">Getting Started</a><a href="
/docs/en/versioning.html">Versioning</a><a href="

View file

@ -39,11 +39,11 @@ along with some other special <a href="/docs/en/doc-markdown.html">documentation
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/docusaurus_monochrome.svg" alt="Monochromatic Docusaurus"/></div></div></div></div></div><div class="productShowcaseSection paddingBottom"><h2>Who&#x27;s Using Docusaurus?</h2><p>Docusaurus is building websites for these projects...</p><div class="logos"><a href="https://www.docusaurus.io"><img src="/img/docusaurus.svg" alt="Docusaurus" title="Docusaurus"/></a><a href="https://bucklescript.github.io/"><img src="/img/bucklescript.svg" alt="BuckleScript" title="BuckleScript"/></a><a href="https://fasttext.cc"><img src="/img/fasttext.png" alt="FastText" title="FastText"/></a><a href="https://facebook.github.io/facebook-instant-articles-rules-editor/"><img src="/img/facebook-instant-articles-rules-editor.svg" alt="Facebook Instant Articles Rules Editor" title="Facebook Instant Articles Rules Editor"/></a><a href="https://facebook.github.io/jest/"><img src="/img/jest.png" alt="Jest" title="Jest"/></a><a href="http://makeitopen.com/"><img src="/img/makeitopen.png" alt="MakeItOpen" title="MakeItOpen"/></a><a href="https://www.prettier.io"><img src="/img/prettier.png" alt="Prettier" title="Prettier"/></a><a href="https://facebook.github.io/react-native"><img src="/img/react-native.svg" alt="React Native" title="React Native"/></a><a href="https://reasonml.github.io/"><img src="/img/reason.svg" alt="Reason" title="Reason"/></a><a href="https://reasonml.github.io/reason-react/"><img src="/img/reason-react.svg" alt="ReasonReact" title="ReasonReact"/></a><a href="https://facebook.github.io/relay/"><img src="/img/relay.svg" alt="Relay" title="Relay"/></a></div><div class="more-users"><a class="button" href="/en/users.html">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 &quot;vjeux&quot; Chedeau"/></div><div class="blockContent"><h2><div><span><p>Christopher &quot;vjeux&quot; Chedeau <br/><font size="2">Lead Prettier Developer</font></p>
</span></div></h2><div><span><p><i>Ive 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. Im so glad that Docusaurus now exists so that I dont have to spend a week each time spinning up a new one.</i></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. Im so glad that Docusaurus now exists so that I dont 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><i>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!</i></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><i>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.</i></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><h5>Docs</h5><a href="
/docs/en/installation.html">Getting Started</a><a href="
/docs/en/versioning.html">Versioning</a><a href="