Skip to main content

An Open-Source Molecular Alignment Tool

Project description

maligner: An Open-Source Molecular Alignment Tool

GitHub top language GitHub License Powered by RDKit

Installation

You shall have Python (preferably 3.11) installed. To install the package and dependencies, go to the repository's root folder and run:

python -m pip install . .[dev]

You can ommit .[dev] if you'll not work directly on the development

Development

Stage of development

The current stage of this project is: IDEA, so it's absolutely not ready for real usage. Your contribution would be very appreciated.

Code formatting

We're using Google's yapf autoformatter together with google style-guide. You can install yapf on VSCode from the extensions marketplace. At command-line, it would be yapf file.py. Make sure you have it configured, so we don't conflict styling.

Current plan

Currently, the plan for the UX of the software is the following.

Main screen:

  • The user can load molecules (in .mol, .mol2 or ??)
  • Can see a grid with all molecules and the filename
  • Can mark one molecule as anchor
  • Can go to structure selector.
  • Options menu
  • "Preview Alignment" and "Save Alignment" buttons.

Options menu

  • Save action:
    • Overwrite original files
    • Suffix aligned files (option to write the suffix)
    • (Default) Save in a separate directory (default: aligned)

Atom selector:

  • User see the molecule and, by default, the MCS calculated.
  • Three selection buttons: Select MCS, Select All, Select None.
  • Two more buttons: Cancel, Save.
  • User can click on atoms to select/deselect.
  • Select structure by SMILES/SMARTS.
  • Maybe implement lasso tool in future.

At this stage, users can load molecules, anchor one of them, and they are displayed in a grid view. The user can automatically select MCS on all molecules. The user can click twice on a molecule and it will take it to Substructure Selector, where the selected atoms can be tweaked by clicking. Now we need to implement the alignment part. I have some drafts already.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

maligner-0.0.0.tar.gz (170.8 kB view hashes)

Uploaded Source

Built Distribution

maligner-0.0.0-py2.py3-none-any.whl (185.9 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page