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.1.tar.gz (7.8 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.1-py3-none-any.whl (6.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: puber-0.1.1.tar.gz
  • Upload date:
  • Size: 7.8 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.1.tar.gz
Algorithm Hash digest
SHA256 7e33bcb17f60b5cd9056a2d6f813c24e766c6c21d1b5ff766b2238c6dddc47bf
MD5 da54248b2855e660ee97dcf48ee7e38d
BLAKE2b-256 b5cc7166a09e212493f01a4b9b2804ad181d57574a84cf2e0a41615b5d6b885c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: puber-0.1.1-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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 06c5e536b8b8f577e45a5f346fdffb5e28fe368bd1f04be3681b33311e209041
MD5 c5d95afb800ab2e4cddad52f368319a4
BLAKE2b-256 6e367a3f5c6b96cc3ba8aad152d07e202d6fdc8c5f9643119042ae985761c198

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