# DataBoomer
A Jupyter tool for seamlessly transferring complex Python objects between notebooks. DataBoomer serializes your objects as base64 string and creates self-contained code snippets that can perfectly recreate them in any notebook.
## Key Features
- One-click copying of serialized objects to clipboard
- Handles complex Python objects using `dill`
- Creates self-contained, portable code snippets
- Automatically detects variable names
- Preserves object state exactly as it was
## Install
```bash
pip install databoomer
```
## Usage in Jupyter
```python
from databoomer import DataBoomer
import pandas as pd
# Save a complex DataFrame with custom processing
df = pd.DataFrame({'values': [1, 2, 3]})
df['processed'] = df['values'] * 2
DataBoomer(df, comment="Preprocessed dataset")
# Copies to clipboard:
# # comment: Preprocessed dataset
# payload = '''[encoded_data]'''
# df = dill.loads(codecs.decode(payload.encode(), 'base64'))
# Custom variable names
model = train_complex_model()
DataBoomer(model, obj_name="trained_model", comment="Model trained on XYZ dataset")
# The copied code can be pasted into any notebook to recreate the exact object
```
## Why DataBoomer?
- **Share Objects**: Easily transfer complex objects between notebooks
- **Session Recovery**: Save important objects in a format that survives kernel restarts
- **Collaboration**: Share exact object states with colleagues
- **State Preservation**: Captures complete object state, including custom attributes and processing
Remember: DataBoomer creates portable, self-contained code snippets that recreate your objects exactly as they were. Just boom it, switch notebooks, paste, and you're ready to go.
Note: This tool is particularly useful when working with objects that are:
- Result of complex processing
- Trained models or fitted transformers
- Custom class instances with specific state
- Image snippets, selfcontained in the jupyter lab
Raw data
{
"_id": null,
"home_page": null,
"name": "databoomer",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": null,
"keywords": "repl, template, development, jupyter, base64",
"author": null,
"author_email": "Kaspar Kallas <kaspar.kana.kallas@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/2b/b5/8691920621572c609116307c82753ac7e5d47a474e7747a7e6eb493907f8/databoomer-0.1.1.tar.gz",
"platform": null,
"description": "# DataBoomer\r\n\r\nA Jupyter tool for seamlessly transferring complex Python objects between notebooks. DataBoomer serializes your objects as base64 string and creates self-contained code snippets that can perfectly recreate them in any notebook.\r\n\r\n## Key Features\r\n- One-click copying of serialized objects to clipboard\r\n- Handles complex Python objects using `dill`\r\n- Creates self-contained, portable code snippets\r\n- Automatically detects variable names\r\n- Preserves object state exactly as it was\r\n\r\n## Install\r\n```bash\r\npip install databoomer\r\n```\r\n\r\n## Usage in Jupyter\r\n```python\r\nfrom databoomer import DataBoomer\r\nimport pandas as pd\r\n\r\n# Save a complex DataFrame with custom processing\r\ndf = pd.DataFrame({'values': [1, 2, 3]})\r\ndf['processed'] = df['values'] * 2\r\nDataBoomer(df, comment=\"Preprocessed dataset\")\r\n# Copies to clipboard:\r\n# # comment: Preprocessed dataset\r\n# payload = '''[encoded_data]'''\r\n# df = dill.loads(codecs.decode(payload.encode(), 'base64'))\r\n\r\n# Custom variable names\r\nmodel = train_complex_model()\r\nDataBoomer(model, obj_name=\"trained_model\", comment=\"Model trained on XYZ dataset\")\r\n\r\n# The copied code can be pasted into any notebook to recreate the exact object\r\n```\r\n\r\n## Why DataBoomer?\r\n- **Share Objects**: Easily transfer complex objects between notebooks\r\n- **Session Recovery**: Save important objects in a format that survives kernel restarts\r\n- **Collaboration**: Share exact object states with colleagues\r\n- **State Preservation**: Captures complete object state, including custom attributes and processing\r\n\r\nRemember: DataBoomer creates portable, self-contained code snippets that recreate your objects exactly as they were. Just boom it, switch notebooks, paste, and you're ready to go.\r\n\r\nNote: This tool is particularly useful when working with objects that are:\r\n- Result of complex processing\r\n- Trained models or fitted transformers\r\n- Custom class instances with specific state\r\n- Image snippets, selfcontained in the jupyter lab\r\n",
"bugtrack_url": null,
"license": "BSD-3-Clause",
"summary": "Copy Python objects as portable code snippets between Jupyter notebooks",
"version": "0.1.1",
"project_urls": {
"Bug Tracker": "https://github.com/KKallas/DataBoomer/issues",
"Homepage": "https://github.com/KKallas/DataBoomer"
},
"split_keywords": [
"repl",
" template",
" development",
" jupyter",
" base64"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "7149cb1314552a817af744d15042d33d34d03ebcd49bdb90f09f3c8697c481c2",
"md5": "e22b2a31edbf70a26b2fcc1bd303e1a8",
"sha256": "30e2ed4ee6b86eeb6b11c8eb3a9d5e839a9e13869ff667869939350fdbada27a"
},
"downloads": -1,
"filename": "databoomer-0.1.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "e22b2a31edbf70a26b2fcc1bd303e1a8",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 4810,
"upload_time": "2024-12-08T16:53:54",
"upload_time_iso_8601": "2024-12-08T16:53:54.422228Z",
"url": "https://files.pythonhosted.org/packages/71/49/cb1314552a817af744d15042d33d34d03ebcd49bdb90f09f3c8697c481c2/databoomer-0.1.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2bb58691920621572c609116307c82753ac7e5d47a474e7747a7e6eb493907f8",
"md5": "fd65bc7b7162ca5095ae16cdbb1dbe21",
"sha256": "201dd230dcdfc243f38085ad2be1abdd984cefabcb9441baf5a0f2754ee0b7ff"
},
"downloads": -1,
"filename": "databoomer-0.1.1.tar.gz",
"has_sig": false,
"md5_digest": "fd65bc7b7162ca5095ae16cdbb1dbe21",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 5869,
"upload_time": "2024-12-08T16:53:55",
"upload_time_iso_8601": "2024-12-08T16:53:55.745537Z",
"url": "https://files.pythonhosted.org/packages/2b/b5/8691920621572c609116307c82753ac7e5d47a474e7747a7e6eb493907f8/databoomer-0.1.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-08 16:53:55",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "KKallas",
"github_project": "DataBoomer",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "databoomer"
}