Skip to content

[Feature]: Add a supported Python API #23

Description

@harryswift01

Feature Request

Problem / Motivation

SIST is currently centred on command-line execution, which makes it harder to use from scripts, notebooks, and larger scientific workflows.

Users should not need to invoke a subprocess or parse terminal output.

Proposed Solution

Add a documented Python API for configuring, running, and inspecting SIST calculations.

The Python API and CLI should share the same underlying calculation implementation.

Proposed Work

  • Add a programmatic configuration object.
  • Support loading existing configuration files.
  • Add a public calculation entry point.
  • Return a supported result object.
  • Expose results, metadata, warnings, and execution status.
  • Support loading saved results.
  • Define clear public exceptions.
  • Add API tests and reference documentation.

Done When

  • A calculation can be configured and run from Python.
  • Invalid configuration raises a clear exception.
  • Results can be inspected without parsing terminal output.
  • Saved results can be loaded through the API.
  • Python and CLI results agree.
  • Public interfaces are documented and tested.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions