![Pip installation](https://github.com/MannLabs/structuremap/workflows/Default%20installation%20and%20tests/badge.svg)
![GUI and PyPi releases](https://github.com/MannLabs/structuremap/workflows/Publish%20on%20PyPi%20and%20release%20on%20GitHub/badge.svg)
[![Downloads](https://pepy.tech/badge/structuremap)](https://pepy.tech/project/structuremap)
[![Downloads](https://pepy.tech/badge/structuremap/month)](https://pepy.tech/project/structuremap)
[![Downloads](https://pepy.tech/badge/structuremap/week)](https://pepy.tech/project/structuremap)
# structuremap
An open-source Python package for integrating information from predicted protein structures deposited in the [AlphaFold database](https://alphafold.ebi.ac.uk/) with proteomics data and specifically with post-translational modifications (PTMs). PTMs on the 3D protein structures can be visualised by [AlphaMap](https://github.com/MannLabs/alphamap). To enable all hyperlinks in this document, please view it at [GitHub](https://github.com/MannLabs/structuremap).
* [**About**](#about)
* [**License**](#license)
* [**Installation**](#installation)
* [**Pip installer**](#pip)
* [**Developer installer**](#developer)
* [**Usage**](#usage)
* [**Python and jupyter notebooks**](#python-and-jupyter-notebooks)
* [**Troubleshooting**](#troubleshooting)
* [**Citing structuremap**](#citing-structuremap)
* [**How to contribute**](#how-to-contribute)
* [**Changelog**](#changelog)
---
## About
An open-source Python package for integrating information from predicted protein structures deposited in the [AlphaFold database](https://alphafold.ebi.ac.uk/) with proteomics data and specifically with post-translational modifications (PTMs). PTMs on 3D protein structures can be visualised by [AlphaMap](https://github.com/MannLabs/alphamap).
---
## License
structuremap was developed by the [Mann Labs at the Max Planck Institute of Biochemistry](https://www.biochem.mpg.de/mann) and the [University of Copenhagen](https://www.cpr.ku.dk/research/proteomics/mann/) and is freely available with an [Apache License](LICENSE.txt). External Python packages (available in the [requirements](requirements) folder) have their own licenses, which can be consulted on their respective websites.
---
## Installation
structuremap can be installed and used on all major operating systems (Windows, macOS and Linux).
There are two different types of installation possible:
* [**Pip installer:**](#pip) Choose this installation if you want to use structuremap as a Python package in an existing Python 3.8 environment (e.g. a Jupyter notebook). If needed, the GUI and CLI can be installed with pip as well.
* [**Developer installer:**](#developer) Choose this installation if you are familiar with CLI tools, [conda](https://docs.conda.io/en/latest/) and Python. This installation allows access to all available features of structuremap and even allows to modify its source code directly. Generally, the developer version of structuremap outperforms the precompiled versions which makes this the installation of choice for high-throughput experiments.
### Pip
structuremap can be installed in an existing Python 3.8 environment with a single `bash` command. *This `bash` command can also be run directly from within a Jupyter notebook by prepending it with a `!`*:
```bash
pip install structuremap
```
Installing structuremap like this avoids conflicts when integrating it in other tools, as this does not enforce strict versioning of dependancies. However, if new versions of dependancies are released, they are not guaranteed to be fully compatible with structuremap. While this should only occur in rare cases where dependencies are not backwards compatible, you can always force structuremap to use dependancy versions which are known to be compatible with:
```bash
pip install "structuremap[stable]"
```
NOTE: You might need to run `pip install pip==21.0` before installing structuremap like this. Also note the double quotes `"`.
For those who are really adventurous, it is also possible to directly install any branch (e.g. `@development`) with any extras (e.g. `#egg=structuremap[stable,development-stable]`) from GitHub with e.g.
```bash
pip install "git+https://github.com/MannLabs/structuremap.git@development#egg=structuremap[stable,development-stable]"
```
### Developer
structuremap can also be installed in editable (i.e. developer) mode with a few `bash` commands. This allows to fully customize the software and even modify the source code to your specific needs. When an editable Python package is installed, its source code is stored in a transparent location of your choice. While optional, it is advised to first (create and) navigate to e.g. a general software folder:
```bash
mkdir ~/folder/where/to/install/software
cd ~/folder/where/to/install/software
```
***The following commands assume you do not perform any additional `cd` commands anymore***.
Next, download the structuremap repository from GitHub either directly or with a `git` command. This creates a new structuremap subfolder in your current directory.
```bash
git clone https://github.com/MannLabs/structuremap.git
```
For any Python package, it is highly recommended to use a separate [conda virtual environment](https://docs.conda.io/en/latest/), as otherwise *dependancy conflicts can occur with already existing packages*.
```bash
conda create --name structuremap python=3.8 -y
conda activate structuremap
```
Finally, structuremap and all its [dependancies](requirements) need to be installed. To take advantage of all features and allow development (with the `-e` flag), this is best done by also installing the [development dependencies](requirements/requirements_development.txt) instead of only the [core dependencies](requirements/requirements.txt):
```bash
pip install -e "./structuremap[development]"
```
By default this installs loose dependancies (no explicit versioning), although it is also possible to use stable dependencies (e.g. `pip install -e "./structuremap[stable,development-stable]"`).
***By using the editable flag `-e`, all modifications to the [structuremap source code folder](structuremap) are directly reflected when running structuremap. Note that the structuremap folder cannot be moved and/or renamed if an editable version is installed. In case of confusion, you can always retrieve the location of any Python module with e.g. the command `import module` followed by `module.__file__`.***
---
## Usage
### Python and Jupyter notebooks
structuremap can be imported as a Python package into any Python script or notebook with the command `import structuremap`.
A brief [Jupyter notebook tutorial](nbs/tutorial.ipynb) on how to use the API is also present in the [nbs folder](nbs).
---
## Troubleshooting
In case of issues, check out the following:
* [Issues](https://github.com/MannLabs/structuremap/issues): Try a few different search terms to find out if a similar problem has been encountered before
* [Discussions](https://github.com/MannLabs/structuremap/discussions): Check if your problem or feature requests has been discussed before.
---
## Citing structuremap
If you use structuremap for your work, please cite our paper on biorxiv: https://www.biorxiv.org/content/10.1101/2022.02.23.481596v1
---
## How to contribute
If you like this software, you can give us a [star](https://github.com/MannLabs/structuremap/stargazers) to boost our visibility! All direct contributions are also welcome. Feel free to post a new [issue](https://github.com/MannLabs/structuremap/issues) or clone the repository and create a [pull request](https://github.com/MannLabs/structuremap/pulls) with a new branch. For an even more interactive participation, check out the [discussions](https://github.com/MannLabs/structuremap/discussions) and the [the Contributors License Agreement](misc/CLA.md).
---
## Changelog
See the [HISTORY.md](HISTORY.md) for a full overview of the changes made in each version.
Raw data
{
"_id": null,
"home_page": "https://github.com/MannLabs/structuremap",
"name": "structuremap",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.8,<3.10",
"maintainer_email": "",
"keywords": "bioinformatics,software,AlphaPept ecosystem",
"author": "Isabell Bludau & Mann Labs",
"author_email": "opensource@alphapept.com",
"download_url": "https://files.pythonhosted.org/packages/e9/e9/e1b543c8983b21c48e30ba216fb12143f83b4ceed24d2a7aa05599f569d4/structuremap-0.0.9.tar.gz",
"platform": null,
"description": "![Pip installation](https://github.com/MannLabs/structuremap/workflows/Default%20installation%20and%20tests/badge.svg)\n![GUI and PyPi releases](https://github.com/MannLabs/structuremap/workflows/Publish%20on%20PyPi%20and%20release%20on%20GitHub/badge.svg)\n[![Downloads](https://pepy.tech/badge/structuremap)](https://pepy.tech/project/structuremap)\n[![Downloads](https://pepy.tech/badge/structuremap/month)](https://pepy.tech/project/structuremap)\n[![Downloads](https://pepy.tech/badge/structuremap/week)](https://pepy.tech/project/structuremap)\n\n\n# structuremap\nAn open-source Python package for integrating information from predicted protein structures deposited in the [AlphaFold database](https://alphafold.ebi.ac.uk/) with proteomics data and specifically with post-translational modifications (PTMs). PTMs on the 3D protein structures can be visualised by [AlphaMap](https://github.com/MannLabs/alphamap). To enable all hyperlinks in this document, please view it at [GitHub](https://github.com/MannLabs/structuremap).\n\n* [**About**](#about)\n* [**License**](#license)\n* [**Installation**](#installation)\n * [**Pip installer**](#pip)\n * [**Developer installer**](#developer)\n* [**Usage**](#usage)\n * [**Python and jupyter notebooks**](#python-and-jupyter-notebooks)\n* [**Troubleshooting**](#troubleshooting)\n* [**Citing structuremap**](#citing-structuremap)\n* [**How to contribute**](#how-to-contribute)\n* [**Changelog**](#changelog)\n\n---\n## About\n\nAn open-source Python package for integrating information from predicted protein structures deposited in the [AlphaFold database](https://alphafold.ebi.ac.uk/) with proteomics data and specifically with post-translational modifications (PTMs). PTMs on 3D protein structures can be visualised by [AlphaMap](https://github.com/MannLabs/alphamap).\n\n---\n## License\n\nstructuremap was developed by the [Mann Labs at the Max Planck Institute of Biochemistry](https://www.biochem.mpg.de/mann) and the [University of Copenhagen](https://www.cpr.ku.dk/research/proteomics/mann/) and is freely available with an [Apache License](LICENSE.txt). External Python packages (available in the [requirements](requirements) folder) have their own licenses, which can be consulted on their respective websites.\n\n---\n## Installation\n\nstructuremap can be installed and used on all major operating systems (Windows, macOS and Linux).\nThere are two different types of installation possible:\n\n* [**Pip installer:**](#pip) Choose this installation if you want to use structuremap as a Python package in an existing Python 3.8 environment (e.g. a Jupyter notebook). If needed, the GUI and CLI can be installed with pip as well.\n* [**Developer installer:**](#developer) Choose this installation if you are familiar with CLI tools, [conda](https://docs.conda.io/en/latest/) and Python. This installation allows access to all available features of structuremap and even allows to modify its source code directly. Generally, the developer version of structuremap outperforms the precompiled versions which makes this the installation of choice for high-throughput experiments.\n\n### Pip\n\nstructuremap can be installed in an existing Python 3.8 environment with a single `bash` command. *This `bash` command can also be run directly from within a Jupyter notebook by prepending it with a `!`*:\n\n```bash\npip install structuremap\n```\n\nInstalling structuremap like this avoids conflicts when integrating it in other tools, as this does not enforce strict versioning of dependancies. However, if new versions of dependancies are released, they are not guaranteed to be fully compatible with structuremap. While this should only occur in rare cases where dependencies are not backwards compatible, you can always force structuremap to use dependancy versions which are known to be compatible with:\n\n```bash\npip install \"structuremap[stable]\"\n```\n\nNOTE: You might need to run `pip install pip==21.0` before installing structuremap like this. Also note the double quotes `\"`.\n\nFor those who are really adventurous, it is also possible to directly install any branch (e.g. `@development`) with any extras (e.g. `#egg=structuremap[stable,development-stable]`) from GitHub with e.g.\n\n```bash\npip install \"git+https://github.com/MannLabs/structuremap.git@development#egg=structuremap[stable,development-stable]\"\n```\n\n### Developer\n\nstructuremap can also be installed in editable (i.e. developer) mode with a few `bash` commands. This allows to fully customize the software and even modify the source code to your specific needs. When an editable Python package is installed, its source code is stored in a transparent location of your choice. While optional, it is advised to first (create and) navigate to e.g. a general software folder:\n\n```bash\nmkdir ~/folder/where/to/install/software\ncd ~/folder/where/to/install/software\n```\n\n***The following commands assume you do not perform any additional `cd` commands anymore***.\n\nNext, download the structuremap repository from GitHub either directly or with a `git` command. This creates a new structuremap subfolder in your current directory.\n\n```bash\ngit clone https://github.com/MannLabs/structuremap.git\n```\n\nFor any Python package, it is highly recommended to use a separate [conda virtual environment](https://docs.conda.io/en/latest/), as otherwise *dependancy conflicts can occur with already existing packages*.\n\n```bash\nconda create --name structuremap python=3.8 -y\nconda activate structuremap\n```\n\nFinally, structuremap and all its [dependancies](requirements) need to be installed. To take advantage of all features and allow development (with the `-e` flag), this is best done by also installing the [development dependencies](requirements/requirements_development.txt) instead of only the [core dependencies](requirements/requirements.txt):\n\n```bash\npip install -e \"./structuremap[development]\"\n```\n\nBy default this installs loose dependancies (no explicit versioning), although it is also possible to use stable dependencies (e.g. `pip install -e \"./structuremap[stable,development-stable]\"`).\n\n***By using the editable flag `-e`, all modifications to the [structuremap source code folder](structuremap) are directly reflected when running structuremap. Note that the structuremap folder cannot be moved and/or renamed if an editable version is installed. In case of confusion, you can always retrieve the location of any Python module with e.g. the command `import module` followed by `module.__file__`.***\n\n---\n## Usage\n\n### Python and Jupyter notebooks\n\nstructuremap can be imported as a Python package into any Python script or notebook with the command `import structuremap`.\n\nA brief [Jupyter notebook tutorial](nbs/tutorial.ipynb) on how to use the API is also present in the [nbs folder](nbs).\n\n---\n## Troubleshooting\n\nIn case of issues, check out the following:\n\n* [Issues](https://github.com/MannLabs/structuremap/issues): Try a few different search terms to find out if a similar problem has been encountered before\n* [Discussions](https://github.com/MannLabs/structuremap/discussions): Check if your problem or feature requests has been discussed before.\n\n---\n## Citing structuremap\n\nIf you use structuremap for your work, please cite our paper on biorxiv: https://www.biorxiv.org/content/10.1101/2022.02.23.481596v1\n\n---\n## How to contribute\n\nIf you like this software, you can give us a [star](https://github.com/MannLabs/structuremap/stargazers) to boost our visibility! All direct contributions are also welcome. Feel free to post a new [issue](https://github.com/MannLabs/structuremap/issues) or clone the repository and create a [pull request](https://github.com/MannLabs/structuremap/pulls) with a new branch. For an even more interactive participation, check out the [discussions](https://github.com/MannLabs/structuremap/discussions) and the [the Contributors License Agreement](misc/CLA.md).\n\n---\n## Changelog\n\nSee the [HISTORY.md](HISTORY.md) for a full overview of the changes made in each version.\n",
"bugtrack_url": null,
"license": "Apache",
"summary": "An open-source Python package of the AlphaPept ecosystem",
"version": "0.0.9",
"split_keywords": [
"bioinformatics",
"software",
"alphapept ecosystem"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "9d43e1610afde8d92b4b595765035aca8f641221e9d44d17da04cdd04f681c56",
"md5": "dbfd2fd9509bdd8dda48839ce0a5a6b1",
"sha256": "7ee7031778a446ad6699337f91328b9c4aa2aac7cac9474a2749373fa811b697"
},
"downloads": -1,
"filename": "structuremap-0.0.9-py3-none-any.whl",
"has_sig": false,
"md5_digest": "dbfd2fd9509bdd8dda48839ce0a5a6b1",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8,<3.10",
"size": 29020,
"upload_time": "2023-02-09T14:59:24",
"upload_time_iso_8601": "2023-02-09T14:59:24.858936Z",
"url": "https://files.pythonhosted.org/packages/9d/43/e1610afde8d92b4b595765035aca8f641221e9d44d17da04cdd04f681c56/structuremap-0.0.9-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e9e9e1b543c8983b21c48e30ba216fb12143f83b4ceed24d2a7aa05599f569d4",
"md5": "154fe491802a0be69f83b486437d8a84",
"sha256": "64adb463e55d5c32a31aec985f0fd05f91b3f022da95acb45796165eefb4a840"
},
"downloads": -1,
"filename": "structuremap-0.0.9.tar.gz",
"has_sig": false,
"md5_digest": "154fe491802a0be69f83b486437d8a84",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8,<3.10",
"size": 30475,
"upload_time": "2023-02-09T14:59:26",
"upload_time_iso_8601": "2023-02-09T14:59:26.875695Z",
"url": "https://files.pythonhosted.org/packages/e9/e9/e1b543c8983b21c48e30ba216fb12143f83b4ceed24d2a7aa05599f569d4/structuremap-0.0.9.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-02-09 14:59:26",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "MannLabs",
"github_project": "structuremap",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "structuremap"
}