Skip to main content

XY-shaped probability field shown as a binned scatter chart.

CI CodSpeed Python 3.11+ Docs Launch the examples on Binder

XY is an extremely fast, interactive, customizable Python charting library for the web, notebooks, and static exports.

Charts are composed declaratively or through matplotlib conventions. You can fully customize them with Python, CSS, or Tailwind.

With small charts, every point is sent to the browser. For large charts, the Rust core computes only what the screen needs to display, based on its resolution. Pan, zoom, hover, and selection can show full details by running the same process for the new range, and a selection returns the original rows.

With XY we rendered the entirety of OpenStreetMap — a 10,000,000,000 point dataset. See the example →

[!IMPORTANT] XY is in alpha and is receiving frequent enhancements. ⭐️ Star the repo to follow the progress.

Is XY right for me?

XY is for Python users who want one flexible charting library for everything from everyday plots to custom application visuals and large datasets. Build a chart once, then use it in notebooks and web apps or export it as HTML, PNG, SVG, or PDF.

Installation

pip install xy

# or, with uv
uv add xy

Getting started

A chart is a container plus the marks inside it. Any sequence works; NumPy is optional.

import xy

chart = xy.line_chart(xy.line([1, 2, 3, 4, 5], [120, 180, 165, 240, 310]))
# chart.to_html("chart.html")
# chart.to_png("chart.png")
# chart.to_svg("chart.svg")
chart  # notebooks render it

The same API scales to a hundred million points as a density surface:

A hundred-million-point spiral rendered as a density surface, then zoomed until the surface resolves into individual points.

import numpy as np

import xy

rng = np.random.default_rng(7)
n = 100_000_000

r = 6.0 * rng.beta(1.2, 3.0, n)
theta = 2.9 * np.log1p(r) + rng.integers(0, 4, n) * (np.pi / 2) + rng.normal(0, 0.045 + 0.016 * r, n)

chart = xy.scatter_chart(
    xy.scatter(
        r * np.cos(theta),
        r * np.sin(theta),
        color=np.exp(-r / 2.2),
        colormap="magma_r",
        density=True,
        opacity=0.85,
        # Grow and solidify markers once a view drills through to real rows.
        size=2.5,
        zoom_size_factor=2.6,
        zoom_opacity=0.95,
    ),
    xy.theme(
        background="#ffffff", plot_background="#ffffff", grid_color="#e6e6e1",
        axis_color="#c3c2b7", text_color="#0b0b0b",
    ),
    title="100 million points",
)
chart

Coming from matplotlib

For common pyplot workflows, change the import and keep the plotting code:

import numpy as np
import xy.pyplot as plt

x = np.linspace(0, 10, 200)
fig, ax = plt.subplots()
ax.plot(x, np.sin(x), "r--", label="signal")
ax.legend()
plt.show()

See the compatibility guide; not all charts and functionality are supported yet.

Customize every layer

Use Python to control the chart, from marks and axes to interactions and layout.

  • Marks: Control color, size, opacity, symbols, gradients, strokes, curves, and colormaps.
  • Guides: Customize axes, ticks, grids, annotations, legends, colorbars, and tooltips.
  • Interaction: Add pan, zoom, hover, selections, crosshairs, callbacks, and linked charts.
  • Layout: Create layers and facets, set responsive dimensions, and apply themes.
chart = xy.line_chart(
    xy.line(x, y, color="#7c3aed", width=3),
    class_name="rounded-xl bg-white",
    class_names={"tooltip": "rounded-lg bg-zinc-900 text-white"},
)

See the styling guide for examples. For a detailed breakdown of what can be customized, see the capability matrix.

Benchmarks

Live interactive charts, 10k to 100M points. Every library gets every row and is driven through its own input path in a real browser. The clock stops only when the canvas is both correct (planted sentinel points verified lit) and stable (10 byte-identical frames), so progressive renderers are charged until their last chunk lands.

Time until every point is on screen, 10k to 100M points, for XY, Matplotlib, and Plotly. Lower is better.

XY holds 0.071 s at 10k and 0.081 s at 100M, flat across four orders of magnitude, because above 200k rows it draws a screen-bounded density surface instead of one marker per row, and zoom drills back to exact rows. Every exact-marker path scales with N instead: Matplotlib crosses a second at ~3M and reaches 13.4 s at 50M; Plotly crosses at ~2.5M and reaches 9.8 s at 25M.

