Skip to main content

Provides a draggable and resizable grid for Panel.

Project description

panel-tiles

CI pypi-version python-version

A draggable, resizable grid layout for Panel applications (Muuri + interact.js).

Dashboard example

Installation

pip install panel-tiles

Quick Start

from panel_tiles import TileGrid

...

grid = TileGrid(
    objects=[
        revenue_ind,
        growth_ind,
        users_ind,
        retention_ind,
        pn.pane.Bokeh(line_fig),
        pn.pane.Bokeh(bar_fig),
        table,
    ],
    layout=[
        {"width": 25, "height": 100, "visible": True},
        {"width": 25, "height": 100, "visible": True},
        {"width": 25, "height": 100, "visible": True},
        {"width": 25, "height": 100, "visible": True},
        {"width": 50, "height": 300, "visible": True},
        {"width": 50, "height": 300, "visible": True},
        {"width": 100, "height": 250, "visible": True},
    ],
    sizing_mode="stretch_width",
    height=750,
)

pmui.Page(main=[grid], title="panel-tiles").servable()

Features

  • Drag-and-drop tile reordering
  • Resize tiles from the corner handle
  • Configurable layout with percentage widths and pixel heights
  • Close buttons with hide or remove behavior
  • Persist user layouts to localStorage
  • Read-only mode for fixed dashboards
  • Dynamic add/remove of tiles at runtime

Development

Managed with pixi.

git clone https://github.com/panel-extensions/panel-tiles.git
cd panel-tiles

pixi run postinstall
pixi run compile
pixi run test

UI tests:

pixi run -e test-ui test-ui

License

See LICENSE.

Project details


Download files

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

Source Distribution

panel_tiles-0.2.0.tar.gz (206.9 kB view details)

Uploaded Source

Built Distribution

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

panel_tiles-0.2.0-py3-none-any.whl (69.3 kB view details)

Uploaded Python 3

File details

Details for the file panel_tiles-0.2.0.tar.gz.

File metadata

  • Download URL: panel_tiles-0.2.0.tar.gz
  • Upload date:
  • Size: 206.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for panel_tiles-0.2.0.tar.gz
Algorithm Hash digest
SHA256 69207778563b82d16cd2d1ddbbf7b07a23d5053a27b7cf34db0255a65a2eacbf
MD5 d80622b19c82d6b04fc7f924fa2b83c2
BLAKE2b-256 e66a3890eaec85d5eb56f279ebbfb1c710bd0879a5a7f68bed965fe21aea6546

See more details on using hashes here.

Provenance

The following attestation bundles were made for panel_tiles-0.2.0.tar.gz:

Publisher: build.yml on panel-extensions/panel-tiles

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

File details

Details for the file panel_tiles-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: panel_tiles-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 69.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for panel_tiles-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 a9bd95bac8e9f39efbdfed2b066954a61d6b33fa99bdeab5ea76bf72f3ecd41f
MD5 29df91d5aa7c1f7cf8b20b95a03bba5d
BLAKE2b-256 fbf18337920d09ab3c1177d9fdca5884c910abe1e31b43ce6759152c895fba48

See more details on using hashes here.

Provenance

The following attestation bundles were made for panel_tiles-0.2.0-py3-none-any.whl:

Publisher: build.yml on panel-extensions/panel-tiles

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 Pingdom Monitoring Sentry Error logging StatusPage Status page