skillfed

pwinput

A cross-platform Python module that displays **** for password input. Works on Windows, unlike getpass. Formerly called stdiomask.

pwinput v1.0.3 88.2K downloads/30d#13,739 on PyPI47
Permissive license MIT DORMANT released

What it is and what it does

pwinput is a lightweight cross-platform module that improves password input by displaying mask characters (typically asterisks) as the user types, addressing a limitation of Python's standard library getpass module. The standard getpass shows nothing as you type; pwinput lets you see visual feedback with a configurable mask character, making it clearer that input is being received.

The module has no runtime dependencies and offers a simple API: call pwinput.pwinput() to prompt for a password with asterisk masking, or customize the prompt text and mask character as needed. It is intended as a drop-in replacement for getpass in scenarios where visual feedback during password entry is desired, particularly on Windows where getpass behavior differs from Unix-like systems.

Use it for:

  • Interactive CLI tools that need to collect passwords with visual confirmation that input is being registered
  • Cross-platform applications requiring consistent password prompting behavior across Windows and Unix-like systems
  • Custom authentication dialogs where standard getpass feedback is insufficient for user experience
  • Testing or debugging scenarios where seeing mask characters helps verify input capture
  • Accessibility improvements in terminal applications where visual feedback aids users with certain input preferences

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Displays mask characters (like asterisks) as the user types a password, providing visual feedback that standard library getpass does not offer.

Yes, if you need masked password input in a terminal application and can tolerate dormant maintenance. The package is simple, dependency-free, and solves a real getpass limitation. However, the high install friction (source distribution only) and lack of updates since early 2023 mean you should verify it works on your target Python version before relying on it in production.

Install

pwinput on PyPI

pip

pip install pwinput

uv

uv add pwinput

poetry

poetry add pwinput

Installing pwinput

Before you install

High install friction due to source distribution only. Maintenance is dormant—last release was over a year ago and no commits since March 2024—though the repository remains active and unarchived.

License in practice

MIT license is permissive and places no restrictions on use, modification, or redistribution in proprietary or open-source projects.

Quickstart

pip install pwinput

import pwinput
password = pwinput.pwinput()  # Shows * for each typed character
password = pwinput.pwinput(prompt='PW: ', mask='X')  # Custom prompt and mask

Verify before relying

  • Whether the package works reliably on all modern Python versions despite classifiers listing only up to 3.9
  • Current status of Windows-specific password input behavior compared to standard getpass
  • Whether high install friction (source-only distribution) impacts usability in automated deployments

Package facts

License MIT (permissive)
Python support not specified
Install friction high — source build required
Runtime dependencies none
Maintenance dormant — 1,275 days since the last release
Last repo commit
First released
Downloads 88,242/month — #13,739 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pwinput-1.0.3.tar.gz

License :: OSI Approved :: MIT LicenseProgramming Language :: PythonProgramming Language :: Python :: 2Programming Language :: Python :: 2.7Programming Language :: Python :: 3Programming Language :: Python :: 3.4Programming Language :: Python :: 3.5Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9

Tags

password input with mask charactersmasked password entryasterisk password displaycross-platform password promptgetpass alternative with feedbackterminal password maskingpassword input visual feedback
password-inputterminal-uicross-platform

More Utilities packages