<p align="center"><img width="300" src="https://raw.githubusercontent.com/alpine-data/synbconvert/main/docs/img/logo.png"/></p>
# synbconvert
[![Documentation](https://img.shields.io/badge/Documentation-MkDocs-blue)](https://alpine-data.github.io/synbconvert/)
[![Python Build](https://github.com/alpine-data/synbconvert/actions/workflows/python-build.yml/badge.svg)](https://github.com/alpine-data/synbconvert/actions/workflows/python-build.yml)
**[Documentation](https://alpine-data.github.io/synbconvert/)**
Azure Synapse Analytics uses notebooks for data preparation, data visualization, machine learning, and many other tasks.
However, performing proper version control working with these notebooks is a pain.
Merging long nested JSON documents with git is nearly impossible.
If you would like to use Azure Synapse Analytics for large scale projects while compling with the standards of good software engineering, synbconvert may be the tool you are looking for.
You will be able to develop code in your favorite IDE and colaborate with your team as usual.
## Features
synbconvert is a simple command line tool and Python API to convert Python files to Azure Synapse Analytics notebooks and vice versa.
The main features of the tool include:
- Lean annotation syntax for Python files
- Conversion of Python files to Azure Synapse Analytics notebooks based on annotations
- Conversion of Azure Synapse Analytics notebooks to annotated Python files
## Workflow
<p align="center"><img width="885" src="https://raw.githubusercontent.com/alpine-data/synbconvert/main/docs/img/workflow.png"/></p>
## Installation
### pip
synbconvert releases are available as source packages and binary wheels. Before you install synbconvert and its dependencies, make sure that your pip, setuptools and wheel are up to date. When using pip it is generally recommended to install packages in a virtual environment to avoid modifying system state. You can install synbconvert with:
```console
$ pip install synbconvert
```
<br>
## Contribute
Thank you for taking the time to contribute to synbconvert. Before submitting a pull request, please make sure to bump the project version with:
```console
$ poetry version minor
```
for minor releases or
```console
$ poetry version major
```
for major releases.
Raw data
{
"_id": null,
"home_page": "https://github.com/alpine-data/synbconvert",
"name": "synbconvert",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.9,<4.0",
"maintainer_email": "",
"keywords": "python,converter,notebook,azure,synapse-analytics",
"author": "Jan Bieser",
"author_email": "janwithb@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/4e/6a/550d80247c7bb09980b5133cc9f2cc54ef0706a94b733b19da88c54eca18/synbconvert-0.7.0.tar.gz",
"platform": null,
"description": "<p align=\"center\"><img width=\"300\" src=\"https://raw.githubusercontent.com/alpine-data/synbconvert/main/docs/img/logo.png\"/></p>\n\n# synbconvert\n\n[![Documentation](https://img.shields.io/badge/Documentation-MkDocs-blue)](https://alpine-data.github.io/synbconvert/)\n[![Python Build](https://github.com/alpine-data/synbconvert/actions/workflows/python-build.yml/badge.svg)](https://github.com/alpine-data/synbconvert/actions/workflows/python-build.yml)\n\n**[Documentation](https://alpine-data.github.io/synbconvert/)**\n\nAzure Synapse Analytics uses notebooks for data preparation, data visualization, machine learning, and many other tasks. \nHowever, performing proper version control working with these notebooks is a pain. \nMerging long nested JSON documents with git is nearly impossible.\nIf you would like to use Azure Synapse Analytics for large scale projects while compling with the standards of good software engineering, synbconvert may be the tool you are looking for.\nYou will be able to develop code in your favorite IDE and colaborate with your team as usual.\n\n## Features\n\nsynbconvert is a simple command line tool and Python API to convert Python files to Azure Synapse Analytics notebooks and vice versa.\nThe main features of the tool include:\n\n- Lean annotation syntax for Python files\n- Conversion of Python files to Azure Synapse Analytics notebooks based on annotations\n- Conversion of Azure Synapse Analytics notebooks to annotated Python files\n\n## Workflow\n\n<p align=\"center\"><img width=\"885\" src=\"https://raw.githubusercontent.com/alpine-data/synbconvert/main/docs/img/workflow.png\"/></p>\n\n## Installation\n\n### pip\n\nsynbconvert releases are available as source packages and binary wheels. Before you install synbconvert and its dependencies, make sure that your pip, setuptools and wheel are up to date. When using pip it is generally recommended to install packages in a virtual environment to avoid modifying system state. You can install synbconvert with:\n\n```console\n$ pip install synbconvert\n```\n\n<br>\n\n## Contribute\nThank you for taking the time to contribute to synbconvert. Before submitting a pull request, please make sure to bump the project version with:\n\n```console\n$ poetry version minor\n```\n\nfor minor releases or\n\n```console\n$ poetry version major\n```\n\nfor major releases.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A simple command line tool to convert Python files to Synapse Notebooks and vice versa.",
"version": "0.7.0",
"project_urls": {
"Documentation": "https://alpine-data.github.io/synbconvert/",
"Homepage": "https://github.com/alpine-data/synbconvert",
"Repository": "https://github.com/alpine-data/synbconvert"
},
"split_keywords": [
"python",
"converter",
"notebook",
"azure",
"synapse-analytics"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "5e7f6fd05e80d7359389fb1d9a8ccf7dd40e4df9028aeaad3370fc08ab9afd19",
"md5": "95c3af111966868d91006e3173c835f2",
"sha256": "60a608471ff5884fce0b2f546079a931b198774d5cfc5d1adbbcce596b742b96"
},
"downloads": -1,
"filename": "synbconvert-0.7.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "95c3af111966868d91006e3173c835f2",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9,<4.0",
"size": 11809,
"upload_time": "2023-05-21T14:49:20",
"upload_time_iso_8601": "2023-05-21T14:49:20.741867Z",
"url": "https://files.pythonhosted.org/packages/5e/7f/6fd05e80d7359389fb1d9a8ccf7dd40e4df9028aeaad3370fc08ab9afd19/synbconvert-0.7.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4e6a550d80247c7bb09980b5133cc9f2cc54ef0706a94b733b19da88c54eca18",
"md5": "bf978712b6aedaeda61d730b879621fe",
"sha256": "a7233df5de7d033e44bdabc3ee1d4bce0f528320299468f336f969a507058d7b"
},
"downloads": -1,
"filename": "synbconvert-0.7.0.tar.gz",
"has_sig": false,
"md5_digest": "bf978712b6aedaeda61d730b879621fe",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9,<4.0",
"size": 9973,
"upload_time": "2023-05-21T14:49:22",
"upload_time_iso_8601": "2023-05-21T14:49:22.150898Z",
"url": "https://files.pythonhosted.org/packages/4e/6a/550d80247c7bb09980b5133cc9f2cc54ef0706a94b733b19da88c54eca18/synbconvert-0.7.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-05-21 14:49:22",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "alpine-data",
"github_project": "synbconvert",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "synbconvert"
}