View on GitHub

PHATDocs

Documentation for https://github.com/chgibb/phat

Home

For 0.7.5-beta.1

Contents

Repository Structure

forDist/

For prebuilt binaries/third party files meant for distribution with PHAT. Will also hold files and binaries created/downloaded by running scripts/install.bash. A full breakdown of what is contained in this folder is here.

forDist/win32

forDist/win32/cygwin.tar.gz

Contains those Cygwin components necessary for third-party cross compiled binaries to run on Windows.

forDist/win32/python.tar.gz

Contains a full WinPython distribution.

forDist/win32/win32.tar.gz

Contains a full Strawberry Perl distribution as well as two MinGW DLLs and associated bioinformatics tools.

forDist/linux

forDist/linux/linux.tar.gz

Contains necessary bioinformatics tools for Linux.

scripts

Contains all scripts necessary to build and test the application.

scripts/build

Contains all scripts necessary to build application.

scripts/clean

Contains cleaning scripts.

scripts/install

Contains scripts necessary to prepare a development environment to use to develop PHAT.

scripts/opt

Contains scripts used to optimize a built PHAT application package.

src

Contains all first party application code. Every .ts file in the top level of this directory will be bundled by Browserify at build time.

Files in the top level represent the entry point of a process/helpers for that process. For instance, for some process foo which will run in the renderer context of Electron (an application window), there will be foo.html, foo.ts and fooRenderer.ts. foo.html being the initial HTML file loaded upon invocation of the window, foo.ts will be loaded by foo.html in order to load or compile a code cache for fooRenderer.ts. fooRenderer.ts should contain all code needed to make the window function.

For some process bar which should run in a standard Node context (usually as part of an atomic operation though not strictly necessary), there will be bar.ts and barProcess.ts. bar.ts will be invoked in order to load or compile a code cache for barProcess.ts. All process logic should reside in barProcess.ts.

In all cases foo.ts and bar.ts should be nothing more than dumb bootstrappers for their corresponding *Renderer.ts/*Process.ts files.

src/req

All modules imported by other modules. Nothing under this directory represents an entry point for an individual process.

src/main

Modules used by the main process. Each fooRenderer.ts file in the top level has a corresponding foo.ts file under this directory to register the window with the main process at application startup.

src/operations

Each file in the top level of this directory contains a single operation. Sub directories correspond to helper modules/pieces of their corresponding operation. Some operations use modules which are not stored here.

Contents