Software

Last updated: March 17, 2025

Our lab develops computational tools that enable innovative approaches to ecological and evolutionary research. We're committed to open-source software development and creating accessible tools for the scientific community.

R Packages Developed by Our Lab

We develop and maintain several R packages designed to support research in ecological and evolutionary biology:

As Main Developer (in development)

slimr

CRAN status

An R package allowing users to write, run, and post-process population genomics simulations for the SLiM simulation framework. This package enables the integration of data with tailor-made population genomic simulations over space and time.

Key Features:

  • Write SLiM scripts directly in R
  • Seamlessly integrate real-world data into simulations
  • Analyze and visualize simulation results
  • Easily parallelize simulations

Citation: Dinnage, R., Sarre, S.D., Duncan, R.P., Dickman, C.R., Edwards, S.V., Greenville, A.C., Wardle, G.M. and Gruber, B. (2024). slimr: An R package for tailor‐made integrations of data in population genomic simulations over space and time. Molecular Ecology Resources, 24(3), e13916.

phyf

R-Universe status

An R package implementing a new data format for phylogenies based on what we call a 'phylogenetic flow'. It allows simple linking with data associated with a phylogeny and is compatible with tidyverse packages. It supports the phylogenetic comparative methods package fibre.

Key Features:

  • Efficient phylogenetic data structure
  • Seamless integration with tidyverse workflow
  • Enhanced data manipulation for phylogenetic data
  • Support for extremely large phylogenies

fibre

R-Universe status

An R package implementing a new phylogenetic comparative method that is extremely computationally efficient, allowing the modelling of up to thousands of traits on phylogenies with up to hundreds of thousands of tips. The method is called phylogenetic branch regression (PhyBR: fibre is a phonetic respelling).

Key Features:

  • Extremely fast phylogenetic comparative methods
  • Handles thousands of traits on large phylogenies
  • Full Bayesian implementation
  • Scales to hundreds of thousands of taxa

As Co-Developer

phyr

CRAN status

An R package for community phylogenetics including community phylogenetic linear mixed models developed with Daijiang Li, Lucas Nell, and Anthony Ives.

My Contribution: I developed a Bayesian version of the community phylogenetic linear mixed models, using INLA as an implementation.

Citation: Li, D, Dinnage, R, Nell, LR, Helmus, MR, Ives, AR. (2020). phyr: An r package for phylogenetic species-distribution modelling in ecological communities. Methods in Ecology and Evolution. 11: 1455–1463.

ENMTools

CRAN status

An R package for Environmental Niche Modelling developed with Dan Warren, Nick Matzke, Marcel Cardillo, John Baumgartner, Linda Beaumont, Marianna Simões, and others.

My Contribution: I added the ability for ENMTools to fit point process models of species distributions using the ppmlasso package and developed functions for interactive visualization of results using leaflet maps.

Citation: Warren, D.L., Matzke, N.J., Cardillo, M., Baumgartner, J.B., Beaumont, L.J., Turelli, M., Glor, R.E., Huron, N.A., Simões, M., Iglesias, T.L., Piquet, J.C. and Dinnage, R. (2021), ENMTools 1.0: an R package for comparative ecological biogeography. Ecography, 44: 504-511.

Current Development

We are actively developing new computational tools and expanding our existing packages:

NicheFlow

Part of our NSF-funded research to develop foundation models for ecology, NicheFlow represents a new approach to species distribution modeling using deep generative models. The project aims to create tools that are both powerful and accessible for conservation planning.

PhenoVision

A framework for automating and delivering research-ready plant phenology data from field images, developed in collaboration with the NSF-funded Phenobase project. This system processes millions of images to detect reproductive structures with exceptional accuracy.

Software Development Philosophy

Our approach to software development emphasizes:

  1. Open Science - All our tools are open-source and freely available
  2. User Accessibility - We design tools to be usable by researchers with varying computational backgrounds
  3. Computational Efficiency - Our methods are optimized to handle large, complex biological datasets
  4. Integration - We create tools that work well with existing research workflows and data formats
  5. Documentation - Comprehensive documentation and examples to facilitate adoption

Getting Involved

We welcome contributions to our software projects! If you're interested in contributing or have suggestions for improvements, please visit our GitHub repositories or contact us directly.

Visit our GitHub page →