Citation support and pandoc PDF export

Hello,

I really enjoy using markdown → pandoc → latex → PDF for my academic writing.

A lot of people are using overleaf for collaborative editing. What hedgedoc is missing in comparison is citation support and PDF export. For a university project I plan to implement the following things:

  • Bibtex upload
  • Insertion of pandoc citation keys into markdown via GUI and quicksearch
  • Conversion to PDF by pandoc with citeproc

We are a team of three people, some quite experienced with web development. Do you think it is feasable for a team of three to implement this in a week or two?

Thanks for the feedback.

Hi @achimbo and welcome to the HedgeDoc community!

I just answered this question in the matrix chat, but add it here for transparency reasons.

Both citation and pdf export support are quite huge features if you want to do it correctly and shouldn’t be underestimated.

Starting with the citation support: There’s some discussion about how this could work in this GitHub issue. As already mentioned by Tilman, we’re in a feature-freeze for 1.x and still have enough open tasks for 2.0, so work on this can only start after 2.0. Some parts of the current dev-state of the 2.0 architecture are still subject to change, so it might not be the perfect point in time to get such a feature started.

Regarding the PDF export: HedgeDoc 1.x previously had a PDF export feature that had to be disabled because of major security implications. Building and maintaining a secure PDF-export feature is not trivial and more than just “plumbing” by calling a pandoc binary with some user-generated content. I highlight “maintaining”, because by solely adding a feature once, things aren’t done – regular maintenance with upgrades, keeping up with security best practices, etc needs to be done after the initial contribution too. Honestly, I’d rather abstain from a built-in PDF-export than putting the user’s servers at risk. Our current idea for 2.0 is to add an integration for gotenberg.dev. With that, one could simply deploy the gotenberg PDF-service alongside a HedgeDoc instance, configure HedgeDoc to use that, and the actual work is done by that software. This way we wouldn’t need to re-invent the wheel.

I hope this is understandable.

Kind regards,
Erik

1 Like