# ipysketch_lite 🎨
[](https://pypi.org/project/ipysketch-lite)
[](https://matthewandretaylor.github.io/ipysketch_lite)
[](https://matthewandretaylor.github.io/ipysketch_lite/jupyterlite/lab?path=lite_example.ipynb)
**ipysketch_lite** is a simple interactive sketching tool for Jupyter notebooks.
After drawing a sketch you can use it directly in your Jupyter notebook.
When changes are made to the sketch, the image data in Python is updated.

Try it out in JupyterLite: [](https://matthewandretaylor.github.io/ipysketch_lite/jupyterlite/lab?path=lite_example.ipynb)
## Documentation 📖
You can view the documentation at: https://matthewandretaylor.github.io/ipysketch_lite
## Install 🛠️
You can install using **pip**:
```bash
pip install ipysketch-lite
```
Or using **piplite** if you are using [Jupyter lite](https://matthewandretaylor.github.io/ipysketch_lite/jupyterlite/lab?path=lite_example.ipynb)
```py
import piplite
await piplite.install("ipysketch_lite")
```
## Quickstart 🚀
Start drawing a quick sketch in your notebook like this
```py
from ipysketch_lite import Sketch
sketch = Sketch()
```
Then add a new cell to retrieve the sketch data in python
```py
sketch.data # Sketch image data as a base64 encoded string
sketch.image # PIL Image of the sketch
```

Sketch data gets updated in cells after the sketch is modified.
This means you can edit your sketch and get the new updated outputs
## Using your own drawing API 🖌️
You can extend `ipysketch_lite` to use your own JavaScript drawing library by subclassing `Sketch` and customizing the frontend template.
See the [custom_sketch.ipynb](examples/custom_sketch.ipynb) notebook for an example.
---
Raw data
{
"_id": null,
"home_page": null,
"name": "ipysketch-lite",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "jupyter, sketch, drawing, canvas",
"author": null,
"author_email": "Matthew Taylor <matthew.taylor.andre@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/3a/7b/8a7c3fcb026059d584a0c0a8e7c68f248977d32eefe830333ac598121b39/ipysketch_lite-0.4.3.tar.gz",
"platform": null,
"description": "# ipysketch_lite \ud83c\udfa8\n\n[](https://pypi.org/project/ipysketch-lite)\n[](https://matthewandretaylor.github.io/ipysketch_lite)\n[](https://matthewandretaylor.github.io/ipysketch_lite/jupyterlite/lab?path=lite_example.ipynb)\n\n\n**ipysketch_lite** is a simple interactive sketching tool for Jupyter notebooks.\nAfter drawing a sketch you can use it directly in your Jupyter notebook.\nWhen changes are made to the sketch, the image data in Python is updated.\n\n\n\n\nTry it out in JupyterLite: [](https://matthewandretaylor.github.io/ipysketch_lite/jupyterlite/lab?path=lite_example.ipynb)\n\n\n## Documentation \ud83d\udcd6\n\nYou can view the documentation at: https://matthewandretaylor.github.io/ipysketch_lite\n\n\n## Install \ud83d\udee0\ufe0f\n\nYou can install using **pip**:\n\n```bash\npip install ipysketch-lite\n```\n\nOr using **piplite** if you are using [Jupyter lite](https://matthewandretaylor.github.io/ipysketch_lite/jupyterlite/lab?path=lite_example.ipynb)\n\n```py\nimport piplite\nawait piplite.install(\"ipysketch_lite\")\n```\n\n## Quickstart \ud83d\ude80\n\nStart drawing a quick sketch in your notebook like this\n\n```py\nfrom ipysketch_lite import Sketch\n\nsketch = Sketch()\n```\n\nThen add a new cell to retrieve the sketch data in python\n\n```py\nsketch.data # Sketch image data as a base64 encoded string\nsketch.image # PIL Image of the sketch\n```\n\n\n\nSketch data gets updated in cells after the sketch is modified.\nThis means you can edit your sketch and get the new updated outputs\n\n\n## Using your own drawing API \ud83d\udd8c\ufe0f\n\nYou can extend `ipysketch_lite` to use your own JavaScript drawing library by subclassing `Sketch` and customizing the frontend template.\nSee the [custom_sketch.ipynb](examples/custom_sketch.ipynb) notebook for an example.\n\n---\n",
"bugtrack_url": null,
"license": "Copyright (c) 2025 Matthew Andre Taylor",
"summary": "Simple sketching tool for Jupyter notebooks",
"version": "0.4.3",
"project_urls": {
"Homepage": "https://github.com/MatthewAndreTaylor/ipysketch_lite"
},
"split_keywords": [
"jupyter",
" sketch",
" drawing",
" canvas"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "5eb4d1910311e3a2c659d5ff519e97110751bf8741ae9eae4a5b97fda2ca90b4",
"md5": "c00cd8b97c7775592f2023dd4332e736",
"sha256": "13fffd2c51b76e4a07674e4e751266638136176927f7ecdc31908a7966e67fe7"
},
"downloads": -1,
"filename": "ipysketch_lite-0.4.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "c00cd8b97c7775592f2023dd4332e736",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 8202,
"upload_time": "2025-11-01T17:48:19",
"upload_time_iso_8601": "2025-11-01T17:48:19.769536Z",
"url": "https://files.pythonhosted.org/packages/5e/b4/d1910311e3a2c659d5ff519e97110751bf8741ae9eae4a5b97fda2ca90b4/ipysketch_lite-0.4.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "3a7b8a7c3fcb026059d584a0c0a8e7c68f248977d32eefe830333ac598121b39",
"md5": "8764d7dbd53240fa8f194be0e1a9d673",
"sha256": "991172871fb8f9c6d542d768391072a7128665d9fb06bc240076e92f69a8e982"
},
"downloads": -1,
"filename": "ipysketch_lite-0.4.3.tar.gz",
"has_sig": false,
"md5_digest": "8764d7dbd53240fa8f194be0e1a9d673",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 8291,
"upload_time": "2025-11-01T17:48:20",
"upload_time_iso_8601": "2025-11-01T17:48:20.966208Z",
"url": "https://files.pythonhosted.org/packages/3a/7b/8a7c3fcb026059d584a0c0a8e7c68f248977d32eefe830333ac598121b39/ipysketch_lite-0.4.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-11-01 17:48:20",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "MatthewAndreTaylor",
"github_project": "ipysketch_lite",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "ipysketch-lite"
}