Skip to main content

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

voltsdk-2.2.0.tar.gz (27.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

voltsdk-2.2.0-py3-none-any.whl (36.2 kB view details)

Uploaded Python 3

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

Hashes for voltsdk-2.2.0.tar.gz
Algorithm Hash digest
SHA256 a02794fc574efd3f91d39d708b75edc00eaf1352046a1426b6a821c8b9baf185
MD5 fb47fa5732c123d44a649821a97be9d5
BLAKE2b-256 7cc50622bf5eef0eb9e1abf92aa06f27aed31bce0e0978505f2b7c1e5296fb5b

See more details on using hashes here.

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

Hashes for voltsdk-2.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dade93d78ad33ba7794cdbe67d7d2aad644755bcc8acc779b91431ae270fb0fb
MD5 acfd368999edaa7f267ee57e6dd51334
BLAKE2b-256 bc172ab2224749f86f2d8789572982041243204e3c8a8e433e541621288a1aab

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page