Installation
Warning
Beta Software Notice: SegnoMMS is currently in beta (v0.1.x). While the core
functionality is stable and extensively tested, APIs may change between minor versions.
We recommend pinning to specific versions (e.g., segnomms==0.1.0) for production
use and reviewing the changelog before upgrading.
Requirements
Python >= 3.9
Segno >= 1.5.2
Pydantic >= 2.7
Install from PyPI
The easiest way to install SegnoMMS is via pip:
pip install segnomms
Install from Source
To install from source:
git clone https://github.com/systmms/segnomms.git
cd segnomms
pip install -e .
Development Installation
For development, install with extra dependencies.
Prerequisites: Install uv for ultra-fast dependency management:
# Install uv (if not already installed)
pip install uv
Then clone and setup:
git clone https://github.com/systmms/segnomms.git
cd segnomms
make setup
This installs the package with all development dependencies using uv, including:
pytest and pytest-cov for testing
black, isort, flake8, mypy for code quality
pillow, lxml, beautifulsoup4 for testing utilities
sphinx and sphinx-rtd-theme for documentation
Alternatively, if you prefer to use uv directly:
uv sync
uv pip install -e .
Verify Installation
You can verify the installation by running:
import segno
from segnomms import write
# Create a simple QR code
qr = segno.make("Test")
# Test basic functionality
with open('test.svg', 'w') as f:
write(qr, f)
# Test Phase 4 features
with open('test_phase4.svg', 'w') as f:
write(qr, f, frame_shape='circle', centerpiece_enabled=True)
print("Installation successful!")