Introduction
Build beautiful CLI apps with Python syntax and ship them as compact, standalone binaries.
kipferl is a CLI toolkit for building beautiful command-line applications with Python syntax, powered by PocketPy.
Write Python-style CLI applications and ship one executable per target. The v0.6 Apple Silicon baseline measured a 1.451 MB minimal app and a 7.679 ms median startup; see the dated measurements. Application code, bundled assets, target, and runtime profile affect the result.
Why kipferl?
- Fast startup - An embedded runtime starts without activating a Python environment
- Standalone binaries - Recipients need no Python or Kipferl installation; Linux release targets use static musl
- Python syntax - No new language to learn
- Beautiful output - Tables, boxes, progress bars, colors built-in
- Interactive prompts - Select, multiselect, confirm with keyboard navigation
- 50+ runtime modules - JSON, HTTP, SQLite, regex, and more hosted by Rust
From a project to an executable
Kipferl 0.7.2 includes CLI, API, and interactive templates with editor stubs, tests, and project defaults, plus compatibility-checked PyPI dependencies. Install the stable release, follow the first-app tutorial, then add local modules and assets. Read the upgrade notes when moving an existing project from v0.6.0 or a release candidate.
Quick Example
import tui
import input
# Beautiful boxes
tui.box("Welcome to my app!", title="Hello", border_color="cyan")
# Interactive prompts
choice = input.select("Pick an option:", ["Deploy", "Test", "Exit"])
# Formatted tables
tui.table([
["Status", "Count"],
["Passed", "42"],
["Failed", "0"],
], headers=True)
tui.success(f"Selected: {choice}")What's Different?
kipferl is not a drop-in replacement for CPython. It's a focused runtime optimized for CLI applications:
| Capability | Kipferl | CPython |
|---|---|---|
| Distribution | Target-specific executable with an embedded runtime | Interpreter plus application; packaging tools are available |
| Dependencies | Built-ins, local code, and compatible PyPI wheels; external commands remain external | Standard library and pip ecosystem |
| Python compatibility | A tested subset; see module limits | Reference Python implementation |
| Terminal UI | Built-in output and prompt modules | Third-party packages available |