Frequently Asked Questions

This topic is a wiki page to provide answers to some questions that frequently appear in the community.

Why is CodiMD now called HedgeDoc?

The short version: There were two CodiMD-projects on GitHub, the community-driven fork and the original project maintained by the HackMD-team. To solve this naming conflict, our community-driven version was renamed to HedgeDoc.

For a full writeup, check out the history document.


Why was the PDF Export feature removed?

We used a chrome-headless instance to generate the PDFs, but that led to some security vulnerabilities and was therefore deactivated. There are currently plans to re-add this feature in a safe way, but this will most likely take some time and can be expected at the earliest with 2.1 (but could also take longer).

In the mean time you can use your browsers print to PDF Feature. This page explains how to do that for multiple browsers.


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, because:


Why are code-blocks with ‘sequence’ as language deprecated?

Starting with HedgeDoc 2.0, mermaid is used for rendering sequence-diagrams. The 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!
```

Can I run multiple instances on the same database?

No. The HedgeDoc/CodiMD server process is not entirely stateless and therefore running more than one instance will result in missing/broken content for users. In order to solve issues like HA-capabilities, please use a high level orchestrator that makes sure that always 1 instance is running on your infrastructure and that the database is available. The server process usually starts within seconds and therefore the possible downtime should be minimal.

1 Like