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.1.0b1.tar.gz (204.5 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.1.0b1-py3-none-any.whl (68.0 kB view details)

Uploaded Python 3

File details

Details for the file panel_tiles-0.1.0b1.tar.gz.

File metadata

  • Download URL: panel_tiles-0.1.0b1.tar.gz
  • Upload date:
  • Size: 204.5 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.1.0b1.tar.gz
Algorithm Hash digest
SHA256 3a9d0549c7a1fa8b7bc1c8777f0f851268a9b56f578661057ee768a30bbe25d7
MD5 60a64098583b11b3b3dbba0010d234ff
BLAKE2b-256 4d3b25378d6250e99bd798fa439191005dedbe2527e55b430b749a8773d1983c

See more details on using hashes here.

Provenance

The following attestation bundles were made for panel_tiles-0.1.0b1.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.1.0b1-py3-none-any.whl.

File metadata

  • Download URL: panel_tiles-0.1.0b1-py3-none-any.whl
  • Upload date:
  • Size: 68.0 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.1.0b1-py3-none-any.whl
Algorithm Hash digest
SHA256 ca2d0a7f9ce937742bb40822e995a2b1b11f09ae249d322252f59c0a56f1542f
MD5 8b5680bcff8ee68777562cb0a99b4cdb
BLAKE2b-256 9f12a4e4e38de6d4f80f91da5c1adfca40cefd2769881a744db3b6bcb1c08550

See more details on using hashes here.

Provenance

The following attestation bundles were made for panel_tiles-0.1.0b1-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