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 -- is the help to ask when you know what you need but not how: tell it in plain words, and it explains how to do it in SMAPpy, suggests the plugin and its settings, or does it 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.11

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.11
File Size Uploaded Provenance Actions
smappy_smlm-0.5.11.tar.gz 3.1 MB With provenance Details for smappy_smlm-0.5.11.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for smappy-smlm 0.5.11
File Actions
smappy_smlm-0.5.11-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details for smappy_smlm-0.5.11-cp314-cp314-win_amd64.whl
smappy_smlm-0.5.11-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.11-cp314-cp314-manylinux_2_34_x86_64.whl
smappy_smlm-0.5.11-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details for smappy_smlm-0.5.11-cp314-cp314-macosx_11_0_arm64.whl
smappy_smlm-0.5.11-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.11-cp314-cp314-macosx_10_15_x86_64.whl
smappy_smlm-0.5.11-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details for smappy_smlm-0.5.11-cp313-cp313-win_amd64.whl
smappy_smlm-0.5.11-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details for smappy_smlm-0.5.11-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
smappy_smlm-0.5.11-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details for smappy_smlm-0.5.11-cp313-cp313-macosx_11_0_arm64.whl
smappy_smlm-0.5.11-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.11-cp313-cp313-macosx_10_13_x86_64.whl
smappy_smlm-0.5.11-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details for smappy_smlm-0.5.11-cp312-cp312-win_amd64.whl
smappy_smlm-0.5.11-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64, Linux glibc 2.27+ x86-64 Details for smappy_smlm-0.5.11-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
smappy_smlm-0.5.11-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details for smappy_smlm-0.5.11-cp312-cp312-macosx_11_0_arm64.whl
smappy_smlm-0.5.11-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.11-cp312-cp312-macosx_10_13_x86_64.whl

Total release size: 43.6 MB

Release files / smappy_smlm-0.5.11.tar.gz

Download URL smappy_smlm-0.5.11.tar.gz
Size 3.1 MB
Tags Source
SHA-256 checksum
How to use checksums
5ca1b3a038972a48a43519558bdd3c11ea4ed683fdba0a9c2e9f515fadf42844
BLAKE2b-256 checksum
How to use checksums
3ec2e845eb15e733e155e9df72d0f67f6859d8f36446655278f70d10f93326b5
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 Nov 4, 2026.

Transparency log

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

Download URL smappy_smlm-0.5.11-cp314-cp314-win_amd64.whl
Size 3.5 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
fc2f22616208b4afa2fbb9bdb04d21fd669b2c5035f665c384813a5713597906
BLAKE2b-256 checksum
How to use checksums
b64a8c0e7e7cd0e128e3f4cdfd3906684663788a39283c5d5fd4b3ebb97cd547
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 Nov 4, 2026.

Transparency log

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

Download URL smappy_smlm-0.5.11-cp314-cp314-manylinux_2_34_x86_64.whl
Size 3.4 MB
Tags CPython 3.14 Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
945e44e778fe3d106c842875097f58070bec5625c450b6444ef1e745bafce90b
BLAKE2b-256 checksum
How to use checksums
fe84b113197bce90453f778551e67f0560b6751ad0d9b6c0255bc4765d2b2170
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 Nov 4, 2026.

Transparency log

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

Download URL smappy_smlm-0.5.11-cp314-cp314-macosx_11_0_arm64.whl
Size 3.3 MB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
f9f5faf3b0a6c4655433e79cd3b469f73d3628785a0b407d1bf1ab6c91e865b9
BLAKE2b-256 checksum
How to use checksums
83ed01f4ba0882d0795e5bc7fce82605c540414494005a0273b9ec0e94d24163
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 Nov 4, 2026.

Transparency log

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

