Skip to main content

SMAPpy

SMAPpy is software for single-molecule localization microscopy (SMLM) in Python. It takes raw camera frames to localizations and super-resolution images, with a graphical interface, command-line tools and a Python API. It is a Python port of SMAP.

Install

pip install smappy-smlm

The GUI is included. Binary wheels are available for Python 3.12-3.14 on macOS, Linux and Windows, so nothing needs to be compiled. The package is called smappy-smlm on PyPI; in Python you import smappy.

I need more help. Never used a terminal or pip? Installing SMAPpy, step by step walks through it on a Mac or Windows computer, from opening the terminal to starting the GUI, and says what to ask an AI assistant that can do it for you.

With uv you can install the GUI as a standalone tool, or run it without installing:

uv tool install smappy-smlm
uvx --from smappy-smlm smappy-gui

To install from a checkout, which builds the C++ extensions (pip 21.3 or newer):

git clone https://github.com/ries-lab/SMAPpy.git
cd SMAPpy
python -m venv .venv
.venv/bin/python -m pip install -e .

Update

Close SMAPpy first: on Windows, pip cannot replace the program files of a running SMAPpy. Then, in the same environment you installed it into:

pip install --upgrade smappy-smlm

pip show smappy-smlm tells you which version you have; the newest is on PyPI. If you installed it with uv, run uv tool upgrade smappy-smlm instead. In a checkout, run git pull, then .venv/bin/python -m pip install -e . again, which rebuilds the C++ extensions.

SMAPpy itself looks for a newer version once a day when it starts and, if there is one, says so at the bottom right of the control window. Help → Check for updates... asks at any time. Its Update and restart closes SMAPpy, installs the new version with pip (or uv) and starts SMAPpy again; Copy command gives the command for your installation instead, and a checkout is always updated by hand. The daily check is turned off in the General tab of Preferences....

Start

smappy-gui

or, to open a localization file directly:

smappy-gui FILE.hdf5

Files can also be dropped onto either window: a localization file opens as with File → Open; a short TIFF (50 frames or fewer) or a PNG is added as an image layer, as with File → Open image; and a longer stack (TIFF, an NDTiff folder, *.sim.yaml) becomes the file of the fitter on the Localize tab, ready to fit.

From a checkout, activate the venv first or run .venv/bin/smappy-gui.

Tutorials and documentation

Tutorials. ries-lab.github.io/SMAPpy has short guided tours on simulated data you can follow along with. Start with SMAPpy in three minutes. In the program, Help → Tutorials opens them in your browser.

Help pages. Every plugin and the main parts of the GUI have a help page. It explains the theoretical background and every control. Open it with the ? in a plugin's or a Render-tab section's title bar, with F1 in any panel or window, or from Help → Plugin documentation. The same pages are online at ries-lab.github.io/SMAPpy/help, and python -m smappy.docs -o DIR writes them as a static website.

Your own analysis. When no plugin measures what you need, make one: describe it to an AI assistant started in your plugin folder (Plugins → Show my plugin folder), or start from the example with Plugins → New plugin.... A file saved there appears under Plugins → User. The help page Your own plugins explains how.

An AI assistant. Your own assistant -- Claude Code, Codex or the Claude app -- can use SMAPpy's plugins for you: Assistant → Start assistant starts it beside the picture, and what it would change waits for you to open or dismiss. The tutorial An AI assistant shows it, and the help page Assistant has the details.

For developers. GUI.md describes the architecture. docs/ holds design notes on the plugin system and individual algorithms. NOTES.md records design decisions and measurements.

License

SMAPpy is released under the BSD 3-Clause license; see LICENSE and THIRD_PARTY_NOTICES.md.

Metadata

