react-client
react-client copied to clipboard
Extensions for rendering & UI
We should discuss if we ever want to support some form of official extensibility for the client. There were two requests relating to that in the past:
- https://github.com/hedgedoc/hedgedoc/issues/569 asks for custom editor buttons. I would add to the request custom buttons/links in the navbar, e.g. to link to the homepage of the organization.
- https://github.com/hedgedoc/hedgedoc/issues/20 asked for extensions of the rendering process. We already have that issue in this repo as https://github.com/hedgedoc/react-client/issues/438, which got merged into https://github.com/hedgedoc/react-client/issues/360. But #360 only talks about an internal system. What about external plugins?
It's not impossible but also definitely not easy, because:
- we have to generalize a lot of code, write docs, prevent security issues and bugs.
- if we create a public extension api, then we definitely will get issues that are related to plugins.
- Because our frontend is webpacked, I'm sure you'll have to compile the frontend yourself (and therefore also e.g. the docker container) to include plugins.
An internal extension api is implemented see #360, but we don't have any plans to make it publicly available. Therefore this issue will be closed.