Skip to content

πŸ“Š panelini 🐍

opensemanticworld.github.io/panelini/ PyPI Version Release Build status codecov Commit activity License

Panelini Banner

panelini is a user-friendly Python package designed to provide an out-of-the-box panel with a beautiful and responsive layout. It simplifies the creation of interactive dashboards by handling dynamic content seamlessly using Python Panel components. Whether you're building complex data visualizations or simple interactive interfaces, panelini offers an easy-to-use solution that enhances productivity and aesthetics.

πŸ“¦ Table of Contents

πŸ“„ Features

  • Easy Setup: Quickly get started with minimal configuration.
  • Beautiful Layouts: Pre-designed, aesthetically pleasing layouts that can be customized to fit your needs.
  • Dynamic Content: Efficiently manage and display dynamic content using robust Python Panel components.
  • Extensible: Easily extend and integrate with other Python libraries and tools.
  • Published on PyPI: Install effortlessly using pip.

πŸš€ Install

Recommended

uv add panelini

or use pip

pip install panelini

πŸ’₯ Usage

A minimal example to run Panelini can be found in the examples/panelini_min.py file. Below is a simple code snippet to get you started:

from panel import Card
from panelini import Panelini

# Create an instance of Panelini
app = Panelini(
    title="πŸ“Š Welcome to Panelini! πŸ–₯️",
    # main = main_objects # init objects here
)
# Or set objects outside
app.main_set(
    # Use panel components to build your layout
    objects=[
        Card(
            title="Set complete main objects",
            objects=["Some content goes here"],
            width=300,
            max_height=200,
        )
    ]
)
# Servable for debugging using command
# panel serve <panelini_min.py --dev
app.servable()

if __name__ == "__main__":
    # Serve app as you would in panel
    app.serve(port=5010)

See examples directory for more usage scenarios.

πŸ›ž Commands

Panel command to serve with static content

panel serve src/panelini/main.py --dev --port 5006 --static-dirs assets="src/panelini/assets" --ico-path src/panelini/assets/favicon.ico

When using panel serve, make sure to specify the correct paths for your static assets and favicon.

πŸ¦₯ Authors

πŸ“œ Content Attribution

The authors initially generated the logo and banner for this repository using DALL-E 3 and later modified it to better align with the project's vision.