The pale line is XY with density=False: the same engine drawing one marker per row, no aggregation credit. It renders 100M exact markers in 1.34 s on 5.26 GiB.

Time until every point is on screen, in seconds. is a size the library did not render: Plotly never finishes constructing the figure at 50M, and Matplotlib draws at 100M but never resolves the zoom that follows.

Points 10k 100k 500k 1M 2.5M 5M 10M 25M 50M 100M
XY speedup 16× 34× 89× 177×
XY 0.071 0.072 0.075 0.084 0.083 0.089 0.083 0.077 0.076 0.081
XY (density=False) 0.085 0.074 0.087 0.098 0.111 0.144 0.206 0.424 0.645 1.343
Matplotlib (WebAgg) 0.086 0.115 0.224 0.357 0.758 1.424 2.804 6.838 13.385
Plotly (scattergl) 0.341 0.373 0.477 0.614 1.033 1.785 3.367 9.794

Peak Python-side resident memory, in GiB. Browser memory is tracked separately and excluded here, since a headless Chrome resides ~1 GiB before drawing anything.

Points 10k 100k 500k 1M 2.5M 5M 10M 25M 50M 100M
XY advantage 1.8× 1.7× 1.9× 2.1× 2.1× 2.4× 2.6× 2.9× 2.8×
XY 0.05 0.05 0.06 0.07 0.13 0.19 0.32 0.70 1.36 2.58
XY (density=False) 0.05 0.05 0.07 0.10 0.18 0.31 0.57 1.35 2.66 5.26
Matplotlib (WebAgg) 0.09 0.09 0.12 0.15 0.28 0.46 0.84 2.06 3.85
Plotly (scattergl) 0.21 0.18 0.28 0.36 0.60 1.05 1.86 4.70

One machine (Apple M5 Pro), one run per cell; at the small end the timings carry roughly ±10 ms of run-to-run spread.

For the environment, methodology, per-size videos, and raw results, see the benchmark runbook and competitive benchmark specification.

Embed XY in a Reflex app

The Reflex integration bundled with xy turns any XY chart into a regular Reflex component, with no JavaScript, iframe, or separate chart service. Install the reflex extra to select a compatible framework version:

pip install "xy[reflex]"

# or, with uv
uv add "xy[reflex]"

The import namespace remains reflex_xy. Register the integration once:

# rxconfig.py
import reflex as rx
import reflex_xy

config = rx.Config(
    app_name="dashboard",
    plugins=[reflex_xy.XYPlugin()],
)

Then add a chart anywhere in the component tree:

import reflex as rx
import reflex_xy
import xy

signups = xy.line_chart(
    xy.line([1, 2, 3, 4, 5], [120, 180, 165, 240, 310]),
    title="Weekly signups",
)


def index() -> rx.Component:
    return rx.card(
        rx.heading("Growth"),
        reflex_xy.chart(signups, height="320px"),
        width="100%",
    )


app = rx.App()
app.add_page(index)

Hover, pan, and zoom keep working. For charts driven by Reflex state, events, or live streams, see the Reflex integration guide and the runnable example app.

Examples

Each notebook fetches its rows from the linked public source; no raw datasets are stored in this repository. Counts describe the featured chart, and the notebooks scale further. See the example guide for sources, workload controls, and setup.

Gaia DR3 · HR diagram
250,000 plotted stars

Gaia DR3 stellar color versus absolute magnitude.

Open notebook
gnomAD v4.1 · allele frequency
164,000 plotted variants

gnomAD allele frequency across all autosomes.

Open notebook
Pan-UKBB · Manhattan plot
814,294 plotted variants

Pan-UKBB standing-height associations across all autosomes.

Open notebook
Dukascopy · EUR/USD ticks
101,427 plotted ticks

Dukascopy EUR/USD midpoint quotes.

Open notebook
LIGO · GW150914 strain
16,777,216 raw · 3,441 shown

GWOSC reconstructed Hanford waveform for GW150914.

Open notebook
NYC TLC · taxi pickup density
300,000 pickup records

Locally projected NYC yellow-taxi pickup hexbin density.

Open notebook

How it works

