Skip to content

docs: migrate to Docusaurus v2 #299

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 7 commits into from
May 13, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ jobs:
git config --global user.email "thymikee@users.noreply.github.com"
git config --global user.name "Michał Pierzchała"
echo "machine github.com login thymikee password $GITHUB_TOKEN" > ~/.netrc
cd website && yarn install && GIT_USER=thymikee yarn run publish-gh-pages
cd website && yarn install && GIT_USER=thymikee yarn deploy

workflows:
version: 2
Expand Down
7 changes: 6 additions & 1 deletion .eslintrc
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,11 @@
"flowtype/no-weak-types": 0,
"react-native/no-raw-text": 0,
"no-console": 1,
"react/no-multi-comp": 0
"react/no-multi-comp": 0,
// Ignore certain webpack alias because it can't be resolved
"import/no-unresolved": [
2,
{ "ignore": ["^@theme", "^@docusaurus", "^@generated"] }
]
}
}
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,4 @@ build

# Ignore lock files in examples for now
examples/**/yarn.lock
.docusaurus
26 changes: 17 additions & 9 deletions website/.gitignore
Original file line number Diff line number Diff line change
@@ -1,12 +1,20 @@
.DS_Store
# Dependencies
/node_modules

# Production
/build

node_modules
# Generated files
.docusaurus
.cache-loader

lib/core/metadata.js
lib/core/MetadataBlog.js
# Misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local

website/translated_docs
website/build/
website/yarn.lock
website/node_modules
website/i18n/*
npm-debug.log*
yarn-debug.log*
yarn-error.log*
186 changes: 13 additions & 173 deletions website/README.md
Original file line number Diff line number Diff line change
@@ -1,193 +1,33 @@
This website was created with [Docusaurus](https://docusaurus.io/).
# Website

# What's In This Document
This website is built using [Docusaurus 2](https://v2.docusaurus.io/), a modern static website generator.

* [Get Started in 5 Minutes](#get-started-in-5-minutes)
* [Directory Structure](#directory-structure)
* [Editing Content](#editing-content)
* [Adding Content](#adding-content)
* [Full Documentation](#full-documentation)
### Installation

# Get Started in 5 Minutes

1. Make sure all the dependencies for the website are installed:

```sh
# Install dependencies
$ yarn
```
2. Run your dev server:

```sh
# Start the site
$ yarn start
```

## Directory Structure

Your project file structure should look something like this

```
my-docusaurus/
docs/
doc-1.md
doc-2.md
doc-3.md
website/
blog/
2016-3-11-oldest-post.md
2017-10-24-newest-post.md
core/
node_modules/
pages/
static/
css/
img/
package.json
sidebar.json
siteConfig.js
```

# Editing Content

## Editing an existing docs page

Edit docs by navigating to `docs/` and editing the corresponding document:

`docs/doc-to-be-edited.md`

```markdown
---
id: page-needs-edit
title: This Doc Needs To Be Edited
---

Edit me...
```

For more information about docs, click [here](https://docusaurus.io/docs/en/navigation)

## Editing an existing blog post

Edit blog posts by navigating to `website/blog` and editing the corresponding post:

`website/blog/post-to-be-edited.md`
```markdown
---
id: post-needs-edit
title: This Blog Post Needs To Be Edited
---

Edit me...
$ yarn
```

For more information about blog posts, click [here](https://docusaurus.io/docs/en/adding-blog)

# Adding Content

## Adding a new docs page to an existing sidebar

1. Create the doc as a new markdown file in `/docs`, example `docs/newly-created-doc.md`:

```md
---
id: newly-created-doc
title: This Doc Needs To Be Edited
---
### Local Development

My new content here..
```

1. Refer to that doc's ID in an existing sidebar in `website/sidebar.json`:

```javascript
// Add newly-created-doc to the Getting Started category of docs
{
"docs": {
"Getting Started": [
"quick-start",
"newly-created-doc" // new doc here
],
...
},
...
}
$ yarn start
```

For more information about adding new docs, click [here](https://docusaurus.io/docs/en/navigation)
This command starts a local development server and open up a browser window. Most changes are reflected live without having to restart the server.

## Adding a new blog post
### Build

1. Make sure there is a header link to your blog in `website/siteConfig.js`:

`website/siteConfig.js`
```javascript
headerLinks: [
...
{ blog: true, label: 'Blog' },
...
]
```

2. Create the blog post with the format `YYYY-MM-DD-My-Blog-Post-Title.md` in `website/blog`:

`website/blog/2018-05-21-New-Blog-Post.md`

```markdown
---
author: Frank Li
authorURL: https://twitter.com/foobarbaz
authorFBID: 503283835
title: New Blog Post
---

Lorem Ipsum...
$ yarn build
```

For more information about blog posts, click [here](https://docusaurus.io/docs/en/adding-blog)
This command generates static content into the `build` directory and can be served using any static contents hosting service.

## Adding items to your site's top navigation bar
### Deployment

1. Add links to docs, custom pages or external links by editing the headerLinks field of `website/siteConfig.js`:

`website/siteConfig.js`
```javascript
{
headerLinks: [
...
/* you can add docs */
{ doc: 'my-examples', label: 'Examples' },
/* you can add custom pages */
{ page: 'help', label: 'Help' },
/* you can add external links */
{ href: 'https://github.com/facebook/Docusaurus', label: 'GitHub' },
...
],
...
}
```

For more information about the navigation bar, click [here](https://docusaurus.io/docs/en/navigation)

## Adding custom pages

1. Docusaurus uses React components to build pages. The components are saved as .js files in `website/pages/en`:
1. If you want your page to show up in your navigation header, you will need to update `website/siteConfig.js` to add to the `headerLinks` element:

`website/siteConfig.js`
```javascript
{
headerLinks: [
...
{ page: 'my-new-custom-page', label: 'My New Custom Page' },
...
],
...
}
$ GIT_USER=<Your GitHub username> USE_SSH=true yarn deploy
```

For more information about custom pages, click [here](https://docusaurus.io/docs/en/custom-pages).

# Full Documentation

Full documentation can be found on the [website](https://docusaurus.io/).
If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the `gh-pages` branch.
79 changes: 0 additions & 79 deletions website/core/Footer.js

This file was deleted.

1 change: 1 addition & 0 deletions website/docker/.dockerignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
*/node_modules
*.log
.docusaurus
1 change: 0 additions & 1 deletion website/docker/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ FROM node:8.11.4
WORKDIR /app/website

EXPOSE 3000 35729
COPY ./docs /app/docs
COPY ./website /app/website
RUN yarn install

Expand Down
11 changes: 2 additions & 9 deletions website/docker/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
version: "3"
version: '3'

services:
docusaurus:
Expand All @@ -7,12 +7,5 @@ services:
- 3000:3000
- 35729:35729
volumes:
- ./docs:/app/docs
- ./website/blog:/app/website/blog
- ./website/core:/app/website/core
- ./website/i18n:/app/website/i18n
- ./website/pages:/app/website/pages
- ./website/static:/app/website/static
- ./website/sidebars.json:/app/website/sidebars.json
- ./website/siteConfig.js:/app/website/siteConfig.js
- ./website:/app/website
working_dir: /app/website
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Loading