Molstar Svelte Library
A collection of Svelte components for Mol*-based visualizations
Goals
- Provide a set of composable components that can be used to build web applications, websites or components enabling visualization and analysis of biomolecular structures.
- Provide a set of examples of how to use the components in a Svelte application.
- Keep the components as simple as possible, and let the user decide how to use them.
- The goal is not to redo the Molstar Viewer in Svelte.
- The goal is not to provide a full set of components with extensive Molstar API coverage, but rather a set of building blocks (and examples/inspirations) that can be used to build a custom application.
The components are designed to be used in a Svelte or SvelteKit application. They could be also be used in any framework that supports Web Components (later).
Please Note!
This package is still in early development, and the API is not stable. Until it reaches version 1.0.0, breaking changes may be introduced in any versions.
Pin your dependencies if you’re bold enough to use it! (and drop me a message, I’d really love to hear about it!).
Usage, Getting Started, Documentation, Showcase
https://0gust1.github.io/molstar-svelte/
See the dedicated Get started page.
Feedback, issues, contributions, questions
Feel free to initiate a discussion in the Repository Discussions or Repository Issues.
Library Development
Install the dependencies…
# we use npm ci to install the pinned dependencies from package-lock.json
npm ci
npm run dev
# or start the server and open the app in a new browser tab
npm run dev -- --open
Everything inside src/lib
is part of the library, everything inside src/routes
is used to generate the documentation/showcase/e2e website.
Building
To build the library:
npm run package
To build the library and create a production version of the documentation/showcase app:
npm run build
You can preview the production build with npm run preview
.
Updating the documentation/showcase website
Website/doc deployment is done through github actions, on push on master
Publishing on npmjs.com
Publishing is done through github actions, on release creation on master
.
Licensing and attributions
molstar-svelte
is licensed under the MIT License.
Mol*:
David Sehnal, Sebastian Bittrich, Mandar Deshpande, Radka Svobodová, Karel Berka, Václav Bazgier, Sameer Velankar, Stephen K Burley, Jaroslav Koča, Alexander S Rose:
Mol* Viewer: modern web app for 3D visualization and analysis of large biomolecular structures, Nucleic Acids Research, 2021; 10.1093/nar/gkab31.
In memory of Jaroslav Koča.