puber – Text tools for publishers
puber is a lightweight toolkit for text normalization and preparation for publishing workflows.
The project is designed as a growing set of utilities for working with human-oriented text data.
At the moment, the package provides basic name normalization, but its functionality will be expanded with additional text processing tools in future releases.
Installation
Using pip
pip install --upgrade puber
For development:
pip install -e .
Recommended for CLI use: pipx
If you primarily use puber as a command-line tool, it is best installed with pipx.
This isolates the package in its own virtual environment and avoids polluting your system Python:
pipx install --upgrade puber
After installation it will be available globally:
puber --help
Requirements
- Python 3.9+
- macOS, Linux, or Windows
Usage
Command-line interface
Currently available commands:
# Normalize as personal name
puber norm -n "Татьяна М. Иванова" # -> Иванова Т.М.
Python API
from puber import norm_name
print(norm_name("Татьяна М. Иванова")) # -> Иванова Т.М.
Testing
The project includes an extensive automated test suite for text normalization.
Run tests from the project root:
pytest
For src-layout development:
pip install -e .
pytest
License
MIT License
(c) 2025 Timur Ulyahin
https://github.com/ucomru
Project Homepage
Metadata
Release files for puber 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| puber-0.1.1.tar.gz | 7.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| puber-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 14.3 kB
Release files / puber-0.1.1.tar.gz
| Download URL | puber-0.1.1.tar.gz |
|---|---|
| Size | 7.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
7e33bcb17f60b5cd9056a2d6f813c24e766c6c21d1b5ff766b2238c6dddc47bf
|
|
BLAKE2b-256 checksum How to use checksums |
b5cc7166a09e212493f01a4b9b2804ad181d57574a84cf2e0a41615b5d6b885c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.9
|
Release files / puber-0.1.1-py3-none-any.whl
| Download URL | puber-0.1.1-py3-none-any.whl |
|---|---|
| Size | 6.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
06c5e536b8b8f577e45a5f346fdffb5e28fe368bd1f04be3681b33311e209041
|
|
BLAKE2b-256 checksum How to use checksums |
6e367a3f5c6b96cc3ba8aad152d07e202d6fdc8c5f9643119042ae985761c198
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.9
|