Skip to content

garrettc00per/genomifyseq

Repository files navigation

GenomifySeq

Buy Me A Coffee

A desktop application for end-to-end RNA-seq analysis: from raw FASTQ files to differential expression and gene set enrichment. Built with Salmon, DESeq2, and fgsea. Designed for researchers who want to analyze RNA-seq data without command-line expertise.

Features

  • Automatic sample detection — detects paired-end and single-end samples from filenames
  • Built-in reference genomes — download human (GENCODE v36/v44) or mouse (GENCODE vM25/vM33) transcriptomes with one click
  • Custom FASTA indexing — build a Salmon index from your own transcriptome FASTA file
  • Salmon quantification — fast, accurate transcript-level quantification with multi-threading
  • Interactive results — view mapping statistics, expression heatmaps, and download count matrices
  • PCA analysis — principal component analysis with interactive metadata editor and publication-ready plots
  • Differential expression — pairwise comparisons between conditions using DESeq2 with volcano plots
  • Gene set enrichment analysis (GSEA) — run fgsea with MSigDB gene sets to identify enriched pathways
  • Gene set overlay — highlight genes from any gene set on volcano plots via dropdown selection
  • Previous run access — load and re-analyze results from any prior pipeline run
  • Fully self-contained — installs its own Python and R environments, no prerequisites needed
  • Free to use — no license key required

Requirements

  • macOS 12+ (Apple Silicon and Intel both supported)
  • 4 GB RAM minimum recommended (16 GB recommended for 10+ sample processing)
  • ~8 GB disk space (for Miniforge + R packages + reference index)
  • Internet connection (for initial setup and downloading reference genomes)

Installation

  1. Download GenomifySeq-Installer-1.1.dmg from the latest release
  2. Open the DMG and drag GenomifySeq to your Applications folder
  3. Launch the app from Applications
  4. On first launch, click Install when prompted — this downloads dependencies (~2 GB) and only happens once

"App can't be opened because it is from an unidentified developer" Go to System Settings → Privacy & Security and click Open Anyway

Usage

Workflow

  1. Select Data — point the app to a folder containing your FASTQ files; samples are detected automatically
  2. Reference Index — either download a built-in reference transcriptome (first time only, ~3–5 min) or build an index from your own FASTA file
  3. Run Pipeline — click Start Quantification; processing time scales with sample count and CPU cores
  4. Results — view mapping statistics, expression heatmaps, and download count matrices
  5. Analysis:
    • Fill in sample metadata (conditions, replicates)
    • Run PCA to visualize sample clustering
    • Run differential expression between two conditions with volcano plots
    • Browse to a GMT file (e.g., from MSigDB) to highlight gene sets on the volcano plot
    • Run GSEA to identify enriched pathways across your DE results

Supported file formats

  • .fastq, .fq, .fastq.gz, .fq.gz
  • Paired-end files should end with _1/_2 or _R1/_R2 (e.g., sample_R1.fastq.gz, sample_R2.fastq.gz)

Gene set files

For GSEA and gene set overlay, download GMT files from MSigDB. Recommended collections:

  • h.all — Hallmark gene sets (well-defined biological states/processes)
  • c2.all — Curated gene sets (canonical pathways, chemical/genetic perturbations)
  • c5.go — Gene Ontology gene sets

Output files

Results are saved to ~/Documents/GenomifySeq/results/<run-name>/:

File Description
counts_raw.csv Raw read counts per transcript
counts_tpm.csv TPM-normalized expression values
quant/*/quant.sf Per-sample Salmon quantification output
analysis/pca_plot.png PCA visualization
analysis/pca_plot.pdf Publication-ready PCA plot
analysis/normalized_counts.csv VST-normalized counts for downstream analysis
analysis/pca_data.csv PCA coordinates with metadata
analysis/de/*_volcano.png Volcano plot for each DE comparison
analysis/de/*_all_genes.csv Full DE results (all genes with LFC, p-values)
analysis/de/*_significant_genes.csv Filtered significant DE genes
analysis/de/gsea/gsea_barplot.png GSEA enrichment barplot
analysis/de/gsea/gsea_all_results.csv Full GSEA results for all tested gene sets

Development

To run from source:

git clone https://github.com/garrettc00per/rnaseq_app.git
cd rnaseq_app
./setup.sh        # installs dependencies (~10-15 min, first time only)
./run_app.sh      # launches the app in your browser

setup.sh creates a local Miniforge environment (.miniforge/) inside the project directory, so it won't interfere with any existing conda installation.

Project structure

File Description
app.py Streamlit UI — all pages, tabs, and user interaction
pipeline.py Core pipeline logic — Salmon, FastQC, Trim Galore
analysis.R R script for DESeq2, PCA, GSEA via fgsea
environment.yml Conda environment with all Python + R dependencies
build_dmg.sh Builds the macOS .app bundle and DMG installer
GenomifySeq.app/ macOS app bundle (bundled source is synced from root at DMG build time)

Building the DMG

./build_dmg.sh

This copies the current app.py, pipeline.py, and analysis.R into the app bundle and produces GenomifySeq-Installer-<version>.dmg.

Uninstalling

To fully remove the app:

  1. Open the app → expand Uninstall in the sidebar → click Reveal dependency folder in Finder and delete it (~2 GB)
  2. Drag GenomifySeq.app from Applications to Trash
  3. Optionally delete ~/Documents/GenomifySeq to remove your results and data

Alternatively, double-click Uninstall GenomifySeq.command included in the DMG.

Troubleshooting

"App can't be opened because it is from an unidentified developer" Go to System Settings → Privacy & Security and click Open Anyway

Salmon index build fails on large transcriptomes If your Documents folder is iCloud-synced this should be handled automatically, but disabling iCloud sync for Documents during indexing can help.

R analysis fails

  • Make sure all samples have a condition assigned in the metadata editor
  • At least 2 different conditions must exist for DE analysis
  • Check that the GMT file path is correct for GSEA

Technical details

  • Quantification: Salmon v1.11.4 (quasi-mapping)
  • References: GENCODE transcriptome annotations
  • Gene-level summarization: tximport
  • DE analysis: DESeq2 (Wald test, VST normalization)
  • GSEA: fgsea with MSigDB GMT files
  • Visualization: ggplot2, ggrepel
  • Interface: Streamlit
  • Environment: Self-contained Miniforge installation with Python and R

License

MIT License — free to use and modify.

About

RNA-seq processing app with Salmon quantification - GUI for researchers

Resources

Stars

10 stars

Watchers

0 watching

Forks

Packages

 
 
 

Contributors