Toolbox buttons should be able to support nested options, for example, the text textdraw should offer shortcuts for creating text textdraws in all four font types.
This issue details the Layer object and explains its role and purpose.
A layer is auto-created whenever a new textdraw is added to the board. A textdraw element may or may not be associated with a layer, having said that, a present textdraw on the board should always be associated with a layer that controls its visibility, write mode (read-only), and render order.
There should be a toolbox component to the left of the screen (by default), it should host all sorts of components and tools that the user can use.
The toolbox panel, like the rest of the panels, should be draggable and arrangeable as the user sees fit, it should also be toggleable. Shortcuts are a must and some tools can be dragged into the board (like textdraws, comments, ...etc)
A textdraw element is a base for all entities, it provides basic drag-n-drop and resizing capabilities as well as a few common color controlling properties.
This issue goes in-depth about defining the Board object.
Boards serve as a host for textdraw elements and render them based on the state of their associated layer. In a way, the board hosts layers which in turn are associated with a textdraw.
Draggable items should be bounded more efficiently.
As it stands, there is a bug with the left bind for textdraw after the board's parent element became absolutely positioned.
It would also help if there was a built-in workaround in the react-draggable library.