diff --git a/.github/workflows/build-deploy-docs.yml b/.github/workflows/build-deploy-docs.yml
index b97467d9..7c780e7c 100644
--- a/.github/workflows/build-deploy-docs.yml
+++ b/.github/workflows/build-deploy-docs.yml
@@ -14,6 +14,8 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
+ with:
+ submodules: true
- name: Install just
uses: taiki-e/install-action@v2
@@ -30,21 +32,22 @@ jobs:
- name: Install Python build dependencies
run: python -m pip install jmespath
- - name: Setup mdBook
- uses: peaceiris/actions-mdbook@v1
+ - name: Install Hugo
+ uses: peaceiris/actions-hugo@v3
with:
- mdbook-version: 'latest'
+ hugo-version: '0.111.3'
+ # extended: true
- name: Generate reference documentation
- run: cd docs && just refdoc
+ run: cd website && just refdoc
- - name: Build mdBook
- run: cd docs && just build
+ - name: Build site
+ run: cd website && just build
- name: Deploy
uses: peaceiris/actions-gh-pages@v3
if: github.ref == 'refs/heads/main'
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
- publish_dir: ./target/book
+ publish_dir: ./website/public
cname: www.bbox.earth
diff --git a/.gitmodules b/.gitmodules
new file mode 100644
index 00000000..ac19f766
--- /dev/null
+++ b/.gitmodules
@@ -0,0 +1,4 @@
+[submodule "website/themes/hextra"]
+ path = website/themes/hextra
+ url = https://github.com/pka/hextra
+ branch = backport-debian
diff --git a/docs/book.toml b/docs/book.toml
deleted file mode 100644
index d94489a4..00000000
--- a/docs/book.toml
+++ /dev/null
@@ -1,14 +0,0 @@
-[book]
-authors = ["BBOX contributors"]
-language = "en"
-multilingual = false
-src = "src"
-title = "BBOX Server Documentation"
-
-[build]
-build-dir = "../target/book"
-
-[output.html]
-curly-quotes = true
-git-repository-url = "https://github.com/bbox-services/bbox"
-edit-url-template = "https://github.com/bbox-services/bbox/edit/main/docs/{path}"
diff --git a/docs/src/SUMMARY.md b/docs/src/SUMMARY.md
deleted file mode 100644
index 21bf9214..00000000
--- a/docs/src/SUMMARY.md
+++ /dev/null
@@ -1,34 +0,0 @@
-[BBOX Server](README.md)
-- [Installation](installation.md)
-- [Configuration](core/configuration.md)
- - [Reference](core/reference.md)
-- [Running](running.md)
-- [API endpoints](api-endpoints.md)
-- [Feature server](feature-server/README.md)
- - [Configuration](feature-server/configuration.md)
- - [Endpoints](feature-server/endpoints.md)
- - [Reference](feature-server/reference.md)
-- [Map server](map-server/README.md)
- - [Configuration](map-server/configuration.md)
- - [Endpoints](map-server/endpoints.md)
- - [Reference](map-server/reference.md)
-- [Tile Server](tile-server/README.md)
- - [Installation](tile-server/installation.md)
- - [Configuration](tile-server/configuration.md)
- - [Running](tile-server/running.md)
- - [Endpoints](tile-server/endpoints.md)
- - [Seeding](tile-server/seeding.md)
- - [Reference](tile-server/reference.md)
- - [Guides](tile-server/guides.md)
-- [Asset server](asset-server/README.md)
- - [Configuration](asset-server/configuration.md)
- - [Reference](asset-server/reference.md)
-- [Processes server](processes-server/README.md)
- - [Configuration](processes-server/configuration.md)
- - [Endpoints](processes-server/endpoints.md)
- - [Reference](processes-server/reference.md)
-- [Routing server](routing-server/README.md)
- - [Configuration](routing-server/configuration.md)
- - [Endpoints](routing-server/endpoints.md)
- - [Reference](routing-server/reference.md)
-- [Instrumentation](instrumentation.md)
diff --git a/docs/theme/css/general.css b/docs/theme/css/general.css
deleted file mode 100644
index cc10c1f9..00000000
--- a/docs/theme/css/general.css
+++ /dev/null
@@ -1,244 +0,0 @@
-/* Base styles and content styles */
-
-@import 'variables.css';
-
-:root {
- /* Browser default font-size is 16px, this way 1 rem = 10px */
- font-size: 62.5%;
- color-scheme: var(--color-scheme);
-}
-
-html {
- font-family: "Open Sans", sans-serif;
- color: var(--fg);
- background-color: var(--bg);
- text-size-adjust: none;
- -webkit-text-size-adjust: none;
-}
-
-body {
- margin: 0;
- font-size: 1.6rem;
- overflow-x: hidden;
-}
-
-code {
- font-family: var(--mono-font) !important;
- font-size: var(--code-font-size);
- direction: ltr !important;
-}
-
-/* make long words/inline code not x overflow */
-main {
- overflow-wrap: break-word;
-}
-
-/* make wide tables scroll if they overflow */
-.table-wrapper {
- overflow-x: auto;
-}
-
-/* Don't change font size in headers. */
-h1 code, h2 code, h3 code, h4 code, h5 code, h6 code {
- font-size: unset;
-}
-
-.left { float: left; }
-.right { float: right; }
-.boring { opacity: 0.6; }
-.hide-boring .boring { display: none; }
-.hidden { display: none !important; }
-
-h2, h3 { margin-block-start: 2.5em; }
-h4, h5 { margin-block-start: 2em; }
-
-.header + .header h3,
-.header + .header h4,
-.header + .header h5 {
- margin-block-start: 1em;
-}
-
-h1:target::before,
-h2:target::before,
-h3:target::before,
-h4:target::before,
-h5:target::before,
-h6:target::before {
- display: inline-block;
- content: "»";
- margin-inline-start: -30px;
- width: 30px;
-}
-
-/* This is broken on Safari as of version 14, but is fixed
- in Safari Technology Preview 117 which I think will be Safari 14.2.
- https://bugs.webkit.org/show_bug.cgi?id=218076
-*/
-:target {
- /* Safari does not support logical properties */
- scroll-margin-top: calc(var(--menu-bar-height) + 0.5em);
-}
-
-.page {
- outline: 0;
- padding: 0 var(--page-padding);
- margin-block-start: calc(0px - var(--menu-bar-height)); /* Compensate for the #menu-bar-hover-placeholder */
-}
-.page-wrapper {
- box-sizing: border-box;
- background-color: var(--bg);
-}
-.no-js .page-wrapper,
-.js:not(.sidebar-resizing) .page-wrapper {
- transition: margin-left 0.3s ease, transform 0.3s ease; /* Animation: slide away */
-}
-[dir=rtl] .js:not(.sidebar-resizing) .page-wrapper {
- transition: margin-right 0.3s ease, transform 0.3s ease; /* Animation: slide away */
-}
-
-.content {
- overflow-y: auto;
- padding: 0 5px 50px 5px;
-}
-.content main {
- margin-inline-start: auto;
- margin-inline-end: auto;
- max-width: var(--content-max-width);
-}
-.content p { line-height: 1.45em; }
-.content ol { line-height: 1.45em; }
-.content ul { line-height: 1.45em; }
-.content a { text-decoration: none; }
-.content a:hover { text-decoration: underline; }
-.content img, .content video { max-width: 100%; }
-.content .header:link,
-.content .header:visited {
- color: var(--fg);
-}
-.content .header:link,
-.content .header:visited:hover {
- text-decoration: none;
-}
-
-table {
- margin: 0 auto;
- border-collapse: collapse;
-}
-table td {
- padding: 3px 20px;
- border: 1px var(--table-border-color) solid;
-}
-table thead {
- background: var(--table-header-bg);
-}
-table thead td {
- font-weight: 700;
- border: none;
-}
-table thead th {
- padding: 3px 20px;
-}
-table thead tr {
- border: 1px var(--table-header-bg) solid;
-}
-/* Alternate background colors for rows */
-table tbody tr:nth-child(2n) {
- background: var(--table-alternate-bg);
-}
-
-
-blockquote {
- margin: 20px 0;
- padding: 0 20px;
- color: var(--fg);
- background-color: var(--quote-bg);
- border-block-start: .1em solid var(--quote-border);
- border-block-end: .1em solid var(--quote-border);
-}
-
-.warning {
- margin: 20px;
- padding: 0 20px;
- border-inline-start: 2px solid var(--warning-border);
-}
-
-.warning:before {
- position: absolute;
- width: 3rem;
- height: 3rem;
- margin-inline-start: calc(-1.5rem - 21px);
- content: "ⓘ";
- text-align: center;
- background-color: var(--bg);
- color: var(--warning-border);
- font-weight: bold;
- font-size: 2rem;
-}
-
-blockquote .warning:before {
- background-color: var(--quote-bg);
-}
-
-kbd {
- background-color: var(--table-border-color);
- border-radius: 4px;
- border: solid 1px var(--theme-popup-border);
- box-shadow: inset 0 -1px 0 var(--theme-hover);
- display: inline-block;
- font-size: var(--code-font-size);
- font-family: var(--mono-font);
- line-height: 10px;
- padding: 4px 5px;
- vertical-align: middle;
-}
-
-:not(.footnote-definition) + .footnote-definition,
-.footnote-definition + :not(.footnote-definition) {
- margin-block-start: 2em;
-}
-.footnote-definition {
- font-size: 0.9em;
- margin: 0.5em 0;
-}
-.footnote-definition p {
- display: inline;
-}
-
-.tooltiptext {
- position: absolute;
- visibility: hidden;
- color: #fff;
- background-color: #333;
- transform: translateX(-50%); /* Center by moving tooltip 50% of its width left */
- left: -8px; /* Half of the width of the icon */
- top: -35px;
- font-size: 0.8em;
- text-align: center;
- border-radius: 6px;
- padding: 5px 8px;
- margin: 5px;
- z-index: 1000;
-}
-.tooltipped .tooltiptext {
- visibility: visible;
-}
-
-.chapter-item.affix::before {
- content: url('/favicon.svg');
-}
-
-.chapter-item.affix a {
- font-weight: bold;
- padding-top: 2px;
- padding-left: 2px;
-}
-
-.chapter li.part-title {
- color: var(--sidebar-fg);
- margin: 5px 0px;
- font-weight: bold;
-}
-
-.result-no-output {
- font-style: italic;
-}
diff --git a/docs/.gitignore b/website/.gitignore
similarity index 61%
rename from docs/.gitignore
rename to website/.gitignore
index 3d903c29..5f89ed2f 100644
--- a/docs/.gitignore
+++ b/website/.gitignore
@@ -1 +1,2 @@
+/public
reference.md
diff --git a/website/config.toml b/website/config.toml
new file mode 100644
index 00000000..d1424c13
--- /dev/null
+++ b/website/config.toml
@@ -0,0 +1,79 @@
+baseURL = "https://www.bbox.earth/"
+title = "BBOX Server"
+theme = "hextra"
+enableRobotsTXT = false
+enableGitInfo = true
+enableInlineShortcodes = true
+
+[languages.en]
+languageName = "English"
+weight = 1
+#title = "BBOX Server"
+
+[markup.goldmark.renderer]
+unsafe = true
+
+[markup.highlight]
+noClasses = false
+
+[[menu.main]]
+identifier = "documentation"
+name = "Documentation"
+pageRef = "/docs"
+weight = 1
+
+[[menu.main]]
+name = "Search"
+weight = 5
+[menu.main.params]
+type = "search"
+
+[[menu.main]]
+name = "GitHub"
+weight = 6
+url = "https://github.com/bbox-services/bbox"
+[menu.main.params]
+icon = "github"
+
+[params]
+description = "A free & simple Vector Tile schema for OpenStreetMap"
+displayUpdatedDate = false
+dateFormat = "January 2, 2006"
+
+ [params.navbar]
+ displayTitle = true
+ displayLogo = true
+ width = "normal"
+
+ [params.navbar.logo]
+ path = "/favicon.svg"
+ dark = "/favicon.svg"
+
+ [params.page]
+ width = "normal"
+
+ [params.theme]
+ default = "system"
+ displayToggle = true
+
+ [params.footer]
+ enable = true
+ displayCopyright = true
+ displayPoweredBy = false
+ width = "normal"
+
+ [params.search]
+ enable = true
+ type = "flexsearch"
+
+ [params.search.flexsearch]
+ index = "content"
+ tokenize = "forward"
+
+ [params.editURL]
+ enable = true
+ base = "https://github.com/bbox-services/bbox/edit/main/website/content"
+
+[params.highlight.copy]
+enable = true
+display = "hover"
diff --git a/website/content/_index.md b/website/content/_index.md
new file mode 100644
index 00000000..6e202a81
--- /dev/null
+++ b/website/content/_index.md
@@ -0,0 +1,24 @@
+```
+ ___ ___ _____ __
+| _ ) _ )/ _ \ \/ /
+| _ \ _ \ (_) > <
+|___/___/\___/_/\_\
+```
+
+Composable spatial services.
+
+Components:
+* [BBOX Feature server](docs/feature-server/): OGC API Features service
+* [BBOX Map server](docs/map-server/): OGC API Map service
+* [BBOX Tile server](docs/tile-server/): OGC API Tile service
+* [BBOX Asset server](docs/asset-server/): Serving static and templated files
+* [BBOX Processes server](docs/processes-server/): OGC API Processes service
+* [BBOX Routing server](docs/routing-server/): OGC API Routing service (experimental)
+
+Features:
+* Built-in high performance HTTP server
+* OpenAPI support with built-in UI
+* Instrumentation: Prometheus metrics and Jaeger tracing
+* Healths endpoints for Docker and Kubernetes hosting
+* Common configuration file
+* Open Source under Apache-2.0 / MIT license:
diff --git a/docs/src/README.md b/website/content/docs/_index.md
similarity index 100%
rename from docs/src/README.md
rename to website/content/docs/_index.md
diff --git a/docs/src/api-endpoints.md b/website/content/docs/api-endpoints.md
similarity index 98%
rename from docs/src/api-endpoints.md
rename to website/content/docs/api-endpoints.md
index d89beebf..dd7b1ebb 100644
--- a/docs/src/api-endpoints.md
+++ b/website/content/docs/api-endpoints.md
@@ -1,3 +1,7 @@
+---
+weight: 5
+---
+
# API Endpoints
## OGC API Endpoints
diff --git a/docs/src/asset-server/README.md b/website/content/docs/asset-server/_index.md
similarity index 94%
rename from docs/src/asset-server/README.md
rename to website/content/docs/asset-server/_index.md
index d97f16b2..c88594d0 100644
--- a/docs/src/asset-server/README.md
+++ b/website/content/docs/asset-server/_index.md
@@ -1,3 +1,7 @@
+---
+weight: 9
+---
+
# BBOX Asset server
Serving static and templated files.
diff --git a/docs/src/asset-server/configuration.md b/website/content/docs/asset-server/configuration.md
similarity index 100%
rename from docs/src/asset-server/configuration.md
rename to website/content/docs/asset-server/configuration.md
diff --git a/website/content/docs/core/_index.md b/website/content/docs/core/_index.md
new file mode 100644
index 00000000..3d5e5b08
--- /dev/null
+++ b/website/content/docs/core/_index.md
@@ -0,0 +1,3 @@
+---
+weight: 3
+---
diff --git a/docs/src/core/configuration.md b/website/content/docs/core/configuration.md
similarity index 100%
rename from docs/src/core/configuration.md
rename to website/content/docs/core/configuration.md
diff --git a/docs/src/feature-server/README.md b/website/content/docs/feature-server/_index.md
similarity index 96%
rename from docs/src/feature-server/README.md
rename to website/content/docs/feature-server/_index.md
index 8d53624b..f58ca689 100644
--- a/docs/src/feature-server/README.md
+++ b/website/content/docs/feature-server/_index.md
@@ -1,3 +1,7 @@
+---
+weight: 6
+---
+
# BBOX OGC API Features Service
Asynchronous OGC API Features server implementation.
diff --git a/docs/src/feature-server/configuration.md b/website/content/docs/feature-server/configuration.md
similarity index 100%
rename from docs/src/feature-server/configuration.md
rename to website/content/docs/feature-server/configuration.md
diff --git a/docs/src/feature-server/endpoints.md b/website/content/docs/feature-server/endpoints.md
similarity index 100%
rename from docs/src/feature-server/endpoints.md
rename to website/content/docs/feature-server/endpoints.md
diff --git a/docs/src/installation.md b/website/content/docs/installation.md
similarity index 97%
rename from docs/src/installation.md
rename to website/content/docs/installation.md
index c2ebcac3..3167ad08 100644
--- a/docs/src/installation.md
+++ b/website/content/docs/installation.md
@@ -1,3 +1,8 @@
+---
+weight: 2
+next: docs/core/configuration
+---
+
## Binary Distributions
You can download BBOX from [GitHub releases page](https://github.com/bbox-services/bbox/releases).
diff --git a/docs/src/instrumentation.md b/website/content/docs/instrumentation.md
similarity index 98%
rename from docs/src/instrumentation.md
rename to website/content/docs/instrumentation.md
index 647ad521..8ac945fa 100644
--- a/docs/src/instrumentation.md
+++ b/website/content/docs/instrumentation.md
@@ -1,3 +1,7 @@
+---
+weight: 12
+---
+
# Instrumentation
## Configuration
diff --git a/docs/src/map-server/README.md b/website/content/docs/map-server/_index.md
similarity index 95%
rename from docs/src/map-server/README.md
rename to website/content/docs/map-server/_index.md
index 76287ef5..0a57f302 100644
--- a/docs/src/map-server/README.md
+++ b/website/content/docs/map-server/_index.md
@@ -1,3 +1,7 @@
+---
+weight: 7
+---
+
# BBOX map server
Asynchronous map server with FCGI backend.
diff --git a/docs/src/map-server/configuration.md b/website/content/docs/map-server/configuration.md
similarity index 100%
rename from docs/src/map-server/configuration.md
rename to website/content/docs/map-server/configuration.md
diff --git a/docs/src/map-server/endpoints.md b/website/content/docs/map-server/endpoints.md
similarity index 100%
rename from docs/src/map-server/endpoints.md
rename to website/content/docs/map-server/endpoints.md
diff --git a/docs/src/processes-server/README.md b/website/content/docs/processes-server/_index.md
similarity index 96%
rename from docs/src/processes-server/README.md
rename to website/content/docs/processes-server/_index.md
index eff91b24..4a17af3e 100644
--- a/docs/src/processes-server/README.md
+++ b/website/content/docs/processes-server/_index.md
@@ -1,3 +1,7 @@
+---
+weight: 10
+---
+
# BBOX Processes Service
The OGC API - Processes standard specifies an interface for executing computational tasks.
diff --git a/docs/src/processes-server/configuration.md b/website/content/docs/processes-server/configuration.md
similarity index 100%
rename from docs/src/processes-server/configuration.md
rename to website/content/docs/processes-server/configuration.md
diff --git a/docs/src/processes-server/endpoints.md b/website/content/docs/processes-server/endpoints.md
similarity index 100%
rename from docs/src/processes-server/endpoints.md
rename to website/content/docs/processes-server/endpoints.md
diff --git a/docs/src/routing-server/README.md b/website/content/docs/routing-server/_index.md
similarity index 95%
rename from docs/src/routing-server/README.md
rename to website/content/docs/routing-server/_index.md
index 65c009d0..f6ad9d1d 100644
--- a/docs/src/routing-server/README.md
+++ b/website/content/docs/routing-server/_index.md
@@ -1,3 +1,7 @@
+---
+weight: 11
+---
+
# BBOX Routing Service (EXPERIMENTAL)
Routing services with Contraction Hierarchy.
diff --git a/docs/src/routing-server/configuration.md b/website/content/docs/routing-server/configuration.md
similarity index 100%
rename from docs/src/routing-server/configuration.md
rename to website/content/docs/routing-server/configuration.md
diff --git a/docs/src/routing-server/endpoints.md b/website/content/docs/routing-server/endpoints.md
similarity index 100%
rename from docs/src/routing-server/endpoints.md
rename to website/content/docs/routing-server/endpoints.md
diff --git a/docs/src/running.md b/website/content/docs/running.md
similarity index 98%
rename from docs/src/running.md
rename to website/content/docs/running.md
index 0f214916..0f5f1615 100644
--- a/docs/src/running.md
+++ b/website/content/docs/running.md
@@ -1,3 +1,7 @@
+---
+weight: 4
+---
+
# Running BBOX
## Command line options
diff --git a/docs/src/tile-server/README.md b/website/content/docs/tile-server/_index.md
similarity index 97%
rename from docs/src/tile-server/README.md
rename to website/content/docs/tile-server/_index.md
index 217e53dd..35ccac8d 100644
--- a/docs/src/tile-server/README.md
+++ b/website/content/docs/tile-server/_index.md
@@ -1,3 +1,7 @@
+---
+weight: 8
+---
+
# BBOX tile server
Map tile serving and tile cache seeding.
diff --git a/docs/src/tile-server/configuration.md b/website/content/docs/tile-server/configuration.md
similarity index 99%
rename from docs/src/tile-server/configuration.md
rename to website/content/docs/tile-server/configuration.md
index e332a3a4..4ef32522 100644
--- a/docs/src/tile-server/configuration.md
+++ b/website/content/docs/tile-server/configuration.md
@@ -1,3 +1,7 @@
+---
+weight: 2
+---
+
# Tile server configuration
## Datasources
diff --git a/docs/src/tile-server/endpoints.md b/website/content/docs/tile-server/endpoints.md
similarity index 99%
rename from docs/src/tile-server/endpoints.md
rename to website/content/docs/tile-server/endpoints.md
index 13f1f39f..a29c7ad1 100644
--- a/docs/src/tile-server/endpoints.md
+++ b/website/content/docs/tile-server/endpoints.md
@@ -1,3 +1,7 @@
+---
+weight: 4
+---
+
# BBOX API Endpoints
Services are available via the following HTTP endpoints:
diff --git a/docs/src/tile-server/guides.md b/website/content/docs/tile-server/guides.md
similarity index 99%
rename from docs/src/tile-server/guides.md
rename to website/content/docs/tile-server/guides.md
index 784a3683..f4dc6492 100644
--- a/docs/src/tile-server/guides.md
+++ b/website/content/docs/tile-server/guides.md
@@ -1,3 +1,7 @@
+---
+weight: 7
+---
+
# Guides
## Creating a custom grid
diff --git a/docs/src/tile-server/installation.md b/website/content/docs/tile-server/installation.md
similarity index 99%
rename from docs/src/tile-server/installation.md
rename to website/content/docs/tile-server/installation.md
index b6572f7a..55fd5c08 100644
--- a/docs/src/tile-server/installation.md
+++ b/website/content/docs/tile-server/installation.md
@@ -1,3 +1,7 @@
+---
+weight: 1
+---
+
## Binary Distributions
You can download BBOX tile server from [GitHub releases page](https://github.com/bbox-services/bbox/releases).
diff --git a/docs/src/tile-server/running.md b/website/content/docs/tile-server/running.md
similarity index 98%
rename from docs/src/tile-server/running.md
rename to website/content/docs/tile-server/running.md
index 6937ee2f..72f1dcd4 100644
--- a/docs/src/tile-server/running.md
+++ b/website/content/docs/tile-server/running.md
@@ -1,3 +1,7 @@
+---
+weight: 3
+---
+
# Running BBOX tile server
## Command line options
diff --git a/docs/src/tile-server/seeding.md b/website/content/docs/tile-server/seeding.md
similarity index 97%
rename from docs/src/tile-server/seeding.md
rename to website/content/docs/tile-server/seeding.md
index b9252428..4531d7e7 100644
--- a/docs/src/tile-server/seeding.md
+++ b/website/content/docs/tile-server/seeding.md
@@ -1,3 +1,7 @@
+---
+weight: 5
+---
+
# Tile seeding
Seed with proxy WMS:
diff --git a/docs/src/tile-server/styling.md b/website/content/docs/tile-server/styling.md
similarity index 93%
rename from docs/src/tile-server/styling.md
rename to website/content/docs/tile-server/styling.md
index 63abff65..aa62f4af 100644
--- a/docs/src/tile-server/styling.md
+++ b/website/content/docs/tile-server/styling.md
@@ -1,3 +1,8 @@
+---
+sidebar:
+ exclude: true
+---
+
# Vector Tile styling
### Using Maputnik for MVT styling
diff --git a/docs/justfile b/website/justfile
similarity index 84%
rename from docs/justfile
rename to website/justfile
index c5903099..ed1a3b0a 100644
--- a/docs/justfile
+++ b/website/justfile
@@ -2,15 +2,16 @@
set shell := ["bash", "-c"]
-# https://rust-lang.github.io/mdBook/guide/installation.html
+# The website is created using [Hugo](https://gohugo.io/).
+# The theme is based on [Hextra](https://imfing.github.io/hextra/docs/).
# Build docs
build:
- mdbook build
+ hugo
# Serve docs
serve:
- mdbook serve --open --port 8321
+ hugo server
# Update version cargo files (e.g. 0.5.0-beta4)
update-version version:
@@ -19,7 +20,7 @@ update-version version:
# Update version in downlad urls (e.g. v0.5.0-beta4)
update-version-doc version:
- V={{version}}; VD=${V:1}; VD=${VD/-/.}; sed --in-place -e 's!download/v.*/!download/{{version}}/!g' -e 's!sourcepole/\(bbox-.*\):.*!sourcepole/\1:{{version}}!g' -e "s!_.*\(-.*.deb$\)!_$VD\1!g" src/installation.md src/tile-server/installation.md
+ V={{version}}; VD=${V:1}; VD=${VD/-/.}; sed --in-place -e 's!download/v.*/!download/{{version}}/!g' -e 's!sourcepole/\(bbox-.*\):.*!sourcepole/\1:{{version}}!g' -e "s!_.*\(-.*.deb$\)!_$VD\1!g" content/docs/installation.md content/docs/tile-server/installation.md
rustdoc:
cargo +nightly rustdoc --lib -p bbox-core -- -Z unstable-options --output-format json
@@ -31,7 +32,7 @@ rustdoc:
cargo +nightly rustdoc --lib -p bbox-routing-server -- -Z unstable-options --output-format json
@# cat ../target/doc/bbox_tile_server.json | jq . >bbox-tile-server.json
-gendoc: (genref "../target/doc/bbox_core.json" "src/core/reference.md" "CoreServiceCfg" "Core Reference") (genref "../target/doc/bbox_tile_server.json" "src/tile-server/reference.md" "TileServiceCfg" "Tile Server Reference") (genref "../target/doc/bbox_feature_server.json" "src/feature-server/reference.md" "FeatureServiceCfg" "Feature Server Reference") (genref "../target/doc/bbox_map_server.json" "src/map-server/reference.md" "MapServiceCfg" "Map Server Reference") (genref "../target/doc/bbox_asset_server.json" "src/asset-server/reference.md" "AssetServiceCfg" "Asset Server Reference") (genref "../target/doc/bbox_processes_server.json" "src/processes-server/reference.md" "ProcessesServiceCfg" "Processes Server Reference") (genref "../target/doc/bbox_routing_server.json" "src/routing-server/reference.md" "RoutingServiceCfg" "Routing Server Reference")
+gendoc: (genref "../target/doc/bbox_core.json" "content/docs/core/reference.md" "CoreServiceCfg" "Core Reference") (genref "../target/doc/bbox_tile_server.json" "content/docs/tile-server/reference.md" "TileServiceCfg" "Tile Server Reference") (genref "../target/doc/bbox_feature_server.json" "content/docs/feature-server/reference.md" "FeatureServiceCfg" "Feature Server Reference") (genref "../target/doc/bbox_map_server.json" "content/docs/map-server/reference.md" "MapServiceCfg" "Map Server Reference") (genref "../target/doc/bbox_asset_server.json" "content/docs/asset-server/reference.md" "AssetServiceCfg" "Asset Server Reference") (genref "../target/doc/bbox_processes_server.json" "content/docs/processes-server/reference.md" "ProcessesServiceCfg" "Processes Server Reference") (genref "../target/doc/bbox_routing_server.json" "content/docs/routing-server/reference.md" "RoutingServiceCfg" "Routing Server Reference")
# Extract configuration reference from rustdoc
refdoc: rustdoc gendoc
diff --git a/docs/theme/head.hbs b/website/layouts/partials/custom/head-end.html
similarity index 76%
rename from docs/theme/head.hbs
rename to website/layouts/partials/custom/head-end.html
index be1f0c80..20402ad4 100644
--- a/docs/theme/head.hbs
+++ b/website/layouts/partials/custom/head-end.html
@@ -1 +1,3 @@
+{{ if hugo.IsProduction -}}
+{{ end -}}
\ No newline at end of file
diff --git a/docs/theme/favicon.png b/website/static/favicon.png
similarity index 100%
rename from docs/theme/favicon.png
rename to website/static/favicon.png
diff --git a/docs/theme/favicon.svg b/website/static/favicon.svg
similarity index 100%
rename from docs/theme/favicon.svg
rename to website/static/favicon.svg
diff --git a/website/themes/hextra b/website/themes/hextra
new file mode 160000
index 00000000..ce3b9953
--- /dev/null
+++ b/website/themes/hextra
@@ -0,0 +1 @@
+Subproject commit ce3b99532a2b31273852f76c6b4ee8376734a6a1