Shiny for Python bindings for Tabulator JS
- Support for Shiny core and Shiny Express
- Pagination
- Filters
- Editor with undo and redo (History interaction)
- Grouping
- Sorting
- Column calculations
- Downloads
- Themes
- Reactivity
# Stable
pip install pytabulator
# Dev
pip install git+https://github.com/eodaGmbH/py-tabulatorUsing Shiny Express:
import pandas as pd
from pytabulator import TableOptions, render_data_frame
from shiny import render
from shiny.express import input, ui
ui.div("Click on row to print name", style="padding: 10px;")
@render.code
async def txt():
print(input.tabulator_row_clicked())
return input.tabulator_row_clicked()["Name"]
@render_data_frame(table_options=TableOptions(height=500))
def tabulator():
return pd.read_csv(
"https://raw.githubusercontent.com/datasciencedojo/datasets/master/titanic.csv"
)Run detailed example:
shiny run docs/examples/getting_started/shiny_express_all.pypoetry install
poetry run pytestnpm install
npm run prettier
npm run build