markwhen icon indicating copy to clipboard operation
markwhen copied to clipboard

Plugin system?

Open kochrt opened this issue 2 years ago • 2 comments

There are a lot of avenues of customization that could probably be better served by a plugin system than me trying to implement every possible idea.

Ways in which plugins could interact with markwhen:

  • [ ] Custom time labels
  • [ ] Custom views (more than the current timeline/map/doc views)
  • [ ] Custom date parsing
  • [ ] Custom themes

Some challenges this introduces:

  • What the plugin API would look like
  • Should there be an offline editor
  • How to choose, install, and uninstall plugins
  • Is a plugin system worth the effort

kochrt avatar Jun 19 '22 04:06 kochrt

Hey, just saw this on HN and it looks awesome! I'm no dev but I use Obsidian Notes quite a bit, and I know there are a lot of community plugins there. If you're looking for a vote, I'd love to have integration with https://obsidian.md/.

As an example, Obsidian can render Mermaid graphs...I would imagine a similar method could work for markwhen? I think it has something do do with prismjs? Anyways, great product, and thanks for your effort!

wbste avatar Jun 20 '22 18:06 wbste

If I may make a suggestion, I feel a plugin system at this stage would be overkill and slow down the development. It might be fine to simply develop the lib in a modular way, with good separation of concerns between the different features, then it should be easy to switch them on or off using options.

Perhaps you can also split the features into different npm packages, like CodeMirror 6, although that too I feel would be overkill for this particular project.

laurent22 avatar Jun 21 '22 11:06 laurent22