From e07cd6259605c0aa5091a7e62806b9419a52ce28 Mon Sep 17 00:00:00 2001 From: Philip Molares Date: Sun, 2 Jul 2023 22:31:04 +0200 Subject: [PATCH] docs: restructure documentation This rewrite follows the principles of https://diataxis.fr/ Co-authored-by: Erik Michelson Signed-off-by: Philip Molares Signed-off-by: Erik Michelson --- .github/workflows/docs-netlify-deploy.yml | 55 +++++ .reuse/dep5 | 24 +- docs/.markdownlint.json | 2 +- docs/.netlify/state.json | 3 + .../api_auth.md => concepts/api-auth.md} | 4 +- .../{dev/design_docs => concepts}/config.md | 0 .../{dev/design_docs => concepts}/events.md | 0 docs/content/concepts/index.md | 39 ++++ .../{dev/design_docs => concepts}/notes.md | 0 .../user-profiles.md} | 6 +- docs/content/config/index.md | 208 ----------------- docs/content/faq/index.md | 99 ++++++++ docs/content/files/setup-docker/Caddyfile | 14 ++ docs/content/files/setup-docker/config.env | 19 ++ .../files/setup-docker/docker-compose.yml | 38 +++ docs/content/how-to/auth.md | 5 + docs/content/how-to/backup.md | 5 + docs/content/how-to/database.md | 5 + .../{dev => how-to/develop}/auth/ldap.md | 15 +- .../content/{dev => how-to/develop}/docker.md | 6 +- .../{dev => how-to/develop}/documentation.md | 16 +- .../{dev/setup => how-to/develop}/frontend.md | 2 +- .../develop/setup.md} | 10 +- docs/content/how-to/index.md | 34 +++ docs/content/how-to/reverse-proxy.md | 217 ++++++++++++++++++ .../images/tutorial/note/editor-filled.png | Bin 0 -> 160599 bytes docs/content/images/tutorial/note/editor.png | Bin 0 -> 129023 bytes docs/content/images/tutorial/top-right.png | Bin 0 -> 9104 bytes .../images/tutorial/user/register-button.png | Bin 0 -> 21831 bytes .../images/tutorial/user/register-form.png | Bin 0 -> 74892 bytes docs/content/index.md | 73 +++++- docs/content/{ => old}/dev/db-schema.plantuml | 0 docs/content/{ => old}/dev/dev_notes.md | 0 docs/content/{ => old}/dev/public_api.yml | 0 .../images/interface/toolbar/blocks.png | Bin .../images/interface/toolbar/emoji.png | Bin .../images/interface/toolbar/emphasis.png | Bin .../images/interface/toolbar/large_blocks.png | Bin .../images/interface/toolbar/links.png | Bin .../images/interface/toolbar/table_modal.png | Bin .../interface/toolbar/table_overlay.png | Bin .../images/interface/toolbar/whole.png | Bin docs/content/{ => old}/interface/toolbar.md | 0 docs/content/references/config/auth/ldap.md | 24 ++ docs/content/references/config/auth/local.md | 25 ++ .../references/config/customization.md | 53 +++++ docs/content/references/config/database.md | 18 ++ docs/content/references/config/general.md | 14 ++ docs/content/references/config/index.md | 29 +++ .../content/references/config/integrations.md | 6 + .../{ => references}/config/media/azure.md | 2 +- .../config/media/filesystem.md | 0 .../{ => references}/config/media/imgur.md | 0 .../{ => references}/config/media/s3.md | 2 +- .../{ => references}/config/media/webdav.md | 0 docs/content/references/config/notes.md | 9 + docs/content/references/hfm.md | 2 +- docs/content/references/index.md | 21 ++ docs/content/setup/getting_started.md | 40 ---- docs/content/theme/styles/hedgedoc-custom.css | 38 ++- docs/content/tutorials/first-note.md | 52 +++++ docs/content/tutorials/first-presentation.md | 5 + docs/content/tutorials/index.md | 33 +++ docs/content/tutorials/setup.md | 82 +++++++ docs/content/tutorials/user.md | 41 ++++ docs/mkdocs.yml | 79 ++++--- docs/netlify.toml | 3 + docs/requirements.txt | 1 + 68 files changed, 1163 insertions(+), 315 deletions(-) create mode 100644 .github/workflows/docs-netlify-deploy.yml create mode 100644 docs/.netlify/state.json rename docs/content/{dev/design_docs/api_auth.md => concepts/api-auth.md} (94%) rename docs/content/{dev/design_docs => concepts}/config.md (100%) rename docs/content/{dev/design_docs => concepts}/events.md (100%) create mode 100644 docs/content/concepts/index.md rename docs/content/{dev/design_docs => concepts}/notes.md (100%) rename docs/content/{dev/design_docs/user_profiles.md => concepts/user-profiles.md} (94%) delete mode 100644 docs/content/config/index.md create mode 100644 docs/content/faq/index.md create mode 100644 docs/content/files/setup-docker/Caddyfile create mode 100644 docs/content/files/setup-docker/config.env create mode 100644 docs/content/files/setup-docker/docker-compose.yml create mode 100644 docs/content/how-to/auth.md create mode 100644 docs/content/how-to/backup.md create mode 100644 docs/content/how-to/database.md rename docs/content/{dev => how-to/develop}/auth/ldap.md (59%) rename docs/content/{dev => how-to/develop}/docker.md (87%) rename docs/content/{dev => how-to/develop}/documentation.md (74%) rename docs/content/{dev/setup => how-to/develop}/frontend.md (99%) rename docs/content/{dev/getting-started.md => how-to/develop/setup.md} (97%) create mode 100644 docs/content/how-to/index.md create mode 100644 docs/content/how-to/reverse-proxy.md create mode 100644 docs/content/images/tutorial/note/editor-filled.png create mode 100644 docs/content/images/tutorial/note/editor.png create mode 100644 docs/content/images/tutorial/top-right.png create mode 100644 docs/content/images/tutorial/user/register-button.png create mode 100644 docs/content/images/tutorial/user/register-form.png rename docs/content/{ => old}/dev/db-schema.plantuml (100%) rename docs/content/{ => old}/dev/dev_notes.md (100%) rename docs/content/{ => old}/dev/public_api.yml (100%) rename docs/content/{ => old}/images/interface/toolbar/blocks.png (100%) rename docs/content/{ => old}/images/interface/toolbar/emoji.png (100%) rename docs/content/{ => old}/images/interface/toolbar/emphasis.png (100%) rename docs/content/{ => old}/images/interface/toolbar/large_blocks.png (100%) rename docs/content/{ => old}/images/interface/toolbar/links.png (100%) rename docs/content/{ => old}/images/interface/toolbar/table_modal.png (100%) rename docs/content/{ => old}/images/interface/toolbar/table_overlay.png (100%) rename docs/content/{ => old}/images/interface/toolbar/whole.png (100%) rename docs/content/{ => old}/interface/toolbar.md (100%) create mode 100644 docs/content/references/config/auth/ldap.md create mode 100644 docs/content/references/config/auth/local.md create mode 100644 docs/content/references/config/customization.md create mode 100644 docs/content/references/config/database.md create mode 100644 docs/content/references/config/general.md create mode 100644 docs/content/references/config/index.md create mode 100644 docs/content/references/config/integrations.md rename docs/content/{ => references}/config/media/azure.md (99%) rename docs/content/{ => references}/config/media/filesystem.md (100%) rename docs/content/{ => references}/config/media/imgur.md (100%) rename docs/content/{ => references}/config/media/s3.md (93%) rename docs/content/{ => references}/config/media/webdav.md (100%) create mode 100644 docs/content/references/config/notes.md create mode 100644 docs/content/references/index.md delete mode 100644 docs/content/setup/getting_started.md create mode 100644 docs/content/tutorials/first-note.md create mode 100644 docs/content/tutorials/first-presentation.md create mode 100644 docs/content/tutorials/index.md create mode 100644 docs/content/tutorials/setup.md create mode 100644 docs/content/tutorials/user.md create mode 100644 docs/netlify.toml diff --git a/.github/workflows/docs-netlify-deploy.yml b/.github/workflows/docs-netlify-deploy.yml new file mode 100644 index 000000000..1841e38e3 --- /dev/null +++ b/.github/workflows/docs-netlify-deploy.yml @@ -0,0 +1,55 @@ +# SPDX-FileCopyrightText: 2023 The HedgeDoc developers (see AUTHORS file) +# +# SPDX-License-Identifier: AGPL-3.0-only + +name: Deploy HD2 docs to Netlify + +on: + push: + branches: [ develop ] + paths: ['docs/**'] + +env: + NETLIFY_VERSION: 13.2.2 + NODEJS_VERSION: 20 + PYTHON_VERSION: 3.11 + +defaults: + run: + working-directory: docs + +concurrency: + group: ${{ github.workflow }}-${{ github.ref }}-${{ github.job }} + cancel-in-progress: true + +jobs: + deploy: + runs-on: ubuntu-latest + name: Deploys to netlify + steps: + - name: Checkout repository + uses: actions/checkout@c85c95e3d7251135ab7dc9ce3241c5835cc595a9 # v3.5.3 + + - name: Setup node + uses: ./.github/actions/setup-node + with: + NODEJS_VERSION: ${{ env.NODEJS_VERSION }} + + - name: Set up Python + uses: actions/setup-python@v1 + with: + python-version: ${{ env.PYTHON_VERSION }} + + - name: Install dependencies + run: pip install -r requirements.txt + + - name: Build docs + run: mkdocs build + + - name: Install netlify CLI + run: "yarn add --dev netlify-cli@${{ env.NETLIFY_VERSION }}" + + - name: Run netlify CLI deployment + env: + NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }} + run: "netlify deploy --build --prod --message \"${{ github.event.head_commit.id }}\"" diff --git a/.reuse/dep5 b/.reuse/dep5 index 7effb87e0..97ab25bd7 100644 --- a/.reuse/dep5 +++ b/.reuse/dep5 @@ -35,11 +35,11 @@ Files: docs/**/*.png Copyright: 2021 The HedgeDoc developers (see AUTHORS file) License: CC-BY-SA-4.0 -Files: docs/content/dev/db-schema.plantuml +Files: docs/content/old/dev/db-schema.plantuml Copyright: 2021 The HedgeDoc developers (see AUTHORS file) License: CC-BY-SA-4.0 -Files: docs/content/dev/*api.yml +Files: docs/content/old/dev/*api.yml Copyright: 2021 The HedgeDoc developers (see AUTHORS file) License: CC-BY-SA-4.0 @@ -55,6 +55,26 @@ Files: docs/content/theme/styles/Roboto/* Copyright: 2011 Christian Robertson License: Apache-2.0 +Files: docs/content/files/setup-docker/config.env +Copyright: 2023 The HedgeDoc developers (see AUTHORS file) +License: CC0-1.0 + +Files: docs/content/files/setup-docker/docker-compose.yml +Copyright: 2023 The HedgeDoc developers (see AUTHORS file) +License: CC0-1.0 + +Files: docs/content/files/setup-docker/Caddyfile +Copyright: 2023 The HedgeDoc developers (see AUTHORS file) +License: CC0-1.0 + +Files: docs/netlify.toml +Copyright: 2021 The HedgeDoc developers (see AUTHORS file) +License: CC0-1.0 + +Files: docs/.netlify/* +Copyright: 2021 The HedgeDoc developers (see AUTHORS file) +License: CC0-1.0 + Files: backend/public/*.md Copyright: 2021 The HedgeDoc developers (see AUTHORS file) License: CC0-1.0 diff --git a/docs/.markdownlint.json b/docs/.markdownlint.json index 8b7578c19..9bfc32ae3 100644 --- a/docs/.markdownlint.json +++ b/docs/.markdownlint.json @@ -25,7 +25,7 @@ "style": "---" }, "MD044": { - "names": ["HedgeDoc"] + "names": ["HedgeDoc", "Docker"] }, "MD046": { "style": "fenced" diff --git a/docs/.netlify/state.json b/docs/.netlify/state.json new file mode 100644 index 000000000..63cd58deb --- /dev/null +++ b/docs/.netlify/state.json @@ -0,0 +1,3 @@ +{ + "siteId": "3cb86ea9-e257-40f3-ab9c-7b9eb08423c4" +} \ No newline at end of file diff --git a/docs/content/dev/design_docs/api_auth.md b/docs/content/concepts/api-auth.md similarity index 94% rename from docs/content/dev/design_docs/api_auth.md rename to docs/content/concepts/api-auth.md index cdef607f3..47c456060 100644 --- a/docs/content/dev/design_docs/api_auth.md +++ b/docs/content/concepts/api-auth.md @@ -1,8 +1,8 @@ # API Authentication !!! info "Design Document" -This is a design document, explaining the design and vision for a HedgeDoc 2 -feature. It is not a user guide and may or may not be fully implemented. + This is a design document, explaining the design and vision for a HedgeDoc 2 + feature. It is not a user guide and may or may not be fully implemented. ## Public API diff --git a/docs/content/dev/design_docs/config.md b/docs/content/concepts/config.md similarity index 100% rename from docs/content/dev/design_docs/config.md rename to docs/content/concepts/config.md diff --git a/docs/content/dev/design_docs/events.md b/docs/content/concepts/events.md similarity index 100% rename from docs/content/dev/design_docs/events.md rename to docs/content/concepts/events.md diff --git a/docs/content/concepts/index.md b/docs/content/concepts/index.md new file mode 100644 index 000000000..b98221ceb --- /dev/null +++ b/docs/content/concepts/index.md @@ -0,0 +1,39 @@ +# Core concepts + +Core concepts explain the internal structure of HedgeDoc by providing +background information and explanations. They are especially useful for contributing to HedgeDoc. + + + + diff --git a/docs/content/dev/design_docs/notes.md b/docs/content/concepts/notes.md similarity index 100% rename from docs/content/dev/design_docs/notes.md rename to docs/content/concepts/notes.md diff --git a/docs/content/dev/design_docs/user_profiles.md b/docs/content/concepts/user-profiles.md similarity index 94% rename from docs/content/dev/design_docs/user_profiles.md rename to docs/content/concepts/user-profiles.md index 5a6d6f089..341da9fcf 100644 --- a/docs/content/dev/design_docs/user_profiles.md +++ b/docs/content/concepts/user-profiles.md @@ -88,9 +88,9 @@ In this case, the frontend should show the use a notice that they should contact to resolve the issue. !!! warning -Admins must ensure that usernames are unique across all auth providers set as a global sync source. - Otherwise, if e.g. in both LDAPs configured as sync source a user `johndoe` exists, -only the first that logs in can use HedgeDoc. + Admins must ensure that usernames are unique across all auth providers set as a global sync + source. Otherwise, if e.g. in both LDAPs configured as sync source a user `johndoe` exists, + only the first that logs in can use HedgeDoc. #### Local sync sources diff --git a/docs/content/config/index.md b/docs/content/config/index.md deleted file mode 100644 index 70df3e586..000000000 --- a/docs/content/config/index.md +++ /dev/null @@ -1,208 +0,0 @@ -# Configuration - -HedgeDoc can be configured via environment variables either directly or via an `.env` file. - -## The `.env` file - -The `.env` file should be placed in the root of the project and contains key-value pairs of -environment variables and their corresponding value. This can for example look like this: - - -```ini -HD_BASE_URL="http://localhost:8080" -HD_SESSION_SECRET="change_me_in_production" -HD_DATABASE_TYPE="sqlite" -HD_DATABASE_NAME="./hedgedoc.sqlite" -HD_MEDIA_BACKEND="filesystem" -HD_MEDIA_BACKEND_FILESYSTEM_UPLOAD_PATH="uploads/" -``` - - -We also provide an `.env.example` file containing a minimal configuration -in the root of the project. This should help you to write your own configuration. - -!!! warning - The minimal configuration provided in `.env.example` is exactly that: minimal. - It will let you start HedgeDoc for local development, - but it is **not** meant to be used in production without prior changes. - -## General - -| environment variable | default | example | description | -| ------------------------ | ---------------------- | --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `HD_BASE_URL` | - | `https://md.example.com` | The URL the HedgeDoc instance is accessed with, like it is entered in the browser | -| `HD_BACKEND_PORT` | 3000 | | The port the backend process listens on. | -| `HD_FRONTEND_PORT` | 3001 | | The port the frontend process listens on. | -| `HD_RENDERER_BASE_URL` | Content of HD_BASE_URL | | The URL the renderer runs on. If omitted this will be the same as `HD_BASE_URL`. | -| `HD_LOGLEVEL` | warn | | The loglevel that should be used. Options are `error`, `warn`, `info`, `debug` or `trace`. | -| `HD_FORBIDDEN_NOTE_IDS` | - | `notAllowed,alsoNotAllowed` | A list of note ids (separated by `,`), that are not allowed to be created or requested by anyone. | -| `HD_MAX_DOCUMENT_LENGTH` | 100000 | | The maximum length of any one document. Changes to this will impact performance for your users. | -| `HD_PERSIST_INTERVAL` | 10 | `0`, `5`, `10`, `20` | The time interval in **minutes** for the periodic note revision creation during realtime editing. `0` deactivates the periodic note revision creation. | - -### Why should I want to run my renderer on a different (sub-)domain? - -If the renderer is provided by another domain, it's way harder to manipulate HedgeDoc or -steal credentials from the rendered note content, because renderer and editor are more isolated. -This increases the security of the software and greatly mitigates [XSS attacks][xss]. -However, you can run HedgeDoc without this extra security, but we recommend using it if possible. - -!!! note - When you want to use a separate domain for `HD_RENDERER_BASE_URL`, your reverse proxy - config needs to be adjusted to direct requests for this domain to the frontend. - -## Notes - -| environment variable | default | example | description | -| --------------------------------- | ------- | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `HD_FORBIDDEN_NOTE_IDS` | - | `notAllowed, alsoNotAllowed` | A list of note ids (separated by `,`), that are not allowed to be created or requested by anyone. | -| `HD_MAX_DOCUMENT_LENGTH` | 100000 | | The maximum length of any one document. Changes to this will impact performance for your users. | -| `HD_GUEST_ACCESS` | `write` | `deny`, `read`, `write`, `create` | Defines the maximum access level for guest users to the instance. If guest access is set lower than the "everyone" permission of a note then the note permission will be overridden. | -| `HD_PERMISSION_DEFAULT_LOGGED_IN` | `write` | `none`, `read`, `write` | The default permission for the "logged-in" group that is set on new notes. | -| `HD_PERMISSION_DEFAULT_EVERYONE` | `read` | `none`, `read`, `write` | The default permission for the "everyone" group (logged-in & guest users), that is set on new notes created by logged-in users. Notes created by guests always set this to "write". | - -## Authentication - -!!! info - HedgeDoc 2 does not yet support all authentication backends from HedgeDoc 1. - You can follow [this issue](https://github.com/hedgedoc/hedgedoc/issues/1006) for details. - -### Local - -HedgeDoc provides local accounts, handled internally. This feature only provides basic -functionality, so for most environments we recommend using an external authentication mechanism, -which also enable more secure authentication like 2FA or WebAuthn. - -| environment variable | default | example | description | -| ----------------------------------------- | ------- | ----------------------- | ------------------------------------------------------------------------------------- | -| `HD_AUTH_LOCAL_ENABLE_LOGIN` | `false` | `true`, `false` | This makes it possible to use the local accounts in HedgeDoc. | -| `HD_AUTH_LOCAL_ENABLE_REGISTER` | `false` | `true`, `false` | This makes it possible to register new local accounts in HedgeDoc. | -| `HD_AUTH_LOCAL_MINIMAL_PASSWORD_STRENGTH` | `2` | `0`, `1`, `2`, `3`, `4` | The minimum [zxcvbn-ts][zxcvbn-ts-score] password score, that passwords need to have. | - -#### Password score - -The password score is calculated with [zxcvbn-ts][zxcvbn-ts-score]. - -| score | meaning | minimum number of guesses required (approximated) | -| :---: | ----------------------------------------------------------------- | ------------------------------------------------- | -| 0 | All passwords are allowed | - | -| 1 | Only `too guessable` passwords are disallowed | 1.000 | -| 2 | `too guessable` and `very guessable` passwords are disallowed | 1.000.000 | -| 3 | `safely unguessable` and `very unguessable` passwords are allowed | 100.000.000 | -| 4 | Only `very unguessable` passwords are allowed | 10.000.000.000 | - -### LDAP - -HedgeDoc can use one or multiple LDAP servers to authenticate users. To do this, -you first need to tell HedgeDoc the names of servers you want to use (`HD_AUTH_LDAP_SERVERS`), -and then you need to provide the configuration for those LDAP servers -depending on how you want to use them. -Each of those variables will contain the given name for this LDAP server. -For example if you named your LDAP server `MY_LDAP` all variables for this server -will start with `HD_AUTH_LDAP_MY_LDAP`. - -| environment variable | default | example | description | -| ------------------------------------------ | -------------------- | -------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | -| `HD_AUTH_LDAP_SERVERS` | - | `MY_LDAP` | A comma-seperated list of names of LDAP servers HedgeDoc should use. | -| `HD_AUTH_LDAP_$NAME_PROVIDER_NAME` | `LDAP` | `My LDAP` | The display name for the LDAP server, that is shown in the UI of HegdeDoc. | -| `HD_AUTH_LDAP_$NAME_URL` | - | `ldaps://ldap.example.com` | The url with which the LDAP server can be accessed. | -| `HD_AUTH_LDAP_$NAME_SEARCH_BASE` | - | `ou=users,dc=LDAP,dc=example,dc=com` | The LDAP search base which contains the user accounts on the LDAP server. | -| `HD_AUTH_LDAP_$NAME_SEARCH_FILTER` | `(uid={{username}})` | `(&(uid={{username}})(objectClass=inetOrgPerson))` | A LDAP search filter that filters the users that should have access. | -| `HD_AUTH_LDAP_$NAME_SEARCH_ATTRIBUTES` | - | `username,cn` | A comma-seperated list of attributes that the search filter from the LDAP server should access. | -| `HD_AUTH_LDAP_$NAME_USERID_FIELD` | `uid` | `uid`, `uidNumber`, `sAMAccountName` | The attribute of the user account which should be used as an id for the user. | -| `HD_AUTH_LDAP_$NAME_DISPLAY_NAME_FIELD` | `displayName` | `displayName`, `name`, `cn` | The attribute of the user account which should be used as the display name for the user. | -| `HD_AUTH_LDAP_$NAME_PROFILE_PICTURE_FIELD` | `jpegPhoto` | `jpegPhoto`, `thumbnailPhoto` | The attribute of the user account which should be used as the user image for the user. | -| `HD_AUTH_LDAP_$NAME_BIND_DN` | - | `cn=admin,dc=LDAP,dc=example,dc=com` | The dn which is used to perform the user search. If this is omitted then HedgeDoc will use an anonymous bind. | -| `HD_AUTH_LDAP_$NAME_BIND_CREDENTIALS` | - | `MyLdapPassword` | The credential to access the LDAP server. | -| `HD_AUTH_LDAP_$NAME_TLS_CERT_PATHS` | - | `LDAP-ca.pem` | A comma-seperated list of paths to TLS certificates for the LDAP server. | - -**ToDo:** Add other authentication methods. - -## Customization - -HedgeDoc allows you to set a name or logo for your organization. -How this looks and where this is used, can be seen below. -You can also provide a privacy policy, terms of use or an imprint url -for your HedgeDoc instance. - -| environment variable | default | example | description | -| --------------------- | ------- | --------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `HD_CUSTOM_NAME` | - | `DEMO Corp` | The text will be shown in the top right corner in the editor and on the intro page. If you also configure a custom logo, this will be used as the alt text of the logo. | -| `HD_CUSTOM_LOGO` | - | `https://md.example.com/logo.png` | The logo will be shown in the top right corner in the editor and on the intro page. | -| `HD_PRIVACY_URL` | - | `https://md.example.com/privacy` | The URL that should be linked as the privacy notice in the footer. | -| `HD_TERMS_OF_USE_URL` | - | `https://md.example.com/terms` | The URL that should be linked as the terms of user in the footer. | -| `HD_IMPRINT_URL` | - | `https://md.example.com/imprint` | The URL that should be linked as the imprint in the footer. | - -### Example - -#### Links - -![Links on the Frontpage][links-frontpage] -*links for the privacy policy, terms of use and imprint on the front page* - -#### Logo - -For this demo we use this image: -![The demo logo][demo-logo] - -![The demo logo on the Frontpage][logo-front-page] -*logo used on the front page* - -![The demo logo in the editor (light)][logo-editor-light] -![The demo logo in the editor (dark)][logo-editor-dark] -*logo used in the editor* - -#### Name - -For this demo we use the name `DEMO Corp` - -![The name on the Frontpage][name-front-page] -*name used on the front page* - -![The name in the editor (light)][name-editor-light] -![The name in the editor (dark)][name-editor-dark] -*name used in the editor* - -## Database - -We officially support and test these databases: - -- SQLite (for development and smaller instances) -- PostgreSQL -- MariaDB - -| environment variable | default | example | description | -| -------------------- | ------- | ---------------- | ------------------------------------------------------------------------------------------ | -| `HD_DATABASE_TYPE` | - | `postgres` | The database type you want to use. This can be `postgres`, `mysql`, `mariadb` or `sqlite`. | -| `HD_DATABASE_NAME` | - | `HedgeDoc` | The name of the database to use. When using SQLite, this is the path to the database file. | -| `HD_DATABASE_HOST` | - | `db.example.com` | The host, where the database runs. *Only if you're **not** using `sqlite`.* | -| `HD_DATABASE_PORT` | - | `5432` | The port, where the database runs. *Only if you're **not** using `sqlite`.* | -| `HD_DATABASE_USER` | - | `HedgeDoc` | The user that logs in the database. *Only if you're **not** using `sqlite`.* | -| `HD_DATABASE_PASS` | - | `password` | The password to log into the database. *Only if you're **not** using `sqlite`.* | - -## External services - -| environment variable | default | example | description | -| -------------------- | ------- | ----------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- | -| `HD_PLANTUML_SERVER` | - | `https://www.plantuml.com/plantuml` | The PlantUML server that HedgeDoc uses to render PlantUML diagrams. If this is not configured, PlantUML diagrams won't be rendered. | -| `HD_IMAGE_PROXY` | - | `https://image-proxy.example.com` | **ToDo:** Add description | - -## Media - -There are a couple of different backends that can be used to host your images for HedgeDoc. - -- [Azure](media/azure.md) -- [Local filesystem](media/filesystem.md) -- [Imgur](media/imgur.md) -- [S3-compatible](media/s3.md) -- [WebDAV](media/webdav.md) - -[zxcvbn-ts-score]: https://zxcvbn-ts.github.io/zxcvbn/guide/getting-started/#output -[xss]: https://en.wikipedia.org/wiki/Cross-site_scripting -[links-frontpage]: ../images/customization/links.png -[demo-logo]: ../images/customization/demo_logo.png -[logo-front-page]: ../images/customization/logo/frontpage.png -[logo-editor-light]: ../images/customization/logo/editor_light.png -[logo-editor-dark]: ../images/customization/logo/editor_dark.png -[name-front-page]: ../images/customization/name/frontpage.png -[name-editor-light]: ../images/customization/name/editor_light.png -[name-editor-dark]: ../images/customization/name/editor_dark.png diff --git a/docs/content/faq/index.md b/docs/content/faq/index.md new file mode 100644 index 000000000..acd9c31f9 --- /dev/null +++ b/docs/content/faq/index.md @@ -0,0 +1,99 @@ +# Frequently Asked Questions + +This page collects Frequently Asked Questions of the community. +If you have any questions that aren't answered here, feel free to ask on our +[community forums][hedgedoc-community] or in out [Matrix chat][matrix.org-url]. + +[matrix.org-url]: https://chat.hedgedoc.org +[hedgedoc-community]: https://community.hedgedoc.org + +## Why did you switch from MathJax to KaTeX? + +The new react frontend, that was introduced with HedgeDoc 2.0 switched from MathJax 2 +to [KaTeX][katex], because: + +- [KaTeX is much faster than MathJax](https://www.intmath.com/cg5/katex-mathjax-comparison.php?processor=MathJax ) +- [The MathJax React Component is not maintained and doesn't support MathJax 3](https://github.com/wko27/react-mathjax) +- [KaTeX supports every command you'll need for math expressions](https://katex.org/docs/supported.html) + +[katex]: https://katex.org/ + +## Why are code-blocks with 'sequence' as language deprecated? + +Starting with HedgeDoc 2.0, mermaid is used for rendering sequence-diagrams. +The [syntax][mermaid-syntax] doesn't change. To remove the deprecation warning, simply change the +codeblock-"language" from `sequence` to `mermaid` and insert a single line with `sequenceDiagram` +just before your diagram content. + +**Deprecated**: + +```sequence +Alice->>John: Hello John, how are you? +John-->>Alice: Great! +``` + +**New**: + +```mermaid +sequenceDiagram +Alice->>John: Hello John, how are you? +John-->>Alice: Great! +``` + +[mermaid-syntax]: https://mermaid-js.github.io/mermaid/#/sequenceDiagram + +## Why do tags in headings don't work anymore? + +Starting with HedgeDoc 2.0, we don't support tag headings in the note anymore. + +```markdown +#### tags: `tag1`, `tag2` +``` + +Instead, please use the [frontmatter metadata][frontmatter] to specify tags. + +[frontmatter]: https://demo.hedgedoc.org/yaml-metadata#tags + +## Why is the comma separated definition of tags in the YAML-metadata deprecated? + +[YAML already has a definition for lists](https://yaml.org/spec/1.2/spec.html#id2759963). +Therefore, we don't see any reason to maintain another way to define a list. + + +**Deprecated** + + +```yaml +tags: tag1, tag2 +``` + + +**New** + + +```yaml +tags: + - tag1 + - tag2 +``` + + +*or* + + +```yaml +tags: ['tag1', 'tag2'] +``` + +## Why should I want to run my renderer on a different (sub-)domain? + +If the renderer is provided by another domain, it's way harder to manipulate HedgeDoc or +steal credentials from the rendered note content, because renderer and editor are more isolated. +This increases the security of the software and greatly mitigates [XSS attacks][xss]. +However, you can run HedgeDoc without this extra security, but we recommend using it if possible. + +!!! note + When you want to use a separate domain for `HD_RENDERER_BASE_URL`, your reverse proxy config + needs to be adjusted to direct requests for this domain to the frontend. + +[xss]: https://en.wikipedia.org/wiki/Cross-site_scripting diff --git a/docs/content/files/setup-docker/Caddyfile b/docs/content/files/setup-docker/Caddyfile new file mode 100644 index 000000000..ae82699c1 --- /dev/null +++ b/docs/content/files/setup-docker/Caddyfile @@ -0,0 +1,14 @@ +{$HD_BASE_URL} + +log { + output stdout + level WARN + format console +} + +reverse_proxy /realtime http://backend:3000 +reverse_proxy /api/* http://backend:3000 +reverse_proxy /public/* http://backend:3000 +reverse_proxy /uploads/* http://backend:3000 +reverse_proxy /apidoc/* http://backend:3000 +reverse_proxy /* http://frontend:3001 \ No newline at end of file diff --git a/docs/content/files/setup-docker/config.env b/docs/content/files/setup-docker/config.env new file mode 100644 index 000000000..edd4e9c36 --- /dev/null +++ b/docs/content/files/setup-docker/config.env @@ -0,0 +1,19 @@ +# General settings +HD_BASE_URL="https://md.example.com" +HD_SESSION_SECRET="change_me_in_production" + +# Database settings +HD_DATABASE_TYPE="postgres" +HD_DATABASE_HOST="db" +HD_DATABASE_PORT="5432" +HD_DATABASE_NAME="hedgedoc" +HD_DATABASE_USER="hedgedoc" +HD_DATABASE_PASS="password" + +# Uploads +HD_MEDIA_BACKEND="filesystem" +HD_MEDIA_BACKEND_FILESYSTEM_UPLOAD_PATH="uploads/" + +# Auth +HD_AUTH_LOCAL_ENABLE_LOGIN="true" +HD_AUTH_LOCAL_ENABLE_REGISTER="true" \ No newline at end of file diff --git a/docs/content/files/setup-docker/docker-compose.yml b/docs/content/files/setup-docker/docker-compose.yml new file mode 100644 index 000000000..0daf06bfa --- /dev/null +++ b/docs/content/files/setup-docker/docker-compose.yml @@ -0,0 +1,38 @@ +services: + backend: + image: ghcr.io/hedgedoc/hedgedoc/backend:2.0-alpha + volumes: + - $PWD/.env:/usr/src/app/backend/.env + - hedgedoc_uploads:/usr/src/app/backend/uploads + + frontend: + image: ghcr.io/hedgedoc/hedgedoc/frontend:2.0-alpha + environment: + HD_BASE_URL: "${HD_BASE_URL}" + + db: + image: postgres:15 + environment: + POSTGRES_USER: "${HD_DATABASE_USER}" + POSTGRES_PASSWORD: "${HD_DATABASE_PASS}" + POSTGRES_DB: "${HD_DATABASE_NAME}" + volumes: + - hedgedoc_postgres:/var/lib/postgresql/data + + proxy: + image: caddy:latest + restart: unless-stopped + environment: + HD_BASE_URL: "${HD_BASE_URL}" + ports: + - "80:80" + - "443:443" + - "443:443/udp" + volumes: + - $PWD/Caddyfile:/etc/caddy/Caddyfile + - caddy_data:/data + +volumes: + caddy_data: + hedgedoc_uploads: + hedgedoc_postgres: \ No newline at end of file diff --git a/docs/content/how-to/auth.md b/docs/content/how-to/auth.md new file mode 100644 index 000000000..d22a186d2 --- /dev/null +++ b/docs/content/how-to/auth.md @@ -0,0 +1,5 @@ +# How to use other authentication methods + +TODO: This pages is still missing some content. +See this issue for more information and if you want to contribute: + diff --git a/docs/content/how-to/backup.md b/docs/content/how-to/backup.md new file mode 100644 index 000000000..be2390305 --- /dev/null +++ b/docs/content/how-to/backup.md @@ -0,0 +1,5 @@ +# How to back up HedgeDoc + +TODO: This pages is still missing some content. +See this issue for more information and if you want to contribute: + diff --git a/docs/content/how-to/database.md b/docs/content/how-to/database.md new file mode 100644 index 000000000..04155c67b --- /dev/null +++ b/docs/content/how-to/database.md @@ -0,0 +1,5 @@ +# Database + +TODO: This pages is still missing some content. +See this issue for more information and if you want to contribute: + diff --git a/docs/content/dev/auth/ldap.md b/docs/content/how-to/develop/auth/ldap.md similarity index 59% rename from docs/content/dev/auth/ldap.md rename to docs/content/how-to/develop/auth/ldap.md index e040b620f..45298c20b 100644 --- a/docs/content/dev/auth/ldap.md +++ b/docs/content/how-to/develop/auth/ldap.md @@ -1,15 +1,17 @@ # LDAP -LDAP authentication can be tested with the [`test-openldap`][docker-image] -docker image from [rroemhild][rroemhild]. +If you are developing HedgeDoc and need to test something with an LDAP server you can use the +[`test-openldap`][docker-image] Docker image from [rroemhild][rroemhild]. Simply run -```sh + +```shell docker run --rm -p 10389:10389 -p 10636:10636 rroemhild/test-openldap ``` + -and add the following to the `.env` file before starting the backend. +and add the following to the `.env` file then start the backend. ```dotenv HD_AUTH_LDAP_SERVERS="FUTURAMA" @@ -23,7 +25,7 @@ HD_AUTH_LDAP_FUTURAMA_BIND_DN="cn=admin,dc=planetexpress,dc=com" HD_AUTH_LDAP_FUTURAMA_BIND_CREDENTIALS="GoodNewsEveryone" ``` -You should then be able to log in with either of these logins (`username` : `password`): +You should be able to log in with either of these logins (`username` : `password`): - `professor` : `professor` - `fry` : `fry` @@ -33,5 +35,8 @@ You should then be able to log in with either of these logins (`username` : `pas - `bender` : `bender` - `amy` : `amy` +If you need to know more about which information are held by each of these accounts, have a look at +the [documentation](https://github.com/rroemhild/docker-test-openldap#ldap-structure). + [docker-image]: https://github.com/rroemhild/docker-test-openldap [rroemhild]: https://github.com/rroemhild diff --git a/docs/content/dev/docker.md b/docs/content/how-to/develop/docker.md similarity index 87% rename from docs/content/dev/docker.md rename to docs/content/how-to/develop/docker.md index e471db3fd..1d3e15151 100644 --- a/docs/content/dev/docker.md +++ b/docs/content/how-to/develop/docker.md @@ -1,12 +1,12 @@ # Building Docker images -To build docker images of the backend or frontend use the following commands. +To build Docker images of the backend or frontend use the following commands. Make sure that you have installed the [Docker BuildKit Plugin][buildkit] and execute the commands from the root level of the project. Otherwise, the build process may fail. -```sh +```shell docker buildx build -f backend/docker/Dockerfile -t hedgedoc-backend . ``` @@ -14,7 +14,7 @@ docker buildx build -f backend/docker/Dockerfile -t hedgedoc-backend . or -```sh +```shell docker buildx build -f frontend/docker/Dockerfile -t hedgedoc-frontend . ``` diff --git a/docs/content/dev/documentation.md b/docs/content/how-to/develop/documentation.md similarity index 74% rename from docs/content/dev/documentation.md rename to docs/content/how-to/develop/documentation.md index dfd84d95d..504b3364d 100644 --- a/docs/content/dev/documentation.md +++ b/docs/content/how-to/develop/documentation.md @@ -1,14 +1,16 @@ # Documentation -Our documentation is build with [mkdocs][mkdocs]. +Our documentation is build with [mkdocs][mkdocs]. While you can write documentation with every text +editor you like, if you want to build the documentation and want to see at how it will look you need +to have [python3][python3] and [mkdocs][mkdocs] installed. ## Writing -All documentation files are found in the `docs/content` directory of +All documentation files are found in the `docs/content` directory of the [hedgedoc/hedgedoc repo](https://github.com/hedgedoc/hedgedoc). These files are just normal - markdown files with nothing special about them. + The configuration for mkdocs lies in the `docs` folder in a file called `mkdocs.yml`. With that file the theme and menu - among others - can be configured. @@ -19,20 +21,24 @@ otherwise the files will be very hard to find on the documentation website. To build the documentation locally you need to perform the following steps: -1. Make sure you have python3 installed. +1. Make sure you have [python3][python3] installed. `python3 --version` 2. Go into the `docs` folder. 3. Install all the dependencies (E.g. with a [venv](https://docs.python.org/3/library/venv.html)) with `pip install -r requirements.txt` 4. Start the mkdocs dev server (`mkdocs serve`) or build the documentation (`mkdocs build`). +If you run `mkdcs serve` a local server will serve the mkdocs files and change the served files as +you write documentation. + ## Deployment The documentation is deployed with [mkdocs][mkdocs]. The repository [docs.hedgedoc.org][docs.hedgedoc.org] is used to deploy the actual website - to github.io. Currently only the `master` branch is deployed as it contains the latest release. + [mkdocs]: https://www.mkdocs.org +[python3]: https://www.python.org/ [docs.hedgedoc.org]: https://github.com/hedgedoc/docs.hedgedoc.org diff --git a/docs/content/dev/setup/frontend.md b/docs/content/how-to/develop/frontend.md similarity index 99% rename from docs/content/dev/setup/frontend.md rename to docs/content/how-to/develop/frontend.md index a075c6d34..8c1065861 100644 --- a/docs/content/dev/setup/frontend.md +++ b/docs/content/how-to/develop/frontend.md @@ -11,7 +11,7 @@ The following environment variables are recognized by the frontend process. | NEXT_PUBLIC_USE_MOCK_API | `true`, `false` | Will activate the mocked backend | | NEXT_PUBLIC_TEST_MODE | `true`, `false` | Will activate additional HTML attributes that are used to identify elements for test suits. | -Variables that start with `NEXT_PUBLIC_` will be compiled into the build. You can't change them at +Variables that start with `NEXT_PUBLIC_` will be compiled into the build. You can't change them after compilation. You shouldn't need to set them yourself. Use the designated npm tasks instead. ## UI Test diff --git a/docs/content/dev/getting-started.md b/docs/content/how-to/develop/setup.md similarity index 97% rename from docs/content/dev/getting-started.md rename to docs/content/how-to/develop/setup.md index 9311b0d94..cc2a01326 100644 --- a/docs/content/dev/getting-started.md +++ b/docs/content/how-to/develop/setup.md @@ -1,4 +1,4 @@ -# Getting started +# Development Setup To run HedgeDoc 2.0 you need three components: the backend, the frontend and the reverse proxy. @@ -12,7 +12,7 @@ This describes the easiest way to start a local development environment. For oth follow the description below. To run HedgeDoc 2.0 you need three components: the backend, the frontend and the reverse proxy. -Backend and Frontend are included in the [HegdeDoc repo](https://github.com/hedgedoc/hedgedoc). +Backend and Frontend are included in the [HegdeDoc repo][hedgedoc-repo]. The reverse proxy can be chosen by preference. For development, we recommend caddy and the provided configuration. @@ -81,7 +81,7 @@ For development, we recommend creating an `.env` file. ## Build the `commons` package -Some code is shared by backend and frontend. This code lives in the `commons package and needs +Some code is shared by backend and frontend. This code lives in the `commons` package and needs to be built so frontend and backend can import it. This only needs to be done once, except if you've changed code in the commons package. @@ -158,5 +158,5 @@ We recommend to use our pre-configured [Caddy][caddy] configuration. [hedgedoc-repo]: https://github.com/hedgedoc/hedgedoc [yarn]: https://yarnpkg.com/getting-started/install [caddy]: https://caddyserver.com/ -[config-docs]: ../config/index.md -[frontend-setup]: ./setup/frontend.md +[config-docs]: /references/config/ +[frontend-setup]: ./frontend.md diff --git a/docs/content/how-to/index.md b/docs/content/how-to/index.md new file mode 100644 index 000000000..84df40106 --- /dev/null +++ b/docs/content/how-to/index.md @@ -0,0 +1,34 @@ +# How-to guides + +How-to guides target the more advanced users and guide them +through a variety of topics, addressing non-trivial use-cases. +They are more advanced than tutorials and assume some knowledge of HedgeDoc. + + + + diff --git a/docs/content/how-to/reverse-proxy.md b/docs/content/how-to/reverse-proxy.md new file mode 100644 index 000000000..1a236aca5 --- /dev/null +++ b/docs/content/how-to/reverse-proxy.md @@ -0,0 +1,217 @@ +# How to use a reverse proxy + + + +When having multiple webservers or other applications running, that also use +port 80 and 443, you probably want to use a reverse proxy to serve HedgeDoc. + +We'll assume the domain you use for the instance is , so please +substitute your actual domain anywhere you encounter . + +## Configuring the reverse proxy + +We have collected some example configurations for popular reverse proxies below. +At the end is also a list of generic things the reverse proxy must do, if you prefer +to write your own config or use a reverse proxy not mentioned here. + +### Traefik + +As [traefik][traefik] has direct access to your running Docker containers, there is no need to +configure extra ports. Instead, you'll only have to add the following labels to the services +in your `docker-compose.yml`: + + + +??? abstract "docker-compose.yml" + ```yaml + backend: + image: ghcr.io/hedgedoc/hedgedoc/backend:2.0-alpha + volumes: + - $PWD/.env:/usr/src/app/backend/.env + - hedgedoc_uploads:/usr/src/app/backend/uploads + labels: + traefik.enable: "true" + traefik.http.routers.hedgedoc_2_backend.rule: "Host(`md.example.com`) && PathPrefix(`/realtime`, `/api`, `/public`)" + traefik.http.routers.hedgedoc_2_backend.tls: "true" + traefik.http.routers.hedgedoc_2_backend.tls.certresolver: "letsencrypt" + traefik.http.services.hedgedoc_2_backend.loadbalancer.server.port: "3000" + traefik.http.services.hedgedoc_2_backend.loadbalancer.server.scheme: "http" + frontend: + image: ghcr.io/hedgedoc/hedgedoc/frontend:2.0-alpha + environment: + HD_BASE_URL: "${HD_BASE_URL}" + labels: + traefik.enable: "true" + traefik.http.routers.hedgedoc_2_frontend.rule: "Host(`md.example.com`)" + traefik.http.routers.hedgedoc_2_frontend.tls: "true" + traefik.http.routers.hedgedoc_2_frontend.tls.certresolver: "letsencrypt" + traefik.http.services.hedgedoc_2_frontend.loadbalancer.server.port: "3001" + traefik.http.services.hedgedoc_2_frontend.loadbalancer.server.scheme: "http" + ``` + + + +We added [Let's Encrypt][letsencrypt] as a certificate resolver, as it enables you to +quickly use HTTPS. If you don't want to use that feel free to change +the `.certresolver` variables accordingly. + +If you used the `docker-compose.yml` file from the tutorial, please remove +the service `proxy` and the volume `caddy_data` as caddy is no longer needed when using traefik. + +### Other reverse proxies + +In the following we'll also assume that you run a HedgeDoc backend on port `3000`, +a HedgeDoc frontend on port `3001`. +Furthermore, we assume that you have TLS certificates located at +`/etc/letsencrypt/live/md.example.com/fullchain.pem` +and +`/etc/letsencrypt/live/md.example.com/privkey.pem` respectively +and are using [Let's Encrypt][letsencrypt] for your certificates. +Replace these paths with the actual paths to your certificates. + +**Preparations when using the default docker-compose.yml:** + +If your starting with the `docker-compose.yml` file from the tutorial, +you need to add the `ports` entry for both `backend` and `frontend` as following. + + + +??? abstract "docker-compose.yml" + ```yaml + backend: + image: ghcr.io/hedgedoc/hedgedoc/backend:2.0-alpha + volumes: + - $PWD/.env:/usr/src/app/backend/.env + - hedgedoc_uploads:/usr/src/app/backend/uploads + ports: + - "3000:3000" + frontend: + image: ghcr.io/hedgedoc/hedgedoc/frontend:2.0-alpha + environment: + HD_BASE_URL: "${HD_BASE_URL}" + ports: + - "3001:3001" + ``` + + + +Also, you want to remove the service `proxy` and the volume `caddy_data` +to avoid port conflicts with your reverse-proxy software. + +#### nginx + +Here is an example configuration for [nginx][nginx]. + + + +??? abstract "nginx config" + ``` + map $http_upgrade $connection_upgrade { + default upgrade; + '' close; + } + server { + server_name md.example.com; + + location ~ ^/(api|public|uploads|apidoc)/ { + proxy_pass http://127.0.0.1:3000; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + } + + location /realtime { + proxy_pass http://127.0.0.1:3000; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection $connection_upgrade; + } + + location / { + proxy_pass http://127.0.0.1:3001; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + } + + listen [::]:443 ssl http2; + listen 443 ssl http2; + ssl_certificate fullchain.pem; + ssl_certificate_key privkey.pem; + include options-ssl-nginx.conf; + ssl_dhparam ssl-dhparams.pem; + } + ``` + + + +#### Apache + +You will need these modules enabled: `proxy`, `proxy_http` and `proxy_wstunnel`. +Here is an example config snippet for [Apache][apache]: + + + +??? abstract "Apache config" + ``` + + ServerName md.example.com + + RewriteEngine on + RewriteCond %{REQUEST_URI} ^/realtime [NC] + RewriteCond %{HTTP:Upgrade} =websocket [NC] + RewriteRule /(.*) ws://127.0.0.1:3000/$1 [P,L] + + ProxyPass /api http://127.0.0.1:3000/ + ProxyPass /apidoc http://127.0.0.1:3000/ + ProxyPass /public http://127.0.0.1:3000/ + ProxyPass /realtime http://127.0.0.1:3000/ + + ProxyPassReverse /api http://127.0.0.1:3000/ + ProxyPassReverse /apidoc http://127.0.0.1:3000/ + ProxyPassReverse /public http://127.0.0.1:3000/ + ProxyPassReverse /realtime http://127.0.0.1:3000/ + + ProxyPass / http://127.0.0.1:3001/ + ProxyPassReverse / http://127.0.0.1:3001/ + + RequestHeader set "X-Forwarded-Proto" expr=%{REQUEST_SCHEME} + + ErrorLog ${APACHE_LOG_DIR}/error.log + CustomLog ${APACHE_LOG_DIR}/access.log combined + + SSLCertificateFile /etc/letsencrypt/live/md.example.com/fullchain.pem + SSLCertificateKeyFile /etc/letsencrypt/live/md.example.com/privkey.pem + Include /etc/letsencrypt/options-ssl-apache.conf + + ``` + + + +#### Generic + +Here is a list of things your reverse proxy needs to do to let HedgeDoc work: + +- Websocket `Upgrade` requests at path `/realtime`. +- Passing `/realtime` to +- Passing `/api/*` to +- Passing `/public/*` to +- Passing `/uploads/*` to +- Passing `/apidoc/*` to +- Passing `/*` to +- Set the `X-Forwarded-Proto` header + +In essence there are a few special urls that need to be handled by the HedgeDoc backend +and everything else is handled by the frontend. + + + +[traefik]: https://traefik.io/traefik/ +[letsencrypt]: https://letsencrypt.org/ +[nginx]: https://nginx.org/ +[apache]: https://httpd.apache.org/ diff --git a/docs/content/images/tutorial/note/editor-filled.png b/docs/content/images/tutorial/note/editor-filled.png new file mode 100644 index 0000000000000000000000000000000000000000..d88fc04049878d9b9a1850bd3d0e34bf7a950209 GIT binary patch literal 160599 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�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�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
ST%MWe)8#afU+Xkn(MUJJRGZ2N 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 bk$y6{;NOCH_pevN&~J3!vOd>w-!K0I62X4` literal 0 HcmV?d00001 diff --git a/docs/content/images/tutorial/top-right.png b/docs/content/images/tutorial/top-right.png new file mode 100644 index 0000000000000000000000000000000000000000..56ba75b1f2d22be18caf02528bbd905985547ed5 GIT binary patch literal 9104 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 Zi^zvt*e8{z0C_?8lr--a+_4DwKLF(62de-8 literal 0 HcmV?d00001 diff --git a/docs/content/images/tutorial/user/register-form.png b/docs/content/images/tutorial/user/register-form.png new file mode 100644 index 0000000000000000000000000000000000000000..f127770d7f1807bdc425574e4e12c1a6d2527241 GIT binary patch literal 74892 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�`R*ULF2Mc`wnEA1dnp9 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 -HedgeDoc Logo -HedgeDoc Logo +HedgeDoc Logo +HedgeDoc Logo -๐Ÿšงโš ๏ธ๐Ÿšง **HedgeDoc 2.0 is still in development!** -You are probably looking for the 1.x docs. +!!! danger "๐Ÿšงโš ๏ธ๐Ÿšง **HedgeDoc 2.0 is still in development!**" + You are probably looking for the 1.x docs. + + Find them in the `master` branch and on [docs.hedgedoc.org](https://docs.hedgedoc.org). + + +Welcome to the documentation for HedgeDoc, a collaborative online markdown editor, +that you can host yourself. + +## Quick start + -Find them in the `master` branch and on [docs.hedgedoc.org](https://docs.hedgedoc.org). + +- ๐Ÿฆ” New to HedgeDoc? Take the [HedgeDoc tour][hedgedoc-tour] +- ๐Ÿš€ Want your own instance? [Install HedgeDoc yourself][install-guide] +- ๐Ÿ› ๏ธ Want to change something about HedgeDoc? Read the [Configuration reference][config-reference] -If you want to help us to develop HedgeDoc 2, join us on [Matrix][matrix.org-url]! +## Getting help -[matrix.org-url]: https://chat.hedgedoc.org +Having trouble? Weโ€™d like to help! + +- โ“ Take a look into the [FAQ][faq] โ€“ there are answers to many common questions. +- ๐ŸŒ Still any questions? Ask them at our [community forum][community-forum]. +- ๐Ÿ’ฌ Talk to us on our [matrix chat][chat]. +- ๐Ÿ› Report bugs in our [issue tracker][issue-tracker]. + +## How the documentation is organized + +To make it easy for you to find the relevant documentation articles, we organized our docs by the +following categories: + +- **[Tutorials][tutorials]** are detailed step-by-step instructions. Start here if you're new to + HedgeDoc, want to create your first presentation or want to build a simple API application. +- **[How-to guides][how-to]** target the more advanced users and guide them through a variety of + topics, addressing non-trivial use-cases. They are more advanced than tutorials and assume some + knowledge of HedgeDoc. +- **[Core concepts][core-concepts]** explain the internal structure of HedgeDoc by providing + background information and explanations. They are especially useful for contributing to HedgeDoc. +- **[References][references]** are details to lookup in a non-guided way. These include for example + configuration options or API methods. + +## Participate in the HedgeDoc project + +There are different ways how you can participate in the HedgeDoc project: + +- Help others or share your experiences and tips in the [community forum][community-forum]. +- Improve the translation HegdeDoc of HedgeDoc into your language at our [weblate][weblate]. +- Report bugs, feature requests or enhancement ideas in our [issue tracker][issue-tracker]. +- Read the [getting started how-to for developers][how-to-dev] to start implementing + your own features. + +[hedgedoc-tour]: https://tour.hedgedoc.org +[install-guide]: /tutorials/setup/ +[config-reference]: /references/config/ + +[faq]: /faq/ +[community-forum]: https://community.hedgedoc.org/ +[chat]: https://chat.hedgedoc.org +[issue-tracker]: https://github.com/hedgedoc/hedgedoc/issues/new/choose + +[tutorials]: /tutorials/ +[how-to]: /how-to/ +[core-concepts]: /concepts/ +[references]: /references/ + +[weblate]: https://translate.hedgedoc.org +[how-to-dev]: /how-to/develop/ diff --git a/docs/content/dev/db-schema.plantuml b/docs/content/old/dev/db-schema.plantuml similarity index 100% rename from docs/content/dev/db-schema.plantuml rename to docs/content/old/dev/db-schema.plantuml diff --git a/docs/content/dev/dev_notes.md b/docs/content/old/dev/dev_notes.md similarity index 100% rename from docs/content/dev/dev_notes.md rename to docs/content/old/dev/dev_notes.md diff --git a/docs/content/dev/public_api.yml b/docs/content/old/dev/public_api.yml similarity index 100% rename from docs/content/dev/public_api.yml rename to docs/content/old/dev/public_api.yml diff --git a/docs/content/images/interface/toolbar/blocks.png b/docs/content/old/images/interface/toolbar/blocks.png similarity index 100% rename from docs/content/images/interface/toolbar/blocks.png rename to docs/content/old/images/interface/toolbar/blocks.png diff --git a/docs/content/images/interface/toolbar/emoji.png b/docs/content/old/images/interface/toolbar/emoji.png similarity index 100% rename from docs/content/images/interface/toolbar/emoji.png rename to docs/content/old/images/interface/toolbar/emoji.png diff --git a/docs/content/images/interface/toolbar/emphasis.png b/docs/content/old/images/interface/toolbar/emphasis.png similarity index 100% rename from docs/content/images/interface/toolbar/emphasis.png rename to docs/content/old/images/interface/toolbar/emphasis.png diff --git a/docs/content/images/interface/toolbar/large_blocks.png b/docs/content/old/images/interface/toolbar/large_blocks.png similarity index 100% rename from docs/content/images/interface/toolbar/large_blocks.png rename to docs/content/old/images/interface/toolbar/large_blocks.png diff --git a/docs/content/images/interface/toolbar/links.png b/docs/content/old/images/interface/toolbar/links.png similarity index 100% rename from docs/content/images/interface/toolbar/links.png rename to docs/content/old/images/interface/toolbar/links.png diff --git a/docs/content/images/interface/toolbar/table_modal.png b/docs/content/old/images/interface/toolbar/table_modal.png similarity index 100% rename from docs/content/images/interface/toolbar/table_modal.png rename to docs/content/old/images/interface/toolbar/table_modal.png diff --git a/docs/content/images/interface/toolbar/table_overlay.png b/docs/content/old/images/interface/toolbar/table_overlay.png similarity index 100% rename from docs/content/images/interface/toolbar/table_overlay.png rename to docs/content/old/images/interface/toolbar/table_overlay.png diff --git a/docs/content/images/interface/toolbar/whole.png b/docs/content/old/images/interface/toolbar/whole.png similarity index 100% rename from docs/content/images/interface/toolbar/whole.png rename to docs/content/old/images/interface/toolbar/whole.png diff --git a/docs/content/interface/toolbar.md b/docs/content/old/interface/toolbar.md similarity index 100% rename from docs/content/interface/toolbar.md rename to docs/content/old/interface/toolbar.md diff --git a/docs/content/references/config/auth/ldap.md b/docs/content/references/config/auth/ldap.md new file mode 100644 index 000000000..db3da2ae0 --- /dev/null +++ b/docs/content/references/config/auth/ldap.md @@ -0,0 +1,24 @@ +# LDAP + +HedgeDoc can use one or multiple LDAP servers to authenticate users. To do this, +you first need to tell HedgeDoc the names of servers you want to use (`HD_AUTH_LDAPS`), +and then you need to provide the configuration for those LDAP servers +depending on how you want to use them. +Each of those variables will contain the given name for this LDAP server. +For example if you named your LDAP server `MY_LDAP` all variables for this server +will start with `HD_AUTH_LDAP_MY_LDAP`. + +| environment variable | default | example | description | +| ------------------------------------------ | -------------------- | -------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | +| `HD_AUTH_LDAPS` | - | `MY_LDAP` | A comma-seperated list of names of LDAP servers HedgeDoc should use. | +| `HD_AUTH_LDAP_$NAME_PROVIDER_NAME` | `LDAP` | `My LDAP` | The display name for the LDAP server, that is shown in the UI of HegdeDoc. | +| `HD_AUTH_LDAP_$NAME_URL` | - | `ldaps://ldap.example.com` | The url with which the LDAP server can be accessed. | +| `HD_AUTH_LDAP_$NAME_SEARCH_BASE` | - | `ou=users,dc=LDAP,dc=example,dc=com` | The LDAP search base which contains the user accounts on the LDAP server. | +| `HD_AUTH_LDAP_$NAME_SEARCH_FILTER` | `(uid={{username}})` | `(&(uid={{username}})(objectClass=inetOrgPerson))` | A LDAP search filter that filters the users that should have access. | +| `HD_AUTH_LDAP_$NAME_SEARCH_ATTRIBUTES` | - | `username,cn` | A comma-seperated list of attributes that the search filter from the LDAP server should access. | +| `HD_AUTH_LDAP_$NAME_USERID_FIELD` | `uid` | `uid`, `uidNumber`, `sAMAccountName` | The attribute of the user account which should be used as an id for the user. | +| `HD_AUTH_LDAP_$NAME_DISPLAY_NAME_FIELD` | `displayName` | `displayName`, `name`, `cn` | The attribute of the user account which should be used as the display name for the user. | +| `HD_AUTH_LDAP_$NAME_PROFILE_PICTURE_FIELD` | `jpegPhoto` | `jpegPhoto`, `thumbnailPhoto` | The attribute of the user account which should be used as the user image for the user. | +| `HD_AUTH_LDAP_$NAME_BIND_DN` | - | `cn=admin,dc=LDAP,dc=example,dc=com` | The dn which is used to perform the user search. If this is omitted then HedgeDoc will use an anonymous bind. | +| `HD_AUTH_LDAP_$NAME_BIND_CREDENTIALS` | - | `MyLdapPassword` | The credential to access the LDAP server. | +| `HD_AUTH_LDAP_$NAME_TLS_CERT_PATHS` | - | `LDAP-ca.pem` | A comma-seperated list of paths to TLS certificates for the LDAP server. diff --git a/docs/content/references/config/auth/local.md b/docs/content/references/config/auth/local.md new file mode 100644 index 000000000..277ca3d2f --- /dev/null +++ b/docs/content/references/config/auth/local.md @@ -0,0 +1,25 @@ +# Local + +HedgeDoc provides local accounts, handled internally. This feature only provides basic +functionality, so for most environments we recommend using an external authentication mechanism, +which also enable more secure authentication like 2FA or WebAuthn. + +| environment variable | default | example | description | +|-------------------------------------------|---------|-------------------------|-----------------------------------------------------------------------------------------------------| +| `HD_AUTH_LOCAL_ENABLE_LOGIN` | `false` | `true`, `false` | This makes it possible to use the local accounts in HedgeDoc. | +| `HD_AUTH_LOCAL_ENABLE_REGISTER` | `false` | `true`, `false` | This makes it possible to register new local accounts in HedgeDoc. | +| `HD_AUTH_LOCAL_MINIMAL_PASSWORD_STRENGTH` | `2` | `0`, `1`, `2`, `3`, `4` | The minimum password score, that passwords need to have. See the table below for more explanations. | + +## Password score + +The password score is calculated with [zxcvbn-ts][zxcvbn-ts-score]. + +| score | meaning | minimum number of guesses required (approximated) | +|:-----:|-------------------------------------------------------------------|---------------------------------------------------| +| 0 | All passwords are allowed | - | +| 1 | Only `too guessable` passwords are disallowed | 1.000 | +| 2 | `too guessable` and `very guessable` passwords are disallowed | 1.000.000 | +| 3 | `safely unguessable` and `very unguessable` passwords are allowed | 100.000.000 | +| 4 | Only `very unguessable` passwords are allowed | 10.000.000.000 | + +[zxcvbn-ts-score]: https://zxcvbn-ts.github.io/zxcvbn/guide/getting-started/#output diff --git a/docs/content/references/config/customization.md b/docs/content/references/config/customization.md new file mode 100644 index 000000000..fe662ec56 --- /dev/null +++ b/docs/content/references/config/customization.md @@ -0,0 +1,53 @@ +# Customization + +HedgeDoc allows you to set a name or logo for your organization. +How this looks and where this is used, can be seen below. +You can also provide a privacy policy, terms of use or an imprint url +for your HedgeDoc instance. + +| environment variable | default | example | description | +| --------------------- | ------- | --------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `HD_CUSTOM_NAME` | - | `DEMO Corp` | The text will be shown in the top right corner in the editor and on the intro page. If you also configure a custom logo, this will be used as the alt text of the logo. | +| `HD_CUSTOM_LOGO` | - | `https://md.example.com/logo.png` | The logo will be shown in the top right corner in the editor and on the intro page. | +| `HD_PRIVACY_URL` | - | `https://md.example.com/privacy` | The URL that should be linked as the privacy notice in the footer. | +| `HD_TERMS_OF_USE_URL` | - | `https://md.example.com/terms` | The URL that should be linked as the terms of user in the footer. | +| `HD_IMPRINT_URL` | - | `https://md.example.com/imprint` | The URL that should be linked as the imprint in the footer. | + +## Example + +### Links + +![Links on the Frontpage][links-frontpage] +*links for the privacy policy, terms of use and imprint on the front page* + +### Logo + +For this demo we use this image: +![The demo logo][demo-logo] + +![The demo logo on the Frontpage][logo-front-page] +*logo used on the front page* + +![The demo logo in the editor (light)][logo-editor-light] +![The demo logo in the editor (dark)][logo-editor-dark] +*logo used in the editor* + +### Name + +For this demo we use the name `DEMO Corp` + +![The name on the Frontpage][name-front-page] +*name used on the front page* + +![The name in the editor (light)][name-editor-light] +![The name in the editor (dark)][name-editor-dark] +*name used in the editor* + +[links-frontpage]: /images/customization/links.png +[demo-logo]: /images/customization/demo_logo.png +[logo-front-page]: /images/customization/logo/frontpage.png +[logo-editor-light]: /images/customization/logo/editor_light.png +[logo-editor-dark]: /images/customization/logo/editor_dark.png +[name-front-page]: /images/customization/name/frontpage.png +[name-editor-light]: /images/customization/name/editor_light.png +[name-editor-dark]: /images/customization/name/editor_dark.png diff --git a/docs/content/references/config/database.md b/docs/content/references/config/database.md new file mode 100644 index 000000000..85a0cf629 --- /dev/null +++ b/docs/content/references/config/database.md @@ -0,0 +1,18 @@ +# Database + +We officially support and test these databases: + +- SQLite (for development and smaller instances) +- PostgreSQL +- MariaDB + + +| environment variable | default | example | description | +|-----------------------|---------|---------------------|--------------------------------------------------------------------------------------------| +| `HD_DATABASE_TYPE` | - | `postgres` | The database type you want to use. This can be `postgres`, `mysql`, `mariadb` or `sqlite`. | +| `HD_DATABASE_NAME` | - | `hedgedoc` | The name of the database to use. When using SQLite, this is the path to the database file. | +| `HD_DATABASE_HOST` | - | `db.example.com` | The host, where the database runs. *Only if you're **not** using `sqlite`.* | +| `HD_DATABASE_PORT` | - | `5432` | The port, where the database runs. *Only if you're **not** using `sqlite`.* | +| `HD_DATABASE_USER` | - | `hedgedoc` | The user that logs in the database. *Only if you're **not** using `sqlite`.* | +| `HD_DATABASE_PASS` | - | `password` | The password to log into the database. *Only if you're **not** using `sqlite`.* | + diff --git a/docs/content/references/config/general.md b/docs/content/references/config/general.md new file mode 100644 index 000000000..0ee74b8f1 --- /dev/null +++ b/docs/content/references/config/general.md @@ -0,0 +1,14 @@ +# General + +| environment variable | default | example | description | +|--------------------------|------------------------|-----------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------| +| `HD_BASE_URL` | - | `https://md.example.com` | The URL the HedgeDoc instance is accessed with, like it is entered in the browser | +| `HD_BACKEND_PORT` | 3000 | | The port the backend process listens on. | +| `HD_FRONTEND_PORT` | 3001 | | The port the frontend process listens on. | +| `HD_RENDERER_BASE_URL` | Content of HD_BASE_URL | | The URL the renderer runs on. If omitted this will be the same as `HD_BASE_URL`. For more detail see [this faq entry][faq-entry] | +| `HD_LOGLEVEL` | warn | | The loglevel that should be used. Options are `error`, `warn`, `info`, `debug` or `trace`. | +| `HD_FORBIDDEN_NOTE_IDS` | - | `notAllowed,alsoNotAllowed` | A list of note ids (separated by `,`), that are not allowed to be created or requested by anyone. | +| `HD_MAX_DOCUMENT_LENGTH` | 100000 | | The maximum length of any one document. Changes to this will impact performance for your users. | +| `HD_PERSIST_INTERVAL` | 10 | `0`, `5`, `10`, `20` | The time interval in **minutes** for the periodic note revision creation during realtime editing. `0` deactivates the periodic note revision creation. | + +[faq-entry]: /faq/#why-should-i-want-to-run-my-renderer-on-a-different-sub-domain diff --git a/docs/content/references/config/index.md b/docs/content/references/config/index.md new file mode 100644 index 000000000..6f7f8d1ff --- /dev/null +++ b/docs/content/references/config/index.md @@ -0,0 +1,29 @@ +# Configuration + +HedgeDoc can be configured via environment variables either directly or via an `.env` file. + +## The `.env` file + +The `.env` file should be in the working directory of the backend and contains key-value pairs of +environment variables and their corresponding value. +In the official Docker container this is `/usr/src/app/backend/` +This can for example look like this: + + +```ini +HD_BASE_URL="http://localhost:8080" +HD_SESSION_SECRET="change_me_in_production" +HD_DATABASE_TYPE="sqlite" +HD_DATABASE_NAME="./hedgedoc.sqlite" +HD_MEDIA_BACKEND="filesystem" +HD_MEDIA_BACKEND_FILESYSTEM_UPLOAD_PATH="uploads/" +``` + + +We also provide an `.env.example` file containing a minimal configuration +in the root of the project. This should help you to write your own configuration. + +!!! warning + The minimal configuration provided in `.env.example` is exactly that: minimal. + It will let you start HedgeDoc for local development, + but it is **not** meant to be used in production without prior changes. diff --git a/docs/content/references/config/integrations.md b/docs/content/references/config/integrations.md new file mode 100644 index 000000000..972351ffe --- /dev/null +++ b/docs/content/references/config/integrations.md @@ -0,0 +1,6 @@ +# Integrations + +| environment variable | default | example | description | +|------------------------|---------|-------------------------------------|--------------------------------------------------------------------------------------------------------------------------------------| +| `HD_PLANTUML_SERVER` | - | `https://www.plantuml.com/plantuml` | The PlantUML server that HedgeDoc uses to render PlantUML diagrams. If this is not configured, PlantUML diagrams won't be rendered. | +| `HD_IMAGE_PROXY` | - | `https://image-proxy.example.com` | **ToDo:** Add description | diff --git a/docs/content/config/media/azure.md b/docs/content/references/config/media/azure.md similarity index 99% rename from docs/content/config/media/azure.md rename to docs/content/references/config/media/azure.md index e4667cd0c..8db8cc2f4 100644 --- a/docs/content/config/media/azure.md +++ b/docs/content/references/config/media/azure.md @@ -9,7 +9,7 @@ It's possible to create the container with the [Azure CLI][azure-cli], using you with the following command: -```sh +```shell az storage container create --name --public-access blob--connection-string "" ``` diff --git a/docs/content/config/media/filesystem.md b/docs/content/references/config/media/filesystem.md similarity index 100% rename from docs/content/config/media/filesystem.md rename to docs/content/references/config/media/filesystem.md diff --git a/docs/content/config/media/imgur.md b/docs/content/references/config/media/imgur.md similarity index 100% rename from docs/content/config/media/imgur.md rename to docs/content/references/config/media/imgur.md diff --git a/docs/content/config/media/s3.md b/docs/content/references/config/media/s3.md similarity index 93% rename from docs/content/config/media/s3.md rename to docs/content/references/config/media/s3.md index d44132c98..7c0008377 100644 --- a/docs/content/config/media/s3.md +++ b/docs/content/references/config/media/s3.md @@ -27,4 +27,4 @@ should be `https://s3.us-east-2.amazonaws.com`. [s3]: https://aws.amazon.com/s3/ [minIO]: https://min.io [ceph]: https://docs.ceph.com/en/latest/radosgw/ -[amazon-region]: (https://docs.aws.amazon.com/general/latest/gr/s3.html) +[amazon-region]: https://docs.aws.amazon.com/general/latest/gr/s3.html diff --git a/docs/content/config/media/webdav.md b/docs/content/references/config/media/webdav.md similarity index 100% rename from docs/content/config/media/webdav.md rename to docs/content/references/config/media/webdav.md diff --git a/docs/content/references/config/notes.md b/docs/content/references/config/notes.md new file mode 100644 index 000000000..439d9b406 --- /dev/null +++ b/docs/content/references/config/notes.md @@ -0,0 +1,9 @@ +# Notes + +| environment variable | default | example | description | +|-----------------------------------|---------|-----------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| `HD_FORBIDDEN_NOTE_IDS` | - | `notAllowed, alsoNotAllowed` | A list of note ids (separated by `,`), that are not allowed to be created or requested by anyone. | +| `HD_MAX_DOCUMENT_LENGTH` | 100000 | | The maximum length of any one document. Changes to this will impact performance for your users. | +| `HD_GUEST_ACCESS` | `write` | `deny`, `read`, `write`, `create` | Defines the maximum access level for guest users to the instance. If guest access is set lower than the "everyone" permission of a note then the note permission will be overridden. | +| `HD_PERMISSION_DEFAULT_LOGGED_IN` | `write` | `none`, `read`, `write` | The default permission for the "logged-in" group that is set on new notes. | +| `HD_PERMISSION_DEFAULT_EVERYONE` | `read` | `none`, `read`, `write` | The default permission for the "everyone" group (logged-in & guest users), that is set on new notes created by logged-in users. Notes created by guests always set this to "write". | diff --git a/docs/content/references/hfm.md b/docs/content/references/hfm.md index 46d4dc472..6b4bf8998 100644 --- a/docs/content/references/hfm.md +++ b/docs/content/references/hfm.md @@ -1,7 +1,7 @@ # HedgeDoc Flavored Markdown HedgeDoc has its own markdown dialect which supports many features from [CommonMark][commonmark] -and [Github Flavored Markdown][gfm]. It also adds some new extensions and is missing some. +and [GitHub Flavored Markdown][gfm]. It also adds some new extensions and is missing some. These tables tell you what exactly we support in HedgeDoc 1.x (HFM 1) and HedgeDoc 2 (HFM 2). diff --git a/docs/content/references/index.md b/docs/content/references/index.md new file mode 100644 index 000000000..a18e7365b --- /dev/null +++ b/docs/content/references/index.md @@ -0,0 +1,21 @@ +# References + +References are details to lookup in a non-guided way. +These include for example configuration options or API methods. + + + + diff --git a/docs/content/setup/getting_started.md b/docs/content/setup/getting_started.md deleted file mode 100644 index f673e6272..000000000 --- a/docs/content/setup/getting_started.md +++ /dev/null @@ -1,40 +0,0 @@ -# Setup - -HedgeDoc 2 currently supports deployment using [Docker Compose][docker-compose]. - -The `docker` folder in the root of our repo contains all files required to get started, deploying -HedgeDoc 2, a PostgreSQL database and a Caddy reverse proxy. - -## Development or local testing - -To run HedgeDoc 2 locally, you do not need to change anything. -Caddy will automatically generate a TLS certificate for `hedgedoc2.localhost` using its internal CA. -After running `docker compose up`, visit . -You will have to accept the TLS warning in your browser the first time the page is opened. - -## Production setup - -!!! danger "HedgeDoc 2 is not yet production ready!" - This section explains how a production deployment of HedgeDoc 2 on a publicly accessible domain - might look in the future. - HedgeDoc 2 itself is not production ready yet, so only use these instructions to set up an - instance for testing with your friends. - -For a production setup, first set a unique session secret with -`sed -i "s/change_me_in_production/$(pwgen -s 64)/" .env`. - -Then open the `.env` file and edit `HD_BASE_URL`. It needs to contain the full URL of your instance, -like it will be entered in the browser. If you enter a URL starting with `https://`, Caddy will -automatically gather certificates via *Let's Encrypt* -(or its internal CA in case of `.localhost` domains). -Make sure your host is accessible under the domain from `HD_BASE_URL`, otherwise Let's Encrypt -validation will fail. - -Optionally, you can also change - -- `HD_MEDIA_BACKEND`: If you do not want HedgeDoc to handle media uploads itself, configure - another backend here. For more information, [see the media backend docs](/config/#media). -- `HD_AUTH_*`: If you do not want to use the integrated auth system, - you can [consult the authentication docs](/config/#authentication) for details. - -[docker-compose]: https://docs.docker.com/compose/install/ diff --git a/docs/content/theme/styles/hedgedoc-custom.css b/docs/content/theme/styles/hedgedoc-custom.css index 6938713e2..881f12d55 100644 --- a/docs/content/theme/styles/hedgedoc-custom.css +++ b/docs/content/theme/styles/hedgedoc-custom.css @@ -1,5 +1,5 @@ /* - * SPDX-FileCopyrightText: 2021 The HedgeDoc developers (see AUTHORS file) + * SPDX-FileCopyrightText: 2023 The HedgeDoc developers (see AUTHORS file) * * SPDX-License-Identifier: AGPL-3.0-only */ @@ -69,3 +69,39 @@ [data-md-color-scheme="light"] .dark-mode-only { display: none; } + +.topic-container { + display: grid; + grid-template-columns: repeat(2, 1fr); + grid-template-rows: 1fr; + gap: 2em; +} + +@media screen and (max-width: 900px) { + .topic-container { + grid-template-columns: repeat(1, 1fr); + } +} + +.topic-container a[href] { + color: var(--md-accent-bg-color--light); +} + +.topic-container a[href]:hover, .topic a[href]:focus, .topic a[href]:active { + color: #fff; +} + +.topic { + width: 100%; + font-size: 28px; + padding: 2em 1em; + display: flex; + gap: 0.5em; + align-items: center; + justify-content: center; + background-color: var(--md-primary-fg-color); +} + +.topic span { + text-align: center; +} diff --git a/docs/content/tutorials/first-note.md b/docs/content/tutorials/first-note.md new file mode 100644 index 000000000..b9cdeb81c --- /dev/null +++ b/docs/content/tutorials/first-note.md @@ -0,0 +1,52 @@ +# Create your first note + +We'll assume the domain you use for the instance is , so please +substitute your actual domain anywhere you encounter + +1. Go to . + +2. Click on the "New Note" button in the top right. HedgeDoc will now create a new + note for you and redirect you to the editor of this note. + + ![New Note button on the HedgeDoc start page][new-note]{ width="400" } + +3. Start typing your note. On the left (1) you find the editor to do so and + on the right (2) you see the rendering of what you wrote. + + ![The HedgeDoc Editor][editor] + +4. Copy the following text into your editor + +```markdown +# My first note + +You can format text **bold** or *italic*. + +There are lists both + +1. ordered + +and + +- unordered + +Also you can use + +- [ ] ToDo Lists +``` + +![The HedgeDoc Editor with the example text][editor-filled] + +## Further reading + +- [Checkout HedgeDoc's markdown syntax reference][hfm] +- [Creating your first presentation][tutorials/first-presentation] +- [Advanced configuration options][config] + +[new-note]: ../images/tutorial/top-right.png +[editor]: ../images/tutorial/note/editor.png +[editor-filled]: ../images/tutorial/note/editor-filled.png + +[hfm]: /references/hfm/ +[tutorials/first-presentation]: /tutorials/first-presentation/ +[config]: /references/config/ diff --git a/docs/content/tutorials/first-presentation.md b/docs/content/tutorials/first-presentation.md new file mode 100644 index 000000000..034b54f45 --- /dev/null +++ b/docs/content/tutorials/first-presentation.md @@ -0,0 +1,5 @@ +# Create your first presentation + +TODO: This pages is still missing some content. +See this issue for more information and if you want to contribute: + diff --git a/docs/content/tutorials/index.md b/docs/content/tutorials/index.md new file mode 100644 index 000000000..340c8e35d --- /dev/null +++ b/docs/content/tutorials/index.md @@ -0,0 +1,33 @@ +# Tutorials + +Tutorials are detailed step-by-step instructions. Start here if you're new to HedgeDoc, +want to create your first presentation or want to build a simple API application. + + + + \ No newline at end of file diff --git a/docs/content/tutorials/setup.md b/docs/content/tutorials/setup.md new file mode 100644 index 000000000..9528588f9 --- /dev/null +++ b/docs/content/tutorials/setup.md @@ -0,0 +1,82 @@ +# Setup + +After completing this tutorial you'll have your own HedgeDoc instance running. +We will use [Docker][docker-docs] to accomplish this. + + + +1. Open the terminal of the machine you want to install HedgeDoc on. + +2. Check if you have Docker installed by running `docker --version`. + The response should contain some version number greater than `20.10.13`. + - If not please refer to [the Docker install guide][docker-install] to install Docker. + +3. Create a new directory for your HedgeDoc instance: `mkdir -p /opt/hedgedoc`. + +4. Change into the directory with `cd /opt/hedgedoc`. + +5. Download these files: + - `curl -o .env https://docs.hedgedoc.dev/files/setup-docker/config.env` + - `curl -o Caddyfile https://docs.hedgedoc.dev/files/setup-docker/Caddyfile` + - `curl -o docker-compose.yml https://docs.hedgedoc.dev/files/setup-docker/docker-compose.yml` + +6. Open the file `.env` in the editor of your choice (for example with `nano`) and edit the + following variables: + - `HD_BASE_URL`: This should contain the full url you intend to run HedgeDoc on (e.g. for the + demo this would be `https://demo.hedgedoc.org`). If you just want to run HedgeDoc on your + local machine for now `https://hedgedoc.localhost` should be sufficient for testing. + - `HD_SESSION_SECRET`: This should contain a long and random secret for your login sessions. + You can generate it with `pwgen -s 64` or any other way you see fit. + - `HD_DATABASE_PASS`: This should contain a strong password than `password` for your database. + You can again use `pwgen -s 64` to generate it. + +7. Start the Docker containers by running `docker compose up -d`. + +8. Navigate your browser to the url you chose in step 6. Your instance is now ready to use. + + + +You can now play around with your HedgeDoc instance and read about next steps +as either [a new user](#for-users) or [an admin](#for-admins). + +## Next Steps + +### For Users + +- [Creating a user account][tutorials/user] +- [Creating your first note][tutorials/first-note] +- [Creating your first presentation][tutorials/first-presentation] + +### For admins + +- [How to use a reverse proxy][reverse-proxying] +- [How to back up HedgeDoc][backups] +- [How to use other authentication methods][auth-methods] +- [Advanced configuration options][config] + +## Troubleshooting + +### Port already used + +```text +Error response from daemon: driver failed programming external connectivity: Bind for 0.0.0.0:80 +failed: port is already allocated. +``` + +If you see this error, it means there is already something running on your machine that uses +port `80` or `443`. The easiest fix for this is to stop the other application. +If you want to run multiple applications on that port on your server you may want to read our guide +about [reverse proxying][reverse-proxying]. + +[docker-docs]: https://docs.docker.com/ +[docker-install]: https://docs.docker.com/engine/install/ + +[tutorials/user]: /tutorials/user/ +[tutorials/first-note]: /tutorials/first-note/ +[tutorials/first-presentation]: /tutorials/first-presentation/ + +[reverse-proxying]: /how-to/reverse-proxy/ +[backups]: /how-to/backup/ +[auth-methods]: /how-to/auth/ + +[config]: /references/config/ diff --git a/docs/content/tutorials/user.md b/docs/content/tutorials/user.md new file mode 100644 index 000000000..ccdcd5b9b --- /dev/null +++ b/docs/content/tutorials/user.md @@ -0,0 +1,41 @@ +# Create a user + +This tutorial assumes that you just deployed a HedgeDoc instance with [this guide][setup]. +We'll assume the domain you use for the instance is , so please +substitute your actual domain anywhere you encounter + +1. Go to . + +2. Click the "Sign In" button in the top right corner of the page. + + ![Sign In button on the HedgeDoc start page][sign-in]{ width="400" } + +3. Click on the "Register" button in "Sign in via Username" section. + + ![Register button in Sign in via Username section][register-button]{ width="500" } + +4. Fill out the form. + + You are able to change any of these values except the username, so please chose a username + you want to keep. + ![Register form][register-form]{ width="500" } + +5. Click on the "Register" button. + +Congratulation you know have a working local user account for your HedgeDoc instance. + +## Further reading + +- [Creating your first note][tutorials/first-note] +- [Creating your first presentation][tutorials/first-presentation] +- [Advanced configuration options][config] + +[setup]: ./setup.md + +[sign-in]: ../images/tutorial/top-right.png +[register-button]: ../images/tutorial/user/register-button.png +[register-form]: ../images/tutorial/user/register-form.png + +[tutorials/first-note]: /tutorials/first-note/ +[tutorials/first-presentation]: /tutorials/first-presentation/ +[config]: /references/config/ diff --git a/docs/mkdocs.yml b/docs/mkdocs.yml index b7e961486..ed4c765a9 100644 --- a/docs/mkdocs.yml +++ b/docs/mkdocs.yml @@ -1,45 +1,66 @@ site_name: HedgeDoc 2 -site_url: https://docs.hedgedoc.org +site_url: https://docs.hedgedoc.dev repo_url: https://github.com/hedgedoc/hedgedoc -site_description: 'HedgeDoc Documentation' +site_description: 'HedgeDoc 2 Documentation' site_author: 'HedgeDoc Developers' docs_dir: content -edit_uri: https://github.com/hedgedoc/hedgedoc/edit/master/docs/content/ +edit_uri: https://github.com/hedgedoc/hedgedoc/edit/develop/docs/content/ nav: - Home: index.md - - Installation: - - Getting Started: setup/getting_started.md - - Configuration: - - Configuration: config/index.md - - Media: - - Azure: config/media/azure.md - - Filesystem: config/media/filesystem.md - - imgur: config/media/imgur.md - - S3: config/media/s3.md - - WebDAV: config/media/webdav.md - - Interface: - - Toolbar: interface/toolbar.md + - Tutorials: + - Overview: tutorials/index.md + - Setup: tutorials/setup.md + - 'Create a user': tutorials/user.md + - 'Create a note': tutorials/first-note.md + - 'Create a presentation': tutorials/first-presentation.md + - 'How-to guides': + - Overview: how-to/index.md + - 'Reverse Proxy': how-to/reverse-proxy.md + - Backup: how-to/backup.md + - Authentication: how-to/auth.md + - Database: how-to/database.md + - Develop: + - Setup: how-to/develop/setup.md + - 'Frontend setup': how-to/develop/frontend.md + - 'Build docker images': how-to/develop/docker.md + - 'Build Documentation': how-to/develop/documentation.md + - 'LDAP test environment': how-to/develop/auth/ldap.md + - 'Core concepts': + - Overview: concepts/index.md + - Notes: concepts/notes.md + - 'User Profiles': concepts/user-profiles.md + - Config: concepts/config.md + - 'API Auth': concepts/api-auth.md + - Events: concepts/events.md - References: - - 'HedgeDoc Flavored Markdown': references/hfm.md - - Development: - - Getting Started: dev/getting-started.md - - Frontend: dev/setup/frontend.md - - Development Notes: dev/dev_notes.md - - Docker: dev/docker.md - - Writing Docs: dev/documentation.md - - Design Documents: - - API Authentication: dev/design_docs/api_auth.md - - Configuration: dev/design_docs/config.md - - Events: dev/design_docs/events.md - - Notes: dev/design_docs/notes.md - - 'User Profiles & Authentication': dev/design_docs/user_profiles.md - - FAQ: https://hedgedoc.org/faq + - Overview: references/index.md + - 'HFM Syntax': references/hfm.md + - Configuration: + - Overview: references/config/index.md + - General: references/config/general.md + - Notes: references/config/notes.md + - Database: references/config/database.md + - Authentication: + - 'Local accounts': references/config/auth/local.md + - LDAP: references/config/auth/ldap.md + - Customization: references/config/customization.md + - Media Backends: + - Azure: references/config/media/azure.md + - Filesystem: references/config/media/filesystem.md + - imgur: references/config/media/imgur.md + - S3: references/config/media/s3.md + - WebDAV: references/config/media/webdav.md + - Integrations: references/config/integrations.md + - FAQ: faq/index.md markdown_extensions: - toc: permalink: true - admonition + - pymdownx.details + - pymdownx.superfences - attr_list - footnotes + - mdx_truly_sane_lists theme: name: 'material' language: en diff --git a/docs/netlify.toml b/docs/netlify.toml new file mode 100644 index 000000000..5a59aa9f3 --- /dev/null +++ b/docs/netlify.toml @@ -0,0 +1,3 @@ +[build] +publish = "site" +command = "echo Pseudo build command because the build is made by the CI" diff --git a/docs/requirements.txt b/docs/requirements.txt index 314b03f70..79b49ffe8 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -1,3 +1,4 @@ mkdocs==1.5.2 mkdocs-material==9.3.1 pymdown-extensions==10.3 +mdx_truly_sane_lists==1.3