flet-webview-all
flet-webview-all is a Flet extension that embeds web content in a Flet application. It wraps webview_all, a Flutter WebView implementation with support for Android, iOS, Linux, macOS, Windows, and the web.
The control is a ft.LayoutControl, so it can use Flet layout properties such as expand, width, height, and visible.
Installation
Install the published package from PyPI:
pip install flet-webview-all
Or add it to your application's pyproject.toml:
[project]
dependencies = [
"flet>=0.86.5",
"flet-webview-all",
]
To install the latest unreleased version directly from GitHub instead, use:
[project]
dependencies = [
"flet>=0.86.5",
"flet-webview-all @ git+https://github.com/zaim-tech/flet-webview-all.git",
]
For a local checkout during development, add the package as a path dependency instead. See the included example application for a working configuration.
Usage
import flet as ft
from flet_webview_all import FletWebviewAll
def main(page: ft.Page):
page.title = "WebView example"
page.add(
FletWebviewAll(
url="https://flet.dev",
expand=True,
)
)
ft.run(main)
Render HTML directly
Pass a complete HTML document using html. The control loads url when it is set; otherwise, it uses html.
page.add(
FletWebviewAll(
html="""
<!doctype html>
<html>
<body><h1>Hello from Flet</h1></body>
</html>
""",
expand=True,
)
)
Control properties
| Property | Type | Default | Description |
|---|---|---|---|
url |
str | None |
None |
URL to load. When set, it takes precedence over html. |
html |
str | None |
None |
Complete HTML document to render when url is not set. |
allow_navigation |
bool |
True |
Allows navigation requests from the WebView. |
zoom_enabled |
bool |
True |
Enables WebView zoom where the platform supports it. |
javascript_enabled |
bool |
True |
Enables unrestricted JavaScript execution. |
user_agent |
str | None |
None |
Overrides the WebView user-agent when provided. |
debugging_enabled |
bool |
False |
Prints JavaScript console messages through Flutter's debug logger. |
Use page.update() after changing a control property at runtime:
webview.javascript_enabled = False
page.update()
Platform support
Support is supplied by the underlying webview_all package:
| Platform | Minimum requirement / implementation |
|---|---|
| Android | API 24+ |
| iOS | 13.0+ (WKWebView) |
| Linux | webkit2gtk-4.1 |
| macOS | 10.15+ (WKWebView) |
| Windows | Windows 10 version 1809+ (WebView2) |
| Web | Modern browser |
Platform WebView engines can differ in their capabilities. Test the settings your application relies on on each target platform.
Build the example
Flet extensions include Python and Flutter code. After changing the Flutter package, rebuild the example application; Python-only changes can be run without rebuilding once the extension has been built for the target platform.
cd examples/flet_webview_all_example
flet build windows -v
Replace windows with another supported Flet build target, such as macos, apk, ipa, or web. To run the example during Python development:
flet run
Development
The project follows Flet's extension structure:
src/flet_webview_all/ Python control
src/flutter/flet_webview_all/ Flutter extension and webview_all dependency
examples/flet_webview_all_example/ Sample Flet application
docs/ Additional documentation
To add or update the Flutter dependency, work from the Flutter package directory:
cd src/flutter/flet_webview_all
flutter pub get
⚠️ Important Note
When running your app without building the extension using flet build ..., you will see an error box instead of the actual webview widget. To see the real widget, you must build the extension for your target platform.
References
License
See LICENSE.
Metadata
Release files for flet-webview-all 0.1.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| flet_webview_all-0.1.5.tar.gz | 15.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| flet_webview_all-0.1.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 33.5 kB
Release files / flet_webview_all-0.1.5.tar.gz
| Download URL | flet_webview_all-0.1.5.tar.gz |
|---|---|
| Size | 15.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7cc32bea4c556bdb7aa4684f95176a75462d4032e1a73b600cc22a9e00400057
|
|
BLAKE2b-256 checksum How to use checksums |
6910c205ff7d30929302aef80912d38b2fab780740bde693e84af7a537d650e7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 12, 2026.
Transparency logRelease files / flet_webview_all-0.1.5-py3-none-any.whl
| Download URL | flet_webview_all-0.1.5-py3-none-any.whl |
|---|---|
| Size | 17.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
82d727a0cf71f32a819fb63d552dea7dbb8c1294d5143a17d3c418c2e1fc96dd
|
|
BLAKE2b-256 checksum How to use checksums |
719168d93eabc8d2b039456e40a4cef79a8d7b66d4517d69489cbd067ce545eb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Aug 12, 2026.
Transparency log