Sorry my bad... I should have read the spec better.

Regarding the panels layout...
What about a "dynamic" layout where users can drag&drop the panels to any location they want? Like most of the IDEs provide (e.g. Eclipse, Visual Studio, Visual Studio Code).
In this case it doesn't matter where a panel is created by default. One API to create a panel would be enough for the plugins.
But then Joplin needs to save the panels layout. Also for the plugins. I'm not sure if you want this.

Another question would be: Shall it be possible to "overlay" panels then? To have a "tabbed" view of panels like VS Code does for opened editors.

Here's a screenshot of what I am trying to say:

  • Green: The area where the panels can be moved
  • Orange: Here panels can be dragged to
    • Basically you can create new columns, lines and also cells within a column or line
  • This also includes that the note list and editor should be handled like all other panels
    • In the screenshot the global search is handled as an own panel (just an idea...)

I totally agree that this would be a huge change for Joplin and might not match with your intention for a simple note taking app. But that's the only idea I have for a generic panel API.