(Re)Architecture

Allen Goodman edited this page Apr 16, 2018 · 2 revisions

Architecture

Overview

CellProfiler is refactored into a standalone Python package. A multi-platform command-line interface wraps the Python package. A graphical interface wraps the Python package or command-line interface.

Graphical Interface

Option 1.

We have three applications:

  • Qt (or similar) is used for the Linux (and other POSIX platforms) application
  • Cocoa is used for the macOS application
  • .NET and Windows Forms is used for Windows application

Option 2.

We have one application. It uses a cross-platform (macOS, POSIX, and Windows) widget toolkit.

Option 2a.

An Electron (or similar) application that wraps the command-line interface. It’s written in JavaScript.

Option 2b.

We continue using wxWidgets but upgrade from wxPython 2 to wxPython 3.

Option 2c.

We use Qt and the official Qt Python package.

Option 2d.

We use GTK+ and Python GTK+ 3.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.