Skip to content

Tool to align a set of molecules in Computational Chemistry.

License

Notifications You must be signed in to change notification settings

hellmrf/maligner

Repository files navigation

maligner

An Open-Source Molecular Alignment Tool.

GitHub top language GitHub License Powered by RDKit

About

maligner is an open-source tool for molecular alignment, designed to facilitate the manipulation and visualization of molecular structures. The goal is to provide an intuitive graphical interface and advanced functionalities to align molecules efficiently, leveraging the power of RDKit.

Built With

Getting Started (development)

Prerequisites

  • Install uv.

A global Python installation is not required as uv will handle the environment setup.

Usage

To run the application, use the following command:

uv run gui

This will:

  1. Create and resolve a new environment (located at .venv).
  2. Install all necessary dependencies (including dev-dependencies).
  3. Launch the application's GUI.

Development

Stage of development

The project is currently in the IDEA stage and is not yet ready for real usage. Contributions are welcome and appreciated!

Development Setup

We use the following dev-only tools.

  • mypy for type-checking.
  • ruff for linting and formatting.

Run the following commands as needed to run them.

$ uv run mypy
$ uv run ruff check
$ uv run ruff format

Roadmap

  • Main Screen:

    • Load molecules in .mol, .mol2, etc.
    • Display molecules in a grid with filenames.
    • Mark a molecule as anchor.
    • Navigate to structure selector.
    • Add options menu.
    • Implement "Preview Alignment" and "Save Alignment" buttons.
  • Options Menu:

    • Overwrite original files.
    • Suffix aligned files (with user-defined suffix).
    • (Default) Save in a separate directory (aligned).
  • Atom Selector:

    • Display molecule and calculate MCS by default.
    • Add selection buttons: Select MCS, Select All, Select None.
    • Include Cancel and Save buttons.
    • Allow users to click on atoms to select/deselect.
    • Enable selection by SMILES/SMARTS.
    • (Optional) Implement lasso tool for selection.

Support

For support, reach out via:

License

This project is licensed under the GPL-3.0 License. See the LICENSE file for details.

About

Tool to align a set of molecules in Computational Chemistry.

Resources

License

Code of conduct

Stars

Watchers

Forks

Languages