PHPackages                             devgiants/phar-application - 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. devgiants/phar-application

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

devgiants/phar-application
==========================

Boilerplate for fully maintenable PHP CLI applications packaged in PHAR

1.0.2(8y ago)113MITPHP

Since Mar 16Pushed 8y ago1 watchersCompare

[ Source](https://github.com/devgiants/phar-application)[ Packagist](https://packagist.org/packages/devgiants/phar-application)[ Docs](https://github.com/devgiants/phar-application)[ RSS](/packages/devgiants-phar-application/feed)WikiDiscussions master Synced 2d ago

READMEChangelogDependenciesVersions (4)Used By (0)

PHAR Application Boilerplate
============================

[](#phar-application-boilerplate)

\## Description

Embed everything needed to create a fully maintenable PHAR application

\## Installation

```
composer create-project devgiants/phar-application

```

Usage (TODO)
------------

[](#usage-todo)

- Set .env and app/bin/.env
- Change src/App to your namespace
    - app/src/composer.json
    - All namespaces calls
- Change box.json for app name
- Use Model/ApplicationCommand for common model with DI and logging

PHAR Packager
=============

[](#phar-packager)

This bash script goal is to ease tedious PHAR packaging process for a open-source app published on Github. This script is very specific to following case :

- Open-source project hosted on Github
- Use [Box](https://github.com/box-project/box2) for create package
- Use [Kherge version (abandoned)](https://github.com/kherge-abandoned/Version) to handle version number. TODO is to switch to maintained project ASAP
- Use a manifest system to publish phar archive to gh-pages. You can have live example on applications I created such as [livebox](https://github.com/devgiants/livebox/blob/gh-pages/manifest.json) or [websites-backup](https://github.com/devgiants/websites-backup/blob/gh-pages/manifest.json)

Usage
-----

[](#usage)

Just make sur your local `master` branch is up-to-date, with README updated with good version number (the one you publish). Then:

`./make-phar -n appname -v 1.2.3`

This will do, in order :

1. Create local tag with version passed as argument
2. Push `master` branch to remote repo
3. Push tags to remote repo
4. Build PHAR using `box`
5. Move generated PHAR to `/tmp`
6. Checkout to `gh-pages`
7. Move generated archive from `/tmp` to `downloads/{appname}-{version}.phar`
8. Create matching manifest file
9. Push everything to `gh-page` remote branch.
10. Switch back to `master`

###  Health Score

28

—

LowBetter than 52% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity65

Established project with proven stability

 Bus Factor1

Top contributor holds 100% 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 ~6 days

Total

3

Last Release

3015d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/4244050?v=4)[nbonniot](/maintainers/nbonniot)[@nbonniot](https://github.com/nbonniot)

---

Top Contributors

[![devgiants](https://avatars.githubusercontent.com/u/8057208?v=4)](https://github.com/devgiants "devgiants (6 commits)")

---

Tags

phpcliconsolephardocker

### Embed Badge

![Health badge](/badges/devgiants-phar-application/health.svg)

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

###  Alternatives

[nunomaduro/termwind

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

2.5k260.6M370](/packages/nunomaduro-termwind)[nunomaduro/laravel-console-task

Laravel Console Task is a output method for your Laravel/Laravel Zero commands.

2592.3M13](/packages/nunomaduro-laravel-console-task)[tightenco/takeout

Manage your dev dependencies with simple one-off Docker containers.

1.6k21.0k](/packages/tightenco-takeout)[mehrancodes/laravel-harbor

A CLI tool to Quickly create On-Demand preview environment for your apps.

9995.6k](/packages/mehrancodes-laravel-harbor)[php-school/learn-you-php

An introduction to PHP's core features: i/o, http, arrays, exceptions and so on.

3202.0k](/packages/php-school-learn-you-php)[alecrabbit/php-cli-snake

Lightweight cli spinner with zero dependencies

29214.4k5](/packages/alecrabbit-php-cli-snake)

PHPackages © 2026

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