Skip to main content

DeepPhe Installer

This repository (installation) holds the install4j project files, build scripts, and shared assets used to produce the DeepPhe desktop installer for macOS, Windows, and Linux.

It does not contain the DeepPhe application code itself. Instead, it packages a small Java launcher and, at install time, downloads the heavy DeepPhe components from the DeepPhe/DeepPhe-Dist GitHub releases. The result is a single installer per platform that a non-technical user can double-click to get a working DeepPhe environment.

What is DeepPhe?

DeepPhe is a natural-language-processing system that extracts a structured cancer phenotype summary from clinical notes. Learn the concepts on the DeepPhe homepage and the Release Wiki.

What this repo produces

Building the project (DeepPhe-and-Launcher.install4j) writes three installer media files to build/deepphe-installer/. When those media are published with build-all.sh --publish, the GitHub release assets use versioned filenames:

PlatformFileNotes
macOSDeepPhe-7.1.dmgDisk image with DeepPhe Installer.app
WindowsDeepPhe_windows-7.1.exeSigned with an Authenticode certificate
LinuxDeepPhe_linux-x64-7.1.shSelf-extracting shell installer

Each installer bundles a Java 26 runtime and the DeepPhe Launcher GUI, and knows how to fetch and configure everything else on the target machine.

The two halves of DeepPhe on disk

When a user runs the installer, it creates two directories:

  • <install dir>/.DeepPhe/ — the program: the NLP pipeline, embedded ontology database, the visualizer, the data API, the DB creator, tool binaries, and configuration. This is managed by the installer/uninstaller.
  • ~/DeepPheDocs/ — the user's data: input/ reports and output/ results. This is intentionally kept out of the program folder so it survives reinstalls and upgrades.

See Installed layout for the full tree.

How the pieces fit together

Where to go next

No secrets in this repo

Signing certificates, keystores, PINs, and notarization passwords are not stored in Git. This documentation only references the names of the scripts and environment variables involved — never the credential values. See Repo layout.