Metadata-Version: 2.5
Name: bowside
Version: 0.1.0
Summary: GRN-driven differential equation modeling of cell differentiation.
Project-URL: Repository, https://github.com/janschleicher/bowside
Author: Jan T. Schleicher
Author-email: jan.schleicher@uni-tuebingen.de
License: GPL-3.0 license
License-File: LICENSE
Keywords: GRN,SDE,dynamics,scRNA-seq
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: GNU General Public License v3 (GPLv3)
Classifier: Operating System :: MacOS
Classifier: Operating System :: Unix
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
Requires-Python: >=3.10
Requires-Dist: geomloss
Requires-Dist: matplotlib
Requires-Dist: networkx
Requires-Dist: numpy<2.4
Requires-Dist: pandas<3.0
Requires-Dist: scanpy>=1.10
Requires-Dist: scikit-learn
Requires-Dist: scvelo
Requires-Dist: seaborn
Requires-Dist: torch
Requires-Dist: torchdiffeq
Requires-Dist: torchsde
Requires-Dist: tqdm
Provides-Extra: dev
Requires-Dist: pytest; extra == 'dev'
Requires-Dist: ruff; extra == 'dev'
Provides-Extra: doc
Requires-Dist: myst-parser; extra == 'doc'
Requires-Dist: scanpydoc; extra == 'doc'
Requires-Dist: sphinx; extra == 'doc'
Requires-Dist: sphinx-autoapi; extra == 'doc'
Requires-Dist: sphinx-book-theme; extra == 'doc'
Requires-Dist: sphinx-copybutton; extra == 'doc'
Provides-Extra: opt
Requires-Dist: optuna; extra == 'opt'
Requires-Dist: optuna-dashboard; extra == 'opt'
Description-Content-Type: text/markdown

[![Python 3.11](https://img.shields.io/badge/python-3.11-blue.svg)](https://www.python.org/downloads/release/python-31110/)
[![Python 3.12](https://img.shields.io/badge/python-3.12-blue.svg)](https://www.python.org/downloads/release/python-3120/)
[![Python 3.13](https://img.shields.io/badge/python-3.13-blue.svg)](https://www.python.org/downloads/release/python-31311/)
[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)
[![Code style: ruff](https://img.shields.io/badge/code%20style-ruff-red)](https://github.com/astral-sh/ruff)
[![codecov](https://codecov.io/gh/janschleicher/bowside/graph/badge.svg?token=UqgdiVWAQi)](https://codecov.io/gh/janschleicher/bowside)
[![Python package](https://github.com/janschleicher/bowside/actions/workflows/python-package.yml/badge.svg)](https://github.com/janschleicher/bowside/actions/workflows/python-package.yml)

# bowside

Biologically-inspired Optimization of regulatory Weights for Simulation and Inference via Differential Equations (*bowside*) is a method for GRN-driven mechanistic modeling of cell differentiation.

## Installation

To use *bowside*, we recommend installing it in a fresh virtual environment with Python version ≥3.12.
You can set up the environment as follows (for Python 3.12):

    conda create -n <env_name> python=3.12
    conda activate <env_name>

### From PyPI

You can install the package directly from PyPI:

    pip install bowside

### Latest version from GitHub

Clone the repository:

    git clone git@github.com:janschleicher/bowside.git

Change into the directory and install with pip:

    cd bowside
    pip install -e .

## Contributing

For contributing, you should install `bowside` in development mode:

    pip install -e ".[dev]"

This will install the additional dependencies `ruff` and `pytest`, which are used for formatting and code style, and testing, respectively. Please run these before commiting new code.
