<div align="center">
<img src="https://plaid-lib.github.io/assets/images/PLAID-large-logo.png" width="300">
</div>
| | |
| --- | --- |
| Testing | [](https://github.com/PLAID-lib/plaid/actions/workflows/testing.yml) [](https://plaid-lib.readthedocs.io/en/latest/?badge=latest) [](https://app.codecov.io/gh/plaid-lib/plaid/tree/main?search=&displayType=list)  |
| Package | [](https://anaconda.org/conda-forge/plaid) [](https://anaconda.org/conda-forge/plaid) [](https://pypi.org/project/pyplaid/) [](https://pepy.tech/projects/pyplaid)   |
| Other | [](https://github.com/PLAID-lib/plaid/blob/main/LICENSE.txt)  [](https://joss.theoj.org/papers/26b2e13a9fc8e012cc997ca28a7b565e) |
<!-- [](https://pypi.org/project/pyplaid/) -->
# Physics Learning AI Datamodel (PLAID)
</div>
- [Physics Learning AI Datamodel (PLAID)](#physics-learning-ai-datamodel-plaid)
- [1. Description](#1-description)
- [2. Getting started](#2-getting-started)
- [3. Call for Contributions](#3-call-for-contributions)
- [4. Documentation](#4-documentation)
## 1. Description
This library proposes an implementation for a datamodel tailored for AI and ML learning of physics problems.
It has been developped at SafranTech, the research center of [Safran group](https://www.safran-group.com/).
- **Documentation:** https://plaid-lib.readthedocs.io/
- **Source code:** https://github.com/PLAID-lib/plaid
- **Contributing:** https://github.com/PLAID-lib/plaid/blob/main/CONTRIBUTING.md
- **License:** https://github.com/PLAID-lib/plaid/blob/main/LICENSE.txt
- **Bug reports:** https://github.com/PLAID-lib/plaid/issues
- **Report a security vulnerability:** https://github.com/PLAID-lib/plaid/issues
## 2. Getting started
### 2.1 Using the library
To use the library, the simplest way is to install it as follows:
```bash
conda install -c conda-forge plaid
```
or
```bash
pip install pyplaid
```
### 2.2 Contributing to the library
To contribute to the library, you need to clone the repo using git:
```bash
git clone https://github.com/PLAID-lib/plaid.git
```
#### 2.2.1 Development dependencies
To configure an environment manually, you can follow the dependencies listed in ``environment.yml``, or generate it using conda:
```bash
conda env create -f environment.yml
```
Then, to install the library:
```bash
pip install -e .
```
**Note**
The development dependency [**Muscat**](https://muscat.readthedocs.io/) is available on [``conda-forge``](https://anaconda.org/conda-forge/muscat) but not on [``PyPi``](https://pypi.org/project/muscat).
#### 2.2.2 Tests and examples
To check the installation, you can run the unit test suite:
```bash
pytest tests
```
To test further and learn about simple use cases, you can run and explore the examples:
```bash
cd examples
bash run_examples.sh # [unix]
run_examples.bat # [win]
```
#### 2.2.3 Documentation
To compile locally the documentation, you can run:
```bash
cd docs
make html
```
Various notebooks are executed during compilation. The documentation can then be explored in ``docs/_build/html``.
#### 2.2.4 Formatting and linting with Ruff
We use [**Ruff**](https://docs.astral.sh/ruff/) for linting and formatting.
The configuration is defined in `ruff.toml`, and some folders like `docs/` and `examples/` are excluded from checks.
You can run Ruff manually as follows:
```bash
ruff --config ruff.toml check . --fix # auto-fix linting issues
ruff --config ruff.toml format . # auto-format code
```
#### 2.2.5 Setting up pre-commit
Pre-commit is configured to run the following hooks:
* Ruff check
* Ruff format
* Pytest
The selected hooks are defined in the `.pre-commit-config.yaml` file.
To run all hooks manually on the full codebase:
```bash
pre-commit run --all-files
```
You can also run (once):
```bash
pre-commit install
```
This ensures that every time you commit, all the hooks are executed automatically on the staged files.
## 3. Call for Contributions
The PLAID project welcomes your expertise and enthusiasm!
Small improvements or fixes are always appreciated.
Writing code isn’t the only way to contribute to PLAID. You can also:
- review pull requests
- help us stay on top of new and old issues
- develop tutorials, presentations, and other educational materials
- maintain and improve [our documentation](https://plaid-lib.readthedocs.io/)
- help with outreach and onboard new contributors
If you are new to contributing to open source, [this guide](https://opensource.guide/how-to-contribute/) helps explain why, what,
and how to successfully get involved.
## 4. Documentation
The documentation is deployed on [readthedocs](https://plaid-lib.readthedocs.io/).
Raw data
{
"_id": null,
"home_page": null,
"name": "pyplaid",
"maintainer": null,
"docs_url": null,
"requires_python": "<3.14,>=3.9",
"maintainer_email": null,
"keywords": "machine learning, physics, data-model, Safran",
"author": null,
"author_email": "Safran <fabien.casenave@safrangroup.com>",
"download_url": null,
"platform": "Linux",
"description": "<div align=\"center\">\n<img src=\"https://plaid-lib.github.io/assets/images/PLAID-large-logo.png\" width=\"300\">\n</div>\n\n| | |\n| --- | --- |\n| Testing | [](https://github.com/PLAID-lib/plaid/actions/workflows/testing.yml) [](https://plaid-lib.readthedocs.io/en/latest/?badge=latest) [](https://app.codecov.io/gh/plaid-lib/plaid/tree/main?search=&displayType=list)  |\n| Package | [](https://anaconda.org/conda-forge/plaid) [](https://anaconda.org/conda-forge/plaid) [](https://pypi.org/project/pyplaid/) [](https://pepy.tech/projects/pyplaid)   |\n| Other | [](https://github.com/PLAID-lib/plaid/blob/main/LICENSE.txt)  [](https://joss.theoj.org/papers/26b2e13a9fc8e012cc997ca28a7b565e) |\n\n\n<!-- [](https://pypi.org/project/pyplaid/) -->\n\n\n# Physics Learning AI Datamodel (PLAID)\n\n</div>\n\n\n- [Physics Learning AI Datamodel (PLAID)](#physics-learning-ai-datamodel-plaid)\n - [1. Description](#1-description)\n - [2. Getting started](#2-getting-started)\n - [3. Call for Contributions](#3-call-for-contributions)\n - [4. Documentation](#4-documentation)\n\n\n## 1. Description\n\nThis library proposes an implementation for a datamodel tailored for AI and ML learning of physics problems.\nIt has been developped at SafranTech, the research center of [Safran group](https://www.safran-group.com/).\n\n- **Documentation:** https://plaid-lib.readthedocs.io/\n- **Source code:** https://github.com/PLAID-lib/plaid\n- **Contributing:** https://github.com/PLAID-lib/plaid/blob/main/CONTRIBUTING.md\n- **License:** https://github.com/PLAID-lib/plaid/blob/main/LICENSE.txt\n- **Bug reports:** https://github.com/PLAID-lib/plaid/issues\n- **Report a security vulnerability:** https://github.com/PLAID-lib/plaid/issues\n\n\n## 2. Getting started\n\n\n### 2.1 Using the library\n\nTo use the library, the simplest way is to install it as follows:\n\n```bash\nconda install -c conda-forge plaid\n```\n\nor\n\n```bash\npip install pyplaid\n```\n\n### 2.2 Contributing to the library\n\nTo contribute to the library, you need to clone the repo using git:\n\n```bash\ngit clone https://github.com/PLAID-lib/plaid.git\n```\n\n#### 2.2.1 Development dependencies\n\nTo configure an environment manually, you can follow the dependencies listed in ``environment.yml``, or generate it using conda:\n\n```bash\nconda env create -f environment.yml\n```\n\nThen, to install the library:\n\n```bash\npip install -e .\n```\n\n**Note**\n\nThe development dependency [**Muscat**](https://muscat.readthedocs.io/) is available on [``conda-forge``](https://anaconda.org/conda-forge/muscat) but not on [``PyPi``](https://pypi.org/project/muscat).\n\n#### 2.2.2 Tests and examples\n\nTo check the installation, you can run the unit test suite:\n\n```bash\npytest tests\n```\n\nTo test further and learn about simple use cases, you can run and explore the examples:\n\n```bash\ncd examples\nbash run_examples.sh # [unix]\nrun_examples.bat # [win]\n```\n\n#### 2.2.3 Documentation\n\nTo compile locally the documentation, you can run:\n\n```bash\ncd docs\nmake html\n```\n\nVarious notebooks are executed during compilation. The documentation can then be explored in ``docs/_build/html``.\n\n#### 2.2.4 Formatting and linting with Ruff\n\nWe use [**Ruff**](https://docs.astral.sh/ruff/) for linting and formatting.\n\nThe configuration is defined in `ruff.toml`, and some folders like `docs/` and `examples/` are excluded from checks.\n\nYou can run Ruff manually as follows:\n\n```bash\nruff --config ruff.toml check . --fix # auto-fix linting issues\nruff --config ruff.toml format . # auto-format code\n```\n\n#### 2.2.5 Setting up pre-commit\n\nPre-commit is configured to run the following hooks:\n\n* Ruff check\n* Ruff format\n* Pytest\n\nThe selected hooks are defined in the `.pre-commit-config.yaml` file.\n\nTo run all hooks manually on the full codebase:\n\n```bash\npre-commit run --all-files\n```\n\nYou can also run (once):\n\n```bash\npre-commit install\n```\n\nThis ensures that every time you commit, all the hooks are executed automatically on the staged files.\n\n## 3. Call for Contributions\n\nThe PLAID project welcomes your expertise and enthusiasm!\n\nSmall improvements or fixes are always appreciated.\n\nWriting code isn\u2019t the only way to contribute to PLAID. You can also:\n- review pull requests\n- help us stay on top of new and old issues\n- develop tutorials, presentations, and other educational materials\n- maintain and improve [our documentation](https://plaid-lib.readthedocs.io/)\n- help with outreach and onboard new contributors\n\nIf you are new to contributing to open source, [this guide](https://opensource.guide/how-to-contribute/) helps explain why, what,\nand how to successfully get involved.\n\n## 4. Documentation\n\nThe documentation is deployed on [readthedocs](https://plaid-lib.readthedocs.io/).\n",
"bugtrack_url": null,
"license": "BSD 3-Clause License",
"summary": "A package that implements a data model tailored for AI and ML in the context of physics problems",
"version": "0.1.7",
"project_urls": {
"documentation": "https://plaid-lib.readthedocs.io",
"homepage": "https://plaid-lib.github.io",
"repository": "https://github.com/PLAID-lib/plaid"
},
"split_keywords": [
"machine learning",
" physics",
" data-model",
" safran"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "9505f5a59179d1e946c3094c34b4a22b492515afb84d51386b86da178a3c170c",
"md5": "88a96307752ab093a415660142df03d9",
"sha256": "728a6346cf68f02ddf8751caea4cf0e9d2eb2801c9b05c0fda684927418c7e0f"
},
"downloads": -1,
"filename": "pyplaid-0.1.7-py3-none-any.whl",
"has_sig": false,
"md5_digest": "88a96307752ab093a415660142df03d9",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<3.14,>=3.9",
"size": 78406,
"upload_time": "2025-08-14T14:27:07",
"upload_time_iso_8601": "2025-08-14T14:27:07.571048Z",
"url": "https://files.pythonhosted.org/packages/95/05/f5a59179d1e946c3094c34b4a22b492515afb84d51386b86da178a3c170c/pyplaid-0.1.7-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-14 14:27:07",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "PLAID-lib",
"github_project": "plaid",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "pyplaid"
}