Skip to main content

Comprehensive phylogenetics runtime for tree analysis, native inference, comparative models, parsimony, and evidence-linked reporting.

Project description

bijux-phylogenetics

Python 3.11+ License: Apache-2.0 Verify Release PyPI Release GHCR Release GitHub Docs

bijux-phylogenetics phylogenetic

bijux-phylogenetics phylogenetic

bijux-phylogenetics docs phylogenetic docs

Canonical runtime package for the bijux-phylogenetics repository.

This package is the public Python API and CLI for tree validation, alignment handling, comparative trait analysis, ancestral-state reconstruction, discrete-state evolution analysis, external-engine orchestration, native likelihood and inference, Bayesian posterior summarization, diversification review, evidence bundles, explicit parsimony scoring, and HTML report generation.

Choose this package when you want the full runtime contract rather than the shorter compatibility alias.

Package Structure At A Glance

  • runtime package
  • CLI workflows
  • workflow Python API
  • native runtime contracts
  • likelihood foundations
  • maximum-likelihood inference
  • Bayesian inference
  • benchmark contracts

Install

bijux-phylogenetics supports Python 3.11 and newer.

python3.11 -m pip install bijux-phylogenetics
bijux-phylogenetics --help

The installed runtime also ships packaged example inputs:

from pathlib import Path

from bijux_phylogenetics.core import copy_example_inputs

copy_example_inputs(Path("artifacts/example-inputs"))

What This Package Already Covers

Capability family Examples
Trees validation, rootedness review, support normalization, clade extraction, MRCA lookup, comparison, rendering, tree-set inspection
Alignments FASTA validation, trimming, coding checks, translation, partition-aware input handling
Native likelihood nucleotide, protein, codon, and discrete Mk finite-state likelihood foundations
Native inference native maximum-likelihood tree inference results and native Bayesian public inference entry points
Comparative analysis PGLS, signal, Brownian and OU modeling, discrete-state evolution, comparative diagnostics
Ancestral analysis continuous and discrete reconstruction, uncertainty ledgers, transition review, report artifacts
Parsimony Fitch, Wagner, Sankoff, Dollo, Camin-Sokal, ACCTRAN, DELTRAN, bootstrap, jackknife, NNI, SPR, ratchet
Reports and artifacts reviewer-facing TSV, JSON, HTML, manifest, benchmark, and evidence-linked bundle surfaces

Why The Package Is Deeper Than A Typical Wrapper Toolkit

The package surface is broad because it joins several families that often live in separate projects:

  • owned tree and topology semantics
  • workflow APIs that emit typed, reviewable results
  • native maximum-likelihood and supported native Bayesian public surfaces
  • comparative, ancestral, and parsimony families
  • packaged datasets, example inputs, reports, and benchmark contracts

Why This Package Is Not Just A Wrapper

  • it owns the PhyloTree runtime and the topology, support, and tree-distance semantics that sit underneath multiple workflows
  • it exposes typed Python workflow results with stable artifact writers instead of only printing shell output
  • it includes native maximum-likelihood tree inference results and native Bayesian public inference entry points as documented public surfaces
  • it keeps wrapper-backed orchestration honest by separating native ownership from external-engine execution

Flagship User Paths

  • use the CLI when you want one governed workflow with durable files
  • use bijux_phylogenetics.api when you want typed workflow results in Python
  • use native likelihood or Bayesian modules when you want lower-level owned runtime contracts
  • use the benchmark and evidence-book guides when you need trust-oriented review rather than only execution

Public Runtime Families

The public runtime families are:

  • CLI workflows
  • workflow Python APIs
  • native runtime modules
  • comparative analysis
  • reports and artifacts

Python Workflow Surface

The stable notebook-and-pipeline surface lives under bijux_phylogenetics.api.

It exposes typed workflow results for:

  • FASTA validation
  • multiple-sequence alignment
  • alignment trimming
  • full FASTA-to-tree execution
  • maximum-likelihood tree inference
  • branch-support estimation
  • topology comparison
  • PGLS comparative modeling
  • discrete ancestral reconstruction
  • reviewer-facing report generation
  • config-driven workflow execution
from pathlib import Path

from bijux_phylogenetics.api import (
    render_report_workflow,
    run_comparative_model_workflow,
    run_sequence_to_tree_workflow,
)

