Skip to main content

ScopeFoundry

A Python platform for controlling custom laboratory experiments.

http://www.scopefoundry.org

Requirements

  • Python 3.8+ (Currently tested with 3.9, 3.10, 3.12, 3.13)
  • qtpy with any Qt-binding: PyQt6, PySide6, PyQt5, PySide
  • NumPy 1.24+
  • PyQtGraph
  • h5py

Optional:

  • qtconsole
  • pyqtdarktheme

Documentation

See http://www.scopefoundry.org

Installation

If you have all the requirements

pip install scopefoundry

From scratch

  1. Download and install the Miniconda Python distribution.

  2. Create an environment with the required dependencies. In the anaconda(3) prompt, run:

    conda create -n scopefoundry python=3.13
    
    conda activate scopefoundry
    
  3. To install scopefoundry:

    pip install pyqt6 qtconsole pyqtdarktheme matplotlib scopefoundry
    

    qtconsole, matplotlib, and pyqtdarktheme are optional.

Upgrade

# conda activate scopefoundry
pip install --upgrade scopefoundry

If you have a folder named ScopeFoundry in your_project_folder, you are a core developer and can either pull from GitHub or rename the ScopeFoundry to ScopeFoundryArchive and:

# conda activate scopefoundry
pip install scopefoundry

Getting Started

After installation, use the Anaconda prompt and make or navigate to your_project_folder, then run:

python -m ScopeFoundry.tools

This will provide tools to create an initial ScopeFoundry App along with templates to develop hardware and add measurement components.

Equivalently run:

python -m ScopeFoundry init

More details

Analyze h5 with Jupyter

With ScopeFoundry installed, you can navigate to your folder with h5 files and:

python -m ScopeFoundry ipynb

analyze_with_ipynb will generate convenience functions to load data with Python. For details see here.

Recommended Folder Structure

├── your_project_folder
   	├── ScopeFoundryHW        # Your hardware component files
   	   	├── company1_model1        # For each hardware
   	   	   	├── company1_model1_hw.py        # Define a HardwareComponent class that will be integrated
   	   	   	├── company1_model1_dev.py        # Optional: an interface class 
   	   	   	├── company1_model1_test_app.py   # A test app for quick development
   	   	   	├── company2_model4
   	   	├── **
   	├── your_fancy_microscope_app.py 			# Your actual app that you will launch
   	├── measurements/
   	   	├──your_measurement_1.py        # Measurement class 
   	├── **
   	├── ScopeFoundry        # Optional: For ScopeFoundry core developers only

For ScopeFoundry Core Developers

Follow the same steps as above and additionally:

  1. Installation as above (although scopefoundry does not need to be pip-installed).
  2. Fork the repository on GitHub and pull it into your_project_folder (see folder structure above).

Additions to ScopeFoundry are welcome. See instructions here

Maintainer

Edward S. Barnard esbarnard@lbl.gov

Contributors

  • Benedikt Ursprung
  • Nick Borys
  • Jonas Zipfel
  • Frank Ogletree
  • Clarice Aiello
  • Hao Wu
  • Alan Buckley
  • Peter Ercius
  • Mark Hager

Metadata

Release files for ScopeFoundry 2.3.0

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

Source distribution (sdist)

Source distribution for ScopeFoundry 2.3.0
File Size Uploaded
scopefoundry-2.3.0.tar.gz 840.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ScopeFoundry 2.3.0
File Interpreter ABI Platform
scopefoundry-2.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 1.7 MB

Release files / scopefoundry-2.3.0.tar.gz

Download URL scopefoundry-2.3.0.tar.gz
Size 840.0 kB
Tags Source
SHA-256 checksum
How to use checksums
2a14ee74d8a263c97747513228529f5e8b7886bc73611a64f05ab4ae81a00d37
BLAKE2b-256 checksum
How to use checksums
1b62a8eb5140c9e883de00c925c8e7593518889c1cd5af65980f641aab040286
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 10, 2026.

Transparency log

Release files / scopefoundry-2.3.0-py3-none-any.whl

Download URL scopefoundry-2.3.0-py3-none-any.whl
Size 872.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9d29fe0e4875115e99436de42741d294ea8cc37ae998a7c79ec4473a9882aa2e
BLAKE2b-256 checksum
How to use checksums
995c081e46c88b17d8bf209a8947adf55957d4dfb7af03d05ff139f090168fb4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

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 Sep 10, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

2.3.0 This release

2 release files

2.2.1

2 release files

2.1.0

2 release files

2.0.2

2 release files

2.0.1

2 release files

2.0.0

2 release files

1.5.0

2 release files

1.4.2

2 release files

1.4.1

2 release files

1.4.0

1 release file

1.3.0

1 release file

1.2.3

1 release file

1.2.2

1 release file

1.2.1

1 release file

1.2.0

1 release file

1.1.1

1 release file

1.1.0

1 release file

1.0.0

1 release file

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