PHPackages                             rauwebieten/twig-stringy-extension - 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. [Templating &amp; Views](/categories/templating)
4. /
5. rauwebieten/twig-stringy-extension

ActiveLibrary[Templating &amp; Views](/categories/templating)

rauwebieten/twig-stringy-extension
==================================

Twig extension for the stringy library

v3.4(4y ago)1161LGPL-3.0PHPPHP ^7.1|^8.0CI failing

Since Jan 14Pushed 4y ago1 watchersCompare

[ Source](https://github.com/rauwebieten/twig-stringy-extension)[ Packagist](https://packagist.org/packages/rauwebieten/twig-stringy-extension)[ RSS](/packages/rauwebieten-twig-stringy-extension/feed)WikiDiscussions master Synced today

READMEChangelog (7)Dependencies (3)Versions (8)Used By (0)

Twig Stringy Extension
======================

[](#twig-stringy-extension)

[![Build Status](https://camo.githubusercontent.com/cacac9dff19dd09fdb5f138dc3e9cd0a425d83232b3a403d4cb359030c8aeb10/68747470733a2f2f7472617669732d63692e6f72672f726175776562696574656e2f747769672d737472696e67792d657874656e73696f6e2e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/rauwebieten/twig-stringy-extension)[![codecov](https://camo.githubusercontent.com/c1ef0e3c2ef26532c6b6ccbb6cccd7f16d34d14e58c1bdfe3278e4b920311005/68747470733a2f2f636f6465636f762e696f2f67682f726175776562696574656e2f747769672d737472696e67792d657874656e73696f6e2f6272616e63682f6d61737465722f67726170682f62616467652e737667)](https://codecov.io/gh/rauwebieten/twig-stringy-extension)[![Maintainability](https://camo.githubusercontent.com/6f74a7b079fd7aae814ec40f28577788de3ce846536f77e87dd97d83a0065bb0/68747470733a2f2f6170692e636f6465636c696d6174652e636f6d2f76312f6261646765732f31623432646339636466303537383239353765612f6d61696e7461696e6162696c697479)](https://codeclimate.com/github/rauwebieten/twig-stringy-extension/maintainability)[![StyleCI](https://camo.githubusercontent.com/063f539ddadfc58a684e4e6682dd8197a51db1f5a0a566d284467429814fdf04/68747470733a2f2f6769746875622e7374796c6563692e696f2f7265706f732f3136353639373134372f736869656c643f6272616e63683d6d6173746572)](https://github.styleci.io/repos/165697147)[![Issues](https://camo.githubusercontent.com/aae0a5cd3c32ffb01279e404c4731d0e53407823ba46fcba9d777b6c645a0a84/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6973737565732f726175776562696574656e2f747769672d737472696e67792d657874656e73696f6e2e737667)](https://github.com/rauwebieten/twig-stringy-extension/issues)[![](https://camo.githubusercontent.com/361872fd123202d51a11121aa77e9d0de03c4fc5d9717b5a28ac4e8d246f990f/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f726175776562696574656e2f747769672d737472696e67792d657874656e73696f6e2e737667)](https://camo.githubusercontent.com/361872fd123202d51a11121aa77e9d0de03c4fc5d9717b5a28ac4e8d246f990f/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f6c6963656e73652f726175776562696574656e2f747769672d737472696e67792d657874656e73696f6e2e737667)

A [Twig extension](https://github.com/twigphp/Twig)for the [Stringy library](https://github.com/danielstjules/Stringy)

Use string manipulations from the Stringy library in your Twig templates.

Installation
------------

[](#installation)

```
composer require rauwebieten/twig-stringy-extension

```

Available filters
-----------------

[](#available-filters)

All Stringy methods are converted to underscored filters (to maintain the twig code style).
All filters are prefixed "stringy\_" to avoid collissions with other filters.

- stringy\_append
- stringy\_at
- stringy\_between
- stringy\_camelize
- stringy\_chars
- stringy\_collapse\_whitespace
- stringy\_contains
- stringy\_contains\_all
- stringy\_contains\_any
- stringy\_count\_substr
- stringy\_dasherize
- stringy\_delimit
- stringy\_ends\_with
- stringy\_ends\_with\_any
- stringy\_ensure\_left
- stringy\_ensure\_right
- stringy\_first
- stringy\_get\_encoding
- stringy\_has\_lower\_case
- stringy\_has\_upper\_case
- stringy\_html\_decode
- stringy\_html\_encode
- stringy\_humanize
- stringy\_index\_of
- stringy\_index\_of\_last
- stringy\_insert
- stringy\_is\_alpha
- stringy\_is\_alphanumeric
- stringy\_is\_base64
- stringy\_is\_blank
- stringy\_is\_hexadecimal
- stringy\_is\_json
- stringy\_is\_lower\_case
- stringy\_is\_serialized
- stringy\_is\_upper\_case
- stringy\_last
- stringy\_length
- stringy\_lines
- stringy\_longest\_common\_prefix
- stringy\_longest\_common\_suffix
- stringy\_longest\_common\_substring
- stringy\_lower\_case\_first
- stringy\_pad
- stringy\_pad\_both
- stringy\_pad\_left
- stringy\_pad\_right
- stringy\_prepend
- stringy\_regex\_replace
- stringy\_remove\_left
- stringy\_remove\_right
- stringy\_repeat
- stringy\_replace
- stringy\_reverse
- stringy\_safe\_truncate
- stringy\_shuffle
- stringy\_slugify
- stringy\_slice
- stringy\_split
- stringy\_starts\_with
- stringy\_starts\_with\_any
- stringy\_strip\_whitespace
- stringy\_substr
- stringy\_surround
- stringy\_swap\_case
- stringy\_tidy
- stringy\_titleize
- stringy\_to\_ascii
- stringy\_to\_boolean
- stringy\_to\_lower\_case
- stringy\_to\_spaces
- stringy\_to\_tabs
- stringy\_to\_title\_case
- stringy\_to\_upper\_case
- stringy\_trim
- stringy\_trim\_left
- stringy\_trim\_right
- stringy\_truncate
- stringy\_underscored
- stringy\_upper\_camelize
- stringy\_upper\_case\_first

See the [Stringy documentation](https://github.com/danielstjules/Stringy) for details

Available filters &amp; example usage
-------------------------------------

[](#available-filters--example-usage)

Example usage in a twig template

```

    {# stringy_append #}
    {{ 'àê'|stringy_append('ïò') }} => àêïò

    {# stringy_at #}
    {{ 'àêïò'|stringy_at(1) }} => ê

    {# stringy_between #}
    {{ 'àêïò'|stringy_between('à','ò') }} => êï

    {# stringy_camelize #}
    {{ 'Thîs ïs à senténce'|stringy_camelize }} => thîsÏsÀSenténce

    {# stringy_chars #}
    {% for char in 'fòôbàř'|stringy_chars %}char "{{ char }}" {% endfor %}

    {# stringy_collapse_whitespace #}
    {{ '   Ο     συγγραφέας  '|stringy_collapse_whitespace }} => Ο συγγραφέας

    {# stringy_contains #}
    {% if 'Ο συγγραφέας είπε'|stringy_contains('συγγραφέας') %}contains συγγραφέας{% endif %}

```

More info
---------

[](#more-info)

[Stringy documentation](https://github.com/danielstjules/Stringy)

###  Health Score

30

—

LowBetter than 64% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity70

Established project with proven stability

 Bus Factor1

Top contributor holds 70.6% 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 ~156 days

Recently: every ~233 days

Total

7

Last Release

1737d ago

Major Versions

v1.0 → v2.02019-01-15

v2.0 → v3.02019-01-18

PHP version history (2 changes)v3.0PHP ^7.1

v3.4PHP ^7.1|^8.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/59acbf4a62b72eba36a902011e336653854d735158432c0c3b382d95b4236589?d=identicon)[rauwebieten](/maintainers/rauwebieten)

---

Top Contributors

[![rauwebieten](https://avatars.githubusercontent.com/u/11740475?v=4)](https://github.com/rauwebieten "rauwebieten (36 commits)")[![peter-kinamo](https://avatars.githubusercontent.com/u/20679429?v=4)](https://github.com/peter-kinamo "peter-kinamo (10 commits)")[![waldifubu](https://avatars.githubusercontent.com/u/494797?v=4)](https://github.com/waldifubu "waldifubu (5 commits)")

---

Tags

phpstring-manipulationstringytwigtwig-extension

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/rauwebieten-twig-stringy-extension/health.svg)

```
[![Health](https://phpackages.com/badges/rauwebieten-twig-stringy-extension/health.svg)](https://phpackages.com/packages/rauwebieten-twig-stringy-extension)
```

###  Alternatives

[twig/intl-extra

A Twig extension for Intl

36663.2M221](/packages/twig-intl-extra)[rcrowe/twigbridge

Adds the power of Twig to Laravel

9105.9M50](/packages/rcrowe-twigbridge)[twig/string-extra

A Twig extension for Symfony String

21946.0M133](/packages/twig-string-extra)[twig/cssinliner-extra

A Twig extension to allow inlining CSS

23018.5M55](/packages/twig-cssinliner-extra)[symfony/ux-twig-component

Twig components for Symfony

21814.8M162](/packages/symfony-ux-twig-component)[twig/markdown-extra

A Twig extension for Markdown

12114.3M83](/packages/twig-markdown-extra)

PHPackages © 2026

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