Most chart stacks serialize every value as JSON and ask the browser to draw every mark. XY keeps exact values in a ColumnStore, computes a level of detail in Rust, and transfers typed binary buffers. Decimated and density views are bounded by the visible result.

flowchart TB
    API["Python API<br/>Build the chart"]
    STORE["ColumnStore<br/>Keep canonical f64 columns"]
    CORE["Native Rust compute<br/>Direct · decimated · density"]
    PAYLOAD["Compact payload<br/>Data-less JSON spec + typed binary buffers"]
    RENDER["Browser or notebook<br/>WebGL2 marks · Canvas axes · DOM interface"]

    API --> STORE --> CORE --> PAYLOAD --> RENDER

So a dense overview can aggregate while a narrow view returns exact points. With a live host, pan and zoom request a refined payload. Canonical f64 data stays in Python, so hover and selection still return original rows.

For the full design, see the design dossier.

Roadmap

Broad 2D coverage first, then geographic, 3D, and volume visualization. Queued next, no dates implied:

  • Categorical distributions: strip, swarm, beeswarm, boxen, rug
  • Regression diagnostics: trendline, residual, QQ, PP
  • Scatter matrix and joint plots: SPLOM, pair grid, marginal histograms
  • Pie / donut: xy.pie_chart(labels, values, hole=...) ships over unequal-width core polar bars, with Matplotlib-shaped helpers in xy.pyplot; nested donuts and variable-radius composition remain
  • Candlestick / OHLC and finance overlays: SMA, VWAP, Bollinger, RSI, MACD; prototyped, awaiting a fresh landing
  • Waterfall and funnel
  • Treemap, sunburst, and icicle
  • Gauge / indicator: build on the shipped polar axes and composable radial marks
  • Slope, bump, and dumbbell
  • 3D and volume: scatter, surfaces, meshes, isosurfaces, and volumetric views

The full ranked backlog is in the chart roadmap. Want a chart or feature that isn't listed? Open an issue.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

