Metadata-Version: 2.4
Name: ms_components
Version: 0.5.2
Summary: PySide6 UI components for MolSuite: smart table, project browser, job monitor, PyMOL dock, steppers.
Author: Mario S. Valdés-Tresanco, Mario E. Valdés-Tresanco
License-Expression: MIT
Project-URL: Homepage, https://github.com/MolSuite/ms_components
Project-URL: Documentation, https://molsuite.github.io/ms_components/
Project-URL: Issues, https://github.com/MolSuite/ms_components/issues
Keywords: pyside6,qt,widgets,molsuite,table,monitor
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Science/Research
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Operating System :: OS Independent
Classifier: Topic :: Scientific/Engineering
Classifier: Environment :: X11 Applications :: Qt
Requires-Python: >=3.12
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: PySide6>=6.5
Provides-Extra: monitor
Requires-Dist: pydantic>=2.0; extra == "monitor"
Provides-Extra: projects
Requires-Dist: ms_flow>=0.7.1; extra == "projects"
Provides-Extra: pymol
Requires-Dist: pymol-open-source>=3.2.0a0; extra == "pymol"
Provides-Extra: steps
Requires-Dist: ms_env>=0.3.3; extra == "steps"
Provides-Extra: table
Requires-Dist: sqlmodel>=0.0.14; extra == "table"
Provides-Extra: all
Requires-Dist: ms_components[monitor,projects,pymol,steps,table]; extra == "all"
Provides-Extra: dev
Requires-Dist: ms_components[all]; extra == "dev"
Requires-Dist: pytest>=7.0; extra == "dev"
Dynamic: license-file

# ms_components

PySide6 UI components for MolSuite: smart table, project browser, job monitor,
PyMOL dock, steppers and the shared theming (`themes/` + `base.qss`).

[`ms_tutorial`](docs/ms_tutorial.md) provides informative and interactive tours:
Python binds existing widgets/signals, while content can be defined in Python or
TOML. Try `PYTHONPATH=src python examples/tutorial_demo.py` from a source checkout.

Part of the [MolSuite](https://molsuite.github.io/) stack. The project catalog integrates
with [`ms_flow`](https://github.com/MolSuite/ms_flow) when that backend is needed.

## Install

The base installation provides Qt widgets and themes:

```bash
pip install ms_components
```

Choose the integrations your application uses, or install all of them:

```bash
pip install "ms_components[table,pymol]"
pip install "ms_components[all]"
```

| Extra | Dependency / use |
| --- | --- |
| `table` | SQLModel tables |
| `monitor` | Pydantic monitor configuration |
| `projects` | `ms_flow` project catalog and standalone project browser |
| `pymol` | `pymol-open-source` alpha wheels (`>=3.2.0a0`) |
| `steps` | `ms_env` provisioning steps |
| `dev` | All integrations and pytest |

Extras select dependencies; all component source files remain in the package.
Project widgets accept a supplied backend without importing `ms_flow`. When no backend is
supplied, they use the optional MolSuite catalog, which creates its database on first use.
Run the standalone browser with `python -m ms_components.ms_projects.app` after installing
`ms_components[projects]`.

## Documentation

<https://molsuite.github.io/ms_components/>: a guide to each component, examples,
and the API reference.

## License

MIT — see [LICENSE](LICENSE). Third-party icon/asset licenses live in `licenses/`.
