Skip to main content

Text tools for publishers.

Project description

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

GitHub:
https://github.com/ucomru/python-puber

PyPI:
https://pypi.org/project/puber/

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

puber-0.1.0.tar.gz (7.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

puber-0.1.0-py3-none-any.whl (6.5 kB view details)

Uploaded Python 3

File details

Details for the file puber-0.1.0.tar.gz.

File metadata

  • Download URL: puber-0.1.0.tar.gz
  • Upload date:
  • Size: 7.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for puber-0.1.0.tar.gz
Algorithm Hash digest
SHA256 c1f3c88e40f972c82d31285dff096dcc6d64ca2e7da0288fd0bf60c2c64fef1d
MD5 69cab5ca95ac982421ae7d0388c0e785
BLAKE2b-256 b2cfb3f0f2495a7ab155389a5840309e9f44acc0f5ace0e87e0f65fda681f992

See more details on using hashes here.

File details

Details for the file puber-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: puber-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for puber-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 325193d3f9dee181d70824c1aa314e8be63bf43f4ffcffac18fb32620a8293c3
MD5 e3268529fa7b11cb55c33b8f37c319b2
BLAKE2b-256 a3e8acfa96d9abb449c3c9cf729ac36b16ceff95663af6e9d0602ce26525390f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page