Name | dry-webview JSON |
Version |
0.2.3
JSON |
| download |
home_page | None |
Summary | Use your web dev skills to design UIs for your Python apps with this simple, Rust-powered webview library. |
upload_time | 2024-11-08 02:15:07 |
maintainer | None |
docs_url | None |
author | Otávio Barradas |
requires_python | >=3.12 |
license | MIT |
keywords |
webview
gui
rust
ui
web
python
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# Dry: give a UI to your Python app using web tech
**Dry** is a minimal, no-dependency webview library for Python that lets you use your web development skills to create user interfaces for your Python applications. Built with [Rust](https://www.rust-lang.org/) and leveraging [Wry](https://github.com/tauri-apps/wry) and [Tao](https://github.com/tauri-apps/tao), Dry is designed to be simple, lightweight, and easy to integrate—no need for extra packages.
## Why Choose Dry?
- **Familiar Tech**: Use HTML, CSS, and JavaScript to design your UIs!
- **Simple API**: wv = Webview(), set a few things up, wv.run()—that's it!
- **Flexible Content**: Load via HTTP/HTTPS or render HTML without a server.
- **Customizable**: Borderless windows with custom titlebars are supported.
- **Small Size**: Binaries ~800 KB, compressed ~300 KB with PyInstaller/UPX.
## Installation
Getting started with Dry is straightforward. Simply use `pip` or `uv` to install:
```bash
pip install dry-webview
uv add dry-webview
```
## Simple, Intuitive Usage
Here's a quick example of how to use Dry to create a simple webview:
```python
from dry import Webview
wv = Webview()
wv.title = "My Python App!"
wv.content = "<h1>Hello, World!</h1>"
wv.run()
```
For more examples, check out the [examples directory](https://github.com/barradasotavio/dry/tree/master/examples).
## Current Status
Dry is in its early stages and currently supports Windows. Linux and macOS support are planned. Expect ongoing development, new features, and potential changes as the library evolves.
## Roadmap
| Feature | Status |
| ----------------------------------- | ----------- |
| Rendering HTML | ✅ Completed |
| Loading HTTP/HTTPS | ✅ Completed |
| Calling Python from JavaScript | ✅ Completed |
| Browser Developer Tools | ✅ Completed |
| Custom Titlebars | ✅ Completed |
| Custom Icons | ✅ Completed |
| PyInstaller Support | ✅ Completed |
| Calling JavaScript from Python | ❌ Not Yet |
| Touch Support in Borderless Windows | ❌ Not Yet |
## Platform Compatibility
| Platform | Status |
| ---------- | --------- |
| Windows 11 | ✅ Tested |
| Linux | ❌ Not Yet |
| macOS | ❌ Not Yet |
## Python Compatibility
| Python Version | Status |
| -------------- | --------- |
| CPython 3.11 | ❌ Not Yet |
| CPython 3.12 | ✅ Tested |
| CPython 3.13 | ❌ Not Yet |
## License
Dry is distributed under the MIT License. For more details, see the [LICENSE](https://github.com/barradasotavio/dry/blob/master/LICENSE) file.
Raw data
{
"_id": null,
"home_page": null,
"name": "dry-webview",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.12",
"maintainer_email": null,
"keywords": "webview, gui, rust, ui, web, python",
"author": "Ot\u00e1vio Barradas",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/4e/7b/a94310e6b309a92fae19746d80f433969fa1d4e8d27743ee7e470d15f0c2/dry_webview-0.2.3.tar.gz",
"platform": null,
"description": "# Dry: give a UI to your Python app using web tech\r\n\r\n**Dry** is a minimal, no-dependency webview library for Python that lets you use your web development skills to create user interfaces for your Python applications. Built with [Rust](https://www.rust-lang.org/) and leveraging [Wry](https://github.com/tauri-apps/wry) and [Tao](https://github.com/tauri-apps/tao), Dry is designed to be simple, lightweight, and easy to integrate\u2014no need for extra packages.\r\n\r\n## Why Choose Dry?\r\n\r\n- **Familiar Tech**: Use HTML, CSS, and JavaScript to design your UIs!\r\n- **Simple API**: wv = Webview(), set a few things up, wv.run()\u2014that's it!\r\n- **Flexible Content**: Load via HTTP/HTTPS or render HTML without a server.\r\n- **Customizable**: Borderless windows with custom titlebars are supported.\r\n- **Small Size**: Binaries ~800 KB, compressed ~300 KB with PyInstaller/UPX.\r\n\r\n## Installation\r\n\r\nGetting started with Dry is straightforward. Simply use `pip` or `uv` to install:\r\n\r\n```bash\r\npip install dry-webview\r\nuv add dry-webview\r\n```\r\n\r\n## Simple, Intuitive Usage\r\n\r\nHere's a quick example of how to use Dry to create a simple webview:\r\n\r\n```python\r\nfrom dry import Webview\r\n\r\nwv = Webview()\r\nwv.title = \"My Python App!\"\r\nwv.content = \"<h1>Hello, World!</h1>\"\r\nwv.run()\r\n```\r\n\r\nFor more examples, check out the [examples directory](https://github.com/barradasotavio/dry/tree/master/examples).\r\n\r\n## Current Status\r\n\r\nDry is in its early stages and currently supports Windows. Linux and macOS support are planned. Expect ongoing development, new features, and potential changes as the library evolves.\r\n\r\n## Roadmap\r\n\r\n| Feature | Status |\r\n| ----------------------------------- | ----------- |\r\n| Rendering HTML | \u2705 Completed |\r\n| Loading HTTP/HTTPS | \u2705 Completed |\r\n| Calling Python from JavaScript | \u2705 Completed |\r\n| Browser Developer Tools | \u2705 Completed |\r\n| Custom Titlebars | \u2705 Completed |\r\n| Custom Icons | \u2705 Completed |\r\n| PyInstaller Support | \u2705 Completed |\r\n| Calling JavaScript from Python | \u274c Not Yet |\r\n| Touch Support in Borderless Windows | \u274c Not Yet |\r\n\r\n## Platform Compatibility\r\n\r\n| Platform | Status |\r\n| ---------- | --------- |\r\n| Windows 11 | \u2705 Tested |\r\n| Linux | \u274c Not Yet |\r\n| macOS | \u274c Not Yet |\r\n\r\n## Python Compatibility\r\n\r\n| Python Version | Status |\r\n| -------------- | --------- |\r\n| CPython 3.11 | \u274c Not Yet |\r\n| CPython 3.12 | \u2705 Tested |\r\n| CPython 3.13 | \u274c Not Yet |\r\n\r\n## License\r\n\r\nDry is distributed under the MIT License. For more details, see the [LICENSE](https://github.com/barradasotavio/dry/blob/master/LICENSE) file.\r\n\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Use your web dev skills to design UIs for your Python apps with this simple, Rust-powered webview library.",
"version": "0.2.3",
"project_urls": {
"Homepage": "https://github.com/barradasotavio/dry",
"Repository": "https://github.com/barradasotavio/dry.git"
},
"split_keywords": [
"webview",
" gui",
" rust",
" ui",
" web",
" python"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "b7b4f8af96150eddf3238c66e00d2879f15d40ff45441064c4d8262319c28449",
"md5": "a7ddd05a717c3b3f94e9992729e066b8",
"sha256": "dbd6e2c225a64643d308a3192b525f53d6ada403c361b819b7993a4f34708b73"
},
"downloads": -1,
"filename": "dry_webview-0.2.3-cp312-none-win_amd64.whl",
"has_sig": false,
"md5_digest": "a7ddd05a717c3b3f94e9992729e066b8",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.12",
"size": 405955,
"upload_time": "2024-11-08T02:15:04",
"upload_time_iso_8601": "2024-11-08T02:15:04.451162Z",
"url": "https://files.pythonhosted.org/packages/b7/b4/f8af96150eddf3238c66e00d2879f15d40ff45441064c4d8262319c28449/dry_webview-0.2.3-cp312-none-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "4e7ba94310e6b309a92fae19746d80f433969fa1d4e8d27743ee7e470d15f0c2",
"md5": "21947db00ca46f4b4195f3ccb4a0e21c",
"sha256": "1028df374dccaf916e05c03b9eddb8d76dd00d765c1940a6a3d671ce186ac47e"
},
"downloads": -1,
"filename": "dry_webview-0.2.3.tar.gz",
"has_sig": false,
"md5_digest": "21947db00ca46f4b4195f3ccb4a0e21c",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.12",
"size": 44653,
"upload_time": "2024-11-08T02:15:07",
"upload_time_iso_8601": "2024-11-08T02:15:07.027790Z",
"url": "https://files.pythonhosted.org/packages/4e/7b/a94310e6b309a92fae19746d80f433969fa1d4e8d27743ee7e470d15f0c2/dry_webview-0.2.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-11-08 02:15:07",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "barradasotavio",
"github_project": "dry",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "dry-webview"
}