diff --git a/LICENSE b/LICENSE new file mode 100644 index 00000000..a0a97104 --- /dev/null +++ b/LICENSE @@ -0,0 +1,30 @@ +BSD 3-Clause License + +Copyright (c) 2025 - present, The pyaptamer developers. + +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + +* Neither the name of the copyright holder nor the names of its + contributors may be used to endorse or promote products derived from + this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/README.md b/README.md index ecb6c9cc..7fb23291 100644 --- a/README.md +++ b/README.md @@ -1,36 +1,95 @@ -### Repository of the "AI for drug discovery" project with GC.OS and ecoSPECS +# pyaptamer - AI for aptamer discovery -Project board: https://github.com/orgs/gc-os-ai/projects/1 +### sponsored by ecoSPECS -Issue tracker: https://github.com/gc-os-ai/pyaptamer/issues +The python library for easy aptamer design. +| | **[Tutorials](https://github.com/gc-os-ai/pyaptamer/tree/main/examples)** Β· **[Issue Tracker](https://github.com/gc-os-ai/pyaptamer/issues)** Β· **[Project Board](https://github.com/orgs/gc-os-ai/projects/1)** | +|---|---| +| **Open Source** | [![BSD 3-clause](https://img.shields.io/badge/License-BSD%203--Clause-blue.svg)](https://github.com/gc-os-ai/pyaptamer/blob/main/LICENSE) [![GC.OS Sponsored](https://img.shields.io/badge/GC.OS-Sponsored%20Project-orange.svg?style=flat&colorA=0eac92&colorB=2077b4)](https://gc-os-ai.github.io/) | | +| **Community** | [![!discord](https://img.shields.io/static/v1?logo=discord&label=discord&message=chat&color=lightgreen)](https://discord.gg/7uKdHfdcJG) [![!slack](https://img.shields.io/static/v1?logo=linkedin&label=LinkedIn&message=news&color=lightblue)](https://www.linkedin.com/company/german-center-for-open-source-ai/) | +| **CI/CD** | [![github-actions](https://img.shields.io/github/actions/workflow/status/gc-os-ai/pyaptamer/release.yml?logo=github)](https://github.com/sktime/pytorch-forecasting/actions/workflows/pypi_release.yml) | +| **Code** | [![!pypi](https://img.shields.io/pypi/v/pytorch-forecasting?color=orange)](https://pypi.org/project/pyaptamer/) [![!python-versions](https://img.shields.io/pypi/pyversions/pyaptamer)](https://www.python.org/) [![!black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black) | -#### Team +## 🌟 Features + +- βœ… aptamer design and optimization algorithms +- βœ… feature extraction from proteins and compounds +- βœ… compatible with `pdb` and `biopython` +- βœ… `scikit-learn`-like API - standardized and composable +- πŸ› οΈ Easily extendable with plugins +- πŸ“¦ Minimal dependencies + +NOTE: the package is in early development and not 100% feature complete - contributions appreciated! + +--- + +## πŸ› οΈ Usage + +```python -##### GC.OS +to be completed +``` -Franz Kiraly ([@fkiraly](https://www.github.com/fkiraly)) - primary point of contact and tech contributor +--- -Simon Blanke ([@simonblanke](https://www.github.com/simonblanke)) - advisory, optimization algorithms +## ⚑ Installation +### Stable version from pip -##### ecoSPECS +```bash +pip install pyaptamer +``` -Dennis Kubiczek ([@KubiczekD](https://www.github.com/KubiczekD)) tech lead and primary point of contact: +### Latest unstable version -Jakob Birke ([@jabirke](https://www.github.com/jabirke)) - contributor and domain expert +```bash +# Clone the repository +git clone https://github.com/gc-os-ai/pyaptamer.git -Kerstin Moser ([@KerstinMoser](https://www.github.com/KerstinMoser)) - stakeholder, head of R&D +# Install dependencies +pip install -e . # latest version +# or editable developer install +pip install -e ".[dev]" +``` +--- -##### ESoC +## 🀝 Contributing -Franz Kiraly ([@fkiraly](https://www.github.com/fkiraly)) - primary point of contact for ESoC +Contributions are welcome! πŸŽ‰ -Avinab Neogy ([@avinab-neogy](https://www.github.com/avinab-neogy)) - ESoC contributor +How to start: [find a good first issue](https://github.com/gc-os-ai/pyaptamer/issues?q=is%3Aissue%20state%3Aopen%20label%3A%22good%20first%20issue%22) -Matteo Pinna ([@nennomp](https://www.github.com/nennomp)) - ESoC contributor +and/or join the [discord](https://discord.gg/7uKdHfdcJG) and ping the developers, +you can also ask for longer projects here. -Satvik Mishra ([@satvshr](https://www.github.com/satvshr)) - ESoC contributor +Contributions and participation are subject to the GC.OS Code of Conduct. + +--- + +## πŸ—ΊοΈ Roadmap + +* more complete set of aptamer design and protein feature algorithms +* wider support for `cif` and/or `biopandas` +* integration of first-principles simulation tools +* Community feedback integration - suggest features on the [issue tracker!](https://github.com/gc-os-ai/pyaptamer/issues) + +--- + +#### Team -Siddharth ([@siddharth7113](https://www.github.com/siddharth7113)) - ESoC contributor +The package is maintained in collaboration between [ecoSPECS](https://ecospecs.de/en/) and the [German Center for Open Source AI](https://gcos.ai/). + +* German Center for Open Source AI + * Franz Kiraly ([@fkiraly](https://www.github.com/fkiraly)) - primary point of contact (package) + * Simon Blanke ([@simonblanke](https://www.github.com/simonblanke)) +* ecoSPECS + * Dennis Kubiczek ([@KubiczekD](https://www.github.com/KubiczekD)) - primary point of contact (domain/aptamers) + * Fatih Yolcu ([@fat1hy0])(https://www.github.com/fat1hy0)) + * Jakob Birke ([@jabirke](https://www.github.com/jabirke)) + * Kerstin Moser ([@KerstinMoser](https://www.github.com/KerstinMoser)) +* European Summer of Code contributors 2025 + * Matteo Pinna ([@nennomp](https://www.github.com/nennomp)) + * Satvik Mishra ([@satvshr](https://www.github.com/satvshr)) + * Siddharth ([@siddharth7113](https://www.github.com/siddharth7113))