Skip to main content

textual-calendar

A calendar date/time picker widget for Textual UI.

DatetimePicker Widget Demo

Features

  • Calendar Widget - Interactive monthly calendar date selection
  • Time Widget - Time picker with hour, minute, and second selection
  • Timezone Support - Optional timezone selection with auto-complete
  • DatetimePicker - Combined date and time picker
  • Keyboard Navigation - Full keyboard support with arrow keys, Page Up/Down
  • Mouse Support - Click to select dates

Installation

pip install textual-calendar

Quick Start

Calendar Widget

from textual.app import App
from textual_calendar import Calendar

class MyApp(App):
    def compose(self):
        yield Calendar()

if __name__ == "__main__":
    MyApp().run()

Time Widget

from textual_calendar import Time

class MyApp(App):
    def compose(self):
        yield Time(show_tz=True)  # With timezone support

DatetimePicker Widget

from textual_calendar import DatetimePicker
from datetime import datetime

class MyApp(App):
    def compose(self):
        yield DatetimePicker(
            initial_datetime=datetime.now(),
            show_tz=True
        )

Keyboard Shortcuts

Calendar

  • ←/→ - Previous/Next day
  • ↑/↓ - Previous/Next month
  • Page Up/Down - Previous/Next year
  • Insert - Manual date input dialog

Time

  • ←/→ - Move between hour/minute/second
  • ↑/↓ - Increment/Decrement selected field
  • 0-9 - Direct number input

License

BSD-3-Clause License - see LICENSE file for details.

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Release files for textual-calendar 1.0.0

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

Source distribution (sdist)

Source distribution for textual-calendar 1.0.0
File Size Uploaded
textual_calendar-1.0.0.tar.gz 12.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for textual-calendar 1.0.0
File Interpreter ABI Platform
textual_calendar-1.0.0-py3-none-any.whl Python 3 none any Details

Total release size: 24.9 kB

Release files / textual_calendar-1.0.0.tar.gz

Download URL textual_calendar-1.0.0.tar.gz
Size 12.2 kB
Tags Source
SHA-256 checksum
How to use checksums
257b1114f485871bcc7e02c3c4914dcd2a4df32852cb910ab1c7e934ddf407d0
BLAKE2b-256 checksum
How to use checksums
75b9149ad348a8219fcd16e9a0ecbd7a3944b3247daa9a7c47d39aafaf03fed8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release files / textual_calendar-1.0.0-py3-none-any.whl

Download URL textual_calendar-1.0.0-py3-none-any.whl
Size 12.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8021ad0671cc61f2b490741639030fb47f0df6181c86073892096b467d7d1449
BLAKE2b-256 checksum
How to use checksums
538967a27e669f14af1a89f3890bab91d8102a0dbefb7f02599e20f379eb03bf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

1.0.0 This release

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