The visualization layer for Pathway - real-time dashboards for streaming data
Project description
PathwayViz
Embeddable real-time widgets for Pathway streaming pipelines. Rust WebSocket server with a Python API.
Overview
PathwayViz makes it easy to embed live-updating data from Kafka streams into any web page. Define widgets in Python, embed them via iframe anywhere.
import pathway as pw
import pathwayviz as pv
orders = pw.io.kafka.read(...)
revenue = orders.reduce(revenue=pw.reducers.sum(pw.this.amount))
# Create a widget server
server = pv.WidgetServer(port=3000)
server.register(pv.Stat(revenue, "revenue", id="revenue", title="Revenue", unit="$"))
server.start()
pw.run()
<iframe src="http://localhost:3000/embed/revenue"></iframe>
Install
pip install pathway-viz
Architecture
flowchart LR
subgraph Pathway["Pathway Pipeline"]
K[Kafka] --> P[Processing]
P --> T[Tables]
end
subgraph PathwayViz
T -->|subscribe| PY[Python API]
PY -->|JSON| RS[Rust Server]
RS --> RB[Ring Buffers]
RS -->|WebSocket| B[Browser]
end
Key components:
- WidgetServer - Manages widget registration and serves embeddable endpoints
- Widget Classes -
Stat,Chart,Gauge,Tablesubscribe to Pathway tables - Rust WebSocket Server - Tokio async runtime handles concurrent connections without GIL contention
- Ring Buffers - New clients receive historical data immediately without replaying the stream
Widgets
server = pv.WidgetServer(port=3000)
# Single value with delta tracking
server.register(pv.Stat(totals, "revenue", id="revenue", title="Revenue", unit="$"))
# Time series chart
server.register(pv.Chart(windowed_data, "count", id="orders_chart", x_column="window_end", title="Orders/sec"))
# Circular gauge
server.register(pv.Gauge(stats, "cpu", id="cpu_gauge", title="CPU", max_val=100, unit="%"))
# Live-updating table
server.register(pv.Table(by_region, id="regions", title="By Region", columns=["region", "revenue"]))
server.start()
Each widget is accessible at /embed/{widget_id}.
Demo
Requires Docker (spins up Redpanda for Kafka):
pip install pathway-viz[kafka]
pathway-viz demo
Generates fake e-commerce orders and displays live metrics. Includes a portal page demonstrating embedded widgets in a mock storefront.
Documentation
Roadmap
- Core widgets (stat, chart, gauge, table)
- Pathway table subscriptions
- Embed mode with per-widget endpoints
- Ring buffer history for late-joining clients
- Additional chart types
- Crash recovery
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pathway_viz-0.3.1.tar.gz.
File metadata
- Download URL: pathway_viz-0.3.1.tar.gz
- Upload date:
- Size: 1.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
84567267aa571cd6149352dd13b0eed5a51a5911f5408f7a9b13507823faefb3
|
|
| MD5 |
a55fb1948ff588b9c08d57f59a081f43
|
|
| BLAKE2b-256 |
53b7170bd60c620fa896e337528d14d19cd78fee2c4d5bab17d86daa93715060
|
Provenance
The following attestation bundles were made for pathway_viz-0.3.1.tar.gz:
Publisher:
pypi-publish.yml on mvfolino68/pathway-viz
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pathway_viz-0.3.1.tar.gz -
Subject digest:
84567267aa571cd6149352dd13b0eed5a51a5911f5408f7a9b13507823faefb3 - Sigstore transparency entry: 765632107
- Sigstore integration time:
-
Permalink:
mvfolino68/pathway-viz@b63f07bb63cee4b34f9c93322d23d68934cb8eb9 -
Branch / Tag:
refs/tags/v0.3.1 - Owner: https://github.com/mvfolino68
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yml@b63f07bb63cee4b34f9c93322d23d68934cb8eb9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pathway_viz-0.3.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: pathway_viz-0.3.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 960.9 kB
- Tags: PyPy, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
27d3538bde41afe378248284c9f27c07ed1cb65c224cffa137e7bac28125e77c
|
|
| MD5 |
f84b8fdc7118ce3cc883a195d0ba49f1
|
|
| BLAKE2b-256 |
8fd10517762c34954c78f079f95d00587dabe964d1988cb2a6ad8ad852fecbfc
|
Provenance
The following attestation bundles were made for pathway_viz-0.3.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:
Publisher:
pypi-publish.yml on mvfolino68/pathway-viz
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pathway_viz-0.3.1-pp310-pypy310_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl -
Subject digest:
27d3538bde41afe378248284c9f27c07ed1cb65c224cffa137e7bac28125e77c - Sigstore transparency entry: 765632117
- Sigstore integration time:
-
Permalink:
mvfolino68/pathway-viz@b63f07bb63cee4b34f9c93322d23d68934cb8eb9 -
Branch / Tag:
refs/tags/v0.3.1 - Owner: https://github.com/mvfolino68
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yml@b63f07bb63cee4b34f9c93322d23d68934cb8eb9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pathway_viz-0.3.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: pathway_viz-0.3.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 961.0 kB
- Tags: PyPy, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
62b993ca557b91e5c53121e42f59fb282fc2b534a5109ee25c05783a49200780
|
|
| MD5 |
819099eb19f959b5c666475f643aabf2
|
|
| BLAKE2b-256 |
59ea2ca6210cf4569ba0a052f499e7a22b5a65208b364a736b9b70b548fd4a5a
|
Provenance
The following attestation bundles were made for pathway_viz-0.3.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:
Publisher:
pypi-publish.yml on mvfolino68/pathway-viz
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pathway_viz-0.3.1-pp39-pypy39_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl -
Subject digest:
62b993ca557b91e5c53121e42f59fb282fc2b534a5109ee25c05783a49200780 - Sigstore transparency entry: 765632111
- Sigstore integration time:
-
Permalink:
mvfolino68/pathway-viz@b63f07bb63cee4b34f9c93322d23d68934cb8eb9 -
Branch / Tag:
refs/tags/v0.3.1 - Owner: https://github.com/mvfolino68
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yml@b63f07bb63cee4b34f9c93322d23d68934cb8eb9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pathway_viz-0.3.1-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: pathway_viz-0.3.1-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 961.2 kB
- Tags: PyPy, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
81150ad09a5317eb9ea412762305e6e4c651c903e44e68d9d5c3668a9a44c032
|
|
| MD5 |
a11bab5ff96c8b9c9868307058ce5e55
|
|
| BLAKE2b-256 |
8e0edf43e6194a25d582a58737248e9d1dfd86a01c9f7302bc20cab34c21ba9c
|
Provenance
The following attestation bundles were made for pathway_viz-0.3.1-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:
Publisher:
pypi-publish.yml on mvfolino68/pathway-viz
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pathway_viz-0.3.1-pp38-pypy38_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl -
Subject digest:
81150ad09a5317eb9ea412762305e6e4c651c903e44e68d9d5c3668a9a44c032 - Sigstore transparency entry: 765632113
- Sigstore integration time:
-
Permalink:
mvfolino68/pathway-viz@b63f07bb63cee4b34f9c93322d23d68934cb8eb9 -
Branch / Tag:
refs/tags/v0.3.1 - Owner: https://github.com/mvfolino68
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yml@b63f07bb63cee4b34f9c93322d23d68934cb8eb9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pathway_viz-0.3.1-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: pathway_viz-0.3.1-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 963.9 kB
- Tags: PyPy, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a7cda172b5c485c7f295d01151b280d4d48cdd61de0ffe46ba79b800fa1f69ed
|
|
| MD5 |
23053dd6e3db684e19c08b9691ae610f
|
|
| BLAKE2b-256 |
374fbf7bb2f6073392f1aff0b9518c612e94bb579fed66ac60d1add8e3e9e39d
|
Provenance
The following attestation bundles were made for pathway_viz-0.3.1-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:
Publisher:
pypi-publish.yml on mvfolino68/pathway-viz
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pathway_viz-0.3.1-pp37-pypy37_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl -
Subject digest:
a7cda172b5c485c7f295d01151b280d4d48cdd61de0ffe46ba79b800fa1f69ed - Sigstore transparency entry: 765632108
- Sigstore integration time:
-
Permalink:
mvfolino68/pathway-viz@b63f07bb63cee4b34f9c93322d23d68934cb8eb9 -
Branch / Tag:
refs/tags/v0.3.1 - Owner: https://github.com/mvfolino68
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yml@b63f07bb63cee4b34f9c93322d23d68934cb8eb9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pathway_viz-0.3.1-cp311-abi3-win_amd64.whl.
File metadata
- Download URL: pathway_viz-0.3.1-cp311-abi3-win_amd64.whl
- Upload date:
- Size: 699.8 kB
- Tags: CPython 3.11+, Windows x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c6c204fb15c1b4f41d27a76346bb60a0e2364fb03e219be8aaba167a6d21735d
|
|
| MD5 |
1a5c615685586a89e806d9f95d1094d5
|
|
| BLAKE2b-256 |
6fa63c3fda1eb407c2886428412aee1d55959e891c7554cb81ec8c17043ba415
|
Provenance
The following attestation bundles were made for pathway_viz-0.3.1-cp311-abi3-win_amd64.whl:
Publisher:
pypi-publish.yml on mvfolino68/pathway-viz
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pathway_viz-0.3.1-cp311-abi3-win_amd64.whl -
Subject digest:
c6c204fb15c1b4f41d27a76346bb60a0e2364fb03e219be8aaba167a6d21735d - Sigstore transparency entry: 765632112
- Sigstore integration time:
-
Permalink:
mvfolino68/pathway-viz@b63f07bb63cee4b34f9c93322d23d68934cb8eb9 -
Branch / Tag:
refs/tags/v0.3.1 - Owner: https://github.com/mvfolino68
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yml@b63f07bb63cee4b34f9c93322d23d68934cb8eb9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pathway_viz-0.3.1-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: pathway_viz-0.3.1-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 970.0 kB
- Tags: CPython 3.11+, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7873fe50608a102aacc0ac4a5ebc971aef9961bf1cf7482f19cea05d6c401f93
|
|
| MD5 |
8c1b3a38b06dd2cf605e33b003792d50
|
|
| BLAKE2b-256 |
a655cb4462f3dffb9247cb527ef86bea876f534e3d443b2c6df91506446b5b65
|
Provenance
The following attestation bundles were made for pathway_viz-0.3.1-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:
Publisher:
pypi-publish.yml on mvfolino68/pathway-viz
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pathway_viz-0.3.1-cp311-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl -
Subject digest:
7873fe50608a102aacc0ac4a5ebc971aef9961bf1cf7482f19cea05d6c401f93 - Sigstore transparency entry: 765632121
- Sigstore integration time:
-
Permalink:
mvfolino68/pathway-viz@b63f07bb63cee4b34f9c93322d23d68934cb8eb9 -
Branch / Tag:
refs/tags/v0.3.1 - Owner: https://github.com/mvfolino68
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yml@b63f07bb63cee4b34f9c93322d23d68934cb8eb9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pathway_viz-0.3.1-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: pathway_viz-0.3.1-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 965.3 kB
- Tags: CPython 3.11+, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c637e8535726df0dbc03214a6083ae053c3d231f4dca823099968940db444871
|
|
| MD5 |
8b2ba445be6ef28f434b49216308b5f8
|
|
| BLAKE2b-256 |
ed0f7d8d1abb56cea235c3bdd9a77ca1c19bd40fa7e0265feacacd646c099fde
|
Provenance
The following attestation bundles were made for pathway_viz-0.3.1-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:
Publisher:
pypi-publish.yml on mvfolino68/pathway-viz
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pathway_viz-0.3.1-cp311-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl -
Subject digest:
c637e8535726df0dbc03214a6083ae053c3d231f4dca823099968940db444871 - Sigstore transparency entry: 765632114
- Sigstore integration time:
-
Permalink:
mvfolino68/pathway-viz@b63f07bb63cee4b34f9c93322d23d68934cb8eb9 -
Branch / Tag:
refs/tags/v0.3.1 - Owner: https://github.com/mvfolino68
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yml@b63f07bb63cee4b34f9c93322d23d68934cb8eb9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pathway_viz-0.3.1-cp311-abi3-macosx_11_0_arm64.whl.
File metadata
- Download URL: pathway_viz-0.3.1-cp311-abi3-macosx_11_0_arm64.whl
- Upload date:
- Size: 862.2 kB
- Tags: CPython 3.11+, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
62aa8d91e792b2897dd8bebd53675c0b9ce56823e0b9af8d231cb51506e3eed8
|
|
| MD5 |
c35e8d81c154fe47b359b7579f550144
|
|
| BLAKE2b-256 |
5718d6f6ddbdb03947c89060e72ddad662fb51f5e6afdb674cbee575ac06d6ca
|
Provenance
The following attestation bundles were made for pathway_viz-0.3.1-cp311-abi3-macosx_11_0_arm64.whl:
Publisher:
pypi-publish.yml on mvfolino68/pathway-viz
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pathway_viz-0.3.1-cp311-abi3-macosx_11_0_arm64.whl -
Subject digest:
62aa8d91e792b2897dd8bebd53675c0b9ce56823e0b9af8d231cb51506e3eed8 - Sigstore transparency entry: 765632120
- Sigstore integration time:
-
Permalink:
mvfolino68/pathway-viz@b63f07bb63cee4b34f9c93322d23d68934cb8eb9 -
Branch / Tag:
refs/tags/v0.3.1 - Owner: https://github.com/mvfolino68
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yml@b63f07bb63cee4b34f9c93322d23d68934cb8eb9 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pathway_viz-0.3.1-cp311-abi3-macosx_10_12_x86_64.whl.
File metadata
- Download URL: pathway_viz-0.3.1-cp311-abi3-macosx_10_12_x86_64.whl
- Upload date:
- Size: 874.6 kB
- Tags: CPython 3.11+, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
04616e0aed9d98003d8c2e07050337b531b03bd5241207df10bce01979564646
|
|
| MD5 |
83e6a59aeb6c421295eae0e47257e8ab
|
|
| BLAKE2b-256 |
e7d0e30daa868de8908e1bba8c24117a4b31e0a3e4e600eb74ad4f103db398da
|
Provenance
The following attestation bundles were made for pathway_viz-0.3.1-cp311-abi3-macosx_10_12_x86_64.whl:
Publisher:
pypi-publish.yml on mvfolino68/pathway-viz
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pathway_viz-0.3.1-cp311-abi3-macosx_10_12_x86_64.whl -
Subject digest:
04616e0aed9d98003d8c2e07050337b531b03bd5241207df10bce01979564646 - Sigstore transparency entry: 765632110
- Sigstore integration time:
-
Permalink:
mvfolino68/pathway-viz@b63f07bb63cee4b34f9c93322d23d68934cb8eb9 -
Branch / Tag:
refs/tags/v0.3.1 - Owner: https://github.com/mvfolino68
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi-publish.yml@b63f07bb63cee4b34f9c93322d23d68934cb8eb9 -
Trigger Event:
push
-
Statement type: