Repository navigation
v1.0.0rc1
Pre-release
Pre-release
Prerelease: 1.0.0rc1 is a release candidate for ctui 1.0.0. Test it before using it in production.
ctui 1.0 establishes the first stable public API for building typed command
tools that can run as either full-screen terminal applications or conventional
command-line programs.
Added
- Typed command conversion, validation, completion, aliases, unique-prefix
matching, confirmation prompts, and precise argument-error locations. - Explicit Linux-style named arguments through
Argument(flags=...), while
parameters without declared flags remain positional. - Automatic CLI routing with repeatable
--commandand--fileoptions. HexBytesfor converting common hexadecimal representations to immutable
bytes.- Lazy, bounded
FuzzyHexPatternandFuzzyStringPatternexpansion and
sampling. IntegerRangesandIntegerSpanfor compact, non-expanding integer ranges.- Async commands, lifecycle hooks, application events, progress reporting, and
application-wide keyboard shortcuts. - Project-scoped SQLite persistence for configs, command history, sessions,
and records, usingaiosqlitefor non-blocking access. - Versioned project migrations, integrity checks, and recoverable backups.
- JSON config and SQLite project import/export.
- A documented top-level public API and installed-package version metadata.
- Ordered tutorials covering the primary framework features.
- Cross-platform CI for Python 3.11 through 3.14 on Linux x86-64, Linux ARM64,
Windows, and macOS. - Isolated wheel and source-distribution smoke tests before publication.
- Trusted PyPI publishing, PEP 740 attestations, and automatic GitHub releases.
Changed
- Python 3.11 is now the minimum supported Python version.
- SQLite operations use an asynchronous backend.
- Command parameters are positional unless their
Argumentmetadata
explicitly declares one or more option flags.
Compatibility
Versions before 1.0 were development releases. Applications upgrading from a
0.x release should review the current README and tutorials rather than assume
compatibility with undocumented earlier behavior.
What's Changed
New Contributors
Full Changelog: v0.8.1...v1.0.0rc1