diff --git a/.github/styles/Vocab/Rules/accept.txt b/.github/styles/config/vocabularies/Rules/accept.txt
similarity index 100%
rename from .github/styles/Vocab/Rules/accept.txt
rename to .github/styles/config/vocabularies/Rules/accept.txt
diff --git a/.github/styles/Vocab/Rules/reject.txt b/.github/styles/config/vocabularies/Rules/reject.txt
similarity index 100%
rename from .github/styles/Vocab/Rules/reject.txt
rename to .github/styles/config/vocabularies/Rules/reject.txt
diff --git a/.github/workflows/docs-tests.yaml b/.github/workflows/docs-tests.yaml
new file mode 100644
index 00000000..66729455
--- /dev/null
+++ b/.github/workflows/docs-tests.yaml
@@ -0,0 +1,37 @@
+name: Documentation tests
+on:
+ pull_request:
+ types: [opened, synchronize, reopened]
+
+jobs:
+ markdownlint:
+ name: markdownlint
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v4
+ - uses: DavidAnson/markdownlint-cli2-action@v15
+ with:
+ config: .markdownlint.yaml
+ globs: |
+ docs/**/*.md
+ README.md
+
+ vale:
+ name: vale action
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v4
+ - uses: errata-ai/vale-action@reviewdog
+ with:
+ files: '["README.md", "docs"]'
+ filter_mode: file
+
+ linkcheck:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Checkout Repository
+ uses: actions/checkout@v4
+ - name: Markup Link Checker (mlc)
+ uses: becheran/mlc@v0.16.1
+ with:
+ args: ./docs
diff --git a/.github/workflows/vale.yaml b/.github/workflows/vale.yaml
deleted file mode 100644
index c5220c41..00000000
--- a/.github/workflows/vale.yaml
+++ /dev/null
@@ -1,16 +0,0 @@
-name: Docs lint
-on:
- pull_request:
- types: [opened, synchronize, reopened]
-
-jobs:
- vale:
- name: vale action
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - uses: errata-ai/vale-action@reviewdog
- with:
- files: '["README.md", "docs"]'
- env:
- GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
diff --git a/.markdownlint.yaml b/.markdownlint.yaml
new file mode 100644
index 00000000..ab1a86e5
--- /dev/null
+++ b/.markdownlint.yaml
@@ -0,0 +1,54 @@
+---
+# Default rules: https://github.com/github/super-linter/blob/master/TEMPLATES/.markdown-lint.yml
+
+# Rules by id
+
+# Unordered list style
+MD004: false
+
+# Unordered list indentation
+MD007:
+ indent: 2
+
+MD013:
+ # TODO: Consider to decrease allowed line length
+ line_length: 800
+ tables: false
+
+## Allow same headers in siblings
+MD024:
+ siblings_only: true
+
+# Multiple top level headings in the same document
+MD025:
+ front_matter_title: ''
+
+# Trailing punctuation in heading
+MD026:
+ punctuation: '.,;:。,;:'
+
+# Ordered list item prefix
+MD029: false
+
+# Unordered lists inside of ordered lists
+MD030: false
+
+# Inline HTML
+MD033: false
+
+# No bare urls
+MD034: false
+
+# Emphasis used instead of a heading
+MD036: false
+
+# Disable "First line in file should be a top level heading"
+# We use uncommon format to add metadata.
+# TODO: Consider to use "YAML front matter".
+MD041: false
+
+# Rules by tags
+blank_lines: false
+
+MD046: false
+# code-block-style
diff --git a/.mlc.toml b/.mlc.toml
new file mode 100644
index 00000000..46b37072
--- /dev/null
+++ b/.mlc.toml
@@ -0,0 +1,4 @@
+# Ignore these links, we can't check them from this subproject
+ignore-links=["../*", "/docs/*"]
+# Path to the root folder used to resolve all relative paths
+root-dir="./docs"
diff --git a/README.md b/README.md
index 8eca400f..68e2b3e6 100644
--- a/README.md
+++ b/README.md
@@ -1,11 +1,11 @@
- # Generate interactive API documentation from OpenAPI definitions
+# Generate beautiful API documentation from OpenAPI
[](https://www.npmjs.com/package/redoc) [](https://github.com/Redocly/redoc/blob/main/LICENSE)
- [](https://cdn.redoc.ly/redoc/latest/bundles/redoc.standalone.js) [](https://www.npmjs.com/package/redoc) [](https://www.jsdelivr.com/package/npm/redoc)
+ [](https://cdn.redoc.ly/redoc/latest/bundles/redoc.standalone.js) [](https://www.npmjs.com/package/redoc) [](https://www.jsdelivr.com/package/npm/redoc)
@@ -34,13 +34,11 @@ enter the URL for your definition and select **TRY IT**.
- Responsive three-panel design with menu/scrolling synchronization
- Support for OpenAPI 3.1, OpenAPI 3.0, and Swagger 2.0
-- [Multiple deployment options](https://redocly.com/docs/redoc/)
-- Interactive interface so your users can try the API immediately
- Ability to integrate your API introduction into the side menu
- High-level grouping in side menu with the [`x-tagGroups`](https://redocly.com/docs/api-reference-docs/specification-extensions/x-tag-groups/) specification extension
- [Simple integration with `create-react-app`](https://redocly.com/docs/redoc/quickstart/react/)
- Code samples support (with vendor extension)
- 
+ 
## Usage
@@ -50,7 +48,7 @@ Redoc is provided as a CLI tool (also distributed as a Docker image), HTML tag,
If you have Node installed, quickly generate documentation using `npx`:
-```
+```bash
npx @redocly/cli build-docs openapi.yaml
```
@@ -73,9 +71,9 @@ Add your own `spec-url` to the `` tag; this attribute can also be a local
### More usage options
-Check out the [deployment documentation](./deploment/index/md) for more options, and detailed documentation for each.
+Check out the [deployment documentation](./docs/deployment/intro.md) for more options, and detailed documentation for each.
-## Redoc vs. Reference
+## Redoc vs. Redocly API Reference
Redoc is Redocly's community-edition product. Looking for something more?
We also offer [hosted API reference documentation](https://redocly.com/docs/api-registry/guides/api-registry-quickstart/)
@@ -104,6 +102,7 @@ A sample of the organizations using Redocly tools in the wild:
- [Commbox](https://www.commbox.io/api/)
- [APIs.guru](https://apis.guru/api-doc/)
- [BoxKnight](https://www.docs.boxknight.com/)
+- [Quaderno API](https://developers.quaderno.io/api)
_Pull requests to add your own API page to the list are welcome_
diff --git a/demo/index.html b/demo/index.html
index 8675b407..8d751a6b 100644
--- a/demo/index.html
+++ b/demo/index.html
@@ -1,46 +1,63 @@
+
+
+ Redoc Interactive Demo
+
+
-
-
- ReDoc Interactive Demo
-
-
+
+
+
+
-
-
-
-
+
+
+
- redoc {
- display: block;
- }
-
-
-
+
+
-
-
+
-
-
-
\ No newline at end of file
+ if (window.location.host === 'rebilly.github.io') {
+ ga('create', 'UA-81703547-1', 'auto');
+ ga('send', 'pageview');
+ }
+
+
+