PHPackages                             rockett/textformatter-typographer - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. rockett/textformatter-typographer

AbandonedArchivedProcesswire-module[Utility &amp; Helpers](/categories/utility)

rockett/textformatter-typographer
=================================

Typographer is a ProcessWire wrapper for the awesome PHP Typography package.

2.0.0(3y ago)12MITPHPPHP &gt;=7.4.0

Since Oct 6Pushed 3y ago1 watchersCompare

[ Source](https://github.com/mikerockett/textformatter-typographer)[ Packagist](https://packagist.org/packages/rockett/textformatter-typographer)[ RSS](/packages/rockett-textformatter-typographer/feed)WikiDiscussions master Synced today

READMEChangelogDependencies (2)Versions (7)Used By (0)

Typographer for ProcessWire
===========================

[](#typographer-for-processwire)

Typographer is a ProcessWire wrapper for the awesome PHP Typography class, originally authored by KINGdesk LLC and enhanced by Peter Putzer for wp-Typography. Like Smartypants, it supercharges text fields with enhanced typography and typesetting, such as smart quotations, hyphenation in 59 languages, ellipses, copyright-, trade-, and service-marks, math symbols, and more.

Install
-------

[](#install)

The module may be installed via the modules directory by searching for **TextformatterTypographer**.

Or, you can use Composer:

```
composer require rockett/textformatter-typographer

```

Usage
-----

[](#usage)

To use Typographer, simply apply the text formatter on a field as you usually would.

If you are interacting with content that does not form part of the normal ProcessWire page system, such as fetching content from an external source, you can make use of the `formatString` method on the module class:

```
print $modules
  ->get('TextformatterTypographer')
  ->formatString('"Hello, world!"');
```

Configuration
-------------

[](#configuration)

This module is configurable. Feel free to visit the configuration page to see what can be toggled and configured.

To modify the instance of Typographer's settings class programatically, hook into the `customTypographerSettings` method.

```
wire()->addHookAfter('TextformatterTypographer::customTypographerSettings', function (HookEvent $event) {
  /** @var \PHP_Typography\Settings $settings */
  $settings = $event->return;
  $lang = $event->user->language->name;

  // Set configurations based on language, for example:
  if ($lang === 'de') {
    $settings->set_hyphenation_language('de');
    $settings->set_smart_quotes_primary('doubleLow9Reversed');
    $settings->set_smart_quotes_secondary('singleLow9Reversed');
  }
});
```

Licenses
--------

[](#licenses)

This project is licensed under the permissive MIT license, and the libraries it depends on have their own licenses. Please review these in the [license file](LICENSE.md).

###  Health Score

28

—

LowBetter than 52% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity67

Established project with proven stability

 Bus Factor1

Top contributor holds 50% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~418 days

Recently: every ~523 days

Total

6

Last Release

1097d ago

Major Versions

0.4.0 → 1.0.02021-04-22

1.1.1 → 2.0.02023-07-01

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/118113?v=4)[Rockett Williams](/maintainers/rockett)[@rockett](https://github.com/rockett)

---

Top Contributors

[![daun](https://avatars.githubusercontent.com/u/22225348?v=4)](https://github.com/daun "daun (2 commits)")[![mikerockett](https://avatars.githubusercontent.com/u/4586280?v=4)](https://github.com/mikerockett "mikerockett (2 commits)")

### Embed Badge

![Health badge](/badges/rockett-textformatter-typographer/health.svg)

```
[![Health](https://phpackages.com/badges/rockett-textformatter-typographer/health.svg)](https://phpackages.com/packages/rockett-textformatter-typographer)
```

###  Alternatives

[helsingborg-stad/municipio

A bootstrap theme for creating municipality sites.

4028.5k10](/packages/helsingborg-stad-municipio)[mediawiki/maps

Adds various mapping features to MediaWiki

84152.3k3](/packages/mediawiki-maps)[starcitizentools/citizen-skin

A beautiful, usable, responsive MediaWiki skin with in-depth extension support. Originally developed for the Star Citizen Wiki.

3376.6k](/packages/starcitizentools-citizen-skin)[civicrm/civicrm-drupal-8

Open source constituent relationship management for non-profits, NGOs and advocacy organizations.

19251.4k3](/packages/civicrm-civicrm-drupal-8)[altis/core

Core module for Altis

19228.0k3](/packages/altis-core)[pfefferle/wordpress-activitypub

The ActivityPub protocol is a decentralized social networking protocol based upon the ActivityStreams 2.0 data format.

5721.7k3](/packages/pfefferle-wordpress-activitypub)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
