autoFISH - automated FISH experiments
Python library to control an automated fluidics system and perform acquisition on a microscope for sequential FISH experiments.
⚠️ TESTED FOR WINDOWS only: micromanager and most microscope controls work only under Windows.
Protocols for smFISH experiments
We provide detailed protocols for single molecule FISH adapated to autoFISH here.
Documentation
We provide details documentation for the fluidics system and the experimental workflows with the links below:
Fluidics system and software usage
Getting started
Installation
We recommend using a package manager (conda) to maintain a clean Python installation. This nees to be done only once.
- Download latest version of miniconda from here.
- Open Anaconda terminal and create dedicated environment:
conda create --name autofish python=3.10 - Activate environment:
conda activate autofish - Pip install autofish (as an alternative see development installation below)
- Base version (without pycromanager) :
pip install autofish - [Optional] Install pycromanager :
pip install pycromanager
- Base version (without pycromanager) :
Starting autofish
- Open Anaconda terminal and activate environment:
conda activate autofish - Start user interface with command
autofish
Upgrading to a new version
- Open Anaconda terminal and activate environment:
conda activate autofish - Upgrade autoFISH
pip install --upgrade autofish
Development installation
If you want to modify develop the package, several options exist.
-
Recommended is to
clonethe repository. This will then also allow to propose your changes to the main autoFISH repository as a PullRequest. See for instance here for an explanation for how this is done. This also allows to easier add changes from the main repository -
An alternative is a local installation. While this might be easier in the short run, it will be challenig to integrate future changes on the main repository. Rather than performing the pip install (step 4 above), you
- Download the zip archive of the branch you are interested in.
- Unzip on your machine.
- Open Anaconda terminal at location of the autofish package.
- Activate environment:
conda activate autofish - Editable install
pip install . -e
Configuration files
The behavior of the fluidics and acquistion system is defined by several config files.
-
To test the installation of autofish, you can use demo configurations which require neither a microscope nor a fluidics systems: https://github.com/fish-quant/autofish/tree/main/demo
-
We provide config files that we use on our system (with a Nikon Ti): https://github.com/fish-quant/autofish/tree/main/configs
Pycromanager
One of the acquisition options is by using Pycromanager. We found that keeping both micromanager and Pycromanager up-to-date can help to prevent problems.
Last tested, compatible versions:
- Pycromanager: 0.27.2
- Micromanager: nightly 20230224
Reporting a problem/suggestion
If you encounter a problem or you have a suggestion, please file an issue.
Metadata
Release files for autofish 0.0.8
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| autofish-0.0.8.tar.gz | 29.3 kB | With provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| autofish-0.0.8-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 58.8 kB
Release files / autofish-0.0.8.tar.gz
| Download URL | autofish-0.0.8.tar.gz |
|---|---|
| Size | 29.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
61d70f0c8382da2eb49a39c85e4f157ea2eabeba3522f48ad65463169c68de76
|
|
BLAKE2b-256 checksum How to use checksums |
80e1ac35027597f2433c800a37efecf3d8e77099ba82a677e08cc340be0444a9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
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 21, 2025.
Transparency logRelease files / autofish-0.0.8-py3-none-any.whl
| Download URL | autofish-0.0.8-py3-none-any.whl |
|---|---|
| Size | 29.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a72845f95ffaeb98c1d965d6752d57dc5f5818b12f424f8031d425c848ded22b
|
|
BLAKE2b-256 checksum How to use checksums |
7ce324757609a9a1ea3d46ab23da8200b36e8f27723342ca438f292e917df078
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
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 21, 2025.
Transparency logSecurity for autofish 0.0.8
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 2 files in this release have been uploaded with provenance metadata.
Attestation for autofish-0.0.8.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 21, 2025.
Transparency logA 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.