Installation
Requirements
Python 3.10 or higher
pip (Python package installer)
Installing from PyPI
The easiest way to install SSMD is using pip:
pip install ssmd
This will install the latest stable release from PyPI.
Installing from Source
If you want to install from source or contribute to development:
Clone the repository:
git clone https://github.com/buchwandler/ssmd.git
cd ssmd
Install in development mode:
pip install -e .
This will install SSMD in editable mode, so any changes you make to the source code will be immediately reflected.
Development Installation
For development with all testing and documentation tools:
# Clone and enter directory
git clone https://github.com/buchwandler/ssmd.git
cd ssmd
# Install with development dependencies
pip install -e ".[dev]"
# Install pre-commit hooks
pre-commit install
This installs additional dependencies for:
Testing (pytest, pytest-cov)
Type checking (mypy)
Linting and formatting (ruff)
Documentation building (Sphinx)
The optional ssml-maker integration tests are installed separately with
pip install -e ".[integration]".
Verifying Installation
To verify that SSMD is installed correctly:
import ssmd
# Check version
print(ssmd.__version__)
# Quick test
result = ssmd.to_ssml("Hello *world*!")
print(result)
# Should output: <speak>Hello <emphasis>world</emphasis>!</speak>
Dependencies
SSMD has minimal runtime dependencies:
phrasplit>=0.3.4- sentence detection, model resolution, and splitting; the 0.2.x line does not satisfy SSMD’s paragraph and markup round-trip contractpyyaml- YAML front matter parsing
Optional dependencies for development:
Testing: pytest, pytest-cov
Type checking: mypy
Linting: ruff
Documentation: Sphinx, sphinx-rtd-theme
Build: setuptools-scm, build
Building Release Artifacts
Release versions are derived by setuptools-scm from Git tag context. A source snapshot
without .git metadata, or a build that cannot install the configured build
requirements, may produce a fallback version such as 0.0.0; that output is not a
release artifact. Release builds must run from the exact v<version> tag and pass the
repository’s artifact filename and metadata check before publication.
Upgrading
To upgrade to the latest version:
pip install --upgrade ssmd
Uninstalling
To remove SSMD from your system:
pip uninstall ssmd