/casbin-website-v2

The new docs website for Casbin based on Docusaurus v2

Primary LanguageJavaScriptApache License 2.0Apache-2.0

The configuration and documentation of Casbin website: https://casbin.org/.

Casbin website is built using Docusaurus, you can get the PDF at casbin.org/pdf or GitHub Action.

Get Started

Requirements

  1. Git
  2. Node.js:v16.14 or above
  3. Yarn: please use Yarn 1

Running Locally

  1. git clone https://github.com/casbin/casbin-website-v2.git
  2. cd casbin-website-v2
  3. yarn: install dependencies.
  4. yarn start: starting the development server.

Contributing

You can contribute to the documentation site in different ways: Documentation Writing, Translation, Website Development.

Documentation Writing

For the configuration of the sidebar, you can refer to Sidebar.

For the features that you may use when writing documents, please refer to Markdown Features.

A standard document should look like this:

---
title: Title
description: description
keywords: [keyword1, keyword2]
authors: [GitHub username]
---

## Headers

Only h2 and h3 will be in the TOC by default, so h1 is not recommended to use.

### h3

content

#### h4

content

We use markdownlint-cli to lint the markdown and mdx files, you can use the following command to fix basic errors and get a list of document issues:

yarn lint:md

If you write docs using VSCode, Sublime, or Vim/Neovim, you can install the extension to get better lint experience.

Caution

Admonitions

You can add Admonitions in the documentation, but please leave two blank lines like this:

:::info Title

Title is optional

:::
JSX

You can use JSX in documents, such as the Tabs component provided by Docusaurus, but to prevent Crowdin from breaking the code (mdx-solutions), please wrap the JSX code:

```mdx-code-block
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
```

```mdx-code-block
<Tabs>
<TabItem value="go" label="Go">
```

content

```mdx-code-block
</TabItem>
<TabItem value="java" label="Java">
```

content

```mdx-code-block
</TabItem>
</Tabs>
```

Translation

Crowdin and Docusaurus i18n is used for Casbin website's translation.

Note: Please do not translate strings like :::note, :::tip, wrong translation may cause typographical error(casdoor-website#305).

You may see some sentences containing {}, like:

At our {repoLink}, browse and submit {issueLink} or {prLink} for bugs you find or any new features you may want implemented.

Please do not translate {repoLink} or {issueLink} or any similar words, they are interpolation placeholders.

Please don't translate sentences like authors: [casdoor].

Website Development

See Creating Pages to learn how to create a page.

See Styling and Layout to learn how to modify styles.

See Swizzling to learn how to modify Docusaurus built-in components.

LICENSE

Apache-2.0 license.