# JEDI Configuration Builder
### Repository status:
[](https://github.com/NOAA-EMC/jcb/actions/workflows/basic_testing.yaml)
### Installation
For released versions, install directly from PyPI:
``` shell
pip install jcb
```
For development or to install from source:
``` shell
git clone https://github.com/noaa-emc/jcb
cd jcb
# Optional step if you want to run the client integration tests
./jcb_client_init.py # May first require `pip install pyyaml` if it is not available
pip install --prefix=/path/to/where/you/want/installed .
# Run the tests
pytest
```
### Description
How to use from the command line:
``` shell
jcb render dictionary_of_templates.yaml jedi_config.yaml
```
The below shows two examples of calling jcb from a python client. In each case you have to provide a dictionary that describes all the ways that you want to render the templates in the contained JEDI YAML files.
First jcb provides a convenient single line call passing in the dictionary of templated and getting back the dictionary. The dictionary of templates has to contain an `algorithm` key telling the system which JEDI algorithm you want to run.
``` python
import jcb
jedi_config_dict = jcb.render(dictionary_of_templates)
```
For situations where you wish to create YAML files for several algorithms using the same dictionary of templates you can access the class directly.
``` python
import jcb
jcb_obj = jcb.Renderer(dictionary_of_templates)
jedi_dict_2_a = jcb_obj.render('hofx4d')
jedi_dict_2_b = jcb_obj.render('variational')
```
Raw data
{
"_id": null,
"home_page": "https://github.com/NOAA-EMC/jcb",
"name": "jcb",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": null,
"keywords": "JEDI, JCSDA, NOAA, NASA",
"author": "NOAA, NASA, JCSDA",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/aa/f6/1ac38b2e5c366f11feab7a659f0d49040de64bc0f6efe4a7026990b78a14/jcb-0.0.1.tar.gz",
"platform": null,
"description": "# JEDI Configuration Builder\n\n### Repository status:\n\n[](https://github.com/NOAA-EMC/jcb/actions/workflows/basic_testing.yaml)\n\n### Installation\n\nFor released versions, install directly from PyPI:\n\n``` shell\npip install jcb\n```\n\nFor development or to install from source:\n\n``` shell\ngit clone https://github.com/noaa-emc/jcb\ncd jcb\n\n# Optional step if you want to run the client integration tests\n./jcb_client_init.py # May first require `pip install pyyaml` if it is not available\n\npip install --prefix=/path/to/where/you/want/installed .\n\n# Run the tests\npytest\n```\n\n### Description\n\nHow to use from the command line:\n\n``` shell\njcb render dictionary_of_templates.yaml jedi_config.yaml\n```\n\nThe below shows two examples of calling jcb from a python client. In each case you have to provide a dictionary that describes all the ways that you want to render the templates in the contained JEDI YAML files.\n\nFirst jcb provides a convenient single line call passing in the dictionary of templated and getting back the dictionary. The dictionary of templates has to contain an `algorithm` key telling the system which JEDI algorithm you want to run.\n\n``` python\nimport jcb\n\njedi_config_dict = jcb.render(dictionary_of_templates)\n```\n\nFor situations where you wish to create YAML files for several algorithms using the same dictionary of templates you can access the class directly.\n\n``` python\nimport jcb\n\njcb_obj = jcb.Renderer(dictionary_of_templates)\njedi_dict_2_a = jcb_obj.render('hofx4d')\njedi_dict_2_b = jcb_obj.render('variational')\n```\n\n\n",
"bugtrack_url": null,
"license": null,
"summary": "JEDI Configuration Builder",
"version": "0.0.1",
"project_urls": {
"Homepage": "https://github.com/NOAA-EMC/jcb"
},
"split_keywords": [
"jedi",
" jcsda",
" noaa",
" nasa"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "7ffed5cffb8bf074f2b3d06af2b7490454731edc68710f3f5b18983aee43f5cb",
"md5": "6a2c1b0655df8d205201c9ffc047bf4d",
"sha256": "029c01eae8c836496c934ff20d4f0b6af00c41d88ab16432950b82d7256ca128"
},
"downloads": -1,
"filename": "jcb-0.0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "6a2c1b0655df8d205201c9ffc047bf4d",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 31982,
"upload_time": "2025-08-19T00:11:05",
"upload_time_iso_8601": "2025-08-19T00:11:05.395494Z",
"url": "https://files.pythonhosted.org/packages/7f/fe/d5cffb8bf074f2b3d06af2b7490454731edc68710f3f5b18983aee43f5cb/jcb-0.0.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "aaf61ac38b2e5c366f11feab7a659f0d49040de64bc0f6efe4a7026990b78a14",
"md5": "d922507fb152aa09804d3d3c003a2463",
"sha256": "19050d6ad331be45309100c4d30e647e4c6139878be430b5f55097816ccec824"
},
"downloads": -1,
"filename": "jcb-0.0.1.tar.gz",
"has_sig": false,
"md5_digest": "d922507fb152aa09804d3d3c003a2463",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 28024,
"upload_time": "2025-08-19T00:11:06",
"upload_time_iso_8601": "2025-08-19T00:11:06.787061Z",
"url": "https://files.pythonhosted.org/packages/aa/f6/1ac38b2e5c366f11feab7a659f0d49040de64bc0f6efe4a7026990b78a14/jcb-0.0.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-19 00:11:06",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "NOAA-EMC",
"github_project": "jcb",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "jcb"
}