Let's jump right in, what is this library and what can it be used for. First, some software-architectural details and basics:
An elementary component can extend any html element in a document and add logic to it. The component base element can be existing or non-existing (in which case it will be created). Any logic added to it will continue to exist when the element is newly or already added to the document.
The library is built around the mvp pattern and inspired by the mvp clean approach. The segregation between model (state), view (component) and the presenter, where the application logic resides, is enforced.
The state of an element implements a observer pattern, which allows it to share its state with an unlimited number of other elements (well, technically the limitation depends on the client browser performance).
npm install @excellens/elementary --save
Yes, it's as simple as that.