Skip to main content

displaypad-lib package

displaypad-lib provides a high-level, multi-page library for interacting with the Mountain DisplayPad device, built on top of displaypad-driver.

Acknowledgments

Multi-page layout engine design, auto-timeout page transitions, and responsive async rendering were built with inspiration from ramisotti13-eng/BaseCamp-Linux.

Key Features

  • Multi-Page Layout Engine (Page, PageManager): Create named 12-key pages with navigation stacks and auto-timeout transitions (mode: "after" | "idle"). See Page.
  • Key Abstractions (displaypad_lib.key):
    • Key (base class) — Implement render(ctx: KeyContext) and optional lifecycle hooks (on_mount, on_press, on_release, on_double_press, on_long_press, on_tick).
    • GifKey — Play animated GIFs at native frame rates with rotation support.
    • IconKey — Static image icons with aspect-ratio scaling and margins.
    • LabelKey — Dynamic centered text labels with customizable colors.
    • FramerateLimitedKey — Rate-limited key rendering.
    • LoggerKey — Diagnostics key logging presses and releases.
  • Drawing Context (KeyContext):
    • Key-relative drawing primitives: center_text, text, rectangle, ellipse, line, polygon, arc, fill, clear, paste_image. Supports both color and fill parameter aliases.
  • Async Queue & Hybrid Batch Rendering:
    • Background thread drains key updates with frame deduplication. Single-key updates use fast per-button tile uploads; layout changes automatically batch update the full panel.

For documentation, see the project wiki.

For usage examples, see lib_example.py and clock.py.

Metadata

Release files for displaypad-lib 1.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for displaypad-lib 1.0.1
File Size Uploaded
displaypad_lib-1.0.1.tar.gz 10.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for displaypad-lib 1.0.1
File Interpreter ABI Platform
displaypad_lib-1.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 21.6 kB

Release files / displaypad_lib-1.0.1.tar.gz

Download URL displaypad_lib-1.0.1.tar.gz
Size 10.3 kB
Tags Source
SHA-256 checksum
How to use checksums
8a2df8bee9261fdf14a2615fcf4c28049f2f2b3744d59799ccd8a52a7b79d8a2
BLAKE2b-256 checksum
How to use checksums
b743b0b93d72e0223037069d527d2f00fa3d446d1e4090c571b17f309b56a956
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.1.4 CPython/3.12.3 Linux/6.17.0-1022-azure

Release files / displaypad_lib-1.0.1-py3-none-any.whl

Download URL displaypad_lib-1.0.1-py3-none-any.whl
Size 11.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
37a5f0e7dc0ba60ccf615b4a3c207a67a6a74c83f7f75d2043a9d4d7abcacde5
BLAKE2b-256 checksum
How to use checksums
d7a9e1637300072c4cbcf1d150f5001d02f400450035cf8bef48c24412e4c50d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/2.1.4 CPython/3.12.3 Linux/6.17.0-1022-azure

Release history Release notifications | RSS feed

2.0.0

2 release files

1.2.0

2 release files

1.1.0

2 release files

This release

1.0.1 This release

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page