+ Svelte logo : molstar-svelte

Mol* logo (v0.0.6)

Roadmap and Library architecture

Architecture

This library currently makes use of Svelte’s setContext/getContext API to provide a Molstar plugin state for the subcomponents.

More sophisticated design (like component factories / programmaic components) could be considered later, when the architecture and the feature scope of the library will be more clear.

NB: Molstar-wise, we actually use the PluginContext without the builtin React-UI.

Roadmap

(wip, and order relevance is relative :) )

  • create a simple wrapper component
  • put it in action in this doc and other projects, refine the API and styling (wrapper) concerns (outside plugin)
  • create a set of controls components (button-bar, debug ui, etc.), refine styling concerns (outside plugin)
  • refine the API around representation and coloring (in plugin)
  • A drag and drop component to load a file (most common formats, including ply).
  • explore a dedicated synchronized grid component, with zoomable/focusable thumbnails
  • explore a dedicated superposition component

References / resources

Documentation and examples

Official Molstar doc: https://molstar.org/docs/.

Overall Molstar architecture: https://diglib.eg.org/bitstream/handle/10.2312/molva20181103/029-033.pdf?sequence=1&isAllowed=y

Molstar issues: https://github.com/molstar/molstar/issues

Molstar discussions (great topics!): https://github.com/molstar/molstar/discussions

Topics

taking screenshots:
https://github.com/molstar/molstar/discussions/362

changing mouse behavior:
https://github.com/molstar/molstar/discussions/465

displaying several structures/grid:
https://github.com/molstar/molstar/discussions/475

Display/load a specific chain:
https://github.com/molstar/molstar/discussions/909

Edit and save a structure:
https://github.com/molstar/molstar/issues/464

Difference between Model and Structure:
https://github.com/molstar/molstar/issues/443#issuecomment-1164502033