# iBeatles
[](http://opensource.org/licenses/MIT)
[](https://zenodo.org/badge/latestdoi/67521112)
GUI to automatically fit Bragg Edges, calculate and display strain mapping factors.
## Installation
### From PyPI (recommended)
To install the latest release from PyPI, use the following command:
```bash
pip install ibeatles
```
This should install the latest release of iBeatles and all its dependencies.
To start the application, use the following command:
```bash
python -m ibeatles
```
which will start the GUI application.
For command-line interface (CLI) application, use the following command:
```bash
python -m ibeatles --no-gui <CONFIG_FILE>
```
### From Conda
To install the latest release from Conda, use the following command:
```bash
micromamba install -c conda-forge -c ornlneutronimaging ibeatles
```
This should install the latest release of iBeatles and all its dependencies.
To start the application, use the following command:
```bash
python -m ibeatles
```
which will start the GUI application.
For command-line interface (CLI) application, use the following command:
```bash
python -m ibeatles --no-gui <CONFIG_FILE>
```
### From Source
Check the instructions in the [Development Environment Setup](#development-environment-setup) section to setup the development environment for iBeatles.
## Development Environment Setup
It is recommended to use a virtual environment to setup the development environment for iBeatles.
The following instructions are for setting up a virtual development environment using `pixi`.
For detailed instructions on how to install `pixi`, please refer to the [pixi documentation](https://pixi.readthedocs.io/en/latest/).
- Install `pixi`:
```bash
curl -fsSL https://pixi.sh/install.sh | bash
```
- Clone the iBeatles repository:
```bash
git clone git@github.com:ornlneutronimaging/iBeatles.git
```
- Install the dependencies:
```bash
cd iBeatles
pixi install
```
Note that `pixi install` will install all dependencies, including the editable version of iBeatles.
> By default, `pixi` is configured to use `detached-environments` so that you can build the conda packages directly in the repo. This settings can be changed by `pixi config set detached-environments false` if needed.
## Run iBeatles
There are several ways to start the application:
- Use the entry script to start the GUI application.
```bash
pixi run ibeatles
```
- Use `pixi` tasks `run` to start the GUI application.
```bash
# to start GUI application
pixi run start
# to start CLI application
pixi run cli <CONFIG_FILE>
```
- Use Python interpreter to start the GUI application.
```bash
# start GUI application
pixi run python -m ibeatles
# start CLI application
pixi run python -m ibeatles --no-gui <CONFIG_FILE>
```
## Run Tests
To run the tests, use the following command:
```bash
pixi run test
```
Alternatively, you can always invoke the Python interpreter directly:
```bash
python -m pytest
```
> Note: we recommend using `pixi` to run the tests as it will ensure that the correct environment is used.
## Build Documentation
More to come...
## Packaging
### PyPI Package
To build the PyPI package, use the following command:
```bash
pixi run build
```
This will create a `dist` directory containing the PyPI package.
### Conda Package
To build the Conda package, use the following command:
```bash
pixi run build-conda
```
This will build the Conda packages in the `conda.recipe` directory.
To clean up all the builds, use
```bash
pixi run clean
```
If you prefer to clean all the environments (not builds), use
```bash
pixi clean
```
which will remove all the environments created by `pixi`.
Raw data
{
"_id": null,
"home_page": null,
"name": "ibeatles",
"maintainer": null,
"docs_url": null,
"requires_python": "<3.13,>=3.11",
"maintainer_email": "Jean Bilheux <bilheuxjm@ornl.gov>, Chen Zhang <zhangc@ornl.gov>",
"keywords": "Bragg Edge, neutron, imaging, strain mapping",
"author": null,
"author_email": "Jean Bilheux <bilheuxjm@ornl.gov>, Chen Zhang <zhangc@ornl.gov>",
"download_url": "https://files.pythonhosted.org/packages/24/15/4691c838a397bd9bb28d0eae691977c9b32a890d39aeb3e3f280a426975b/ibeatles-1.0.4.tar.gz",
"platform": null,
"description": "# iBeatles\n[](http://opensource.org/licenses/MIT)\n[](https://zenodo.org/badge/latestdoi/67521112)\n\nGUI to automatically fit Bragg Edges, calculate and display strain mapping factors.\n\n## Installation\n\n### From PyPI (recommended)\n\nTo install the latest release from PyPI, use the following command:\n\n```bash\npip install ibeatles\n```\n\nThis should install the latest release of iBeatles and all its dependencies.\nTo start the application, use the following command:\n\n```bash\npython -m ibeatles\n```\n\nwhich will start the GUI application.\nFor command-line interface (CLI) application, use the following command:\n\n```bash\npython -m ibeatles --no-gui <CONFIG_FILE>\n```\n\n### From Conda\n\nTo install the latest release from Conda, use the following command:\n\n```bash\nmicromamba install -c conda-forge -c ornlneutronimaging ibeatles\n```\n\nThis should install the latest release of iBeatles and all its dependencies.\nTo start the application, use the following command:\n\n```bash\npython -m ibeatles\n```\n\nwhich will start the GUI application.\nFor command-line interface (CLI) application, use the following command:\n\n```bash\npython -m ibeatles --no-gui <CONFIG_FILE>\n```\n\n### From Source\n\nCheck the instructions in the [Development Environment Setup](#development-environment-setup) section to setup the development environment for iBeatles.\n\n## Development Environment Setup\n\nIt is recommended to use a virtual environment to setup the development environment for iBeatles.\nThe following instructions are for setting up a virtual development environment using `pixi`.\nFor detailed instructions on how to install `pixi`, please refer to the [pixi documentation](https://pixi.readthedocs.io/en/latest/).\n\n- Install `pixi`:\n\n```bash\ncurl -fsSL https://pixi.sh/install.sh | bash\n```\n\n- Clone the iBeatles repository:\n\n```bash\ngit clone git@github.com:ornlneutronimaging/iBeatles.git\n```\n\n- Install the dependencies:\n\n```bash\ncd iBeatles\npixi install\n```\n\nNote that `pixi install` will install all dependencies, including the editable version of iBeatles.\n\n> By default, `pixi` is configured to use `detached-environments` so that you can build the conda packages directly in the repo. This settings can be changed by `pixi config set detached-environments false` if needed.\n\n## Run iBeatles\n\nThere are several ways to start the application:\n\n- Use the entry script to start the GUI application.\n\n```bash\npixi run ibeatles\n```\n\n- Use `pixi` tasks `run` to start the GUI application.\n\n```bash\n# to start GUI application\npixi run start\n# to start CLI application\npixi run cli <CONFIG_FILE>\n```\n\n- Use Python interpreter to start the GUI application.\n\n```bash\n# start GUI application\npixi run python -m ibeatles\n# start CLI application\npixi run python -m ibeatles --no-gui <CONFIG_FILE>\n```\n\n## Run Tests\n\nTo run the tests, use the following command:\n\n```bash\npixi run test\n```\n\nAlternatively, you can always invoke the Python interpreter directly:\n\n```bash\npython -m pytest\n```\n\n> Note: we recommend using `pixi` to run the tests as it will ensure that the correct environment is used.\n\n## Build Documentation\n\nMore to come...\n\n## Packaging\n\n### PyPI Package\n\nTo build the PyPI package, use the following command:\n\n```bash\npixi run build\n```\n\nThis will create a `dist` directory containing the PyPI package.\n\n### Conda Package\n\nTo build the Conda package, use the following command:\n\n```bash\npixi run build-conda\n```\n\nThis will build the Conda packages in the `conda.recipe` directory.\n\nTo clean up all the builds, use\n\n```bash\npixi run clean\n```\n\nIf you prefer to clean all the environments (not builds), use\n\n```bash\npixi clean\n```\n\nwhich will remove all the environments created by `pixi`.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Bragg edge strain mapping",
"version": "1.0.4",
"project_urls": {
"Bug Tracker": "https://github.com/ornlneutronimaging/iBeatles/issues",
"Source Code": "https://github.com/ornlneutronimaging/iBeatles",
"homepage": "https://github.com/ornlneutronimaging/iBeatles"
},
"split_keywords": [
"bragg edge",
" neutron",
" imaging",
" strain mapping"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "ae28a6f407880607007c865c0f0ab4bafda53dae819f5c7a58a2a7ae51c1aedb",
"md5": "04f6c312affb7bfc5444f0df6efcd427",
"sha256": "92c6b6b86ba081bfbe2da1e6093a2e1f1911d1eda1b3670276ac91d4e74da718"
},
"downloads": -1,
"filename": "ibeatles-1.0.4-py3-none-any.whl",
"has_sig": false,
"md5_digest": "04f6c312affb7bfc5444f0df6efcd427",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<3.13,>=3.11",
"size": 988276,
"upload_time": "2025-03-20T14:34:08",
"upload_time_iso_8601": "2025-03-20T14:34:08.378641Z",
"url": "https://files.pythonhosted.org/packages/ae/28/a6f407880607007c865c0f0ab4bafda53dae819f5c7a58a2a7ae51c1aedb/ibeatles-1.0.4-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "24154691c838a397bd9bb28d0eae691977c9b32a890d39aeb3e3f280a426975b",
"md5": "5802c1d8f6059232128de7f82c0cffa1",
"sha256": "255754877b533bc072b4addb76d7327fbc1be954bfee38bbea5aa09824b95f1f"
},
"downloads": -1,
"filename": "ibeatles-1.0.4.tar.gz",
"has_sig": false,
"md5_digest": "5802c1d8f6059232128de7f82c0cffa1",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<3.13,>=3.11",
"size": 870636,
"upload_time": "2025-03-20T14:34:10",
"upload_time_iso_8601": "2025-03-20T14:34:10.057487Z",
"url": "https://files.pythonhosted.org/packages/24/15/4691c838a397bd9bb28d0eae691977c9b32a890d39aeb3e3f280a426975b/ibeatles-1.0.4.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-03-20 14:34:10",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ornlneutronimaging",
"github_project": "iBeatles",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "ibeatles"
}