diff --git a/.drone.yml b/.drone.yml
new file mode 100644
index 0000000..510c6df
--- /dev/null
+++ b/.drone.yml
@@ -0,0 +1,55 @@
+---
+# drone encrypt ResiLien/gare-centrale $AWS_ACCESS_KEY_ID
+kind: secret
+name: P4PILLON_AWS_ACCESS_KEY_ID
+data: scgAo2EiWf8LFrRkUc8YUeDb3z+pQ7m4mlo8f0lbYZX6s4tivnQSsfn5/eRuGbzUU+OA+JwN
+
+---
+# drone encrypt ResiLien/gare-centrale $AWS_SECRET_ACCESS_KEY
+kind: secret
+name: P4PILLON_AWS_SECRET_ACCESS_KEY
+data: K+NloJzfqtVJooqdKfmMSG6ATX7N8yMb+7WLCg3yOWrprPKlft0GtHdBUK5q2/9O2by5lv52itTT15B2Dziq7jYvE1oG4e+CDjJU6BIyj+0zFgVk8Hi1kVkPBaw=
+
+---
+kind: pipeline
+type: docker
+name: P4Pillon
+
+steps:
+- name: Construction du site
+ image: node:current-alpine
+ volumes:
+ - name: node_modules
+ path: /drone/src/node_modules
+ commands:
+ - npm install
+ - npm run build
+ environment:
+ HUGO_ENVIRONMENT: app.p4pillon.org
+
+- name: Déploiement sur l'hébergement S3
+ image: minio/mc
+ environment:
+ AWS_ACCESS_KEY_ID:
+ from_secret: P4PILLON_AWS_ACCESS_KEY_ID
+ AWS_SECRET_ACCESS_KEY:
+ from_secret: P4PILLON_AWS_SECRET_ACCESS_KEY
+ commands:
+ - mc alias set app_p4pillon_org https://s3.garage.resilien.cloud $AWS_ACCESS_KEY_ID $AWS_SECRET_ACCESS_KEY --api S3v4
+ - mc mirror --overwrite ./public app_p4pillon_org/app.p4pillon.org
+
+- name: notify
+ image: plugins/matrix@sha256:f1affb31b0c86963c97c6f976fa0dcb3cc84272057fd8558d609d28b3064bd7f
+ settings:
+ homeserver: https://converser.eu
+ roomid: "QwOITmkKxRJJyCSDOZ:converser.eu"
+ userid: "resilien:converser.eu"
+ accesstoken:
+ from_secret: MATRIX_ACCESSTOKEN
+ when:
+ status: [ failure ]
+
+# volumes:
+# - name: node_modules
+# host:
+# path: /tmp/drone/cache/weko/scores.ceiba-conseil.com/node_modules
diff --git a/.gitignore b/.gitignore
index 81e0bb4..077ce23 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,3 +6,4 @@ yarn-error.log
node_modules
public
resources
+hugo_stats.json
diff --git a/config/_default/hugo.toml b/config/_default/hugo.toml
index a66cdb1..a6dd27e 100644
--- a/config/_default/hugo.toml
+++ b/config/_default/hugo.toml
@@ -7,14 +7,14 @@ disableHugoGeneratorInject = true
enableEmoji = true
enableGitInfo = false
enableRobotsTXT = true
-languageCode = "en-US"
+languageCode = "fr-FR"
paginate = 10
rssLimit = 10
summarylength = 20 # 70 (default)
# Multilingual
-defaultContentLanguage = "en"
-disableLanguages = ["de", "nl"]
+defaultContentLanguage = "fr"
+disableLanguages = ["de", "nl", "en"]
defaultContentLanguageInSubdir = false
copyRight = "Copyright (c) 2020-2024 Hyas"
diff --git a/config/_default/languages.toml b/config/_default/languages.toml
index 23fb2b2..af1429a 100644
--- a/config/_default/languages.toml
+++ b/config/_default/languages.toml
@@ -1,3 +1,11 @@
+[fr]
+ languageName = "Français"
+ contentDir = "content/fr"
+ weight = 5
+ [fr.params]
+ languageISO = "FR"
+ languageTag = "fr-FR"
+
[en]
languageName = "English"
contentDir = "content/en"
diff --git a/config/app.p4pillon.org/hugo.toml b/config/app.p4pillon.org/hugo.toml
new file mode 100644
index 0000000..8e09c12
--- /dev/null
+++ b/config/app.p4pillon.org/hugo.toml
@@ -0,0 +1,9 @@
+baseURL = "https://app.p4pillon.org/"
+title = "P4Pillon"
+
+[languages.fr.params]
+ footer = 'Mise en place et hébergé avec sobriété par RésiLien'
+
+[deployment.targets]
+ name = "production"
+ URL = "s3://app.p4pillon.org?endpoint=https://s3.garage.resilien.cloud&disableSSL=true&s3ForcePathStyle=true®ion=garage"
diff --git a/config/app.p4pillon.org/menus.fr.toml b/config/app.p4pillon.org/menus.fr.toml
new file mode 100644
index 0000000..0204d75
--- /dev/null
+++ b/config/app.p4pillon.org/menus.fr.toml
@@ -0,0 +1,55 @@
+[[main]]
+ name = "Guides"
+ url = "/docs/introduction/bienvenue/"
+ weight = 10
+
+[[social]]
+ name = "Gérer vos données"
+ pre = ''
+ url = "https://nuage.cremeaux.org/"
+ weight = 40
+
+[[social]]
+ name = "Prise de notes"
+ pre = ''
+ url = "https://notes.cremeaux.org/"
+ weight = 10
+
+[[social]]
+ name = "Gestion d'évènements"
+ pre = ''
+ url = "https://mobilizon.cremeaux.org/"
+ weight = 20
+
+[[social]]
+ name = "Gestion de projets"
+ pre = ''
+ url = "https://projets.cremeaux.org/"
+ weight = 50
+
+[[social]]
+ name = "Gestion de PDF"
+ pre = ''
+ url = "https://pdf.cremeaux.org/"
+ weight = 30
+
+[[social]]
+ name = "Mots de passe"
+ pre = ''
+ url = "https://pass.cremeaux.org/"
+ weight = 60
+
+[[footer]]
+ name = "Mentions légales"
+ url = "/mentions-legales/"
+ weight = 10
+
+[[footer]]
+ name = "Sources du site"
+ url = "https://git.resilien.fr/Weko/gare-centrale/"
+ weight = 20
+
+[[footer]]
+ name = "Statuts des services"
+ url = "https://status.cremeaux.org/"
+ weight = 30
diff --git a/config/app.p4pillon.org/module.toml b/config/app.p4pillon.org/module.toml
new file mode 100644
index 0000000..29be85d
--- /dev/null
+++ b/config/app.p4pillon.org/module.toml
@@ -0,0 +1,88 @@
+# mounts
+## archetypes
+[[mounts]]
+ source = "node_modules/@hyas/doks-core/archetypes"
+ target = "archetypes"
+
+[[mounts]]
+ source = "archetypes"
+ target = "archetypes"
+
+## assets
+[[mounts]]
+ source = "node_modules/@hyas/core/assets"
+ target = "assets"
+
+[[mounts]]
+ source = "node_modules/@hyas/images/assets"
+ target = "assets"
+ excludeFiles = "/scss/**.scss"
+
+[[mounts]]
+ source = "node_modules/@hyas/doks-core/assets"
+ target = "assets"
+
+[[mounts]]
+ source = "node_modules/@tabler/icons/icons"
+ target = "assets/svgs/tabler-icons"
+
+[[mounts]]
+ source = "assets"
+ target = "assets"
+
+## content
+[[mounts]]
+ source = "content/app.p4pillon.org"
+ target = "content"
+
+## data
+[[mounts]]
+ source = "node_modules/@hyas/doks-core/data"
+ target = "data"
+
+[[mounts]]
+ source = "data"
+ target = "data"
+
+## i18n
+[[mounts]]
+ source = "node_modules/@hyas/doks-core/i18n"
+ target = "i18n"
+
+[[mounts]]
+ source = "i18n"
+ target = "i18n"
+
+## layouts
+[[mounts]]
+ source = "node_modules/@hyas/core/layouts"
+ target = "layouts"
+
+[[mounts]]
+ source = "node_modules/@hyas/seo/layouts"
+ target = "layouts"
+
+[[mounts]]
+ source = "node_modules/@hyas/images/layouts"
+ target = "layouts"
+
+[[mounts]]
+ source = "node_modules/@hyas/doks-core/layouts"
+ target = "layouts"
+
+[[mounts]]
+ source = "node_modules/@hyas/inline-svg/layouts"
+ target = "layouts"
+
+[[mounts]]
+ source = "layouts/app.p4pillon.org"
+ target = "layouts"
+
+## static
+[[mounts]]
+ source = "node_modules/@hyas/doks-core/static"
+ target = "static"
+
+[[mounts]]
+ source = "static"
+ target = "static"
diff --git a/config/cremeaux.org/hugo.toml b/config/cremeaux.org/hugo.toml
new file mode 100644
index 0000000..f288b5b
--- /dev/null
+++ b/config/cremeaux.org/hugo.toml
@@ -0,0 +1,9 @@
+baseURL = "https://cremeaux.org/"
+title = "Cremeaux.org"
+
+[languages.fr.params]
+ footer = 'Mise en place et hébergé avec sobriété par RésiLien'
+
+[deployment.targets]
+ name = "production"
+ URL = "s3://cremeaux.org?endpoint=https://s3.garage.resilien.cloud&disableSSL=true&s3ForcePathStyle=true®ion=garage"
diff --git a/config/cremeaux.org/menus.fr.toml b/config/cremeaux.org/menus.fr.toml
new file mode 100644
index 0000000..0204d75
--- /dev/null
+++ b/config/cremeaux.org/menus.fr.toml
@@ -0,0 +1,55 @@
+[[main]]
+ name = "Guides"
+ url = "/docs/introduction/bienvenue/"
+ weight = 10
+
+[[social]]
+ name = "Gérer vos données"
+ pre = ''
+ url = "https://nuage.cremeaux.org/"
+ weight = 40
+
+[[social]]
+ name = "Prise de notes"
+ pre = ''
+ url = "https://notes.cremeaux.org/"
+ weight = 10
+
+[[social]]
+ name = "Gestion d'évènements"
+ pre = ''
+ url = "https://mobilizon.cremeaux.org/"
+ weight = 20
+
+[[social]]
+ name = "Gestion de projets"
+ pre = ''
+ url = "https://projets.cremeaux.org/"
+ weight = 50
+
+[[social]]
+ name = "Gestion de PDF"
+ pre = ''
+ url = "https://pdf.cremeaux.org/"
+ weight = 30
+
+[[social]]
+ name = "Mots de passe"
+ pre = ''
+ url = "https://pass.cremeaux.org/"
+ weight = 60
+
+[[footer]]
+ name = "Mentions légales"
+ url = "/mentions-legales/"
+ weight = 10
+
+[[footer]]
+ name = "Sources du site"
+ url = "https://git.resilien.fr/Weko/gare-centrale/"
+ weight = 20
+
+[[footer]]
+ name = "Statuts des services"
+ url = "https://status.cremeaux.org/"
+ weight = 30
diff --git a/config/cremeaux.org/module.toml b/config/cremeaux.org/module.toml
new file mode 100644
index 0000000..93b9333
--- /dev/null
+++ b/config/cremeaux.org/module.toml
@@ -0,0 +1,88 @@
+# mounts
+## archetypes
+[[mounts]]
+ source = "node_modules/@hyas/doks-core/archetypes"
+ target = "archetypes"
+
+[[mounts]]
+ source = "archetypes"
+ target = "archetypes"
+
+## assets
+[[mounts]]
+ source = "node_modules/@hyas/core/assets"
+ target = "assets"
+
+[[mounts]]
+ source = "node_modules/@hyas/images/assets"
+ target = "assets"
+ excludeFiles = "/scss/**.scss"
+
+[[mounts]]
+ source = "node_modules/@hyas/doks-core/assets"
+ target = "assets"
+
+[[mounts]]
+ source = "node_modules/@tabler/icons/icons"
+ target = "assets/svgs/tabler-icons"
+
+[[mounts]]
+ source = "assets"
+ target = "assets"
+
+## content
+[[mounts]]
+ source = "content/cremeaux.org"
+ target = "content"
+
+## data
+[[mounts]]
+ source = "node_modules/@hyas/doks-core/data"
+ target = "data"
+
+[[mounts]]
+ source = "data"
+ target = "data"
+
+## i18n
+[[mounts]]
+ source = "node_modules/@hyas/doks-core/i18n"
+ target = "i18n"
+
+[[mounts]]
+ source = "i18n"
+ target = "i18n"
+
+## layouts
+[[mounts]]
+ source = "node_modules/@hyas/core/layouts"
+ target = "layouts"
+
+[[mounts]]
+ source = "node_modules/@hyas/seo/layouts"
+ target = "layouts"
+
+[[mounts]]
+ source = "node_modules/@hyas/images/layouts"
+ target = "layouts"
+
+[[mounts]]
+ source = "node_modules/@hyas/doks-core/layouts"
+ target = "layouts"
+
+[[mounts]]
+ source = "node_modules/@hyas/inline-svg/layouts"
+ target = "layouts"
+
+[[mounts]]
+ source = "layouts/cremeaux.org"
+ target = "layouts"
+
+## static
+[[mounts]]
+ source = "node_modules/@hyas/doks-core/static"
+ target = "static"
+
+[[mounts]]
+ source = "static"
+ target = "static"
diff --git a/content/app.p4pillon.org/_index.md b/content/app.p4pillon.org/_index.md
new file mode 100644
index 0000000..25c4bdb
--- /dev/null
+++ b/content/app.p4pillon.org/_index.md
@@ -0,0 +1,17 @@
+---
+title : "Outils numériques libres de P4Pillon"
+description: ""
+lead: "Ce site web met à disposition de multiples services utiles pour collaborer, partager et avoir une vie numérique plus « saine » pour P4Pillon."
+date: 2023-09-07T16:33:54+02:00
+lastmod: 2023-09-07T16:33:54+02:00
+draft: false
+seo:
+ title: "Outils numériques libres de P4Pillon" # custom title (optional)
+ description: "Ce site web met à disposition de multiples services utiles pour collaborer, partager et avoir une vie numérique plus « saine » pour P4Pillon." # custom description (recommended)
+ canonical: "" # custom canonical URL (optional)
+ noindex: false # false (default) or true
+---
+
+L'association [RésiLien](https://resilien.fr) met à disposition des outils informatiques.
+
+Ses outils sont disponibles pour les acteurs travaillant sur le projet P4Pillon. Pour la création d'un compte vous pouvez faire la demande sur [compte@p4pillon.org](mailto:compte@p4pillon.org).
diff --git a/content/app.p4pillon.org/docs b/content/app.p4pillon.org/docs
new file mode 120000
index 0000000..6246dff
--- /dev/null
+++ b/content/app.p4pillon.org/docs
@@ -0,0 +1 @@
+../docs/
\ No newline at end of file
diff --git a/content/app.p4pillon.org/mentions-legales.md b/content/app.p4pillon.org/mentions-legales.md
new file mode 100644
index 0000000..f7645cf
--- /dev/null
+++ b/content/app.p4pillon.org/mentions-legales.md
@@ -0,0 +1,44 @@
+---
+title: "Mentions légales"
+description: ""
+summary: ""
+date: 2023-09-07T17:19:07+02:00
+lastmod: 2023-09-07T17:19:07+02:00
+draft: false
+type: "legal"
+seo:
+ title: "" # custom title (optional)
+ description: "" # custom description (recommended)
+ canonical: "" # custom canonical URL (optional)
+ noindex: false # false (default) or true
+---
+
+## Éditeur
+
+Le site web [https://app.p4pillon.org](https://app.p4pillon.org) est édité par l'association [RésiLien](https://resilien.fr).
+
+> SIRET : XXXXXXXXXXXXXX
+> Adresse : 315 impasse de la Meliora 42260 Crémeaux
+
+## Directeur de publication
+
+Simon Constans
+
+## Hébergement
+
+Le site web [https://app.p4pillon.org](https://app.p4pillon.org) est hébergé avec sobriété par l'association [RésiLien](https://resilien.fr).
+
+> SIRET: XXXXXXXXXXXXXX
+> Adresse : 315 impasse de la Meliora 42260 Crémeaux
+
+## Développement et Maintenance
+
+Le site web [https://app.p4pillon.org](https://app.p4pillon.org) a été réalisé de façon éco-responsable par [RésiLien](https://resilien.fr).
+
+## Liens hypertextes
+
+Les liens hypertextes mis en œuvre en direction d’autres sites WEB ne sauraient engager la responsabilité de Jarnat, car nous n’exerçons aucun contrôle sur le contenu des sites auxquels ces liens renvoient.
+
+## Cookie
+
+Ce site n’installe aucun cookie, c’est pourquoi il n’y a aucun bandeau spécifique. Nous respectons la vie privée de nos visiteurs.
diff --git a/content/cremeaux.org/_index.md b/content/cremeaux.org/_index.md
new file mode 100644
index 0000000..981dbff
--- /dev/null
+++ b/content/cremeaux.org/_index.md
@@ -0,0 +1,17 @@
+---
+title : "Outils numériques libres de Cremeaux"
+description: ""
+lead: "Ce site web vous met à disposition de multiples services utiles pour collaborer, partager et avoir une vie numérique plus « saine » sur la commune de Cremeaux."
+date: 2023-09-07T16:33:54+02:00
+lastmod: 2023-09-07T16:33:54+02:00
+draft: false
+seo:
+ title: "Outils numériques libres de Cremeaux" # custom title (optional)
+ description: "Ce site web vous met à disposition de multiples services utiles pour collaborer, partager et avoir une vie numérique plus « saine » sur la commune de Cremeaux." # custom description (recommended)
+ canonical: "" # custom canonical URL (optional)
+ noindex: false # false (default) or true
+---
+
+L'association [RésiLien](https://resilien.fr) met à disposition des outils informatiques pour la commune de [Crémeaux](https://cremeaux.fr).
+
+Certains sont gratuit {{< inline-svg src="currency-euro-off" stroke-width="1" stroke="#ee52b7" height="1rem" width="1rem" class="svg-inline-custom" >}} tandis que d'autres nécessitent une adhésion à l'association ou sont payants {{< inline-svg src="currency-euro" stroke-width="1" stroke="#ee52b7" height="1rem" width="1rem" class="svg-inline-custom" >}} en fonction de l'espace utilisé . Vous pouvez nous contacter pour la création d'un compte à [comptes@cremeaux.org](mailto:comptes@cremeaux.org).
\ No newline at end of file
diff --git a/content/cremeaux.org/docs b/content/cremeaux.org/docs
new file mode 120000
index 0000000..6246dff
--- /dev/null
+++ b/content/cremeaux.org/docs
@@ -0,0 +1 @@
+../docs/
\ No newline at end of file
diff --git a/content/cremeaux.org/mentions-legales.md b/content/cremeaux.org/mentions-legales.md
new file mode 100644
index 0000000..856635a
--- /dev/null
+++ b/content/cremeaux.org/mentions-legales.md
@@ -0,0 +1,44 @@
+---
+title: "Mentions légales"
+description: ""
+summary: ""
+date: 2023-09-07T17:19:07+02:00
+lastmod: 2023-09-07T17:19:07+02:00
+draft: false
+type: "legal"
+seo:
+ title: "" # custom title (optional)
+ description: "" # custom description (recommended)
+ canonical: "" # custom canonical URL (optional)
+ noindex: false # false (default) or true
+---
+
+## Éditeur
+
+Le site web [https://cremeaux.org](https://cremeaux.org) est édité par l'association [RésiLien](https://resilien.fr).
+
+> SIRET : XXXXXXXXXXXXXX
+> Adresse : 315 impasse de la Meliora 42260 Crémeaux
+
+## Directeur de publication
+
+Simon Constans
+
+## Hébergement
+
+Le site web [https://cremeaux.org](https://cremeaux.org) est hébergé avec sobriété par l'association [RésiLien](https://resilien.fr).
+
+> SIRET: XXXXXXXXXXXXXX
+> Adresse : 315 impasse de la Meliora 42260 Crémeaux
+
+## Développement et Maintenance
+
+Le site web [https://cremeaux.org](https://cremeaux.org) a été réalisé de façon éco-responsable par [RésiLien](https://resilien.fr).
+
+## Liens hypertextes
+
+Les liens hypertextes mis en œuvre en direction d’autres sites WEB ne sauraient engager la responsabilité de Jarnat, car nous n’exerçons aucun contrôle sur le contenu des sites auxquels ces liens renvoient.
+
+## Cookie
+
+Ce site n’installe aucun cookie, c’est pourquoi il n’y a aucun bandeau spécifique. Nous respectons la vie privée de nos visiteurs.
diff --git a/hugo_stats.json b/hugo_stats.json
index 198e2a8..e335a13 100644
--- a/hugo_stats.json
+++ b/hugo_stats.json
@@ -4,7 +4,9 @@
"a",
"article",
"aside",
+ "blockquote",
"body",
+ "br",
"button",
"circle",
"code",
@@ -19,6 +21,7 @@
"h5",
"head",
"header",
+ "hr",
"html",
"input",
"kbd",
@@ -51,13 +54,12 @@
"align-items-center",
"anchor",
"bg-dots",
- "blog",
"blog-header",
"btn",
"btn-close",
- "btn-cta",
- "btn-lg",
+ "btn-group",
"btn-link",
+ "btn-outline-primary",
"btn-primary",
"btn-toggle",
"btn-toggle-nav",
@@ -85,6 +87,8 @@
"content",
"contributors",
"created-date",
+ "currency-euro",
+ "currency-euro-off",
"d-flex",
"d-lg-block",
"d-lg-none",
@@ -114,7 +118,6 @@
"fs-5",
"fw-normal",
"h-auto",
- "h3",
"h4",
"h5",
"home",
@@ -122,12 +125,16 @@
"icon-tabler",
"icon-tabler-arrow-left",
"icon-tabler-arrow-right",
- "icon-tabler-brand-github",
- "icon-tabler-clock",
+ "icon-tabler-calendar-event",
"icon-tabler-dots-vertical",
+ "icon-tabler-file-type-pdf",
+ "icon-tabler-files",
+ "icon-tabler-list-details",
"icon-tabler-menu",
"icon-tabler-moon",
+ "icon-tabler-pencil",
"icon-tabler-search",
+ "icon-tabler-shield-lock",
"icon-tabler-sun",
"icon-tabler-x",
"justify-content-between",
@@ -146,6 +153,7 @@
"me-auto",
"me-lg-1",
"me-lg-3",
+ "mentions-legales",
"message",
"modal",
"modal-body",
@@ -186,13 +194,10 @@
"page-nav",
"pb-1",
"pb-3",
- "position-relative",
- "privacy",
+ "pencil",
"px-0",
"query-no-results",
- "reading-time",
"rounded",
- "rounded-pill",
"row",
"search-form",
"search-input",
@@ -213,9 +218,10 @@
"sticky-top",
"stretched-link",
"submitted",
+ "svg-inline",
+ "svg-inline-custom",
"tags",
"taxonomy",
- "text-body",
"text-body-secondary",
"text-center",
"text-decoration-none",
@@ -234,8 +240,13 @@
"ids": [
"TableOfContents",
"buttonColorMode",
+ "cookie",
+ "directeur-de-publication",
"doks-docs-nav",
+ "développement-et-maintenance",
"further-reading",
+ "hébergement",
+ "liens-hypertextes",
"offcanvasNavMain",
"offcanvasNavMainLabel",
"offcanvasNavSection",
@@ -250,7 +261,8 @@
"section-45389ee90014e0938cb09409b9a8794d",
"section-63d5049791d9d79d86e9a108b0a999ca",
"socialMenu",
- "toc"
+ "toc",
+ "éditeur"
]
}
}
diff --git a/layouts/app.p4pillon.org/index.html b/layouts/app.p4pillon.org/index.html
new file mode 100644
index 0000000..f98b6dd
--- /dev/null
+++ b/layouts/app.p4pillon.org/index.html
@@ -0,0 +1,76 @@
+{{ define "main" }}
+ {{ .Params.lead | safeHTML }}{{ .Title | safeHTML }}
+
Travaillez en collaboration sur un texte en ligne pour mettre en lumière vos connaissances.
+ {{/*Propulsé par Outline
*/}} +Add Markdown files to content
to create new pages.
Edit your config in config/_default/hyas/doks.toml
.
Learn more in the Docs.
+{{ .Params.lead | safeHTML }}
+ {{/* {{ i18n "get_started" }} */}} + {{/* {{ .Content }} */}} +Travaillez en collaboration sur un texte en ligne pour mettre en lumière vos connaissances.
+ {{/*Propulsé par Outline
*/}} +Add Markdown files to content
to create new pages.
Edit your config in config/_default/hyas/doks.toml
.
Learn more in the Docs.
+