Skip to main content

Client and common components of the Fractal analytics platform

Project description

Fractal Client

PyPI version

Fractal is a framework to process high content imaging data at scale and prepare it for interactive visualization.

Fractal provides distributed workflows that convert TBs of image data into OME-Zarr files. The platform then processes the 3D image data by applying tasks like illumination correction, maximum intensity projection, 3D segmentation using cellpose and measurements using napari workflows. The pyramidal OME-Zarr files enable interactive visualization in the napari viewer.

Fractal_Overview

This is the main Fractal repository that contains the Fractal client. The Fractal core tasks to parse images and process OME-Zarr files can be found here. The Fractal server can be found here.

Example input data for Fractal can be found here: 10.5281/zenodo.7057076 Example output data from Fractal in the OME-Zarr format can be found here: 10.5281/zenodo.7081622 Example workflows can be found in the fractal-demos repository in the examples folder, together with additional instructions for how to set up the server & client, download the test data and run workflows through Fractal.

Fractal is currently in an early alpha version. We have the core processing functionality working for Yokogawa CV7000 image data and a workflow for processing OME-Zarr images up to feature measurements. But we're still adding core functionality and will introduce breaking changes. You can follow along our planned milestones on the architecture side & the tasks side. Open an issue to get in touch, raise bugs or ask questions.

OME-Zarr files can be interactively visualizated in napari. Here is an example using the newly-proposed async loading in NAP4 and the napari-ome-zarr plugin:

napari_plate_overview

Contributors

Fractal was conceived in the Liberali Lab at the Friedrich Miescher Institute for Biomedical Research and in the Pelkmans Lab at the University of Zurich (both in Switzerland). The project lead is with @gusqgm & @jluethi. The core development is done under contract by @mfranzon, @tcompa & jacopo-exact from eXact lab S.r.l. <exact-lab.it>.

Installation

Simply

pip install fractal-client

Subsequently, you may invoke it as fractal. Note that you must provide the following environment variables:

  • FRACTAL_SERVER: fully qualified URL to the Fractal server installation
  • FRACTAL_USER, FRACTAL_PASSWORD: email and password used to log-in to the Fractal server

By default, fractal caches some information in ~/.cache/fractal. This destination can be customized by setting FRACTAL_CACHE_PATH.

For ease of use, you may define an environment file .fractal.env in the folder from which fractal is invoked.

Development

Development takes place on Github. You are welcome to submit an issue and open pull requests.

Developmente installation

Fractal is developed and maintained using poetry.

After cloning the repo, use

poetry install --with dev

to set up the development environment and all the dependencies and dev-dependencies. You may run the test suite with

poetry run pytest

Releasing

Before release checklist:

  • The main branch is checked out
  • You reviewed dependencies and dev dependencies and the lock file is up to date with pyproject.toml.
  • The current HEAD of the main branch passes all the tests
  • Use
poetry run bumpver update --dry --[patch|minor] --tag-commit --commit

to test updating the version bump

  • If the previous step looks good, use
poetry run bumpver update --[patch|minor] --tag-commit --commit

to actually bump the version and commit the changes locally.

  • Test the build with
poetry build
  • If the previous step was successful, push the version bump and tags:
git push && git push --tags
  • Finally, publish the updated package to pypi with
poetry publish --dry-run

removing the --dry-run when you made sure that everything looks good.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fractal_client-1.0.0a4.tar.gz (25.3 kB view details)

Uploaded Source

Built Distribution

fractal_client-1.0.0a4-py3-none-any.whl (25.5 kB view details)

Uploaded Python 3

File details

Details for the file fractal_client-1.0.0a4.tar.gz.

File metadata

  • Download URL: fractal_client-1.0.0a4.tar.gz
  • Upload date:
  • Size: 25.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.2 CPython/3.9.12 Linux/5.15.0-56-generic

File hashes

Hashes for fractal_client-1.0.0a4.tar.gz
Algorithm Hash digest
SHA256 d91b7c8c3aeb5820ca76f593a3d13a233258b6864db999e780ea3a6e0f7fc23a
MD5 576f6c35f5c4e7f8b47d39f1df9fc698
BLAKE2b-256 c47eb86c33b5018e5e41b6a36f36261f06884831132581ec5b1885a1cdbdb13e

See more details on using hashes here.

File details

Details for the file fractal_client-1.0.0a4-py3-none-any.whl.

File metadata

  • Download URL: fractal_client-1.0.0a4-py3-none-any.whl
  • Upload date:
  • Size: 25.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.2 CPython/3.9.12 Linux/5.15.0-56-generic

File hashes

Hashes for fractal_client-1.0.0a4-py3-none-any.whl
Algorithm Hash digest
SHA256 d0f1969e5dac9341598eef2565f29e6bb9c5050819bcd62aecda2260409a3b75
MD5 4af0b9a5c36e8a47856d2820d5391e58
BLAKE2b-256 1d3d4c02db38ea8ea053d40e82f0b8c1d0cbcb5c37946a2335e2952265f4caa0

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page