https://github.com/panel-extensions/panel-tiles
Provides a draggable and resizable grid of tiles for Panel.
https://github.com/panel-extensions/panel-tiles
Last synced: 3 days ago
JSON representation
Provides a draggable and resizable grid of tiles for Panel.
- Host: GitHub
- URL: https://github.com/panel-extensions/panel-tiles
- Owner: panel-extensions
- Created: 2026-05-07T09:50:22.000Z (2 months ago)
- Default Branch: main
- Last Pushed: 2026-07-07T13:30:02.000Z (6 days ago)
- Last Synced: 2026-07-07T15:10:15.195Z (6 days ago)
- Language: Python
- Homepage: https://panel-extensions.github.io/panel-tiles/
- Size: 277 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# panel-tiles
[](https://github.com/panel-extensions/panel-tiles/actions/workflows/test.yml)
[](https://pypi.org/project/panel-tiles)
[](https://pypi.org/project/panel-tiles)
A draggable, resizable grid layout for [Panel](https://panel.holoviz.org) applications (Muuri + interact.js).

## Installation
```bash
pip install panel-tiles
```
## Quick Start
```python
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
- Responsive breakpoints with per-breakpoint layouts
- 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](https://pixi.sh).
```bash
git clone https://github.com/panel-extensions/panel-tiles.git
cd panel-tiles
pixi run postinstall
pixi run compile
pixi run test
```
UI tests:
```bash
pixi run -e test-ui test-ui
```
## License
See LICENSE.