What is considered core and what is considered non-core in Obsidian

It is difficult to discuss anything until it is clear what is core and what would be potentially be in Plugins API. Anything? I understand that currently the devs are not sure but being able to see the current interface would be really helpful to start discussing anything meaningful.

1 Like

Would be helpful to define “core” and “non-core”, as a start. At least what you mean by them.

I’m guessing by “core” you mean things that cannot be done via plugins?

Yep. I guess things like is DOM manipulation possible or not, could you write DOM extensions. Or, what is exposed via the APIs.

I would not mind a gentle start opening up some parts of the Obsidian framework, little bit each time.

1 Like

Yes that is what I mean

Current thinking is that we will expose a standard library of common DOM elements (now internally called Obsidian Components) that you can easily use, to maintain a consistent look.

Example screenshot:

If someone needs a common component, we can develop one. If the use case is advanced or uncommon, I think it would be up to the developer to create the UI and provide associated CSS.

3 Likes

Sound good! Will you also expose text selection/replacement as that opens up tools to take selected text and manipulate it (filter,modify, replace) for possible transformer plugins?