Skip to main content

Utility for reaction modeling using graph grammar

Project description

SynUtils

Utils for Synthesis Planning

SynUtils is a collection of tools designed to support the planning and execution of chemical synthesis.

SynUtils

Our tools are tailored to assist researchers and chemists in navigating complex chemical reactions and synthesis pathways, leveraging the power of modern computational chemistry. Whether you're designing novel compounds or optimizing existing processes, SynUtils aims to provide the critical tools you need.

For more details on each utility within the repository, please refer to the documentation provided in the respective folders.

Step-by-Step Installation Guide

  1. Python Installation: Ensure that Python 3.11 or later is installed on your system. You can download it from python.org.

  2. Creating a Virtual Environment (Optional but Recommended): It's recommended to use a virtual environment to avoid conflicts with other projects or system-wide packages. Use the following commands to create and activate a virtual environment:

python -m venv synutils-env
source synutils-env/bin/activate  

Or Conda

conda create --name synutils-env python=3.11
conda activate synutils-env
  1. Install from PyPi: The easiest way to use SynTemp is by installing the PyPI package synutility.
pip install synutility

Optional if you want to install full version

pip install synutility[all]

For contributors

We're welcoming new contributors to build this project better. Please not hesitate to inquire me via [email][tieu@bioinf.uni-leipzig.de].

Before you start, ensure your local development environment is set up correctly. Pull the latest version of the main branch to start with the most recent stable code.

git checkout main
git pull

Working on New Features

  1. Create a New Branch:
    For every new feature or bug fix, create a new branch from the main branch. Name your branch meaningfully, related to the feature or fix you are working on.

    git checkout -b feature/your-feature-name
    
  2. Develop and Commit Changes:
    Make your changes locally, commit them to your branch. Keep your commits small and focused; each should represent a logical unit of work.

    git commit -m "Describe the change"
    
  3. Run Quality Checks:
    Before finalizing your feature, run the following commands to ensure your code meets our formatting standards and passes all tests:

    ./lint.sh # Check code format
    pytest Test # Run tests
    

    Fix any issues or errors highlighted by these checks.

Integrating Changes

  1. Rebase onto Staging:
    Once your feature is complete and tests pass, rebase your changes onto the staging branch to prepare for integration.

    git fetch origin
    git rebase origin/staging
    

    Carefully resolve any conflicts that arise during the rebase.

  2. Push to Your Feature Branch: After successfully rebasing, push your branch to the remote repository.

    git push origin feature/your-feature-name
    
  3. Create a Pull Request: Open a pull request from your feature branch to the stagging branch. Ensure the pull request description clearly describes the changes and any additional context necessary for review.

Contributing

Deployment timeline

We plan to update new version quarterly.

License

This project is licensed under MIT License - see the License file for details.

Acknowledgments

This project has received funding from the European Unions Horizon Europe Doctoral Network programme under the Marie-Skłodowska-Curie grant agreement No 101072930 (TACsy -- Training Alliance for Computational)

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

synutility-0.0.13.tar.gz (3.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

synutility-0.0.13-py3-none-any.whl (97.4 kB view details)

Uploaded Python 3

File details

Details for the file synutility-0.0.13.tar.gz.

File metadata

  • Download URL: synutility-0.0.13.tar.gz
  • Upload date:
  • Size: 3.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for synutility-0.0.13.tar.gz
Algorithm Hash digest
SHA256 ed0d616f9d8fc6c8d200c5c562b3636adab08caabab87084576bfee7a6854763
MD5 81ead6e8d5840834f7cd1b2131466893
BLAKE2b-256 02cec00db45309c458e612a45633961841d9bbbec6418e7d1799b71812fe9144

See more details on using hashes here.

Provenance

The following attestation bundles were made for synutility-0.0.13.tar.gz:

Publisher: publish-package.yml on TieuLongPhan/SynUtils

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file synutility-0.0.13-py3-none-any.whl.

File metadata

  • Download URL: synutility-0.0.13-py3-none-any.whl
  • Upload date:
  • Size: 97.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for synutility-0.0.13-py3-none-any.whl
Algorithm Hash digest
SHA256 35af531686632b2e4077d4d7c7e1aa0c32ab8c41c073f962f7c38404766f2c97
MD5 12850336707400574d0e9129534de333
BLAKE2b-256 6fa8781afc3b89e4fa05f996bad1c8865f53d7e16c09039077d1837455d03302

See more details on using hashes here.

Provenance

The following attestation bundles were made for synutility-0.0.13-py3-none-any.whl:

Publisher: publish-package.yml on TieuLongPhan/SynUtils

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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