Release files for smappy-smlm 0.5.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for smappy-smlm 0.5.6
File Size Uploaded Provenance Actions
smappy_smlm-0.5.6.tar.gz 2.8 MB With provenance Details for smappy_smlm-0.5.6.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for smappy-smlm 0.5.6
File Actions
smappy_smlm-0.5.6-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details for smappy_smlm-0.5.6-cp314-cp314-win_amd64.whl
smappy_smlm-0.5.6-cp314-cp314-manylinux_2_34_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.34+ x86-64 Details for smappy_smlm-0.5.6-cp314-cp314-manylinux_2_34_x86_64.whl
smappy_smlm-0.5.6-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details for smappy_smlm-0.5.6-cp314-cp314-macosx_11_0_arm64.whl
smappy_smlm-0.5.6-cp314-cp314-macosx_10_15_x86_64.whl CPython 3.14 CPython 3.14 macOS 10.15+ x86-64 Details for smappy_smlm-0.5.6-cp314-cp314-macosx_10_15_x86_64.whl
smappy_smlm-0.5.6-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details for smappy_smlm-0.5.6-cp313-cp313-win_amd64.whl
smappy_smlm-0.5.6-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details for smappy_smlm-0.5.6-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
smappy_smlm-0.5.6-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details for smappy_smlm-0.5.6-cp313-cp313-macosx_11_0_arm64.whl
smappy_smlm-0.5.6-cp313-cp313-macosx_10_13_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.13+ x86-64 Details for smappy_smlm-0.5.6-cp313-cp313-macosx_10_13_x86_64.whl
smappy_smlm-0.5.6-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details for smappy_smlm-0.5.6-cp312-cp312-win_amd64.whl
smappy_smlm-0.5.6-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.27+ x86-64, Linux glibc 2.28+ x86-64 Details for smappy_smlm-0.5.6-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
smappy_smlm-0.5.6-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details for smappy_smlm-0.5.6-cp312-cp312-macosx_11_0_arm64.whl
smappy_smlm-0.5.6-cp312-cp312-macosx_10_13_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.13+ x86-64 Details for smappy_smlm-0.5.6-cp312-cp312-macosx_10_13_x86_64.whl

Total release size: 39.2 MB

Release files / smappy_smlm-0.5.6.tar.gz

Download URL smappy_smlm-0.5.6.tar.gz
Size 2.8 MB
Tags Source
SHA-256 checksum
How to use checksums
5ed137c51b94906aea2318a96a1d83cd4c9452a058c3d4467941702cd92cbe7a
BLAKE2b-256 checksum
How to use checksums
577ae21ea524eb5dab6b63c63afd8500f9d36c817ff121d05e7157c07f221e06
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.

Transparency log

Release files / smappy_smlm-0.5.6-cp314-cp314-win_amd64.whl

Download URL smappy_smlm-0.5.6-cp314-cp314-win_amd64.whl
Size 3.2 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
43ad55e7991266982052a7cea963699bc493b4035732a0da2aa80013babfe787
BLAKE2b-256 checksum
How to use checksums
fab779cf37b15214ef59a400ca5940b14562084042a63075370168b7a96066a5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.

Transparency log

Release files / smappy_smlm-0.5.6-cp314-cp314-manylinux_2_34_x86_64.whl

Download URL smappy_smlm-0.5.6-cp314-cp314-manylinux_2_34_x86_64.whl
Size 3.1 MB
Tags CPython 3.14 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
e6122d888dc3d059b64cd6c873275d2f3bfdd8ce7d0efdf3c1393358ffe4f661
BLAKE2b-256 checksum
How to use checksums
c61c129e59256a47480bd89b724c897ed0bf1ae50ecda6a42a549bed12a561c5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.

Transparency log

Release files / smappy_smlm-0.5.6-cp314-cp314-macosx_11_0_arm64.whl

Download URL smappy_smlm-0.5.6-cp314-cp314-macosx_11_0_arm64.whl
Size 2.9 MB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
f7bb443c87c2b182351ee415b40e0b46dfa60aaf13778bafbbf0818f44a8febe
BLAKE2b-256 checksum
How to use checksums
dbebc36d0855a2d72da7a6d278e545238a4f196535c45199218360c8b64ea00f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.

Transparency log

Release files / smappy_smlm-0.5.6-cp314-cp314-macosx_10_15_x86_64.whl

Download URL smappy_smlm-0.5.6-cp314-cp314-macosx_10_15_x86_64.whl
Size 3.0 MB
Tags CPython 3.14 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
46a4a44a2c5a05b089c1b4f5ba4c692c18763410195b210d90dfc5535e9975ef
BLAKE2b-256 checksum
How to use checksums
582ad4aca1e2aeedad299fc277374e07aeee383c730f8e591b3d06c455cad99f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.