Download URL smappy_smlm-0.5.11-cp314-cp314-macosx_10_15_x86_64.whl
Size 3.3 MB
Tags CPython 3.14 macOS 10.15+ x86-64
SHA-256 checksum
How to use checksums
af3bb78db475c46c89e8c51cfee2d512015bbad9f693fa9e423dc2cc140be652
BLAKE2b-256 checksum
How to use checksums
9b2b22568624c4803fce7ec4f7aa9a8bd447ae1f1f2d43c7a1d5d63f08dedd19
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 Nov 4, 2026.

Transparency log

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

Download URL smappy_smlm-0.5.11-cp313-cp313-win_amd64.whl
Size 3.5 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
e609c1608e07f8e052bdba24717b69c903d1ef36451fa284fe249f27d89cda2b
BLAKE2b-256 checksum
How to use checksums
7b493c54c1348ec8bf7b565e278cca22ab0e1ba712f2b004b0417601dfc9dca2
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 Nov 4, 2026.

Transparency log

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

Download URL smappy_smlm-0.5.11-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 3.4 MB
Tags CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
2f2628d3ff01fa7f4f9ad53a7316611a944ef8cd8678b602f1f144712f4aa51c
BLAKE2b-256 checksum
How to use checksums
5782ee12d29dc6ef62b15fb0ac98b626998205ef1d92c3c630d0f192321955ca
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 Nov 4, 2026.

Transparency log

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

Download URL smappy_smlm-0.5.11-cp313-cp313-macosx_11_0_arm64.whl
Size 3.3 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
2cdeb4197fb8cebeaa20e36dbd560738e7ebdf6a779f0ec01ed442ca8cc04e90
BLAKE2b-256 checksum
How to use checksums
56a7aeaaffacd75dc1b2ed2e54824e1d27d7eed38873f523df4b7bd8bb2bcdf8
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 Nov 4, 2026.

Transparency log

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

Download URL smappy_smlm-0.5.11-cp313-cp313-macosx_10_13_x86_64.whl
Size 3.3 MB
Tags CPython 3.13 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
97f04236ab3aca728b11d23f3735d7ba6ac02e7e19facf1493bd1c52f2fcad3c
BLAKE2b-256 checksum
How to use checksums
14296624e9c23466324900fd162027e1cd35ef46ff5081a3e7edb07f313a9eb1
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 Nov 4, 2026.

Transparency log

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

Download URL smappy_smlm-0.5.11-cp312-cp312-win_amd64.whl
Size 3.5 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
6dbed471ff1ebfc5f3bdf86f6ba13afd2f0f7b579803884f6a6ac546fe7db728
BLAKE2b-256 checksum
How to use checksums
44735a73b4142e95cfbe055092b7238212de580eee4c676aa0f4ec1b4e4e8cea
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 Nov 4, 2026.

Transparency log

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

Download URL smappy_smlm-0.5.11-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Size 3.4 MB
Tags CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
82b46c434c00b0eadd5257a796dec9f3333ccfaacd3183714dd2eaa7b2869631
BLAKE2b-256 checksum
How to use checksums
20c4ae19a5a13ee1687634d0d657755c6f1e5da93c5222a95db4a36984589d3f
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 Nov 4, 2026.

Transparency log

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

Download URL smappy_smlm-0.5.11-cp312-cp312-macosx_11_0_arm64.whl
Size 3.3 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
c35a98de321003e4e70680b95089e8290479d968aef29eeb3a91dc8eab0daf6b
BLAKE2b-256 checksum
How to use checksums
8804c86fd1f9796db6a83fba877779f3b7870cd0995242a0061d1a520e27d5fd
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 Nov 4, 2026.

Transparency log

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

Download URL smappy_smlm-0.5.11-cp312-cp312-macosx_10_13_x86_64.whl
Size 3.3 MB
Tags CPython 3.12 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
623882f442393e3e500d7f0878a8df6c8ee96bdd7732418b62b529192965ed63
BLAKE2b-256 checksum
How to use checksums
b38a5f6b97ee8bafbc8059f48e1419d90a40d2df8a4de487026093f56b33e3b7
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 Nov 4, 2026.

Transparency log

Security for smappy-smlm 0.5.11

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.11.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 Nov 4, 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