diff options
Diffstat (limited to 'docs')
28 files changed, 150 insertions, 148 deletions
diff --git a/docs/configuration.md b/docs/configuration.md index a173e12c..8f2d6263 100644 --- a/docs/configuration.md +++ b/docs/configuration.md @@ -1,6 +1,6 @@ # Configuration -You can choose to configure CodiMD with either a config file or with environment variables. +You can choose to configure HedgeDoc with either a config file or with environment variables. Environment variables take precedence over configurations from the config files. They generally start with `CMD_` for our own options, but we also list node-specific options you can configure this way. @@ -18,18 +18,18 @@ to `config.json` before filling in your own details. | | `NODE_ENV` | `production` or `development` | set current environment (will apply corresponding settings in the `config.json`) | | `debug` | `DEBUG` | `true` or `false` | set debug mode, show more logs | -## CodiMD basics +## HedgeDoc basics | config file | environment | **default** and example value | description | | ------------------- | ------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `allowPDFExport` | `CMD_ALLOW_PDF_EXPORT` | **`true`** or `false` | Enable or disable PDF exports | -| | `CMD_CONFIG_FILE` | **no default**, `/path/to/config.json` | optional override for the path to CodiMD's config file | -| `db` | | **`undefined`**, `{ "dialect": "sqlite", "storage": "./db.codimd.sqlite" }` | set the db configs, [see more here](http://sequelize.readthedocs.org/en/latest/api/sequelize/) | +| | `CMD_CONFIG_FILE` | **no default**, `/path/to/config.json` | optional override for the path to HedgeDoc's config file | +| `db` | | **`undefined`**, `{ "dialect": "sqlite", "storage": "./db.hedgedoc.sqlite" }` | set the db configs, [see more here](http://sequelize.readthedocs.org/en/latest/api/sequelize/) | | `dbURL` | `CMD_DB_URL` | **`undefined`**, `mysql://localhost:3306/database` | Set the db in URL style. If set, then the relevant `db` config entries will be overridden. | | `loglevel` | `CMD_LOGLEVEL` | **`info`**, `debug` ... | Defines what kind of logs are provided to stdout. Available options: `debug`, `verbose`, `info`, `warn`, `error` | | `forbiddenNoteIDs` | `CMD_FORBIDDEN_NOTE_IDS` | **`['robots.txt', 'favicon.ico', 'api', 'build', 'css', 'docs', 'fonts', 'js', 'uploads', 'vendor', 'views']`**, `['robots.txt']` or `'robots.txt'` | disallow creation of notes, even if `allowFreeUrl` or `CMD_ALLOW_FREEURL` is `true` | | `imageUploadType` | `CMD_IMAGE_UPLOAD_TYPE` | **`filesystem`**, `imgur`, `s3`, `minio`, `azure`, `lutim` | Where to upload images. For S3, see our Image Upload Guides for [S3](guides/s3-image-upload.md) or [Minio](guides/minio-image-upload.md), also there's a whole section on their respective env vars below. | -| `sourceURL` | `CMD_SOURCE_URL` | **no default**, `https://github.com/codimd/server/tree/<current commit>` | Provides the link to the source code of CodiMD on the entry page (Please, make sure you change this when you run a modified version) | +| `sourceURL` | `CMD_SOURCE_URL` | **no default**, `https://github.com/hedgedoc/server/tree/<current commit>` | Provides the link to the source code of HedgeDoc on the entry page (Please, make sure you change this when you run a modified version) | | `tooBusyLag` | `CMD_TOOBUSY_LAG` | **`70`** | CPU time for one event loop tick until node throttles connections. (milliseconds) | | `staticCacheTime` | | **`1 * 24 * 60 * 60 * 1000`** | static file cache time | | `heartbeatInterval` | | **`5000`** | socket.io heartbeat interval | @@ -37,7 +37,7 @@ to `config.json` before filling in your own details. | `documentMaxLength` | | **`100000`** | note max length | | `linkifyHeaderStyle` | | **`keep-case`**, `lower-case`, `gfm` | how is a header text converted into a link id | -## CodiMD paths stuff +## HedgeDoc paths stuff these are rarely used for various reasons. @@ -46,28 +46,28 @@ these are rarely used for various reasons. | `defaultNotePath` | | **`./public/default.md`** | default note file path<sup>1</sup>, empty notes will be created with this template. | | `dhParamPath` | | **`undefined`**, `./cert/dhparam.pem` | SSL dhparam path<sup>1</sup> (only need when you set `useSSL`) | | `sslCAPath` | | **`undefined`**, `['./cert/COMODORSAAddTrustCA.crt']` | SSL ca chain<sup>1</sup> (only need when you set `useSSL`) | -| `sslCertPath` | | **`undefined`**, `./cert/codimd_io.crt` | SSL cert path<sup>1</sup> (only need when you set `useSSL`) | +| `sslCertPath` | | **`undefined`**, `./cert/hedgedoc_io.crt` | SSL cert path<sup>1</sup> (only need when you set `useSSL`) | | `sslKeyPath` | | **`undefined`**, `./cert/client.key` | SSL key path<sup>1</sup> (only need when you set `useSSL`) | | `tmpPath` | | **`os.tmpdir()`**, `./tmp/` | temp directory path<sup>1</sup> | | `docsPath` | | **`./public/docs`** | docs directory path<sup>1</sup> | | `viewPath` | | **`./public/views`** | template directory path<sup>1</sup> | | `uploadsPath` | | **`./public/uploads`** | uploads directory<sup>1</sup> - needs to be persistent when you use imageUploadType `filesystem` | -**Note:** *relative paths are based on CodiMD's base directory* +**Note:** *relative paths are based on HedgeDoc's base directory* -## CodiMD Location +## HedgeDoc Location | config file | environment | **default** and example value | description | | ---------------- | --------------------- | ---------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------- | -| `domain` | `CMD_DOMAIN` | **`null`**, `localhost`, `codimd.org` | domain name | -| `urlPath` | `CMD_URL_PATH` | **`null`**, `codimd` | If CodiMD is run from a subdirectory like `www.example.com/<urlpath>` | +| `domain` | `CMD_DOMAIN` | **`null`**, `localhost`, `hedgedoc.org` | domain name | +| `urlPath` | `CMD_URL_PATH` | **`null`**, `hedgedoc` | If HedgeDoc is run from a subdirectory like `www.example.com/<urlpath>` | | `host` | `CMD_HOST` | **`0.0.0.0`**, `localhost` | interface/ip to listen on | | `port` | `CMD_PORT` | **`3000`**, `80` | port to listen on | -| `path` | `CMD_PATH` | **no default**, `/var/run/codimd.sock` | path to UNIX domain socket to listen on (if specified, `host` or `CMD_HOST` and `port` or `CMD_PORT` are ignored) | +| `path` | `CMD_PATH` | **no default**, `/var/run/hedgedoc.sock` | path to UNIX domain socket to listen on (if specified, `host` or `CMD_HOST` and `port` or `CMD_PORT` are ignored) | | `protocolUseSSL` | `CMD_PROTOCOL_USESSL` | **`false`** or `true` | set to use SSL protocol for resources path (only applied when domain is set) | | `useSSL` | | **`false`** or `true` | set to use SSL server (if `true`, will auto turn on `protocolUseSSL`) | | `urlAddPort` | `CMD_URL_ADDPORT` | **`false`** or `true` | set to add port on callback URL (ports `80` or `443` won't be applied) (only applied when domain is set) | -| `allowOrigin` | `CMD_ALLOW_ORIGIN` | **`['localhost']`**, `['codimd.org']`, `[localhost, codimd.org]` | domain name whitelist (use comma to separate) | +| `allowOrigin` | `CMD_ALLOW_ORIGIN` | **`['localhost']`**, `['hedgedoc.org']`, `[localhost, hedgedoc.org]` | domain name whitelist (use comma to separate) | ## Web security aspects @@ -166,8 +166,8 @@ these are rarely used for various reasons. | | `CMD_LDAP_SEARCHBASE` | **no default**, `o=users,dc=example,dc=com` | LDAP directory to begin search from | | | `CMD_LDAP_SEARCHFILTER` | **no default**, `(uid={{username}})` | LDAP filter to search with | | | `CMD_LDAP_SEARCHATTRIBUTES` | **no default**, `displayName, mail` | LDAP attributes to search with (use comma to separate) | -| | `CMD_LDAP_USERIDFIELD` | **no default**, `uidNumber` or `uid` or `sAMAccountName` | The LDAP field which is used uniquely identify a user on CodiMD | -| | `CMD_LDAP_USERNAMEFIELD` | **no default**, fallback to userid | The LDAP field which is used as the username on CodiMD | +| | `CMD_LDAP_USERIDFIELD` | **no default**, `uidNumber` or `uid` or `sAMAccountName` | The LDAP field which is used uniquely identify a user on HedgeDoc | +| | `CMD_LDAP_USERNAMEFIELD` | **no default**, fallback to userid | The LDAP field which is used as the username on HedgeDoc | | | `CMD_LDAP_TLS_CA` | **no default**, `server-cert.pem, root.pem` | Root CA for LDAP TLS in PEM format (use comma to separate) | | | `CMD_LDAP_PROVIDERNAME` | **no default**, `My institution` | Optional name to be displayed at login form indicating the LDAP provider | @@ -191,8 +191,8 @@ these are rarely used for various reasons. | | `CMD_OAUTH2_USER_PROFILE_EMAIL_ATTR` | **no default**, `email` | where to find the email address in the JSON from the user profile URL. (no default value) | | | `CMD_OAUTH2_TOKEN_URL` | **no default**, `https://example.com` | sometimes called token endpoint, please refer to the documentation of your OAuth2 provider (no default value) | | | `CMD_OAUTH2_AUTHORIZATION_URL` | **no default**, `https://example.com` | authorization URL of your provider, please refer to the documentation of your OAuth2 provider (no default value) | -| | `CMD_OAUTH2_CLIENT_ID` | **no default**, `afae02fckafd...` | you will get this from your OAuth2 provider when you register CodiMD as OAuth2-client, (no default value) | -| | `CMD_OAUTH2_CLIENT_SECRET` | **no default**, `afae02fckafd...` | you will get this from your OAuth2 provider when you register CodiMD as OAuth2-client, (no default value) | +| | `CMD_OAUTH2_CLIENT_ID` | **no default**, `afae02fckafd...` | you will get this from your OAuth2 provider when you register HedgeDoc as OAuth2-client, (no default value) | +| | `CMD_OAUTH2_CLIENT_SECRET` | **no default**, `afae02fckafd...` | you will get this from your OAuth2 provider when you register HedgeDoc as OAuth2-client, (no default value) | | | `CMD_OAUTH2_PROVIDERNAME` | **no default**, `My institution` | Optional name to be displayed at login form indicating the oAuth2 provider | | | `CMD_OAUTH2_SCOPE` | **no default**, `openid email profile` | Scope to request for OIDC (OpenID Connect) providers. | @@ -208,7 +208,7 @@ these are rarely used for various reasons. | | `CMD_SAML_DISABLEREQUESTEDAUTHNCONTEXT` | **no default**, `true` or `false` | true to allow any authentication method, false restricts to password authentication (PasswordProtectedTransport) method (default: false) | | | `CMD_SAML_IDENTIFIERFORMAT` | **`urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress`** | name identifier format (optional, default: `urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress`) | | | `CMD_SAML_GROUPATTRIBUTE` | **no default**, `memberOf` | attribute name for group list (optional) | -| | `CMD_SAML_REQUIREDGROUPS` | **no default**, `codimd-users` | group names that allowed (use vertical bar to separate) (optional) | +| | `CMD_SAML_REQUIREDGROUPS` | **no default**, `hedgedoc-users` | group names that allowed (use vertical bar to separate) (optional) | | | `CMD_SAML_EXTERNALGROUPS` | **no default**, `Temporary-staff` | group names that not allowed (use vertical bar to separate) (optional) | | | `CMD_SAML_ATTRIBUTE_ID` | **no default**, `sAMAccountName` | attribute map for `id` (optional, default: NameID of SAML response) | | | `CMD_SAML_ATTRIBUTE_USERNAME` | **no default**, `mailNickname` | attribute map for `username` (optional, default: NameID of SAML response) | diff --git a/docs/dev/api.md b/docs/dev/api.md index fbbdae83..5422533d 100644 --- a/docs/dev/api.md +++ b/docs/dev/api.md @@ -1,5 +1,5 @@ # API documentation -Several tasks of CodiMD can be automated through HTTP requests. +Several tasks of HedgeDoc can be automated through HTTP requests. The available endpoints for this api are described in this document. For code-autogeneration there is an OpenAPIv3-compatible description available [here](openapi.yml). @@ -34,9 +34,9 @@ These endpoints return information about the current logged-in user and it's not | `/history/<NOTE>` | `POST` | **Toggles the pinned status in the history for a note.**<br>The body must be form-encoded and contain a field `pinned` that is either `true` or `false`. | | `/history/<NOTE>` | `DELETE` | **Deletes a note from the user's history.** | -## CodiMD-server -These endpoints return information about the running CodiMD instance. +## HedgeDoc-server +These endpoints return information about the running HedgeDoc instance. | Endpoint | HTTP-Method | Description | | --------- | ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `/status` | `GET` | **Returns the current status of the CodiMD instance.**<br>The data is returned as a JSON object containing the number of notes stored on the server, (distinct) online users and more. | +| `/status` | `GET` | **Returns the current status of the HedgeDoc instance.**<br>The data is returned as a JSON object containing the number of notes stored on the server, (distinct) online users and more. | diff --git a/docs/dev/getting-started.md b/docs/dev/getting-started.md index 7ed96944..9169ea4d 100644 --- a/docs/dev/getting-started.md +++ b/docs/dev/getting-started.md @@ -4,7 +4,7 @@ **Notice:** *There's [specialised instructions for docker](../setup/docker.md) or [heroku](../setup/heroku.md), if you prefer running code this way!* -1. Clone the repository with `git clone https://github.com/codimd/server.git codimd-server` +1. Clone the repository with `git clone https://github.com/hedgedoc/server.git hedgedoc-server` (cloning is the preferred way, but you can also download and unzip a release) 2. Enter the directory and run `bin/setup`, which will install npm dependencies @@ -16,7 +16,7 @@ ## Running the Code -Now that everything is in place, we can start CodiMD: +Now that everything is in place, we can start HedgeDoc: 1. `yarn run build` will build the frontend bundle. It uses webpack to do that. 2. Run the server with `node app.js` @@ -43,7 +43,7 @@ The repository contains two parts: a server (backend) and a client (frontend). most of the server code is in `/lib` and most of the client code is in `public`. ```text -codimd-server/ +hedgedoc-server/ ├── docs/ --- documentation ├── lib/ --- server code ├── test/ --- test suite diff --git a/docs/dev/openapi.yml b/docs/dev/openapi.yml index 4d3e31f6..d32a7ef4 100644 --- a/docs/dev/openapi.yml +++ b/docs/dev/openapi.yml @@ -1,18 +1,18 @@ openapi: 3.0.1 info: - title: CodiMD - description: CodiMD is an open source collaborative note editor. Several tasks of CodiMD can be automated through this API. + title: HedgeDoc + description: HedgeDoc is an open source collaborative note editor. Several tasks of HedgeDoc can be automated through this API. version: 1.6.0 contact: - name: CodiMD on GitHub - url: https://github.com/codimd/server + name: HedgeDoc on GitHub + url: https://github.com/hedgedoc/server license: name: AGPLv3 - url: https://github.com/codimd/server/blob/master/LICENSE + url: https://github.com/hedgedoc/server/blob/master/LICENSE externalDocs: - url: https://github.com/codimd/server/blob/master/docs/dev/api.md + url: https://github.com/hedgedoc/server/blob/master/docs/dev/api.md paths: @@ -281,7 +281,7 @@ paths: tags: - note summary: Creates a new GitHub Gist with the note's content. - description: 'If [GitHub integration](https://github.com/codimd/server/blob/master/docs/configuration-env-vars.md#github-login) is configured, the user will be redirected to GitHub and a new Gist with the content of the note will be created.' + description: 'If [GitHub integration](https://github.com/hedgedoc/server/blob/master/docs/configuration-env-vars.md#github-login) is configured, the user will be redirected to GitHub and a new Gist with the content of the note will be created.' responses: default: description: Redirect to the created gist (or the GitHub authentication before) @@ -432,7 +432,7 @@ paths: get: tags: - server - summary: Returns the current status of the CodiMD instance. + summary: Returns the current status of the HedgeDoc instance. description: The data is returned as a JSON object containing the number of notes stored on the server, (distinct) online users and more. responses: 200: @@ -478,4 +478,4 @@ tags: - name: user description: These endpoints return information about the current logged-in user and it's note history. If no user is logged-in, the most of this requests will fail with either a HTTP 403 or a JSON object containing `{"status":"forbidden"}`. - name: server - description: These endpoints return information about the running CodiMD instance. + description: These endpoints return information about the running HedgeDoc instance. diff --git a/docs/guides/auth/github.md b/docs/guides/auth/github.md index dc46f74c..f540a530 100644 --- a/docs/guides/auth/github.md +++ b/docs/guides/auth/github.md @@ -1,7 +1,5 @@ # Authentication guide - GitHub -*Note:* This guide was written before the renaming. Just replace `HackMD` with `CodiMD` in your mind :smile: thanks! - 1. Sign-in or sign-up for a GitHub account 2. Navigate to developer settings in your GitHub account [here](https://github.com/settings/developers) and select the "OAuth Apps" tab @@ -12,7 +10,7 @@ 4. Fill out the new OAuth application registration form, and click **Register Application** ![register-oauth-application-form](../../images/auth/register-oauth-application-form.png) - **Note:** *The callback URL is <your-codimd-url>/auth/github/callback* + **Note:** *The callback URL is <your-hedgedoc-url>/auth/github/callback* 5. After successfully registering the application, you'll receive the Client ID and Client Secret for the application ![application-page](../../images/auth/application-page.png) diff --git a/docs/guides/auth/gitlab-self-hosted.md b/docs/guides/auth/gitlab-self-hosted.md index 62ce1122..fc655ac5 100644 --- a/docs/guides/auth/gitlab-self-hosted.md +++ b/docs/guides/auth/gitlab-self-hosted.md @@ -1,6 +1,6 @@ # GitLab (self-hosted) -*Note:* This guide was written before the renaming. Just replace `HackMD` with `CodiMD` in your mind :smile: thanks! +*Note:* This guide was written before the renaming. Just replace `HackMD` with `HedgeDoc` in your mind :smile: thanks! 1. Sign in to your GitLab 2. Navigate to the application management page at `https://your.gitlab.domain/admin/applications` (admin permissions required) @@ -16,7 +16,7 @@ 6. In the `docker-compose.yml` add the following environment variables to `app:` `environment:` ```Dockerfile -- CMD_DOMAIN=your.codimd.domain +- CMD_DOMAIN=your.hedgedoc.domain - CMD_URL_ADDPORT=true - CMD_PROTOCOL_USESSL=true - CMD_GITLAB_BASEURL=https://your.gitlab.domain @@ -25,6 +25,6 @@ ``` 7. Run `docker-compose up -d` to apply your settings. -8. Sign in to your CodiMD using your GitLab ID: +8. Sign in to your HedgeDoc using your GitLab ID: ![Sign in via GitLab](../../images/auth/gitlab-sign-in.png) diff --git a/docs/guides/auth/keycloak.md b/docs/guides/auth/keycloak.md index 16e24bc5..6bb3ce7d 100644 --- a/docs/guides/auth/keycloak.md +++ b/docs/guides/auth/keycloak.md @@ -1,4 +1,4 @@ -OAuth with Keycloak/Red Hat SSO (self-hosted) +# OAuth with Keycloak/Red Hat SSO (self-hosted) ## Prerequisites @@ -13,7 +13,7 @@ Where HTTPS is specified throughout, use HTTP instead. You may also have to spec You may note that a separate realm is specified throughout this tutorial. It is best practice not to use the master realm, as it normally contains the realm-management client that federates access using the policies and permissions you can create. 2. Navigate to the client management page at `https://keycloak.example.com/auth/admin/master/console/#/realms/your-realm/clients` (admin permissions required) -3. Click **Create** to create a new client and fill out the registration form. You should set the Root URL to the fully qualified public URL of your CodiMD instance. +3. Click **Create** to create a new client and fill out the registration form. You should set the Root URL to the fully qualified public URL of your HedgeDoc instance. 4. Click **Save** 5. Set the **Access Type** of the client to `confidential`. This will make your client require a client secret upon authentication. @@ -24,7 +24,7 @@ You may note that a separate realm is specified throughout this tutorial. It is 1. Select Client Scopes from the sidebar, and begin to create a new client scope using the Create button. 2. Ensure that the **Name** field is set to `id`. 3. Create a new mapper under the Mappers tab. This should reference the User Property `id`. `Claim JSON Type` should be String and all switches below should be enabled. Save the mapper. -4. Go to the client you set up in the previous steps using the Clients page, then choose the Client Scopes tab. Apply the scope you've created. This should mitigate errors as seen in [codimd/server#56](https://github.com/codimd/server/issues/56), as the `/userinfo` endpoint should now bring back the user's ID under the `id` key as well as `sub`. +4. Go to the client you set up in the previous steps using the Clients page, then choose the Client Scopes tab. Apply the scope you've created. This should mitigate errors as seen in [hedgedoc/server#56](https://github.com/hedgedoc/server/issues/56), as the `/userinfo` endpoint should now bring back the user's ID under the `id` key as well as `sub`. --- @@ -40,10 +40,10 @@ CMD_OAUTH2_AUTHORIZATION_URL=https://keycloak.example.com/auth/realms/your-realm CMD_OAUTH2_CLIENT_ID=<your client ID> CMD_OAUTH2_CLIENT_SECRET=<your client secret, which you can find under the Credentials tab for your client> CMD_OAUTH2_PROVIDERNAME=Keycloak -CMD_DOMAIN=<codimd.example.com> +CMD_DOMAIN=<hedgedoc.example.com> CMD_PROTOCOL_USESSL=true CMD_URL_ADDPORT=false ``` 6. Run `docker-compose up -d` to apply your settings. -7. Sign in to your CodiMD using your Keycloak ID +7. Sign in to your HedgeDoc using your Keycloak ID diff --git a/docs/guides/auth/ldap-ad.md b/docs/guides/auth/ldap-ad.md index fa41346e..b7d0284e 100644 --- a/docs/guides/auth/ldap-ad.md +++ b/docs/guides/auth/ldap-ad.md @@ -1,6 +1,6 @@ # AD LDAP auth -To setup your CodiMD instance with Active Directory you need the following configs: +To setup your HedgeDoc instance with Active Directory you need the following configs: ```env CMD_LDAP_URL=ldap://internal.example.com diff --git a/docs/guides/auth/mattermost-self-hosted.md b/docs/guides/auth/mattermost-self-hosted.md index 5085b4e7..2ad2afd7 100644 --- a/docs/guides/auth/mattermost-self-hosted.md +++ b/docs/guides/auth/mattermost-self-hosted.md @@ -17,7 +17,7 @@ This guide uses the generic OAuth2 module for compatibility with Mattermost vers 5. Fill out the form and click **Save** ![mattermost-oauth-app-form](../../images/auth/mattermost-oauth-app-form.png) -*Note: The callback URL is \<your-codimd-url\>/auth/oauth2/callback* +*Note: The callback URL is \<your-hedgedoc-url\>/auth/oauth2/callback* 6. After saving the application, you'll receive the Client ID and Client Secret ![mattermost-oauth-app-done](../../images/auth/mattermost-oauth-app-done.png) diff --git a/docs/guides/auth/nextcloud.md b/docs/guides/auth/nextcloud.md index 8ce90ca9..e0eb28d1 100644 --- a/docs/guides/auth/nextcloud.md +++ b/docs/guides/auth/nextcloud.md @@ -11,14 +11,14 @@ This guide uses the generic OAuth2 module for compatibility with Nextcloud 13 an At the top there's OAuth 2.0-Clients. ![Where to find OAuth2 in Nextcloud](../../images/auth/nextcloud-oauth2-1-settings.png) -3. Add your CodiMD instance by giving it a *name* (perhaps CodiMD, but could be anything) and a *Redirection-URI*. The Redirection-URI will be `\<your-codimd-url\>/auth/oauth2/callback`. Click <kbd>Add</kbd>. +3. Add your HedgeDoc instance by giving it a *name* (perhaps HedgeDoc, but could be anything) and a *Redirection-URI*. The Redirection-URI will be `\<your-hedgedoc-url\>/auth/oauth2/callback`. Click <kbd>Add</kbd>. ![Adding a client to Nextcloud](../../images/auth/nextcloud-oauth2-2-client-add.png) 4. You'll now see a line containing a *client identifier* and a *Secret*. ![Successfully added OAuth2-client](../../images/auth/nextcloud-oauth2-3-clientid-secret.png) -5. That's it for Nextcloud, the rest is configured in your CodiMD `config.json` or via the `CMD_` environment variables! +5. That's it for Nextcloud, the rest is configured in your HedgeDoc `config.json` or via the `CMD_` environment variables! 6. Add the Client ID and Client Secret to your `config.json` file or pass them as environment variables. Make sure you also replace `<your-nextcloud-domain>` with the right domain name. - `config.json`: diff --git a/docs/guides/auth/saml-keycloak.md b/docs/guides/auth/saml-keycloak.md index 5caf3766..1bc3b363 100644 --- a/docs/guides/auth/saml-keycloak.md +++ b/docs/guides/auth/saml-keycloak.md @@ -1,34 +1,34 @@ -# How to setup CodiMD SAML with Keycloak +# How to setup HedgeDoc SAML with Keycloak ## Configuring Keycloak ### Get the public certificate -1. Select the Realm you want to use for your CodiMD SAML +1. Select the Realm you want to use for your HedgeDoc SAML 2. Select "Realm Settings" in left sidebar 3. Select the "Keys" tab 4. Click the button "Certificate" at `RS256` algorithm ![keycloak_idp_cert](../../images/auth/keycloak_idp_cert.png) -5. Copy this key and save it to the file specified in `saml.idpCert` property of the CodiMD configuration or `CMD_SAML_IDPCERT` environment variable +5. Copy this key and save it to the file specified in `saml.idpCert` property of the HedgeDoc configuration or `CMD_SAML_IDPCERT` environment variable ### Create a new client 1. Select "Client" in left sidebar ![keycloak_clients_overview](../../images/auth/keycloak_clients_overview.png) 2. Click on the "Create" button -3. Set a Client ID and specify this in `saml.issuer` property of the CodiMD configuration or `CMD_SAML_ISSUER` environment variable +3. Set a Client ID and specify this in `saml.issuer` property of the HedgeDoc configuration or `CMD_SAML_ISSUER` environment variable 4. Select `SAML` as Client Protocol -5. Set Client SAML Endpoint to `https://codimd.example.com/auth/saml` (replace `https://codimd.example.com` with the base URL of your CodiMD installation) +5. Set Client SAML Endpoint to `https://hedgedoc.example.com/auth/saml` (replace `https://hedgedoc.example.com` with the base URL of your HedgeDoc installation) ![keycloak_add_client](../../images/auth/keycloak_add_client.png) 6. Leave "Client Signature Required" enabled -7. Set Root URL to `https://codimd.example.com` (replace it here also with the base URL of your CodiMD installation) -8. Set Valid Redirect URIs to `https://codimd.example.com/auth/saml/callback` (you should also define all other domains of your CodiMD installtion with the suffix `/auth/saml/callback`) +7. Set Root URL to `https://hedgedoc.example.com` (replace it here also with the base URL of your HedgeDoc installation) +8. Set Valid Redirect URIs to `https://hedgedoc.example.com/auth/saml/callback` (you should also define all other domains of your HedgeDoc installtion with the suffix `/auth/saml/callback`) 9. Set Base URL to `/` ![keycloak_client_overview](../../images/auth/keycloak_client_overview.png) 10. _(optional)_ You can set which Name ID Format should be used -## Configure CodiMD +## Configure HedgeDoc ### Config file You have to put the following block inside your `config.json`: ```json "saml": { - "issuer": "codimd", // Change to the "Client ID" specified in the Keycloak Client + "issuer": "hedgedoc", // Change to the "Client ID" specified in the Keycloak Client "identifierFormat": "urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified", "idpSsoUrl": "https://keycloak.example.org/auth/realms/test/protocol/saml", // replace keycloak.example.org with the url of your keycloak server "idpCert": "/path/to/the/cert.pem", @@ -40,12 +40,12 @@ You have to put the following block inside your `config.json`: - `CMD_SAML_IDPSSOURL`: `https://keycloak.example.org/auth/realms/test/protocol/saml` (replace keycloak.example.org with the url of your keycloak server) - `CMD_SAML_IDPCERT`: `/path/to/the/cert.pem` - *(optional, see below)* `CMD_SAML_CLIENTCERT`: `/path/to/the/key.pem` -- `CMD_SAML_ISSUER`: `codimd` (Change to the "Client ID" specified in the Keycloak Client) +- `CMD_SAML_ISSUER`: `hedgedoc` (Change to the "Client ID" specified in the Keycloak Client) - `CMD_SAML_IDENTIFIERFORMAT`: `urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified` ## Client certificate *(optional)* -If you want keycloak to be able to verify CodiMD, you hava to create a client certificate. There are two options for this: +If you want keycloak to be able to verify HedgeDoc, you hava to create a client certificate. There are two options for this: ### Create Private Keys for Signing 1. Generate the private key and certificate with the following commands: @@ -56,7 +56,7 @@ openssl req -new -x509 -key priv.pem -out cert.pem *execute the following steps in keycloak* 2. Select "Client" in left sidebar -3. Go to your CodiMD-Client +3. Go to your HedgeDoc-Client 4. Select the "SAML Keys" tab ![keycloak_saml_import_cert](../../images/auth/keycloak_saml_import_cert.png) 5. Click on "Import" @@ -64,14 +64,14 @@ openssl req -new -x509 -key priv.pem -out cert.pem 7. Now upload the generated cert.pem (in this case named `cert.pem`) ![keycloak_saml_import_cert_details](../../images/auth/keycloak_saml_import_cert_details.png) 8. Click on "Import" -9. Move or copy this key (in this case named `key.pem`) and save it to the file specified in `saml.clientCert` property of the CodiMD configuration or in the enviroment-variable `CMD_SAML_CLIENTCERT` +9. Move or copy this key (in this case named `key.pem`) and save it to the file specified in `saml.clientCert` property of the HedgeDoc configuration or in the enviroment-variable `CMD_SAML_CLIENTCERT` ### Convert Private Certificate generated by KeyCloak Instead if generating you own certificate, you can also use the one generated by keycloak. 1. Select "Client" in left sidebar -2. Go to your CodiMD-Client +2. Go to your HedgeDoc-Client 3. Select the "SAML Keys" tab ![keycloak_saml_export_cert](../../images/auth/keycloak_saml_export_cert.png) @@ -83,14 +83,14 @@ Instead if generating you own certificate, you can also use the one generated by ```shell openssl pkcs12 -in keystore.p12 -out key.pem -nocerts -nodes ``` -8. Move or copy this key (in this case named `key.pem`) and save it to the file specified in `saml.idpCert` property of the CodiMD configuration or in the enviroment-variable `CMD_SAML_CLIENTCERT` +8. Move or copy this key (in this case named `key.pem`) and save it to the file specified in `saml.idpCert` property of the HedgeDoc configuration or in the enviroment-variable `CMD_SAML_CLIENTCERT` ## Use Persistent Identifiers -Instead of using the username as the owner-key in the CodiMD database, you can also use a persistent identifier. This allows to change the username, without them loosing access to their notes. +Instead of using the username as the owner-key in the HedgeDoc database, you can also use a persistent identifier. This allows to change the username, without them loosing access to their notes. -1. Go to the CodiMD-Client in keycloak. Now enable the option "Force Name ID Format" and select "persistent" as the "Name ID Format". +1. Go to the HedgeDoc-Client in keycloak. Now enable the option "Force Name ID Format" and select "persistent" as the "Name ID Format". ![keycloak_force_idformat](../../images/auth/keycloak_force_idformat.png) -2. For codimd to be able to use the username and email configured in keycloak, you have to create the following SAML protocol mappers: +2. For HedgeDoc to be able to use the username and email configured in keycloak, you have to create the following SAML protocol mappers: 2.1. Create a mapper with the type `User Property`. Set the Name, Property and SAML Attribute Name to `username`. Now you can specify a friendly name (for example `Username`) ![keycloak_mapper_username](../../images/auth/keycloak_mapper_username.png) 2.2 Create a mapper with the type `User Property`. Set the Name, Property and SAML Attribute Name to `email`. Now you can specify a friendly name (for example `E-Mail`) @@ -106,7 +106,7 @@ The configured mappers should look like this: "email": "email", } ``` -It you configure CodiMD with enviroment variables, these are the ones you have to set: +It you configure HedgeDoc with enviroment variables, these are the ones you have to set: ```bash CMD_SAML_ATTRIBUTE_USERNAME=username CMD_SAML_ATTRIBUTE_EMAIL=email diff --git a/docs/guides/auth/saml-onelogin.md b/docs/guides/auth/saml-onelogin.md index 46134e60..8b897c82 100644 --- a/docs/guides/auth/saml-onelogin.md +++ b/docs/guides/auth/saml-onelogin.md @@ -1,6 +1,6 @@ # Authentication guide - SAML (OneLogin) -**Note:** *This guide was written before the renaming. Just replace `HackMD` with `CodiMD` in your mind :smile: thanks!* +**Note:** *This guide was written before the renaming. Just replace `HackMD` with `HedgeDoc` in your mind :smile: thanks!* 1. Sign-in or sign-up for an OneLogin account. (available free trial for 2 weeks) @@ -16,9 +16,9 @@ ![onelogin-edit-app-name](../../images/auth/onelogin-edit-app-name.png) 6. After that other tabs will appear, click the **Configuration**, and fill out the below items, and click **SAVE**. - - RelayState: The base URL of your CodiMD, which is issuer. (last slash is not needed) + - RelayState: The base URL of your HedgeDoc, which is issuer. (last slash is not needed) - - ACS (Consumer) URL Validator: The callback URL of your CodiMD. (serverurl + /auth/saml/callback) + - ACS (Consumer) URL Validator: The callback URL of your HedgeDoc. (serverurl + /auth/saml/callback) - ACS (Consumer) URL: same as above. @@ -31,7 +31,7 @@ - SAML 2.0 Endpoint (HTTP): Copy the URL ....(B) ![onelogin-copy-idp-metadata](../../images/auth/onelogin-copy-idp-metadata.png) -8. In your CodiMD server, create IdP certificate file from (A) +8. In your HedgeDoc server, create IdP certificate file from (A) 9. Add the IdP URL (B) and the Idp certificate file path to your config.json file or pass them as environment variables. - `config.json`: ```javascript @@ -51,5 +51,5 @@ CMD_SAML_IDPCERT=/path/to/idp_cert.pem ``` -10. Try sign-in with SAML from your CodiMD sign-in button or OneLogin dashboard (like the screenshot below). +10. Try sign-in with SAML from your HedgeDoc sign-in button or OneLogin dashboard (like the screenshot below). ![onelogin-use-dashboard](../../images/auth/onelogin-use-dashboard.png) diff --git a/docs/guides/auth/saml.md b/docs/guides/auth/saml.md index 3b8291b7..58a2ae45 100644 --- a/docs/guides/auth/saml.md +++ b/docs/guides/auth/saml.md @@ -1,6 +1,6 @@ # Authentication guide - SAML -*Note:* This guide was written before the renaming. Just replace `HackMD` with `CodiMD` in your mind :smile: thanks! +*Note:* This guide was written before the renaming. Just replace `HackMD` with `HedgeDoc` in your mind :smile: thanks! The basic procedure is the same as the case of OneLogin which is mentioned in [OneLogin-Guide](./saml-onelogin.md). If you want to match your IdP, you can use more configurations as below. @@ -9,7 +9,7 @@ The basic procedure is the same as the case of OneLogin which is mentioned in [O - *Note:* If not accessible from IdP, download to local once and upload to IdP. - Change the value of `issuer`, `identifierFormat` to match your IdP. - - `issuer`: A unique id to identify the application to the IdP, which is the base URL of your CodiMD as default + - `issuer`: A unique id to identify the application to the IdP, which is the base URL of your HedgeDoc as default - `identifierFormat`: A format of unique id to identify the user of IdP, which is the format based on email address as default. It is recommend that you use as below. - urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress (default) @@ -21,7 +21,7 @@ The basic procedure is the same as the case of OneLogin which is mentioned in [O "production": { "saml": { /* omitted */ - "issuer": "mycodimd" + "issuer": "myhedgedoc" "identifierFormat": "urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified" } } @@ -30,16 +30,16 @@ The basic procedure is the same as the case of OneLogin which is mentioned in [O - environment variables ```env - CMD_SAML_ISSUER=mycodimd + CMD_SAML_ISSUER=myhedgedoc CMD_SAML_IDENTIFIERFORMAT=urn:oasis:names:tc:SAML:1.1:nameid-format:unspecified ``` - Change mapping of attribute names to customize the displaying user name and email address to match your IdP. - `attribute`: A dictionary to map attribute names - - `attribute.id`: A primary key of user table for your CodiMD + - `attribute.id`: A primary key of user table for your HedgeDoc - - `attribute.username`: Attribute name of displaying user name on CodiMD + - `attribute.username`: Attribute name of displaying user name on HedgeDoc - `attribute.email`: Attribute name of email address, which will be also used for Gravatar - *Note:* Default value of all attributes is NameID of SAML response, which is email address if `identifierFormat` is default. @@ -70,9 +70,9 @@ The basic procedure is the same as the case of OneLogin which is mentioned in [O - If you want to control permission by group membership, add group attribute name and required group (allowed) or external group (not allowed). - `groupAttribute`: An attribute name of group membership - - `requiredGroups`: Group names array for allowed access to CodiMD. Use vertical bar to separate for environment variables. + - `requiredGroups`: Group names array for allowed access to HedgeDoc. Use vertical bar to separate for environment variables. - - `externalGroups`: Group names array for not allowed access to CodiMD. Use vertical bar to separate for environment variables. + - `externalGroups`: Group names array for not allowed access to HedgeDoc. Use vertical bar to separate for environment variables. - *Note:* Evaluates `externalGroups` first - `config.json`: @@ -82,7 +82,7 @@ The basic procedure is the same as the case of OneLogin which is mentioned in [O "saml": { /* omitted */ "groupAttribute": "memberOf", - "requiredGroups": [ "codimd-users", "board-members" ], + "requiredGroups": [ "hedgedoc-users", "board-members" ], "externalGroups": [ "temporary-staff" ] } } @@ -92,6 +92,6 @@ The basic procedure is the same as the case of OneLogin which is mentioned in [O - environment variables ```sh CMD_SAML_GROUPATTRIBUTE=memberOf - CMD_SAML_REQUIREDGROUPS=codimd-users|board-members + CMD_SAML_REQUIREDGROUPS=hedgedoc-users|board-members CMD_SAML_EXTERNALGROUPS=temporary-staff ``` diff --git a/docs/guides/auth/twitter.md b/docs/guides/auth/twitter.md index 5e709bb4..cbb8c865 100644 --- a/docs/guides/auth/twitter.md +++ b/docs/guides/auth/twitter.md @@ -1,6 +1,6 @@ # Authentication guide - Twitter -*Note:* This guide was written before the renaming. Just replace `HackMD` with `CodiMD` in your mind :smile: thanks! +*Note:* This guide was written before the renaming. Just replace `HackMD` with `HedgeDoc` in your mind :smile: thanks! 1. Sign-in or sign-up for a Twitter account diff --git a/docs/guides/migrate-etherpad.md b/docs/guides/migrate-etherpad.md index b501d9ac..00a48d2f 100644 --- a/docs/guides/migrate-etherpad.md +++ b/docs/guides/migrate-etherpad.md @@ -1,11 +1,11 @@ # Pad migration guide from etherpad-lite The goal of this migration is to do a "dumb" import from all the pads in Etherpad, to notes in -CodiMD. In particular, the url locations of the pads in Etherpad will be lost. Furthermore, any +HedgeDoc. In particular, the url locations of the pads in Etherpad will be lost. Furthermore, any metadata in Etherpad, such as revisions, author data and also formatted text will not be migrated -to CodiMD (only the plain text contents). +to HedgeDoc (only the plain text contents). -Note that this guide is not really meant as a support guide. I migrated my own Etherpad to CodiMD, +Note that this guide is not really meant as a support guide. I migrated my own Etherpad to HedgeDoc, and it turned out to be quite easy in my opinion. In this guide I share my experience. Stuff may require some creativity to work properly in your case. When I wrote this guide, I was using [etherpad 1.7.0][] and [codimd 1.2.1][]. Good luck! @@ -14,8 +14,8 @@ require some creativity to work properly in your case. When I wrote this guide, - `curl` - running Etherpad server -- running CodiMD server -- [codimd-cli][] +- running HedgeDoc server +- [hedgedoc-cli][] ## 1. Retrieve the list of pads @@ -36,26 +36,26 @@ weddingchecklist ## 2. Run the migration -Download [codimd-cli][] and put the script in the same directory as the file containing the pad names. +Download [hedgedoc-cli][] and put the script in the same directory as the file containing the pad names. Add to this directory the file listed below, I called it `migrate-etherpad.sh`. Modify at least the -configuration settings `ETHERPAD_SERVER` and `CODIMD_SERVER`. +configuration settings `ETHERPAD_SERVER` and `HEDGEDOC_SERVER`. ```shell #!/bin/sh # migrate-etherpad.sh # -# Description: Migrate pads from etherpad to codimd +# Description: Migrate pads from etherpad to HedgeDoc # Author: Daan Sprenkels <hello@dsprenkels.com> -# This script uses the codimd command line script[1] to import a list of pads from -# [1]: https://github.com/codimd/cli/blob/master/bin/codimd +# This script uses the HedgeDoc command line script[1] to import a list of pads from +# [1]: https://github.com/hedgedoc/cli/blob/master/bin/hedgedoc # The base url to where etherpad is hosted ETHERPAD_SERVER="https://etherpad.example.com" -# The base url where codimd is hosted -CODIMD_SERVER="https://codimd.example.com" +# The base url where HedgeDoc is hosted +HEDGEDOC_SERVER="https://hedgedoc.example.com" # Write a list of pads and the urls which they were migrated to REDIRECTS_FILE="redirects.txt" @@ -73,8 +73,8 @@ for PAD_NAME in $1; do PAD_FILE="$(mktemp)" curl "$ETHERPAD_SERVER/p/$PAD_NAME/export/txt" >"$PAD_FILE" - # Import the pad into codimd - OUTPUT="$(./codimd import "$PAD_FILE")" + # Import the pad into HedgeDoc + OUTPUT="$(./hedgedoc import "$PAD_FILE")" echo "$PAD_NAME -> $OUTPUT" >>"$REDIRECTS_FILE" done ``` @@ -85,7 +85,7 @@ Call this file like this: ./migrate-etherpad.sh pad_names.txt ``` -This will download all the pads in `pad_names.txt` and put them on CodiMD. They will get assigned +This will download all the pads in `pad_names.txt` and put them on HedgeDoc. They will get assigned random ids, so you won't be able to find them. The script will save the mappings to a file though (in my case `redirects.txt`). You can use this file to redirect your users when they visit your etherpad using a `301 Permanent Redirect` status code (see the next section). @@ -95,10 +95,10 @@ etherpad using a `301 Permanent Redirect` status code (see the next section). I got a `redirects.txt` file that looked a bit like this: ```log -date-ideas -> Found. Redirecting to https://codimd.example.com/mPt0KfiKSBOTQ3mNcdfn -groceries -> Found. Redirecting to https://codimd.example.com/UukqgwLfhYyUUtARlcJ2_y -london -> Found. Redirecting to https://codimd.example.com/_d3wa-BE8t4Swv5w7O2_9R -weddingchecklist -> Found. Redirecting to https://codimd.example.com/XcQGqlBjl0u40wfT0N8TzQ +date-ideas -> Found. Redirecting to https://hedgedoc.example.com/mPt0KfiKSBOTQ3mNcdfn +groceries -> Found. Redirecting to https://hedgedoc.example.com/UukqgwLfhYyUUtARlcJ2_y +london -> Found. Redirecting to https://hedgedoc.example.com/_d3wa-BE8t4Swv5w7O2_9R +weddingchecklist -> Found. Redirecting to https://hedgedoc.example.com/XcQGqlBjl0u40wfT0N8TzQ (...) ``` @@ -106,16 +106,16 @@ Using some `sed` magic, I changed it to an nginx config snippet: ```nginx location = /p/date-ideas { - return 301 https://codimd.example.com/mPt0M1KfiKSBOTQ3mNcdfn; + return 301 https://hedgedoc.example.com/mPt0M1KfiKSBOTQ3mNcdfn; } location = /p/groceries { - return 301 https://codimd.example.com/UukqgwLfhYyUUtARlcJ2_y; + return 301 https://hedgedoc.example.com/UukqgwLfhYyUUtARlcJ2_y; } location = /p/london { - return 301 https://codimd.example.com/_d3wa-BE8t4Swv5w7O2_9R; + return 301 https://hedgedoc.example.com/_d3wa-BE8t4Swv5w7O2_9R; } location = /p/weddingchecklist { - return 301 https://codimd.example.com/XcQGqlBjl0u40wfT0N8TzQ; + return 301 https://hedgedoc.example.com/XcQGqlBjl0u40wfT0N8TzQ; } ``` @@ -123,6 +123,6 @@ I put this file into my `etherpad.example.com` nginx config, such that all the u redirected accordingly. [etherpad 1.7.0]: https://github.com/ether/etherpad-lite/tree/1.7.0 -[codimd 1.2.1]: https://github.com/codimd/server/tree/1.2.1 -[codimd-cli]: https://github.com/codimd/cli/blob/master/bin/codimd +[codimd 1.2.1]: https://github.com/hedgedoc/server/tree/1.2.1 +[hedgedoc-cli]: https://github.com/hedgedoc/cli/blob/master/bin/hedgedoc [howtolistallpads]: https://github.com/ether/etherpad-lite/wiki/How-to-list-all-pads/49701ecdcbe07aea7ad27ffa23aed0d99c2e17db diff --git a/docs/guides/migrations-and-breaking-changes.md b/docs/guides/migrations-and-breaking-changes.md index 593af446..20fa40f5 100644 --- a/docs/guides/migrations-and-breaking-changes.md +++ b/docs/guides/migrations-and-breaking-changes.md @@ -9,20 +9,20 @@ We dropped support for node 6 with this version. If you have any trouble running This is not a breaking change, but to stay up to date with the community repository, you may need to update a few urls. This is not a breaking change. -See more at [issue #10](https://github.com/codimd/server/issues/10) +See more at [issue #10](https://github.com/hedgedoc/server/issues/10) ### Native setup using git -Change the upstream remote using `git remote set-url origin https://github.com/codimd/server.git`. +Change the upstream remote using `git remote set-url origin https://github.com/hedgedoc/server.git`. ### Docker -When you use our [container repository](https://github.com/codimd/container) -(which was previously `codimd-container`) all you can simply run `git pull` and +When you use our [container repository](https://github.com/hedgedoc/container) +(which was previously `hedgedoc-container`) all you can simply run `git pull` and your `docker-compose.yml` will be updated. When you setup things yourself, make sure you use the new image: -[`quay.io/codimd/server`](https://quay.io/repository/codimd/server?tab=tags). +[`quay.io/hedgedoc/server`](https://quay.io/repository/hedgedoc/server?tab=tags). ### Heroku diff --git a/docs/guides/minio-image-upload.md b/docs/guides/minio-image-upload.md index 78ddd6ec..41d9b14e 100644 --- a/docs/guides/minio-image-upload.md +++ b/docs/guides/minio-image-upload.md @@ -1,6 +1,6 @@ -# Minio Guide for CodiMD +# Minio Guide for HedgeDoc -*Note:* This guide was written before the renaming. Just replace `HackMD` with `CodiMD` in your mind :smile: thanks! +*Note:* This guide was written before the renaming. Just replace `HackMD` with `HedgeDoc` in your mind :smile: thanks! 1. First of all you need to setup Minio itself. @@ -27,7 +27,7 @@ ![minio default view](../images/minio-image-upload/default-view.png) -4. Create a bucket for CodiMD +4. Create a bucket for HedgeDoc ![minio create bucket](../images/minio-image-upload/create-bucket.png) @@ -39,7 +39,7 @@ ![minio policy adding](../images/minio-image-upload/create-policy.png) *Add policy for uploads* -6. Set credentials and configs for Minio in CodiMD's `config.json` +6. Set credentials and configs for Minio in HedgeDoc's `config.json` ```JSON "minio": { @@ -57,7 +57,7 @@ 7. Set bucket name ```JSON - "s3bucket": "codimd" + "s3bucket": "hedgedoc" ``` 8. Set upload type. @@ -78,7 +78,7 @@ "port": 9000, "secure": false }, - "s3bucket": "codimd", + "s3bucket": "hedgedoc", "imageuploadtype": "minio" } ``` diff --git a/docs/guides/providing-terms.md b/docs/guides/providing-terms.md index c9330735..54a792f6 100644 --- a/docs/guides/providing-terms.md +++ b/docs/guides/providing-terms.md @@ -4,7 +4,7 @@ To setup your terms of use, you need to provide a document called `terms-of-use.md` which contains them. Of course written in Markdown. -It has to be provided under `./public/docs/` and will be automatically turned into a CodiMD document. It will also automatically updated as soon as you change the document on disk. +It has to be provided under `./public/docs/` and will be automatically turned into a HedgeDoc document. It will also automatically updated as soon as you change the document on disk. As soon as the file exists a link will show up in the bottom part along with the release notes and link to them. @@ -20,6 +20,6 @@ As with the terms of use, a link to the privacy notices will show up in the area To add an imprint you can use the same technique as for the terms of use. The main difference is that the document is called `imprint.md`. -It has to be provided under `./public/docs/` and will be automatically turned into a CodiMD document. It will also automatically updated as soon as you change the document on disk. +It has to be provided under `./public/docs/` and will be automatically turned into a HedgeDoc document. It will also automatically updated as soon as you change the document on disk. As with the terms of use, a link to the imprint will show up in the area where the release notes are provided on the index page. diff --git a/docs/guides/s3-image-upload.md b/docs/guides/s3-image-upload.md index cb3ae79f..740dec53 100644 --- a/docs/guides/s3-image-upload.md +++ b/docs/guides/s3-image-upload.md @@ -1,6 +1,6 @@ -# Guide - Setup CodiMD S3 image upload +# Guide - Setup HedgeDoc S3 image upload -**Note:** *This guide was written before the renaming. Just replace `HackMD` with `CodiMD` in your mind :smile: thanks!* +**Note:** *This guide was written before the renaming. Just replace `HackMD` with `HedgeDoc` in your mind :smile: thanks!* 1. Go to [AWS S3 console](https://console.aws.amazon.com/s3/home) and create a new bucket. ![create-bucket](../images/s3-image-upload/create-bucket.png) diff --git a/docs/history.md b/docs/history.md index 7c77987c..47792e3b 100644 --- a/docs/history.md +++ b/docs/history.md @@ -1,4 +1,4 @@ -# History of CodiMD +# History of HedgeDoc ## It started with HackMD @@ -34,4 +34,8 @@ move the repository, so we simply forked it. We still welcome the HackMD team as part of our community, especially since a large portion of this code base originated with them. -*For the debate that lead to this step, please refer to the [governance debate](https://github.com/hackmdio/hackmd/issues/1170) and [the announcement of the new repository](https://github.com/codimd/server/issues/10).* +*For the debate that lead to this step, please refer to the [governance debate](https://github.com/hackmdio/hackmd/issues/1170) and [the announcement of the new repository](https://github.com/hedgedoc/server/issues/10).* + +## CodiMD became HedgeDoc + +<to be filled> diff --git a/docs/setup/cloudron.md b/docs/setup/cloudron.md index f2ba8b97..3085e6bd 100644 --- a/docs/setup/cloudron.md +++ b/docs/setup/cloudron.md @@ -1,10 +1,10 @@ # Cloudron -CodiMD is available as a 1-click install on [Cloudron](https://cloudron.io). Cloudron makes it easy to run apps like CodiMD on your server and keep them up-to-date and secure. +HedgeDoc is available as a 1-click install on [Cloudron](https://cloudron.io). Cloudron makes it easy to run apps like HedgeDoc on your server and keep them up-to-date and secure. [![Install](https://cloudron.io/img/button.svg)](https://cloudron.io/button.html?app=io.hackmd.cloudronapp) The source code for the package can be found [here](https://git.cloudron.io/cloudron/codimd-app). There is a [demo instance](https://my.demo.cloudron.io) (username: cloudron password: cloudron) where -you can experiment with running CodiMD. +you can experiment with running HedgeDoc. diff --git a/docs/setup/docker-linuxserver.md b/docs/setup/docker-linuxserver.md index 344bcfab..58d5c8da 100644 --- a/docs/setup/docker-linuxserver.md +++ b/docs/setup/docker-linuxserver.md @@ -1,12 +1,12 @@ -# LinuxServer.io CodiMD Image +# LinuxServer.io HedgeDoc Image [![LinuxServer.io Discord](https://img.shields.io/discord/354974912613449730.svg?logo=discord&label=LSIO%20Discord&style=flat-square)](https://discord.gg/YWrKVTn)[![container version badge](https://images.microbadger.com/badges/version/linuxserver/codimd.svg)](https://microbadger.com/images/linuxserver/codimd "Get your own version badge on microbadger.com")[![container image size badge](https://images.microbadger.com/badges/image/linuxserver/codimd.svg)](https://microbadger.com/images/linuxserver/codimd "Get your own version badge on microbadger.com")![Docker Pulls](https://img.shields.io/docker/pulls/linuxserver/codimd.svg)![Docker Stars](https://img.shields.io/docker/stars/linuxserver/codimd.svg)[![Build Status](https://ci.linuxserver.io/buildStatus/icon?job=Docker-Pipeline-Builders/docker-codimd/master)](https://ci.linuxserver.io/job/Docker-Pipeline-Builders/job/docker-codimd/job/master/)[![LinuxServer.io CI summary](https://lsio-ci.ams3.digitaloceanspaces.com/linuxserver/codimd/latest/badge.svg)](https://lsio-ci.ams3.digitaloceanspaces.com/linuxserver/codimd/latest/index.html) [LinuxServer.io](https://linuxserver.io) have created an Ubuntu-based multi-arch container image for x86-64, arm64 and armhf which supports PDF export from all architectures using [PhantomJS](https://phantomjs.org/). - It supports all the environment variables detailed in the [configuration documentation](../configuration-env-vars.md) to modify it according to your needs. -- It gets rebuilt on new releases from CodiMD and also weekly if necessary to update any other package changes in the underlying container, making it easy to keep your CodiMD instance up to date. -- It also details how to easily [utilize Docker networking to reverse proxy](https://github.com/linuxserver/docker-codimd/#application-setup) CodiMD using their [LetsEncrypt docker image](https://github.com/linuxserver/docker-letsencrypt) +- It gets rebuilt on new releases from HedgeDoc and also weekly if necessary to update any other package changes in the underlying container, making it easy to keep your HedgeDoc instance up to date. +- It also details how to easily [utilize Docker networking to reverse proxy](https://github.com/linuxserver/docker-codimd/#application-setup) HedgeDoc using their [LetsEncrypt docker image](https://github.com/linuxserver/docker-letsencrypt) -In order to contribute check the LinuxServer.io [GitHub repository](https://github.com/linuxserver/docker-codimd/) for CodiMD. +In order to contribute check the LinuxServer.io [GitHub repository](https://github.com/linuxserver/docker-codimd/) for HedgeDoc. And to find all tags and versions of the image, check the [Docker Hub repository](https://hub.docker.com/r/linuxserver/codimd). diff --git a/docs/setup/docker.md b/docs/setup/docker.md index a9a8b240..894dcd4c 100644 --- a/docs/setup/docker.md +++ b/docs/setup/docker.md @@ -1,20 +1,20 @@ -# CodiMD Docker Image +# HedgeDoc Docker Image -[![Try in PWD](https://cdn.rawgit.com/play-with-docker/stacks/cff22438/assets/images/button.png)](http://play-with-docker.com?stack=https://github.com/codimd/container/raw/master/docker-compose.yml&stack_name=codimd) +[![Try in PWD](https://cdn.rawgit.com/play-with-docker/stacks/cff22438/assets/images/button.png)](http://play-with-docker.com?stack=https://github.com/hedgedoc/container/raw/master/docker-compose.yml&stack_name=hedgedoc) ## Debian-based version -[![Docker Repository on Quay](https://quay.io/repository/codimd/server/status "Docker Repository on Quay")](https://quay.io/repository/codimd/server) +[![Docker Repository on Quay](https://quay.io/repository/hedgedoc/server/status "Docker Repository on Quay")](https://quay.io/repository/hedgedoc/server) ## Alpine-based version -[![Docker Repository on Quay](https://quay.io/repository/codimd/server/status "Docker Repository on Quay")](https://quay.io/repository/codimd/server) +[![Docker Repository on Quay](https://quay.io/repository/hedgedoc/server/status "Docker Repository on Quay")](https://quay.io/repository/hedgedoc/server) -The easiest way to setup CodiMD using docker are using the following three commands: +The easiest way to setup HedgeDoc using docker are using the following three commands: ```sh -git clone https://github.com/codimd/container.git codimd-container -cd codimd-container +git clone https://github.com/hedgedoc/container.git hedgedoc-container +cd hedgedoc-container docker-compose up ``` -Read more about it in the [container repository](https://github.com/codimd/container). +Read more about it in the [container repository](https://github.com/hedgedoc/container). diff --git a/docs/setup/heroku.md b/docs/setup/heroku.md index 9f62e58c..ea1356d1 100644 --- a/docs/setup/heroku.md +++ b/docs/setup/heroku.md @@ -1,6 +1,6 @@ # Heroku Deployment -You can quickly setup a sample Heroku CodiMD application by clicking the button +You can quickly setup a sample Heroku HedgeDoc application by clicking the button below. -[![Deploy on Heroku](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy?template=https://github.com/codimd/server/tree/master) +[![Deploy on Heroku](https://www.herokucdn.com/deploy/button.svg)](https://heroku.com/deploy?template=https://github.com/hedgedoc/server/tree/master) diff --git a/docs/setup/kubernetes.md b/docs/setup/kubernetes.md index 91c57188..6706b911 100644 --- a/docs/setup/kubernetes.md +++ b/docs/setup/kubernetes.md @@ -2,4 +2,4 @@ To install use `helm install stable/hackmd`. -For all further details, please check out the offical CodiMD [K8s helm chart](https://github.com/kubernetes/charts/tree/master/stable/hackmd). +For all further details, please check out the offical HedgeDoc [K8s helm chart](https://github.com/kubernetes/charts/tree/master/stable/hackmd). diff --git a/docs/setup/yunohost.md b/docs/setup/yunohost.md index a7666df9..9ec9d45b 100644 --- a/docs/setup/yunohost.md +++ b/docs/setup/yunohost.md @@ -1,8 +1,8 @@ YunoHost === -CodiMD is available as a 1-click install on [YunoHost](https://yunohost.org/). YunoHost is a Debian GNU/Linux based distribution packaged with free software that automates the installation of a personal web server. +HedgeDoc is available as a 1-click install on [YunoHost](https://yunohost.org/). YunoHost is a Debian GNU/Linux based distribution packaged with free software that automates the installation of a personal web server. -[![Install CodiMD with YunoHost](https://install-app.yunohost.org/install-with-yunohost.png)](https://install-app.yunohost.org/?app=codimd) +[![Install HedgeDoc with YunoHost](https://install-app.yunohost.org/install-with-yunohost.png)](https://install-app.yunohost.org/?app=codimd) -The source code for the package can be found [here](https://github.com/YunoHost-Apps/codimd_ynh).
\ No newline at end of file +The source code for the package can be found [here](https://github.com/YunoHost-Apps/codimd_ynh). diff --git a/docs/slide-options.md b/docs/slide-options.md index ec68f717..3cf0f682 100644 --- a/docs/slide-options.md +++ b/docs/slide-options.md @@ -4,7 +4,7 @@ If you're getting started with reveal.js slides, there are a few things you need There are two types of slides, those that transition horizontally and those that transition vertically (subslides). -The following separators are used for each in the CodiMD syntax: +The following separators are used for each in the HedgeDoc syntax: ```markdown # First Slide diff --git a/docs/url-scheme.md b/docs/url-scheme.md index e2f2709e..35c12fde 100644 --- a/docs/url-scheme.md +++ b/docs/url-scheme.md @@ -1,6 +1,6 @@ # URL scheme -CodiMD has three different modes for viewing a stored note. Each mode has a slightly different URL for accessing it. This document gives an overview about these URLs. +HedgeDoc has three different modes for viewing a stored note. Each mode has a slightly different URL for accessing it. This document gives an overview about these URLs. We assume that you replace `pad.example.com` with the domain of your instance. ## Default (random) |