Skip to content

nsbuitrago/rma-kinetics-rs

Repository files navigation

Crates.io Version

RMA Kinetics: Synthetic Serum Reporter Kinetic Models and Analysis Tools

RMA Kinetics is a Rust and Python library of synthetic serum reporter models, specifically for Released Markers of Activity or RMAs.

The core models include:

  • Constitutive: constitutively expressed RMA
  • Tet-Off: doxycycline indueced
  • Chemogenetic: DREADD induced expression
  • Oscillating: proxy for monitoring rapidly changing gene expression

Please see the user guide to learn more. See the marimo notebooks for interactive examples. These can be ran with just notebook <name> or with marimo directly.

Installation

Rust

The Rust crate is available on crates.io. To install the latest version with cargo:

cargo add rma_kinetics

Or add to your Cargo.toml

[dependencies]
rma_kinetics = "0.1.1"

Python

The latest version on PyPI uses the old Python implementation. To use the newer Python bindings, you can build them from source using maturin.

To get started, clone the repository and create a new virtual enviroment: In these examples, we use the uv package manager.

git clone https://github.com/nsbuitrago/rma-kinetics-rs
cd rma-kinetics-rs

uv venv

Then, build the Python package with:

uvx maturin build --features py --release

For development:

uvx maturin develop --uv --features py -m crates/rma-kinetics/Cargo.toml

Compile from Source

For development or other purposes, you may want to build from source. The following steps describe how to compile the Rust and Python libraries:

  1. Install the latest Rust compiler
  2. Install maturin: pip install maturin
  3. Compile the Rust library: cargo build --release
  4. Compile the Python library: maturin build --features py --release

About

Rust + Python library for RMA kinetic models

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors