Git Product home page Git Product logo

cocktail-shaker's Introduction

Cocktail Shaker: Drug Expansion and Enumeration for Peptides!

Build License: MPL 2.0 Coverage Python Gitter Zenodo Documentation Status status PEP8 PRs Welcome

cocktail-shaker is a high-performance drug enumeration and expansion library. cocktail-shaker leverages the computational power of RDKit to create and enumerate large volumes of drug compounds.

Announcements

  • Release! Version 1.0.0-beta, August 26, 2019
  • RDkit UGM 2019: talk at September 25th at the University of Hamburg, Germany.

Using Cocktail Shaker

asciicast

cocktail-shaker is a young library under heavy development at this time. It targets two categories of users:

  1. Users familiar with RDKit, or those willing to learn RDKit, who want to create fast sets of data for high throughput screening or machine learning.
  2. Open-Science Scientists without any knowledge of RDKit who are seeking a a high-level wrapper to create chemical files for their software.

If you're in the first category, then you can already start using RDKit. cocktail-shaker offers a Pythonic, easy-to-use library and you can start channeling molecules in the expansion library. Instead of validating the sanity of the data, cocktail-shaker takes care of that for you. With each molecule being generated it will head into a 1D and/or 2D validation check (3D not supported yet).

If you're in the second category, we're starting to build experimental high-level python code to take care a lot of the underpinnings of RDKit.

Installation

Cocktail-shaker runs on Python 3.5+ and within a conda environment due to the RDKit dependency. A conda installation is coming soon (as soon as I figure it out).

For the time being, here is the following:

Cocktail shaker is distributed through PyPi and can be installed via:

your_env/bin/python -m pip install cocktail-shaker

Development Installation

As cocktail-shaker is under heavy development at this time, we highly recommend developers to use the development version on Github (master branch). You need to clone the repository and install cocktail-shaker with

python setup.py install.

As a one-liner, assuming git is installed:

git clone https://github.com/Sulstice/Cocktail-Shaker.git

This will automatically install the latest version of cocktail-shaker.

Structure of cocktail-shaker

Currently, the main subpackages are:

  • cocktail_shaker: Contains a lot of the high level functionality; request handling, file parsing/writing, enumeration, and expansion.
  • docs: An access point for the readthedocs implementation.
  • cocktail_shaker/datasources: This is where the system stores its data on predfined functional groups and/or shapes (coming soon).
  • tests: Tests that are for the file handling, requests, and testing molecule pattern recognition.

The API of all public interfaces are subject to change in the future, although datasources are relatively stable at this point.

Genesis

cocktail-shaker began when one developer/scientist wanted an open source drug library.

Now cocktail-shaker looks to build on the expertise of these developers/scientists and the broader open-science community to build an effective drug library.


External links

cocktail-shaker's People

Contributors

csoneson avatar cthoyt avatar dependabot[bot] avatar gitter-badger avatar marvincorro avatar pyup-bot avatar rosegierth722 avatar sulstice avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.