PHPackages                             qiq/qiq - 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. qiq/qiq

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

qiq/qiq
=======

Provides a TemplateView implementations using PHP itself as the templating language, and an optional lightweight template markup.

3.0.1(1y ago)28164.9k↓28.7%54MITPHPPHP ^8.1 | ^8.2 | ^8.3 | ^8.4CI passing

Since Oct 20Pushed 4mo ago3 watchersCompare

[ Source](https://github.com/qiqphp/qiq)[ Packagist](https://packagist.org/packages/qiq/qiq)[ Docs](https://github.com/qiqphp/qiq)[ RSS](/packages/qiq-qiq/feed)WikiDiscussions 3.x Synced 2w ago

READMEChangelog (10)Dependencies (8)Versions (14)Used By (4)

Qiq Templates for PHP 8
=======================

[](#qiq-templates-for-php-8)

This package provides a PHP 8.1+ implementation of the [TemplateView](http://martinfowler.com/eaaCatalog/templateView.html)pattern using PHP itself as the templating language, along with an optional `{{ ... }}` syntax for concise escaping and helper use.

Documentation
-------------

[](#documentation)

Read the docs at .

IDE Support
-----------

[](#ide-support)

### JetBrains IDEs

[](#jetbrains-ides)

The [Qiq Templates Support](https://plugins.jetbrains.com/plugin/28576-qiq-templates-support) plugin for PhpStorm, IntelliJ IDEA, and other JetBrains IDEs provides:

- Syntax highlighting for Qiq templates
- Simple navigation between templates
- HTML-aware comment toggle

Background
----------

[](#background)

I don't like compiled templates or specialized template languages. Smarty, Twig, etc. are all just too heavy-handed. I don't need a new language, and I don't need to "secure" my templates against designers on my team. I am generally happy with plain PHP as a template language.

However, I do find escaping tedious -- necessary, and easy enough, but tedious. A template helper to output escaped HTML, like this ...

```

```

... is not that bad -- but even so, it could be a *little* easier. Imagine this little bit of syntax sugar:

```
{{h $var }}

```

All that happens is that `{{h ... }}` is replaced with ``.

Once that is in place, it becomes easy to support helpers, control structures, and other code, all while keeping native PHP as the fallback syntax, because the `{{ ... }}` tags are essentially stand-ins for PHP tags.

Qiq really is PHP -- just with some syntax sugar when you want it.

History
-------

[](#history)

Qiq's relatives include ...

- The Savant family:
    - [Savant 1 and 2](https://github.com/pmjones/savant)
    - [Savant 3](https://github.com/saltybeagle/Savant3)
    - [PEAR Templates\_Savant](https://github.com/pear2/Templates_Savant/)
    - [Savvy](https://github.com/saltybeagle/Savvy)
- [Solar\_View](http://solarphp.com/manual/views)
- [Aura.View](http://auraphp.com/packages/2.x/View.html)
- [Laminas View](https://docs.laminas.dev/laminas-view/) (nee Zend\_View)

This package is more closely related to Aura.View than to the pre-Composer versions of Savant, but does reintroduce the Savant compiler hook ideas.

###  Health Score

54

—

FairBetter than 97% of packages

Maintenance58

Moderate activity, may be stable

Popularity44

Moderate usage in the ecosystem

Community23

Small or concentrated contributor base

Maturity76

Established project with proven stability

 Bus Factor1

Top contributor holds 92.3% 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 ~135 days

Recently: every ~228 days

Total

13

Last Release

142d ago

Major Versions

1.x-dev → 2.0.02023-04-05

2.1.0 → 3.0.02023-09-27

PHP version history (3 changes)1.0.0PHP ^8.0

3.0.0PHP ^8.1 | ^8.2 | ^8.3

3.0.1PHP ^8.1 | ^8.2 | ^8.3 | ^8.4

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/25754?v=4)[Paul M. Jones](/maintainers/pmjones)[@pmjones](https://github.com/pmjones)

---

Top Contributors

[![pmjones](https://avatars.githubusercontent.com/u/25754?v=4)](https://github.com/pmjones "pmjones (108 commits)")[![koriym](https://avatars.githubusercontent.com/u/529021?v=4)](https://github.com/koriym "koriym (4 commits)")[![harikt](https://avatars.githubusercontent.com/u/120454?v=4)](https://github.com/harikt "harikt (3 commits)")[![claude](https://avatars.githubusercontent.com/u/81847?v=4)](https://github.com/claude "claude (1 commits)")[![suzumaze](https://avatars.githubusercontent.com/u/17695387?v=4)](https://github.com/suzumaze "suzumaze (1 commits)")

---

Tags

templateescaperviewEscapeescapingtemplate view

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Type Coverage Yes

### Embed Badge

![Health badge](/badges/qiq-qiq/health.svg)

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

###  Alternatives

[aura/view

Provides an implementation of the TemplateView and TwoStepView patterns, with support for helpers and for closures as templates, using PHP itself as the templating language.

88162.3k19](/packages/aura-view)[moonshine/moonshine

Laravel administration panel

1.3k268.2k89](/packages/moonshine-moonshine)[latte/latte

☕ Latte: the intuitive and fast template engine for those who want the most secure PHP sites. Introduces context-sensitive escaping.

1.3k16.3M823](/packages/latte-latte)[laminas/laminas-view

Fast and type safe HTML templating library with a flexible plugin system supporting multistep template composition

7529.2M276](/packages/laminas-laminas-view)[eftec/bladeone

The standalone version Blade Template Engine from Laravel in a single php file

82910.1M126](/packages/eftec-bladeone)[jenssegers/blade

The standalone version of Laravel's Blade templating engine for use outside of Laravel.

8641.3M116](/packages/jenssegers-blade)

PHPackages © 2026

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