diff --git a/site/.eleventy.js b/site/.eleventy.js
index 602ac779..38a297f7 100644
--- a/site/.eleventy.js
+++ b/site/.eleventy.js
@@ -1,6 +1,5 @@
const { format } = require('date-fns')
const htmlmin = require('html-minifier')
-const navigationPlugin = require('@11ty/eleventy-navigation')
const syntaxHighlightPlugin = require('@11ty/eleventy-plugin-syntaxhighlight')
function noteContainer() {
@@ -68,7 +67,7 @@ module.exports = function (eleventyConfig) {
eleventyConfig.addFilter(
'debug',
- (content) => `
${JSON.stringify(content, null, 2)}`
+ (content = {}) => `${JSON.stringify(content, null, 2)}`
)
// Minify HTML output
@@ -85,7 +84,6 @@ module.exports = function (eleventyConfig) {
eleventyConfig.setLibrary('md', getMarkdownLib())
eleventyConfig.addPlugin(syntaxHighlightPlugin)
- eleventyConfig.addPlugin(navigationPlugin)
eleventyConfig.addCollection('docs', (collection) =>
collection.getFilteredByGlob('src/docs/**/*.md')
diff --git a/site/package.json b/site/package.json
index 3c46e89c..8f5b2303 100644
--- a/site/package.json
+++ b/site/package.json
@@ -21,7 +21,6 @@
},
"devDependencies": {
"@11ty/eleventy": "^0.12.1",
- "@11ty/eleventy-navigation": "^0.2.0",
"@11ty/eleventy-plugin-syntaxhighlight": "^3.1.1",
"@tailwindcss/typography": "^0.4.1",
"autoprefixer": "^10.2.6",
diff --git a/site/src/data/layout.js b/site/src/data/layout.js
deleted file mode 100644
index 942d2737..00000000
--- a/site/src/data/layout.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = 'docs.njk'
diff --git a/site/src/docs/backup/automatic/index.md b/site/src/docs/backup/automatic/index.md
index 52a26ba2..3eef4819 100644
--- a/site/src/docs/backup/automatic/index.md
+++ b/site/src/docs/backup/automatic/index.md
@@ -1,8 +1,5 @@
---
title: Automatic Backup
-menuTitle: Automatic
-parent: Backup
-order: 400
---
Remark42 by default makes daily backup files under `${BACKUP_PATH}` (default `./var/backup`). Backups kept up to `${MAX_BACKUP_FILES}` (default 10). Each backup file contains exported and gzipped content, i.e. all comments. At any point, the user can restore such backup and revert all comments to the desired state.
diff --git a/site/src/docs/backup/index.md b/site/src/docs/backup/index.md
index 4cf63733..40eb1fc8 100644
--- a/site/src/docs/backup/index.md
+++ b/site/src/docs/backup/index.md
@@ -1,6 +1,4 @@
---
layout: redirect.njk
destination: /docs/backup/automatic/
-title: Backup
-order: 300
---
diff --git a/site/src/docs/backup/manual/index.md b/site/src/docs/backup/manual/index.md
index b6ad3328..bd2b9da7 100644
--- a/site/src/docs/backup/manual/index.md
+++ b/site/src/docs/backup/manual/index.md
@@ -1,8 +1,5 @@
---
title: Manual Backup
-menuTitle: Manual
-parent: Backup
-order: 300
---
You can make a backup manually whenever you want. Run command:
diff --git a/site/src/docs/backup/migration/index.md b/site/src/docs/backup/migration/index.md
index 75f4e44e..b7e9b084 100644
--- a/site/src/docs/backup/migration/index.md
+++ b/site/src/docs/backup/migration/index.md
@@ -1,7 +1,5 @@
---
title: Migration
-parent: Backup
-order: 300
---
Remark42 supports importing comments from Disqus, WordPress, or native backup format. All imported comments have an `Imported` field set to `true`.
diff --git a/site/src/docs/backup/restore/index.md b/site/src/docs/backup/restore/index.md
index 3dda2385..7d53b055 100644
--- a/site/src/docs/backup/restore/index.md
+++ b/site/src/docs/backup/restore/index.md
@@ -1,8 +1,5 @@
---
title: Restore Backup
-menuTitle: Restore
-parent: Backup
-order: 300
---
Restore will clean all comments first and then will process with complete import from a given file.
diff --git a/site/src/docs/backup/url-migration/index.md b/site/src/docs/backup/url-migration/index.md
index a5773943..7793e011 100644
--- a/site/src/docs/backup/url-migration/index.md
+++ b/site/src/docs/backup/url-migration/index.md
@@ -1,7 +1,5 @@
---
title: Site URL migration
-parent: Backup
-order: 400
---
Here is an example on how to move your comments after your posts are moved, from `https://example.org/blog/` to `https://example.org/post/` in that example.
diff --git a/site/src/docs/configuration/authorization/index.md b/site/src/docs/configuration/authorization/index.md
index 124bdced..5440a0d1 100644
--- a/site/src/docs/configuration/authorization/index.md
+++ b/site/src/docs/configuration/authorization/index.md
@@ -1,7 +1,5 @@
---
title: Authorization
-parent: Configuration
-order: 200
---
## OAuth Providers
diff --git a/site/src/docs/configuration/email/index.md b/site/src/docs/configuration/email/index.md
index 64cd5fe4..d5fe6265 100644
--- a/site/src/docs/configuration/email/index.md
+++ b/site/src/docs/configuration/email/index.md
@@ -1,8 +1,5 @@
---
title: Email Settings
-menuTitle: Email
-parent: Configuration
-order: 300
---
## Overview
diff --git a/site/src/docs/configuration/frontend/index.md b/site/src/docs/configuration/frontend/index.md
index 97fa6b61..a56512a7 100644
--- a/site/src/docs/configuration/frontend/index.md
+++ b/site/src/docs/configuration/frontend/index.md
@@ -1,8 +1,5 @@
---
title: Frontend Configuration
-menuTitle: Frontend
-parent: Configuration
-order: 100
---
## Comments
diff --git a/site/src/docs/configuration/index.md b/site/src/docs/configuration/index.md
index 47e10773..8545c090 100644
--- a/site/src/docs/configuration/index.md
+++ b/site/src/docs/configuration/index.md
@@ -1,6 +1,4 @@
---
layout: redirect.njk
destination: /docs/configuration/frontend/
-title: Configuration
-order: 200
---
diff --git a/site/src/docs/configuration/kubernetes/index.md b/site/src/docs/configuration/kubernetes/index.md
index f0f6b7f2..f51f5d18 100644
--- a/site/src/docs/configuration/kubernetes/index.md
+++ b/site/src/docs/configuration/kubernetes/index.md
@@ -1,8 +1,5 @@
---
title: Deploy with Kubernetes
-menuTitle: Kubernetes
-parent: Configuration
-order: 700
---
## Using Helm
diff --git a/site/src/docs/configuration/nginx/index.md b/site/src/docs/configuration/nginx/index.md
index 9243c9b2..4724ac41 100644
--- a/site/src/docs/configuration/nginx/index.md
+++ b/site/src/docs/configuration/nginx/index.md
@@ -1,8 +1,5 @@
---
title: Configure with Nginx
-menuTitle: Nginx
-parent: Configuration
-order: 500
---
## How to configure remark42 with nginx reverse proxy
diff --git a/site/src/docs/configuration/notifications/index.md b/site/src/docs/configuration/notifications/index.md
index d2c4519c..69be1649 100644
--- a/site/src/docs/configuration/notifications/index.md
+++ b/site/src/docs/configuration/notifications/index.md
@@ -1,7 +1,5 @@
---
title: Notification
-parent: Configuration
-order: 400
---
## Email
diff --git a/site/src/docs/configuration/reproxy/index.md b/site/src/docs/configuration/reproxy/index.md
index f5cdeec0..fd3c9705 100644
--- a/site/src/docs/configuration/reproxy/index.md
+++ b/site/src/docs/configuration/reproxy/index.md
@@ -1,7 +1,5 @@
---
-title: Reproxy
-parent: Configuration
-order: 600
+title: Configure with Reproxy
---
## How to configure remark42 with [Reproxy](https://reproxy.io)
diff --git a/site/src/docs/configuration/subdomain/index.md b/site/src/docs/configuration/subdomain/index.md
index a6a82b18..1a3e2025 100644
--- a/site/src/docs/configuration/subdomain/index.md
+++ b/site/src/docs/configuration/subdomain/index.md
@@ -1,8 +1,5 @@
---
title: Configure Instance on Subdomain
-menuTitle: Subdomain
-parent: Configuration
-order: 600
---
## How to configure remark42 without a subdomain
diff --git a/site/src/docs/contributing/api/index.md b/site/src/docs/contributing/api/index.md
index 11fcce23..03fb7f9f 100644
--- a/site/src/docs/contributing/api/index.md
+++ b/site/src/docs/contributing/api/index.md
@@ -1,7 +1,5 @@
---
title: API
-parent: Contributing
-order: 400
---
## Authorization
diff --git a/site/src/docs/contributing/development/backend/index.md b/site/src/docs/contributing/development/backend/index.md
index 006ea9b7..81d96e24 100644
--- a/site/src/docs/contributing/development/backend/index.md
+++ b/site/src/docs/contributing/development/backend/index.md
@@ -1,9 +1,5 @@
---
title: Backend Development Guidelines
-menuTitle: Backend
-key: Backend Guidelines
-parent: Development
-order: 100
---
In Progress...
diff --git a/site/src/docs/contributing/development/frontend/index.md b/site/src/docs/contributing/development/frontend/index.md
index 86220abe..811b912a 100644
--- a/site/src/docs/contributing/development/frontend/index.md
+++ b/site/src/docs/contributing/development/frontend/index.md
@@ -1,9 +1,5 @@
---
title: Frontend Development Guidelines
-menuTitle: Frontend
-key: Frontend Guidelines
-parent: Development
-order: 100
---
### Code Style
diff --git a/site/src/docs/contributing/development/index.md b/site/src/docs/contributing/development/index.md
index 82de1e10..f13d33b0 100644
--- a/site/src/docs/contributing/development/index.md
+++ b/site/src/docs/contributing/development/index.md
@@ -1,7 +1,5 @@
---
title: Development
-parent: Contributing
-order: 200
---
You can use a fully functional local version to develop and test both frontend and backend. It requires at least 2GB RAM or swap enabled.
diff --git a/site/src/docs/contributing/index.md b/site/src/docs/contributing/index.md
index 2b4fea61..15dfcfd2 100644
--- a/site/src/docs/contributing/index.md
+++ b/site/src/docs/contributing/index.md
@@ -1,6 +1,4 @@
---
layout: redirect.njk
-destination: /docs/contributing/code-of-conduct/
-title: Contributing
-order: 500
+destination: /docs/contributing/development/
---
diff --git a/site/src/docs/contributing/technical-details/index.md b/site/src/docs/contributing/technical-details/index.md
index 0c17ee10..04b5f3ea 100644
--- a/site/src/docs/contributing/technical-details/index.md
+++ b/site/src/docs/contributing/technical-details/index.md
@@ -1,7 +1,5 @@
---
title: Technical Details
-order: 600
-parent: Contributing
---
Remark42 uses boltdb (embedded key/value database) files under `STORE_BOLT_PATH` for storing data. Each site stored in a separate boltbd file.
diff --git a/site/src/docs/contributing/translations/index.md b/site/src/docs/contributing/translations/index.md
index ab334f71..7e648203 100644
--- a/site/src/docs/contributing/translations/index.md
+++ b/site/src/docs/contributing/translations/index.md
@@ -1,8 +1,5 @@
---
title: Interface Translations
-menuTitle: Translations
-parent: Contributing
-order: 300
---
## Add a New Language to Remark42
diff --git a/site/src/docs/docs.11tydata.js b/site/src/docs/docs.11tydata.js
index 3a568093..a1f3cc80 100644
--- a/site/src/docs/docs.11tydata.js
+++ b/site/src/docs/docs.11tydata.js
@@ -1,10 +1,4 @@
module.exports = {
- eleventyComputed: {
- eleventyNavigation: {
- key: (data) => data.key || data.menuTitle || data.title,
- title: (data) => data.menuTitle || data.title,
- parent: (data) => data.parent,
- order: (data) => data.order,
- },
- },
+ nav: require('./nav.json'),
+ layout: 'docs.njk',
}
diff --git a/site/src/docs/getting-started/index.md b/site/src/docs/getting-started/index.md
index 94ea825b..d3bd6003 100644
--- a/site/src/docs/getting-started/index.md
+++ b/site/src/docs/getting-started/index.md
@@ -1,6 +1,4 @@
---
-title: Getting Started
layout: redirect.njk
destination: /docs/getting-started/installation/
-order: 100
---
diff --git a/site/src/docs/getting-started/installation/index.md b/site/src/docs/getting-started/installation/index.md
index 42e97244..65fc5795 100644
--- a/site/src/docs/getting-started/installation/index.md
+++ b/site/src/docs/getting-started/installation/index.md
@@ -1,7 +1,5 @@
---
title: Installation
-parent: Getting Started
-order: 100
---
## Setup Remark42 Instance on Your Server
diff --git a/site/src/docs/getting-started/system-requirements/index.md b/site/src/docs/getting-started/system-requirements/index.md
index dd4ec1b8..b50f1da4 100644
--- a/site/src/docs/getting-started/system-requirements/index.md
+++ b/site/src/docs/getting-started/system-requirements/index.md
@@ -1,7 +1,5 @@
---
title: System Requirements
-parent: Getting Started
-order: 200
---
In progress...
diff --git a/site/src/docs/nav.json b/site/src/docs/nav.json
new file mode 100644
index 00000000..ca447400
--- /dev/null
+++ b/site/src/docs/nav.json
@@ -0,0 +1,54 @@
+[
+ {
+ "section": "Getting Started",
+ "children": [
+ { "title": "Installation", "href": "/getting-started/installation/" },
+ {
+ "title": "System Requirements",
+ "href": "/getting-started/system-requirements/"
+ }
+ ]
+ },
+ {
+ "section": "Configuration",
+ "children": [
+ { "title": "Frontend", "href": "/configuration/frontend/" },
+ { "title": "Authorization", "href": "/configuration/authorization/" },
+ { "title": "Email", "href": "/configuration/email/" },
+ { "title": "Notifications", "href": "/configuration/notifications/" },
+ { "title": "Nginx", "href": "/configuration/nginx/" },
+ { "title": "Reproxy", "href": "/configuration/reproxy/" },
+ { "title": "Subdomain", "href": "/configuration/subdomain/" },
+ { "title": "Kubernetes", "href": "/configuration/kubernetes/" }
+ ]
+ },
+ {
+ "section": "Backup",
+ "children": [
+ { "title": "Manual", "href": "/backup/manual/" },
+ { "title": "Migration", "href": "/backup/migration/" },
+ { "title": "Restore", "href": "/backup/restore/" },
+ { "title": "Site URL migration", "href": "/backup/url-migration/" },
+ { "title": "Automatic", "href": "/backup/automatic/" }
+ ]
+ },
+ {
+ "section": "Contrubuting",
+ "children": [
+ {
+ "title": "Development",
+ "href": "/contributing/development/",
+ "children": [
+ { "title": "Backend", "href": "/contributing/development/backend/" },
+ { "title": "Frontend", "href": "/contributing/development/frontend/" }
+ ]
+ },
+ { "title": "Translations", "href": "/contributing/translations/" },
+ { "title": "API", "href": "/contributing/api/" },
+ {
+ "title": "Technical Details",
+ "href": "/contributing/technical-details/"
+ }
+ ]
+ }
+]
diff --git a/site/src/includes/components/docs-aside.njk b/site/src/includes/components/docs-aside.njk
index 6ae6e943..c7984a89 100644
--- a/site/src/includes/components/docs-aside.njk
+++ b/site/src/includes/components/docs-aside.njk
@@ -1,21 +1,16 @@
-{% macro renderList(entry, level) %}
- {% if level === 1 %}
- {{ entry.title }}
- {% else %}
+{% macro navItem(entry) %}
- {{ entry.title }}
- {% endif %}
- {% if entry.children and level < 2 %}
-
- {% for child in entry.children %}
- {{renderList(child, level + 1)}}
- {% endfor %}
-
- {% endif %}
- {% if entry.children and level >= 2 and page.url.startsWith(entry.url) %}
+
+ {{ entry.title }}
+
+ {% if entry.children and page.url.startsWith('/docs' + entry.href) %}
- {% for child in entry.children %}
- {{renderList(child, level + 1)}}
+ {% for entry in entry.children %}
+ -
+
+ {{ entry.title }}
+
+
{% endfor %}
{% endif %}
@@ -33,8 +28,15 @@
Open Menu
diff --git a/site/src/layouts/docs.njk b/site/src/layouts/docs.njk
index 919d6c96..efbf5668 100644
--- a/site/src/layouts/docs.njk
+++ b/site/src/layouts/docs.njk
@@ -14,7 +14,7 @@ layout: base.njk
#}
-
{{ title }}
+
{{ title }}
{{ layoutContent | safe }}
- {# TODO: implement navigation to next page of the docs
+ {# TODO: implement navigation to next page of the docs