workflow = run_sequence_to_tree_workflow(
    Path("dataset/sequences.fasta"),
    out_dir=Path("artifacts/sequence-to-tree"),
    sequence_type="dna",
)

comparative = run_comparative_model_workflow(
    Path("dataset/tree.nwk"),
    Path("dataset/traits.tsv"),
    response="response",
    predictors=["predictor_one"],
    lambda_value=1.0,
)

report = render_report_workflow(
    tree_path=workflow.output_paths["tree"],
    alignment_path=workflow.output_paths["trimmed_alignment"],
    traits_path=Path("dataset/traits.tsv"),
    metadata_path=Path("dataset/metadata.tsv"),
    out_path=Path("artifacts/sequence-to-tree/report.html"),
)

workflow.write_json(Path("artifacts/sequence-to-tree/workflow.json"))
workflow.write_tsv(Path("artifacts/sequence-to-tree/workflow.tsv"))
comparative.write_tsv(Path("artifacts/comparative-model.tsv"))

Native Inference And Benchmark Surfaces

Native Inference And Benchmark Surfaces are part of the public package contract.

Public native surfaces include:

  • bijux_phylogenetics.phylo.likelihood.infer_nucleotide_maximum_likelihood_result(...)
  • bijux_phylogenetics.phylo.likelihood.infer_nucleotide_maximum_likelihood_result_from_alignment(...)
  • bijux_phylogenetics.phylo.likelihood.NucleotideMaximumLikelihoodResult
  • bijux_phylogenetics.bayesian.run_bayesian_inference(...)
  • bijux_phylogenetics.benchmark.benchmark_native_maximum_likelihood_suite(...)

These surfaces matter because the package now owns native maximum-likelihood tree inference results, native Bayesian public inference entry points, and benchmark review contracts in addition to the higher-level workflow wrappers.

Representative public runtime surfaces include:

  • bijux_phylogenetics.api.run_sequence_to_tree_workflow(...)
  • bijux_phylogenetics.api.run_comparative_model_workflow(...)
  • bijux_phylogenetics.compare.topology
  • bijux_phylogenetics.phylo.likelihood
  • bijux_phylogenetics.bayesian
  • bijux_phylogenetics.benchmark

Public Reading Rule

Runtime breadth and evidence closure are related, but they are not the same claim.

  • A documented runtime surface is usable.
  • A native surface is locally implemented rather than only wrapped.
  • A study or benchmark surface explains how much trust that claim currently carries.

That separation is deliberate. The package can expose substantial runtime depth without pretending that every surrounding scientific claim is already closed by the evidence-book.

Read This Next

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bijux_phylogenetics-0.1.2.tar.gz (2.5 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bijux_phylogenetics-0.1.2-py3-none-any.whl (3.7 MB view details)

Uploaded Python 3

File details

Details for the file bijux_phylogenetics-0.1.2.tar.gz.

File metadata

  • Download URL: bijux_phylogenetics-0.1.2.tar.gz
  • Upload date:
  • Size: 2.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for bijux_phylogenetics-0.1.2.tar.gz
Algorithm Hash digest
SHA256 475906eeffbb70557a8044426bcc3faf68db85fc245281482f3c12ef426fe527
MD5 d58aefb25814fa8259a1d66e0d87cd5c
BLAKE2b-256 2ec7c74263985f0132ebee6a85bc4c3e0f06645992d47f8ad7b7c3c31b03cdc6

See more details on using hashes here.

Provenance

The following attestation bundles were made for bijux_phylogenetics-0.1.2.tar.gz:

Publisher: release-pypi.yml on bijux/bijux-phylogenetics

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file bijux_phylogenetics-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for bijux_phylogenetics-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 0dcf2c0d2cfad12409e5d26e8de774eb7700642065d1fac2dbd744718dc4667c
MD5 af1b46eec14ec68f071967512241bdb8
BLAKE2b-256 d725759905071d912731f5dff9957aa5894e3d02e81a2610fcacc1f216117dde

See more details on using hashes here.

Provenance

The following attestation bundles were made for bijux_phylogenetics-0.1.2-py3-none-any.whl:

Publisher: release-pypi.yml on bijux/bijux-phylogenetics

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page