Skip to main content

Package containing reusable general-purpose NiceGUI dialogs

Project description

Nice Dialogs

uv Ruff prek

A collection of opinionated NiceGUI dialogs.

Dialogs

Cron Expression Editor

Using cron_converter via CronStr from pydantic-extra-types, this dialog allows one to build a cron expression by populating the cron schedule parts from selectors.

Datetime Picker

A dialog, on which one may pick an arbitrary date and time using the appropriate NiceGUI picker elements. A timezone field is optional and allows the user to set an IANA timezone while using the dialog. The returned datetime object is always timezone-aware and converted to UTC.

File Uploader

A simple single-file uploader component dialog with options for restricting file types and max size. The dialog returns a NiceGUI FileUpload object for the consumer to dereference after the dialog returns.

Requirements

  • uv. This project is managed by uv
  • Python >= 3.131.
  • NiceGUI >= 3.112.

Examples

A NiceGUI application can be started to demonstrate the dialogs by running make examples. Note this uses NiceGUI's native mode by default. You may set the NATIVE=0 environment variable to disable native mode. The example application is also used by the NiceGUI User test fixture.

Development Setup

To prepare for development, run make init. The contents of the .vscode/ directory may be useful for IDE-based testing and debugging.

Usage in Projects

To use these dialogs in a NiceGUI application, set a dependency; example for uv and pyproject.toml shown:

dependencies = [
    ...,
    "nice-dialog",
]

[tool.uv.sources]
nice-dialog = { git = "https://github.com/tcjennings/nice-dialogs", rev = "..." }

[!TIP] Consider pinning a git dependency source to a specific commit revision for maximum security.

  1. This project uses modern Python syntax, including datetime format strings, structural pattern matching, and walrus operators.

  2. This project uses NiceGUI features introduced in version 3.11 (e.g., nested dictionary binding and type generics) and is not compatible with older versions.

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

nice_dialogs-1.3.0.tar.gz (132.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nice_dialogs-1.3.0-py3-none-any.whl (17.9 kB view details)

Uploaded Python 3

File details

Details for the file nice_dialogs-1.3.0.tar.gz.

File metadata

  • Download URL: nice_dialogs-1.3.0.tar.gz
  • Upload date:
  • Size: 132.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for nice_dialogs-1.3.0.tar.gz
Algorithm Hash digest
SHA256 2f8b50faec4f13480b7cab7abcc2af31cac727a9f2afaf6421c932b756d0df8a
MD5 0dd006beb5c9f7187dd7f380fefbc07e
BLAKE2b-256 d4f110aa9134536484ee4a5efcc4c298747bdcd0f369ecdf0f4e76171fbd6591

See more details on using hashes here.

Provenance

The following attestation bundles were made for nice_dialogs-1.3.0.tar.gz:

Publisher: publish.yml on tcjennings/nice-dialogs

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nice_dialogs-1.3.0-py3-none-any.whl.

File metadata

  • Download URL: nice_dialogs-1.3.0-py3-none-any.whl
  • Upload date:
  • Size: 17.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for nice_dialogs-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b44f64da86b1df01673d4c6ec2a62a53108b8059fa96e7cb750357d1bb52ef5d
MD5 f593e1b071de07261fce21f64399d8c1
BLAKE2b-256 99e975225a9f83dd6375d2c9edd982d875919afc3e52d1422ad0cc0b81069a71

See more details on using hashes here.

Provenance

The following attestation bundles were made for nice_dialogs-1.3.0-py3-none-any.whl:

Publisher: publish.yml on tcjennings/nice-dialogs

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