1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125
|

# MacSyLib
MacSyLib is a python package library that allow to model and detect macromolecular systems, genetic pathways…
by similarity search in prokaryotes datasets.
[](https://github.com/gem-pasteur/macsylib/actions/workflows/testing.yml)
[](http://macsylib.readthedocs.org/en/latest/#)
[](https://pypi.org/project/macsylib/)
[](https://opensource.org/licenses/GPL-3.0)
[](https://pypi.org/project/macsylib/)
[](https://github.com/bioconda/bioconda-recipes/tree/master/recipes/macsylib)
[](https://archive.softwareheritage.org/browse/origin/?origin_url=https://github.com/gem-pasteur/macsylib)
[](https://archive.softwareheritage.org/swh:1:dir:cbb7c2e40ba02825297590edf6734ee64800d3e1;origin=https://github.com/gem-pasteur/macsylib;visit=swh:1:snp:c1e51a6ffb6ac45cae6aecde26217fa05003f225;anchor=swh:1:rev:5da144b39117f614543edfc5b06aba099d97f586)
[](https://www.bestpractices.dev/projects/10994)
[](https://fairsoftwarechecklist.net/v0.2?f=31&a=32113&i=32321&r=133)
## Citations
MacSyFinder v2:
Néron, Bertrand; Denise, Rémi; Coluzzi, Charles; Touchon, Marie; Rocha, Eduardo P.C.; Abby, Sophie S.
MacSyFinder v2: Improved modelling and search engine to identify molecular systems in genomes.
Peer Community Journal, Volume 3 (2023), article no. e28. doi : 10.24072/pcjournal.250.
https://peercommunityjournal.org/articles/10.24072/pcjournal.250/
## Licence:
MacSyLib is developed and released under [](https://opensource.org/licenses/GPL-3.0)
## Installation
> [!IMPORTANT]
> MacSyLib requires hmmer >= 3.1 (http://hmmer.org/).
> You need to install hmmer by yourself (except if you install macsylib via *conda/mamba*).
> If you are a modeler, you will need also `git`
> The other dependencies are managed by the python package manager *pip*.
### Installation from distribution
We encourage to install macsylib in a [virtualenv](https://virtualenv.pypa.io/en/latest/)
After creating a virtualenv dedicated to MacSyLib and activating it
python3 -m venv my_project
cd my_project
source bin/activate
you can install macsylib as described below:
We distinguish 3 kind of MacSyLib users:
- The **end user**, who want to analyse it's data with the library
- The **modeler**, who want to modelize new macromolecular systems
- The **developer** who want to add or fix methods in the macsylib code
By default the installation is for the end user, if you are modeler or developer there is a specific pip target.
For instance for the *modelers*
```bash
python -m pip install .[model]
```
For the *developpers*
```bash
python -m pip install -e .[dev]
```
For someone who is both *developper* and *modeler*
```bash
python -m pip install -e [dev,model]
```
For the developers:
Once you have installed macsylib do not forget to install pre-commit hooks
```bash
pre-commit install
```
## Models installation
Models are no longer shipped along macsyfinder nor macsylib packages.
To install Models you can use `msl_data` (shipped with MacSyLib).
*msl_data* (formely *macsydata*) allow to manage models stored in [macsy-models](https://github.com/macsy-models).
Below some most useful commands.
* available: List Models available on macsy-models.
* search: Discover new packages.
* install: Install or upgarde packages.
* uninstall: Uninstall packages.
* cite: How to cite a package.
* ...
For complete documentation see
[macsydata section on readthedoc](https://macsylib.readthedocs.io/en/latest/user_guide/installation.html#models-installation-with-macsydata)
For models not stored in macsy-models the commands *available*, *search*, *installation from remote* or *upgrade from remote*
are **NOT** available.
For models **Not** stored in *macsy-models*, you have to manage them semi-manually.
Download the archive (do not unarchive it), then use *msl_data* for the installation.
## Use MacSyLib
import macsylib
## Contributing
We encourage contributions, bug report, enhancement ...
But before to do that, we encourage to read [the contributing guide](CONTRIBUTING.md).
## Contributors
[List of all people who participated in the macsylib project](CONTRIBUTORS.md).
|