Python SDK for the Volt scientific computing platform
Project description
voltsdk
Python SDK for the Volt scientific computing platform.
Installation
pip install voltsdk
Optional extras:
pip install "voltsdk[visualization]"
pip install "voltsdk[notebook]"
Authenticated client
from voltsdk import VoltClient
client = VoltClient(
secret_key="your-secret-key",
base_url="https://api.example.com",
)
Plugin hub
VoltSDK ships a Hugging Face-style plugin hub. Plugins live in a static registry; bundles are downloaded and cached on first use:
from voltsdk import PluginHub
hub = PluginHub() # default registry, ~/.cache/volt
print(hub.list()) # marketplace listing
ptm = hub.get("polyhedral-template-matching")
result = ptm.run(
"frame.dump",
output_base="out/frame",
crystalStructure="FCC",
rmsd=0.1,
)
print(result.artifact("annotatedDump"))
The same hub is exposed on an authenticated client via client.plugins.
Configuration
| Variable | Purpose | Default |
|---|---|---|
VOLT_PLUGIN_REGISTRY |
Registry base URL | https://server.voltcloud.dev/plugin-registry |
VOLT_CACHE_DIR |
Local plugin cache | $XDG_CACHE_HOME/volt |
Pinning versions
hub.get("opendxa", "1.0.0") # explicit version
hub["opendxa@1.0.0"] # shorthand
hub.install("opendxa") # pre-download the latest bundle
hub.uninstall("opendxa") # drop every cached version
Registry layout
The hub expects a static index plus per-platform bundles:
<registry>/index.json
<registry>/<key>/<version>/<os>-<arch>.tar.zst
index.json example:
{
"plugins": {
"opendxa": {
"latest": "1.0.0",
"versions": {
"1.0.0": {
"linux-x86_64": {
"url": "opendxa/1.0.0/linux-x86_64.tar.zst",
"sha256": "..."
}
}
}
}
}
}
Each bundle is a flat archive containing plugin.json, bin/<binary>, and
optional lib/ and scripts/ directories.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file voltsdk-2.2.0.tar.gz.
File metadata
- Download URL: voltsdk-2.2.0.tar.gz
- Upload date:
- Size: 27.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a02794fc574efd3f91d39d708b75edc00eaf1352046a1426b6a821c8b9baf185
|
|
| MD5 |
fb47fa5732c123d44a649821a97be9d5
|
|
| BLAKE2b-256 |
7cc50622bf5eef0eb9e1abf92aa06f27aed31bce0e0978505f2b7c1e5296fb5b
|
File details
Details for the file voltsdk-2.2.0-py3-none-any.whl.
File metadata
- Download URL: voltsdk-2.2.0-py3-none-any.whl
- Upload date:
- Size: 36.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dade93d78ad33ba7794cdbe67d7d2aad644755bcc8acc779b91431ae270fb0fb
|
|
| MD5 |
acfd368999edaa7f267ee57e6dd51334
|
|
| BLAKE2b-256 |
bc172ab2224749f86f2d8789572982041243204e3c8a8e433e541621288a1aab
|