Skip to content

Repository files navigation

egps-base

egps-base is the open-source base library of the eGPS 2.1 ecosystem. It provides reusable Java components for evolutionary genomics, phylogenetic analysis, sequence processing, tabular data handling, graphics, and small utility tools.

中文版 README

Highlights

  • generic and phylogeny-specific tree structures, codecs, and utilities
  • FASTA, TSV, and multiple-sequence-alignment readers, writers, and helpers
  • BLAST, Pfam, and NCBI taxonomy parsers, plus Ensembl and InterPro integration
  • graphics, tree display, tanglegram, and axis-tick utilities
  • command-line and small GUI convenience tools

Requirements

  • Java 25
  • Maven

Quick Start

mvn compile
mvn test
mvn clean package source:jar

If you want a local runtime dependency directory for CLI usage:

mvn dependency:copy-dependencies -DoutputDirectory=dependency-egps
java -cp "target/classes:dependency-egps/*" cli.tools.ListTools

The command above is for Linux/macOS/WSL (Linux Java). Windows PowerShell/CMD uses ; to separate classpath entries:

java -cp "target/classes;dependency-egps/*" cli.tools.ListTools

dependency:copy-dependencies only copies dependencies; it does not build or copy this project's JAR. In a deployed distribution, dependency-egps contains both this project's JAR and its dependency JARs, so run the following from the deployment directory (a single classpath entry works across platforms):

java -cp "dependency-egps/*" gui.simple.tools.FilePathNormalizedGUI

Repository helper scripts:

./build_jar.sh /absolute/output_dir
./build_jar_and_remove.sh

build_jar.sh packages the current target/classes tree, so compile or package first when needed.

Maven produces target/egps-base-0.0.1-SNAPSHOT.jar by default; deployment scripts produce egps-base-0.0.1.jar. The different names are intentional. The .sh scripts require Bash, and the deployment script's /mnt/c/... paths are intended for WSL.

Documentation

Project Position

  • This repository is the reusable low-level layer of eGPS 2.1.
  • The main GUI application layer is not part of this repository.
  • The GUI framework is consolidated in egps-shell, which depends on this library.
  • Source-oriented package guides live under docs/.

About

The core infrastructure of the eGPS v2 project. See the `docs` subdirectory for complete class documentation.

Topics

Resources

Stars

5 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages