PHPackages                             smt/phackage-builder - 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. [CLI &amp; Console](/categories/cli)
4. /
5. smt/phackage-builder

ActiveLibrary[CLI &amp; Console](/categories/cli)

smt/phackage-builder
====================

Build cli-php files into phar-package with optional parameters.

v1.0.1(10y ago)016MITPHPPHP &gt;=5.4

Since Aug 3Pushed 10y ago1 watchersCompare

[ Source](https://github.com/saksmt/phackage-builder)[ Packagist](https://packagist.org/packages/smt/phackage-builder)[ Docs](https://github.com/saksmt/phackage-builder)[ RSS](/packages/smt-phackage-builder/feed)WikiDiscussions develop Synced 1mo ago

READMEChangelog (1)Dependencies (3)Versions (4)Used By (0)

Phackage-builder
================

[](#phackage-builder)

Collects php files and builds them into phar-package.

Install
=======

[](#install)

`composer require smt/phackage-builder`

Usage
=====

[](#usage)

As library
----------

[](#as-library)

```
use Smt\Packer\Phar;

$phar = new Phar('PATH/TO/DIRECTORY/TO/PACK', 'TARGET_PACKAGE_NAME', 'INDEX_FILE');
$phar
    ->addBootstrapData('const YOUR_PREDEFINED_CONSTANT = 5;')
    ->addFilter('!/vendor')
    ->addCustomFilter(function (\SplFileInfo $file) { return rand(0, 1)); }) // Heh
    ->prepare()
    ->pack()
;

// Also you can use some other cool features

// $phar = ...
use Smt\Generator\ClassBuilder;
$phar
    ->addBootstrapData(
        (new ClassBuilder('CoolClass'))
            ->setNamespace('Vendor\Code') // You'll be able to use it in phar!
            ->addProperty('prop')
                ->makePublic()
                ->makeStatic()
                ->setValue('\'SOME_SECRET_TOKEN_FOR_EXAMPLE\'')
                ->end()
            ->addMethod('get awesomeness') // yeah you can write exactly right this! this would be converted to "getAwesomeness"
                ->setReturnValue('\Grab it!\'')
                ->end()
            ->getCode()
    )
    ->prepare()
    ->pack()
;

// And the last cool feature
// $phar = ...
use Smt\Generator\DefineGenerator;
$phar
    ->addBootstrapData(new DefineGenerator([
        'SOME_CONST' => 'value',
        'SomeClass.SOME_CONST' => 'value',
        'SomeClass::someVar' => '\'value\'', // Warning here you MUST to write quotes if you use strings
        'Some\Name\Space\SomeClass.CONSTANT' => 'value',
    ]))
    ->prepare()
    ->pack()
;

```

As package
----------

[](#as-package)

`php bootstrap.php pack PATH/TO/DIR -dSomeClass.SOME_CONST='value'`, for more see "last cool feature" from "As library" section.

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community4

Small or concentrated contributor base

Maturity60

Established project with proven stability

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 ~5 days

Total

3

Last Release

3930d ago

Major Versions

v0.0.0 → v1.0.02015-08-14

### Community

Maintainers

![](https://www.gravatar.com/avatar/056f804db1fb4e94cf408db237cf37b934a0c19253decb2ab5e1fae236f1ef83?d=identicon)[smt](/maintainers/smt)

---

Tags

cliphar

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/smt-phackage-builder/health.svg)

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

###  Alternatives

[nunomaduro/collision

Cli error handling for console/command-line PHP applications.

4.6k331.8M8.5k](/packages/nunomaduro-collision)[nunomaduro/termwind

It's like Tailwind CSS, but for the console.

2.5k239.8M286](/packages/nunomaduro-termwind)[buggregator/trap

A simple and powerful tool for debugging PHP applications.

2591.7M40](/packages/buggregator-trap)[laminas/laminas-cli

Command-line interface for Laminas projects

563.7M54](/packages/laminas-laminas-cli)[inhere/console

php console library, provide console argument parse, console controller/command run, color style, user interactive, information show.

3477.4k12](/packages/inhere-console)[mahocommerce/maho

Free and open source ecommerce platform, created in 2024 on the M1 platform, PHP 8.3+

1322.1k12](/packages/mahocommerce-maho)

PHPackages © 2026

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