| Port variant | v14 |
| Summary | Command line interface builder (3.14) |
| Package version | 0.27.2 |
| Homepage | https://github.com/fastapi/typer |
| Keywords | python |
| Maintainer | Python Automaton |
| License | Not yet specified |
| Other variants | v13 |
| Ravenports | Buildsheet | History |
| Ravensource | Port Directory | History |
| Last modified | 30 AUG 2026, 02:39:52 UTC |
| Port created | 25 FEB 2026, 19:33:15 UTC |
| single | [image] Typer, build great CLIs. Easy to code. Based on Python type hints. [image] [image] [image] --- **Documentation**: [https://typer.tiangolo.com] **Source Code**: [https://github.com/fastapi/typer] --- Typer is a library for building CLI applications that users will **love using** and developers will **love creating**. Based on Python type hints. It's also a command line tool to run scripts, automatically converting them to CLI applications. The key features are: * **Intuitive to write**: Great editor support. Completion everywhere. Less time debugging. Designed to be easy to use and learn. Less time reading docs. * **Easy to use**: It's easy to use for the final users. Automatic help, and automatic completion for all shells. * **Short**: Minimize code duplication. Multiple features from each parameter declaration. Fewer bugs. * **Start simple**: The simplest example adds only 2 lines of code to your app: **1 import, 1 function call**. * **Grow large**: Grow in complexity as much as you want, create arbitrarily complex trees of commands and groups of subcommands, with options and arguments. * **Run scripts**: Typer includes a `typer` command/program that you can use to run scripts, automatically converting them to CLIs, even if they don't use Typer internally. ## FastAPI of CLIs **Typer** is [FastAPI]'s little sibling, it's the FastAPI of CLIs. ## Installation First, [install `uv`], and then add **Typer** to your project:
```console
$ uv add typer
---> 100%
```
This installs both the Typer library and the `typer` command in the
project's virtual environment. To use `typer` directly with shell
completion, [activate the project environment and install completion].
If you prefer to use `pip`, install `typer` inside a virtual environment.
See the [installation guide] for the alternative steps.
## Example
### The absolute minimum
* Create a file `main.py` with:
```Python
def main(name: str):
print(f"Hello {name}")
```
This script doesn't even use Typer internally. But you can use the `typer`
command to run it as a CLI application.
### Run it
Run your application with the `typer` command:
```console
// Run your application
$ typer main.py run
|
| Build (only) |
python314:dev:std python-pip:single:v14 autoselect-python:single:std |
| Build and Runtime | python314:primary:std |
| Runtime (only) |
python-shellingham:single:v14 python-rich:single:v14 python-annotated-doc:single:v14 |
| main | mirror://PYPIWHL/dc/bf/205d0004930ede8f542fb58f601526fccf4ae7626075ca1e6c4de5d3d652 |
| python-typer-slim:v14 | Command line interface builder (slim) (3.14) |