You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It should be possible for users to plug in their own types and displays without contributing directly to Mandr.
This could also provide a springboard for community building.
Context:
In the first Mandr iteration, the user was free to write Python functions outputting HTML, which could then be used to display Mandr objects in the frontend by way of Jinja templates.
In the next iteration, we have a set of valid object types (markdown, integer, number...) and we intend to provide more complex types (e.g. cv_results from the output of sklearn.model_selection.cross_validate, roc_curve...) and the display of each object is handled in Vue components (which we call "widgets"). The data transfer between the backend and the frontend is formalized in a JSONSchema document. Typing objects will make it possible to aggregate them and will enable further intelligence features.
However, adding a type consists in:
updating the data transfer schema with the new type (in JSONSchema)
writing the backend code to export objects of the new type following the schema (in Python, possibly according to some conventions)
writing a widget to handle objects of the new type (in Vue)
The text was updated successfully, but these errors were encountered:
With upcoming changes, more specifically the limitation of input types (described in #303), I don't believe this is still relevant.
In technical terms, I don't see an easy solution for users to provide their own custom frontend objects.
Finally, in product terms, I would like to control the set of report widgets, like for example in Notion. We might explore the concept of third-party integration, but that's for later.
It should be possible for users to plug in their own types and displays without contributing directly to Mandr.
This could also provide a springboard for community building.
Context:
In the first Mandr iteration, the user was free to write Python functions outputting HTML, which could then be used to display Mandr objects in the frontend by way of Jinja templates.
In the next iteration, we have a set of valid object types (
markdown
,integer
,number
...) and we intend to provide more complex types (e.g.cv_results
from the output ofsklearn.model_selection.cross_validate
,roc_curve
...) and the display of each object is handled in Vue components (which we call "widgets"). The data transfer between the backend and the frontend is formalized in a JSONSchema document. Typing objects will make it possible to aggregate them and will enable further intelligence features.However, adding a type consists in:
The text was updated successfully, but these errors were encountered: