Skip to main content

Cytkit | Honeychrome

Honeychrome

Open-Source Cross-Platform GUI App for Cytometry Acquisition and Analysis. Built in Python. Source code on GitHub. Part of the Cytkit project to provide a complete open-source spectral cytometer.

Animated Demo

Our aim is to make Honeychrome so intuitive that you don't need instructions. But just in case, we have prepared this instructional video on YouTube: Introduction to Honeychrome in 30 Minutes.

We also have a set of guides to using Honeychrome:

Mission statement

For too long, our field lacked a general purpose, free and open-source cytometry software package. We are plugging that gap to provide a software package that is useful for everybody: power cytometrists, biologists, students, innovators. The app is lightweight but provides all the features one expects:

  • acquire data (starting with Cytkit, perhaps with drivers for other instruments in the future)
  • analyse data from any instrument's FCS files
  • provide both conventional compensation and spectral unmixing
  • give simple statistical comparisons between samples, publication-quality graphs and exports
  • provide intuitive usability with minimal instructions
  • support the major operating systems (Windows, MacOS, Linux...)
  • no collection or processing of personal information

Honeychrome is fully open source to provide a platform that innovators can exploit, for developing both new instrumentation and new methods in data analysis/visualisation.

See more about Honeychrome and the Cytkit project here: cytkit.com

Installation

You have the following options, depending on whether you want to use the Python source code or just download an executable. For most users, it is sufficient to download an executable for your platform (Windows/Linux/MacOS).

This project uses the SignPath Foundation for code signing.

Note that the plugin system is only available if Honeychrome is run from the Python source code.

For non-programmers: download and run executable

A set of compressed binary installers are available below.

Windows

  1. Download Honeychrome for Windows x64 (from the Microsoft Store)
  2. Double click to run the installer

Linux (Ubuntu with Wayland) > 24.04)

  1. Download Honeychrome for Linux x64 Ubuntu > 24.04
  2. Extract the honeychrome folder and put it somewhere appropriate for the single user or system
  3. Change to the honeychrome folder and run ./install_linux.sh

(For other Linux systems, please use the Python instructions below.)

MacOs

  1. Download Honeychrome for MacOS (arm64)
  2. Open the disk image and drag honeychrome.app to your Applications folder.
  3. Double click the app in your Applications folder to run

Other systems

For all other systems, please follow the Python instructions below.

Note: If you want to use the plugin functionality, please clone and run the full Python package according to the instructions below.

Run Honeychrome as a Python package

This should work on any platform for which Python is available. The simple way is to install Honeychrome from PyPi (pip). You can alternatively clone and run the source code. Either way works if you want to run plugins.

Install Honeychrome package from PyPi

  1. Create a virtual environment: Requires Python 3.12 or higher.

    python3 -m venv .venv
    
  2. Activate the virtual environment:

    • Linux/macOS: source .venv/bin/activate
    • Windows: .venv\Scripts\activate
  3. Install Honeychrome with pip:

    pip install honeychrome
    

(Optional: use pip to install any further packages on which your plugins may depend, e.g. the example plugins require umap-learn and hdbscan.)

  1. Run Honeychrome:
    honeychrome
    

Run Honeychrome from Python source

Follow these steps to clone the repository and run the application from source:

  1. Clone the repository:

    git clone https://github.com/salmansamson/honeychrome.git
    cd honeychrome
    
  2. Create a virtual environment: Requires Python 3.12 or higher.

    python3 -m venv .venv
    
  3. Activate the virtual environment:

    • Linux/macOS: source .venv/bin/activate
    • Windows: .venv\Scripts\activate
  4. Upgrade pip and install dependencies:

    pip install --upgrade pip
    pip install -r requirements.txt
    
  5. Install the package in editable mode: This ensures all internal modules are correctly mapped to your path.

    pip install -e .
    
  6. Run the application:

    python3 -m honeychrome.main
    

Contributions

We have many ideas for Honeychrome and welcome new ones. We also welcome anyone wishing to contribute to and improve the software!

We will shortly release fuller instructions and documentation for programmers wishing to build on Honeychrome in new open source cytometry projects. In the meantime, please contact us if you require assistance.

Honeychrome builds on several great open source Python packages:

  • FlowKit - for definition of gates, gating hierarchies, transforms, and FCS input/output
  • PySide6 - the GUI system, Qt for Python
  • pyqtgraph - extremely fast plotting and manipulation of plots in Qt
  • Several others for processing of data, including numpy, scikit, sklearn
  • Seaborn and Matplotlib for publication-quality graphics

Samson Rogers and Oliver Burton have been the main developers of Honeychrome so far. Oliver contributed the AutoSpectral Cleaning and AF functions and many aspects of the spec and usability. Thanks to support and advice from many people including C. Vant, Lotte Carr, Scott Tasker, Philip Jones, Robyn Pritchard.

Roadmap

By January 2027, we hope to get to a stable release labeled v1.0.0, including the following:

  • all bugs fixed
  • documentation for users
  • documentation for developers

Metadata

Release files for honeychrome 0.8.3

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

Source distribution (sdist)

Source distribution for honeychrome 0.8.3
File Size Uploaded
honeychrome-0.8.3.tar.gz 2.1 MB Details

Built distribution (wheel)

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

Total release size: 4.2 MB

Release files / honeychrome-0.8.3.tar.gz

Download URL honeychrome-0.8.3.tar.gz
Size 2.1 MB
Tags Source
SHA-256 checksum
How to use checksums
c4da6300f4b5262c8d192dbc0b3b004a17b121d15f1cc5145baa7ae326ca8bb8
BLAKE2b-256 checksum
How to use checksums
a73f533c8e9f3e0ed82375d264fb858ab39be2327a5491df5f24daa3f59007e6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release files / honeychrome-0.8.3-py3-none-any.whl

Download URL honeychrome-0.8.3-py3-none-any.whl
Size 2.1 MB
Tags Python 3
SHA-256 checksum
How to use checksums
fb45a33a976cae622b3a2480d79a30d23c74a9eb1ee21e8c4bd838201d31ca5b
BLAKE2b-256 checksum
How to use checksums
21453405242ab74c5b8be51a210655ce3353c9bc3e792207a13a467021250fc4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

0.8.3 This release

2 release files

0.8.2

2 release files

0.8.0

2 release files

0.7.3

2 release files

0.7.2

2 release files

0.7.1

2 release files

0.7.0

2 release files

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