Molecular modeling often requires performing highly specialized simulations, visualizations, or data workflows—tasks that might not be fully covered by existing tools. This gap frequently leads scientists and developers to create their own scripts or pipelines. But wouldn’t it be more efficient if you could integrate your own tools directly into your modeling environment, and even share them with peers?
This is where SAMSON Extensions come in. SAMSON, the molecular design platform, includes an open architecture that lets users augment the software by developing and deploying Extensions. In this post, we’ll walk through the first steps to develop a SAMSON Extension using the SAMSON Software Development Kit (SDK), and examine how this can help you tailor your modeling toolkit to your needs.
Why Create a Custom Extension?
If you’ve ever thought, “I just need SAMSON to do this one extra thing,” you are already a candidate for developing an Extension. Some examples might include:
- Integrating a custom minimization algorithm
- Creating a tool to import data from a proprietary format
- Developing a visualization for a novel molecular representation
- Connecting to a cloud-based computation engine
Unlike writing standalone scripts, building a SAMSON Extension means your solution works natively inside the platform and is easily re-used and distributed.
Getting Started with the SAMSON SDK
To begin, download the SAMSON SDK. To access it:
- Sign in to SAMSON Connect
- Go to the Download section
- Follow the Developer Guide linked at the bottom of this post
The SDK offers templates for creating different types of Extensions: editors, apps, visual models, interaction models, and more, which help reduce development time.
Supported Types of Extensions
Once set up, you can build a variety of Extension types:
- Editors – Tools for interacting with molecules. E.g., a nanotube builder.
- Apps – Widgets that offer computation or simulations. E.g., a docking engine frontend or a database search tool.
- Importers / Exporters – Load and save data in custom formats.
- Visual Models – New rendering modes, like heat maps for local charge densities.
- Interaction Models – Simulations engines computing forces, bonds, or flexibility scores.
- State Updaters – Algorithms to drive dynamics, like Langevin or Monte Carlo integrators.
These modules are integrated deeply with SAMSON’s architecture, so they benefit from the built-in visualization, interactivity, and cross-platform support.
Deployment and Sharing
Once you’ve written and compiled your Extension, you can choose to use it privately or distribute it through SAMSON Connect. The platform lets you:
- Make your Extension free for others to use
- Offer subscription models to monetize it using Stripe
- Target distinct audiences like academia and industry
- Provide access to cloud computation if your Extension depends on external servers
This makes Extension development useful both for internal workflows and for developers aiming to support the broader modeling community.
Ready to get started? The Developer Guide covers everything from SDK installation to Extension distribution. You can also find more helpful context in the full SAMSON documentation: Extending SAMSON.
SAMSON and all SAMSON Extensions are free for non-commercial use. You can download SAMSON at https://www.samson-connect.net.