xy-0.0.5.tar.gz (1.5 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

xy-0.0.5-py3-none-win_arm64.whl (1.6 MB view details)

Uploaded Python 3Windows ARM64

xy-0.0.5-py3-none-win_amd64.whl (1.6 MB view details)

Uploaded Python 3Windows x86-64

xy-0.0.5-py3-none-win32.whl (1.6 MB view details)

Uploaded Python 3Windows x86

xy-0.0.5-py3-none-pyemscripten_2026_0_wasm32.whl (1.3 MB view details)

Uploaded PyEmscripten 2026.0 wasm32Python 3

xy-0.0.5-py3-none-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

xy-0.0.5-py3-none-musllinux_1_2_armv7l.whl (1.7 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARMv7l

xy-0.0.5-py3-none-musllinux_1_2_aarch64.whl (1.6 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

xy-0.0.5-py3-none-manylinux_2_17_x86_64.whl (1.7 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

xy-0.0.5-py3-none-manylinux_2_17_armv7l.whl (1.7 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARMv7l

xy-0.0.5-py3-none-manylinux_2_17_aarch64.whl (1.6 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

xy-0.0.5-py3-none-macosx_11_0_arm64.whl (1.6 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

xy-0.0.5-py3-none-macosx_10_12_x86_64.whl (1.6 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

Details for the file xy-0.0.5.tar.gz.

File metadata

  • Download URL: xy-0.0.5.tar.gz
  • Upload date:
  • Size: 1.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for xy-0.0.5.tar.gz
Algorithm Hash digest
SHA256 c89b9d2c1d34533c1956a7a9cb726eda9ab07e5515855c8dc924aa45a7ea4726
MD5 e4b87f0b8d7c335f31432cdd04554550
BLAKE2b-256 232d413291363deba6561c832c06eb49a71630260f4d13f77e2dce5118c6be2b

See more details on using hashes here.

Provenance

The following attestation bundles were made for xy-0.0.5.tar.gz:

Publisher: release.yml on reflex-dev/xy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xy-0.0.5-py3-none-win_arm64.whl.

File metadata

  • Download URL: xy-0.0.5-py3-none-win_arm64.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: Python 3, Windows ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for xy-0.0.5-py3-none-win_arm64.whl
Algorithm Hash digest
SHA256 3ba8f1e4160556b0d13bd17df870bff3d42033535a37a31c078b7e74f9b35d39
MD5 ace77b26e4407ddc2b039f63cb4ed4d7
BLAKE2b-256 46d98ac79dd038cb5e1724c1f31d7222562a1f9ced2171281cc38585f827bb35

See more details on using hashes here.

Provenance

The following attestation bundles were made for xy-0.0.5-py3-none-win_arm64.whl:

Publisher: release.yml on reflex-dev/xy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xy-0.0.5-py3-none-win_amd64.whl.

File metadata

  • Download URL: xy-0.0.5-py3-none-win_amd64.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for xy-0.0.5-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 d379df5db8b5e35e5ea686dace4ffb74e835cd0670db411c98dcadd11e551532
MD5 59188c65d05be8ab72fc358732d8eb4d
BLAKE2b-256 a6ce4974f51513ef80fbd60dd1e8ee30800a6b3afbece781190470f3af39cb30

See more details on using hashes here.

Provenance

The following attestation bundles were made for xy-0.0.5-py3-none-win_amd64.whl:

Publisher: release.yml on reflex-dev/xy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xy-0.0.5-py3-none-win32.whl.

File metadata

  • Download URL: xy-0.0.5-py3-none-win32.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: Python 3, Windows x86
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for xy-0.0.5-py3-none-win32.whl
Algorithm Hash digest
SHA256 a5dad693191e58f85cb535a278cbcf631c489f3fefd777d12b61b8176accd099
MD5 9356d376044352c94b74dc140a95b3d5
BLAKE2b-256 e05f669929ea8ffbe20ef2e1a8ff5f725e7c1c69fa4ed0dca2a8d38d4e6abd61

See more details on using hashes here.

Provenance

The following attestation bundles were made for xy-0.0.5-py3-none-win32.whl:

Publisher: release.yml on reflex-dev/xy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xy-0.0.5-py3-none-pyemscripten_2026_0_wasm32.whl.

File metadata

File hashes

Hashes for xy-0.0.5-py3-none-pyemscripten_2026_0_wasm32.whl
Algorithm Hash digest
SHA256 5b4eb936c0f91c91387ebc22e6724b89c34655ba6c85362f69f8f58eb9b22f35
MD5 9608901be8e941eff8a665ad5ae83da5
BLAKE2b-256 29b2e404ac7ee66cd7b53cbf2e3be448324a8fa88461bff166788c1b80c8f01f

See more details on using hashes here.

Provenance

The following attestation bundles were made for xy-0.0.5-py3-none-pyemscripten_2026_0_wasm32.whl:

Publisher: release.yml on reflex-dev/xy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xy-0.0.5-py3-none-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: xy-0.0.5-py3-none-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: Python 3, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for xy-0.0.5-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 e73fd2d7824ad6d5c4e6fb775e2659f0e2f7ea261d2ef68309ecd8f23b723bab
MD5 2754d07520172e7ef64187e3480ecd48
BLAKE2b-256 ec879a51aede15418652702bcaf8580535cf7001f0afda34ec5cc46a2251adbe

See more details on using hashes here.

Provenance

The following attestation bundles were made for xy-0.0.5-py3-none-musllinux_1_2_x86_64.whl:

Publisher: release.yml on reflex-dev/xy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xy-0.0.5-py3-none-musllinux_1_2_armv7l.whl.

File metadata

  • Download URL: xy-0.0.5-py3-none-musllinux_1_2_armv7l.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: Python 3, musllinux: musl 1.2+ ARMv7l
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for xy-0.0.5-py3-none-musllinux_1_2_armv7l.whl
Algorithm Hash digest
SHA256 3fc1b76936ce8a226fc3de39c58963169e6ed43a21dbf297d819c4bbcd73b03c
MD5 944dd2624b33cdca49735e2f8e6a41b4
BLAKE2b-256 4df5848851020b51a5a17af1d02de253b2f3ef687706babccab0bcff1b8c7526

See more details on using hashes here.

Provenance

The following attestation bundles were made for xy-0.0.5-py3-none-musllinux_1_2_armv7l.whl:

Publisher: release.yml on reflex-dev/xy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xy-0.0.5-py3-none-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: xy-0.0.5-py3-none-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: Python 3, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for xy-0.0.5-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 e6a6bcf1e9cdffb505d79caeb5de3de441938aea2a230adf89869d1648a12a88
MD5 4e9d788c94b8f40779b87d4e6f479c08
BLAKE2b-256 d73b41a332cf5b5f671a87fdbc49c2106beff4e0886f7406d94b332a34bb7308

See more details on using hashes here.

Provenance

The following attestation bundles were made for xy-0.0.5-py3-none-musllinux_1_2_aarch64.whl:

Publisher: release.yml on reflex-dev/xy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xy-0.0.5-py3-none-manylinux_2_17_x86_64.whl.

File metadata

  • Download URL: xy-0.0.5-py3-none-manylinux_2_17_x86_64.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: Python 3, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for xy-0.0.5-py3-none-manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 7bb74dd8c3033ed43ab8716215f805c37f733c9442b6e0ad1c7a3241f6315c5b
MD5 bfce62df2a0f3862c279832fe7973ef0
BLAKE2b-256 c6e3d7829eeb2461164b70ab90450efbcb7a5729d85265f63a17a701035bf972

See more details on using hashes here.

Provenance

The following attestation bundles were made for xy-0.0.5-py3-none-manylinux_2_17_x86_64.whl:

Publisher: release.yml on reflex-dev/xy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xy-0.0.5-py3-none-manylinux_2_17_armv7l.whl.

File metadata

  • Download URL: xy-0.0.5-py3-none-manylinux_2_17_armv7l.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ARMv7l
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for xy-0.0.5-py3-none-manylinux_2_17_armv7l.whl
Algorithm Hash digest
SHA256 067f88430cd8a8a4968f1f5a7a2247cb091cac8f87f0151e5cdbb85d1fb0483e
MD5 fae978696474fbd4e0c1e4ae73459a48
BLAKE2b-256 e91cc5ce452c18f005de2d817b2ae2eee70824cf32a0e0a1e5ccf05e9b7b6c80

See more details on using hashes here.

Provenance

The following attestation bundles were made for xy-0.0.5-py3-none-manylinux_2_17_armv7l.whl:

Publisher: release.yml on reflex-dev/xy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xy-0.0.5-py3-none-manylinux_2_17_aarch64.whl.

File metadata

  • Download URL: xy-0.0.5-py3-none-manylinux_2_17_aarch64.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for xy-0.0.5-py3-none-manylinux_2_17_aarch64.whl
Algorithm Hash digest
SHA256 f111fd197e7bea40e382a843426f1ba913c0c04ba81aa78a8aadd48db8e56cb1
MD5 337cff647c4303d4ffa1b35acbcebf52
BLAKE2b-256 1df84cdad1f9fbdc75ee07edc98a3e0570389847bfea8ba5ef291268187ef189

See more details on using hashes here.

Provenance

The following attestation bundles were made for xy-0.0.5-py3-none-manylinux_2_17_aarch64.whl:

Publisher: release.yml on reflex-dev/xy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xy-0.0.5-py3-none-macosx_11_0_arm64.whl.

File metadata

  • Download URL: xy-0.0.5-py3-none-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: Python 3, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for xy-0.0.5-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 32d16cabdeeb5cad1accb9f9306a71c56b36916a51e4de33ab8d927ba88ba4fa
MD5 4e15a04d296d7a0479c16ead7365e3c4
BLAKE2b-256 cc57fb39ec26d168b9a756e689d4d846b3e602f733a302781171f7d1a4fca610

See more details on using hashes here.

Provenance

The following attestation bundles were made for xy-0.0.5-py3-none-macosx_11_0_arm64.whl:

Publisher: release.yml on reflex-dev/xy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file xy-0.0.5-py3-none-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: xy-0.0.5-py3-none-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 1.6 MB
  • Tags: Python 3, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for xy-0.0.5-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 364fcdb616226f23e729c8007d48cfea8afec50f2f4ab13c0db070d340fd7b27
MD5 d52b271741a10b59da968750d1b07845
BLAKE2b-256 c703f520af164a165c1974fb4c7c77c6343d8ab9b026c45013a5dd02c625ba48

See more details on using hashes here.

Provenance

The following attestation bundles were made for xy-0.0.5-py3-none-macosx_10_12_x86_64.whl:

Publisher: release.yml on reflex-dev/xy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page