I submitted an initial on the project "Decoupled editor for Plone Headless" about a week ago, despite having a few doubts. Apparently, I got caught up with a few things which is why I was unable to follow up on them. I sincerely apologize for that. It may seem that most of these doubts are based on the implementation details, however, I would highly appreciate some insights.
Based on the POC Decoupled WYSIWYG Editor UI for Plone Headless · Issue #5767 · plone/volto · GitHub issue it is mentioned that Volto would be split into 2 code bases:
A reference implementation of a frontend (called Volto) which can be built on top of and themed. But this can be easily replaced.
An Admin UI which is deployed as is and rarely needs to be customized. This could be built in anything but still has a customization story. Initially based on Volto code
As per my understanding, the iFrame bridge would act as a link between the 2 while having the ability to display certain features like block selection. I might be wrong, but from what I understand the iFrame bridge may be overly complicated to implement from scratch.
QUERY 1: Can we model the iFrame bridge as a package (instead of a stand-alone script as done by StoryBlok) that divides the functionalities into a more modular and reusable version? Would that make add-on development simpler (also the implementation of the iFrame itself simpler) by keeping all the logic in one place? Since the existing codebase is huge, it is a bit tricky to make such an assessment.
Another small detail mentioned:
handle shortcuts being typed inside an editable field, including enter to create a new text block and slash to change the current block
QUERY 2: As there is also a rich-text editor involved, can we make the shortcuts 2-stroke based like Ctrl+Enter, Ctrl + / etc?
P.S: I know these questions are more or less based on the implementation details, and not so much the approach, however, I would like to have these doubts cleared. Any further clarification or correction in my judgment/understanding would be highly appreciated. @djay