Metadata-Version: 2.4
Name: ilthermopy
Version: 1.1.2
Summary: Unofficial ILThermo 2.0 access and SMILES enrichment for ionic-liquid data workflows
Author-email: "Ivan Yu. Chernyshov" <ivan.chernyshoff@gmail.com>
Maintainer-email: "Ivan Yu. Chernyshov" <ivan.chernyshoff@gmail.com>
License: MIT License
        
        Copyright (c) 2023 Ivan Chernyshov
        
        Permission is hereby granted, free of charge, to any person obtaining a copy
        of this software and associated documentation files (the "Software"), to deal
        in the Software without restriction, including without limitation the rights
        to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
        copies of the Software, and to permit persons to whom the Software is
        furnished to do so, subject to the following conditions:
        
        The above copyright notice and this permission notice shall be included in all
        copies or substantial portions of the Software.
        
        THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
        IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
        FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
        AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
        LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
        OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
        SOFTWARE.
        
Project-URL: Documentation, https://mucommons.github.io/ILThermoPy/
Project-URL: Repository, https://github.com/muCommons/ILThermoPy
Project-URL: Issues, https://github.com/muCommons/ILThermoPy/issues
Project-URL: Changelog, https://mucommons.github.io/ILThermoPy/source/changelog.html
Keywords: ionic liquids,ilthermo,thermodynamics,cheminformatics,smiles,machine learning
Classifier: Development Status :: 4 - Beta
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Operating System :: OS Independent
Classifier: Intended Audience :: Science/Research
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Scientific/Engineering :: Chemistry
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: LICENSE.md
Requires-Dist: importlib-resources>=1.1.0; python_version < "3.9"
Requires-Dist: requests
Requires-Dist: pandas
Dynamic: license-file

# ILThermoPy

**ILThermoPy** is an unofficial Python package for retrieving data from
[ILThermo 2.0](https://ilthermo.boulder.nist.gov/) and enriching ionic-liquid
records with molecular identifiers such as SMILES. It is intended for
cheminformatics, molecular thermodynamics, and machine-learning workflows that
need ILThermo data in a more structure-aware form.

[![PyPI](https://img.shields.io/pypi/v/ilthermopy.svg)](https://pypi.org/project/ilthermopy/)
[![Documentation](https://img.shields.io/badge/docs-muCommons-blue.svg)](https://mucommons.github.io/ILThermoPy/)
[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.20218373.svg)](https://doi.org/10.5281/zenodo.20218373)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE.md)

## Status and scope

- Usable package for accessing ILThermo 2.0 data and combining retrieved
  records with stored molecular-structure annotations.
- Unofficial interface: ILThermoPy is not affiliated with, maintained by, or
  endorsed by NIST.
- External-service-dependent: ILThermo 2.0 does not provide a stable public web
  API, so this package depends on the current behavior of the ILThermo web
  service.
- Molecular-identifier enrichment depends on stored mappings from ILThermo
  compound identifiers to manually checked structural data; new ILThermo
  updates may require refreshing those mappings.
- Intended for cheminformatics, molecular thermodynamics, and ML-ready
  ionic-liquid data workflows.

## What problem does it solve?

ILThermo 2.0 contains experimental physicochemical-property data for ionic
liquids, but the public web interface primarily describes molecular components
by names. For many downstream workflows, names are not enough: cheminformatics,
substructure search, descriptor generation, data cleaning, and ML model building
usually require machine-readable molecular identifiers.

ILThermoPy bridges this gap by retrieving ILThermo records and adding stored
SMILES annotations for known ionic-liquid components. The structural annotations
were prepared through semi-automatic name-to-structure conversion followed by
manual validation, making the extracted data easier to use in computational
chemistry and data-driven thermodynamics workflows.

Typical use cases include:

- collecting ILThermo records for selected properties, compounds, or years;
- preparing ionic-liquid datasets for descriptor calculation and ML pipelines;
- linking thermodynamic measurements to cation/anion structures;
- checking which ILThermo compounds already have stored structural annotations;
- updating local structural mappings when the external ILThermo database changes.

The package is intentionally small. It should be treated as a practical access
and enrichment layer over an external web service, not as an official ILThermo
API or a complete curated thermodynamic database.

## Installation

ILThermoPy can be installed from [PyPI](https://pypi.org/project/ilthermopy/):

```bash
pip install ilthermopy
```

## Requirements

1. Python 3.7+;
2. requests;
3. pandas;
4. importlib_resources for Python 3.7 and 3.8.

## Useful links

1. [ILThermo 2.0](https://ilthermo.boulder.nist.gov/): public web application
   for the ILThermo 2.0 database.
2. [Documentation](https://mucommons.github.io/ILThermoPy/): cookbook, API
   reference, and changelog.
3. [PyPI package](https://pypi.org/project/ilthermopy/): package distribution
   page.
4. [GitHub repository](https://github.com/muCommons/ILThermoPy): source code and
   release history.
5. [Issue tracker](https://github.com/muCommons/ILThermoPy/issues): bug reports
   and maintenance notes.
6. [Update tools](update/): scripts for semi-automatic refresh of structural
   information after ILThermo database updates.

## Citation

If ILThermoPy is useful in your work, please cite the Zenodo concept DOI
(all versions), which resolves to the latest archived release:

> Ivan Yu. Chernyshov. (2026). *ILThermoPy: unofficial ILThermo 2.0
> access and SMILES enrichment for ionic-liquid data workflows* [Computer
> software]. Zenodo. https://doi.org/10.5281/zenodo.20218373

Citation metadata is also provided in [`CITATION.cff`](CITATION.cff).