Transparency log

Release files / smappy_smlm-0.5.6-cp313-cp313-win_amd64.whl

Download URL smappy_smlm-0.5.6-cp313-cp313-win_amd64.whl
Size 3.2 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
5b6b7b9bb11277c7745bbc910619a53a575ecfd6da9ac92f8a33931af589062b
BLAKE2b-256 checksum
How to use checksums
4968cc4467be8bf627ea6040b1ac763c20fe2f484dc4cdf220e580a543eb90f0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.

Transparency log

Release files / smappy_smlm-0.5.6-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL smappy_smlm-0.5.6-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 3.1 MB
Tags CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
9900e4fd07d7fef96c99e2a3c8d1a53e8c6707c7a98a66f3dc2e66cec796ad20
BLAKE2b-256 checksum
How to use checksums
c3d03e8e5b1d4cb2378bb34c279706a17e17a524cbe6bf0db870f18f655168a4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.

Transparency log

Release files / smappy_smlm-0.5.6-cp313-cp313-macosx_11_0_arm64.whl

Download URL smappy_smlm-0.5.6-cp313-cp313-macosx_11_0_arm64.whl
Size 2.9 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
bbcf0e2d8e0e2bc0f1d080e7ae1fc441c892c0e9bfae92a3a0ea08144936fc18
BLAKE2b-256 checksum
How to use checksums
2a4abcad6f8908d4908df813fc5dc9629af1a1fe56ca081a242facfe381fc0e8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.

Transparency log

Release files / smappy_smlm-0.5.6-cp313-cp313-macosx_10_13_x86_64.whl

Download URL smappy_smlm-0.5.6-cp313-cp313-macosx_10_13_x86_64.whl
Size 3.0 MB
Tags CPython 3.13 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
6bae8a805799793e37d2a79e929bfb71d52c2fc6401a97b063c9536feff45367
BLAKE2b-256 checksum
How to use checksums
329dd8304949e1d3750fddd0e72810f8927a3eb8d1202aaf9b2941b3eafc9f4d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.

Transparency log

Release files / smappy_smlm-0.5.6-cp312-cp312-win_amd64.whl

Download URL smappy_smlm-0.5.6-cp312-cp312-win_amd64.whl
Size 3.2 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
5fe40858f740d3913f66a14228db5b68ead3f1c3d84a3cf78445616e7e2a4cec
BLAKE2b-256 checksum
How to use checksums
27cb6e910b2c247b83246f83ab61d1b59a4575e64e0defb59b64bb696ed96dd2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.

Transparency log

Release files / smappy_smlm-0.5.6-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl

Download URL smappy_smlm-0.5.6-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 3.1 MB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
d5dcc13f937f0775588b5476043a7601becc75a315e29347f88f2db3ed2132a0
BLAKE2b-256 checksum
How to use checksums
7d236a6c6f5967d247c7a5f3e90760f60759cf16bb2370fe7c3eaaea3a1d5836
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.

Transparency log

Release files / smappy_smlm-0.5.6-cp312-cp312-macosx_11_0_arm64.whl

Download URL smappy_smlm-0.5.6-cp312-cp312-macosx_11_0_arm64.whl
Size 2.9 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
22f981f903073fd8279463c182104ed42f2ed5e7caba3c6d936fda39569dc9ed
BLAKE2b-256 checksum
How to use checksums
09e7e984e15f0ea7b83540d3294f821564ab8e10fda68a6c862285a77fed5458
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.

Transparency log

Release files / smappy_smlm-0.5.6-cp312-cp312-macosx_10_13_x86_64.whl

Download URL smappy_smlm-0.5.6-cp312-cp312-macosx_10_13_x86_64.whl
Size 3.0 MB
Tags CPython 3.12 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
a2f2eae8f51f2023d636ad47483b1cb1eab509c24d536be3eef1a262d102f969
BLAKE2b-256 checksum
How to use checksums
067da3f1b39be03c6aeaf4dedcde5ab8113bbfd3f72a4e22936de88fd6cd5224
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.

Transparency log

Security for smappy-smlm 0.5.6

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 13 files in this release have been uploaded with provenance metadata.

Select from 13 files

Attestation for smappy_smlm-0.5.6.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 27, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page