PHPackages                             terramar/packages - 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. [Caching](/categories/caching)
4. /
5. terramar/packages

ActiveApplication[Caching](/categories/caching)

terramar/packages
=================

Packages extends Composer Satis with a management interface and integrations for GitLab and GitHub

3.2.0(8y ago)1631850[24 issues](https://github.com/terramar-labs/packages/issues)[2 PRs](https://github.com/terramar-labs/packages/pulls)MITPHPPHP &gt;=5.6.0

Since Mar 21Pushed 3y ago12 watchersCompare

[ Source](https://github.com/terramar-labs/packages)[ Packagist](https://packagist.org/packages/terramar/packages)[ RSS](/packages/terramar-packages/feed)WikiDiscussions master Synced 1w ago

READMEChangelog (10)Dependencies (22)Versions (32)Used By (0)

Packages
========

[](#packages)

> Source code repository management made simple.

[![Build Status](https://camo.githubusercontent.com/b834f96f50cdff75b6aac3786b3c24be7d01f1c9c4677d14301c43b1ebb4c68c/68747470733a2f2f7472617669732d63692e6f72672f74657272616d61722d6c6162732f7061636b616765732e7376673f6272616e63683d6d6173746572)](https://travis-ci.org/terramar-labs/packages)

Packages is a PHP 5.6 and 7.x application providing an interface and tools for maintaining a private [Composer](https://getcomposer.org) repository. Packages extends [Satis](https://github.com/composer/satis), adding a web frontend and useful management functionality like GitHub and GitLab integration.

Packages automatically registers GitLab, GitHub, and Bitbucket project webhooks to keep Satis up to date every time you push code. Packages also features a web management interface that allows for easy management of exposed packages and configured source control repositories.

Packages version 3 works on a plugin based system based around source code repositories. Packages can trigger, with each code push, many automated tasks like documentation generation or code analysis. The simple event-based architecture allows easy creation of new automation tasks.

[View the docs online](http://docs.terramarlabs.com/packages/3.2).

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

[](#installation)

Requirements:

- PHP 5.6 or later
- [Composer](https://getcomposer.org)
- Some database platform supported by [Doctrine 2](http://doctrine-project.org) (sqlite works great!)
- [Redis](https://redis.io/)

Download the [latest release](https://github.com/terramar-labs/packages/releases/latest), or clone the repository.

```
git clone git@github.com:terramar-labs/packages.git
```

### Install dependencies

[](#install-dependencies)

Switch to the project root directory and run `composer install`.

```
cd packages
composer install
```

### Edit configuration

[](#edit-configuration)

Copy `config.yml.dist` to `config.yml` and edit as appropriate.

```
cp config.yml.dist config.yml
vi config.yml
```

### Generate the database schema

[](#generate-the-database-schema)

Packages uses Doctrine ORM to auto-generate the database schema for your configured platform.

```
bin/console orm:schema-tool:create
```

Running the application
-----------------------

[](#running-the-application)

Start PHP's built-in webserver to run the Packages web application with minimal effort.

```
# Visit http://localhost:8080 to see the landing page.
php -S localhost:8080 -t web
```

### Start a Resque worker

[](#start-a-resque-worker)

For fully-automatic integration with GitHub, GitLab, and your Satis repository, you must always have at least one Resque worker running.

```
bin/console resque:worker:start
```

> For more information on Resque workers, check [the dedicated section](http://docs.terramarlabs.com/packages/3.2/managing-packages/resque).

Using the application
---------------------

[](#using-the-application)

Read the [usage and design documentation](http://docs.terramarlabs.com/packages/3.2/getting-started/usage) for an overview of Packages functionality.

### Development/debug mode

[](#developmentdebug-mode)

Visit `index_dev.php` in your browser to view the site with the `dev` environment configuration. In this env, views and the service container are not cached, so changes made are immediately visible.

### Customizing

[](#customizing)

Check out the [Contributing Guide](CONTRIBUTING.md) for the recommended way to set up your development environment.

Some tips:

- Views are written using Twig and stored in `views/`.
    - Views are cached in `prod` env; use `http://localhost:8080/index_dev.php` to develop.
    - All pages inherit from `views/base.html.twig`, except for
    - Public landing page views inherit from `views/Default/base.html.twig`.
- [Composer Components](http://robloach.github.io/component-installer/) are used to manage front-end dependencies. The respective `web/images/`, `web/js/bootstrap.min.js`, and such are symlinks pointing to the real files installed by Composer in `vendor/`.
- Check [the documentation](http://docs.terramarlabs.com/packages/3.2/managing-packages/customizing) for additional information.

Docker support
--------------

[](#docker-support)

Packages comes with an example `docker-compose.yml` that starts an nginx container and a Redis container, ready to get up and running quickly.

Visit [the documentation](http://docs.terramarlabs.com/packages/3.2/getting-started/docker) to get started.

Troubleshooting
---------------

[](#troubleshooting)

1. `index_dev.php` contains a non-localhost block, comment it out when using Docker.
2. Manage Resque and Satis using the `bin/console` command-line utility.

- **Build the Satis `packages.json` file** with the `satis:build` command. ```
    bin/console satis:build
    ```
- **View queued Resque jobs in Redis** with the `resque:queue:list` command. ```
    bin/console resque:queue:list
    ```
- **View active Resque workers** with the `resque:worker:list` command. ```
    bin/console resque:worker:list
    ```
- **Start a Resque worker** with `resque:worker:start`. ```
    bin/console resque:worker:start
    ```

3. Check the Resque logs to see if Resque is working properly.

```
tail -f logs/resque.log
```

###  Health Score

37

—

LowBetter than 83% of packages

Maintenance17

Infrequent updates — may be unmaintained

Popularity26

Limited adoption so far

Community28

Small or concentrated contributor base

Maturity69

Established project with proven stability

 Bus Factor1

Top contributor holds 92.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 ~60 days

Recently: every ~160 days

Total

29

Last Release

3120d ago

Major Versions

1.3.2 → 2.0.02014-05-17

2.1.2 → 3.0.02014-12-05

2.1.3 → 3.0.22014-12-17

2.1.4 → 3.0.32015-01-19

PHP version history (3 changes)1.0.0PHP &gt;=5.3.2

1.3.1PHP &gt;=5.4.0

3.1.4PHP &gt;=5.6.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/a6a55c97b9cd1dd07d6948376cde5b3e24947eaa8357e06044dc2c5180ffd27e?d=identicon)[tyler-sommer](/maintainers/tyler-sommer)

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

---

Top Contributors

[![tyler-sommer](https://avatars.githubusercontent.com/u/916259?v=4)](https://github.com/tyler-sommer "tyler-sommer (427 commits)")[![Barbarrosa](https://avatars.githubusercontent.com/u/4523460?v=4)](https://github.com/Barbarrosa "Barbarrosa (11 commits)")[![nickveenhof](https://avatars.githubusercontent.com/u/161341?v=4)](https://github.com/nickveenhof "nickveenhof (5 commits)")[![Axxon](https://avatars.githubusercontent.com/u/2196308?v=4)](https://github.com/Axxon "Axxon (2 commits)")[![Ant95](https://avatars.githubusercontent.com/u/8207408?v=4)](https://github.com/Ant95 "Ant95 (2 commits)")[![blankse](https://avatars.githubusercontent.com/u/998558?v=4)](https://github.com/blankse "blankse (2 commits)")[![NeoBlack](https://avatars.githubusercontent.com/u/1128085?v=4)](https://github.com/NeoBlack "NeoBlack (2 commits)")[![taka-oyama](https://avatars.githubusercontent.com/u/748854?v=4)](https://github.com/taka-oyama "taka-oyama (1 commits)")[![webflo](https://avatars.githubusercontent.com/u/123946?v=4)](https://github.com/webflo "webflo (1 commits)")[![aeoris](https://avatars.githubusercontent.com/u/3284058?v=4)](https://github.com/aeoris "aeoris (1 commits)")[![webmaster777](https://avatars.githubusercontent.com/u/2650744?v=4)](https://github.com/webmaster777 "webmaster777 (1 commits)")[![ericrisler](https://avatars.githubusercontent.com/u/660351?v=4)](https://github.com/ericrisler "ericrisler (1 commits)")[![FrankGiesecke](https://avatars.githubusercontent.com/u/4430040?v=4)](https://github.com/FrankGiesecke "FrankGiesecke (1 commits)")[![imme-emosol](https://avatars.githubusercontent.com/u/487989?v=4)](https://github.com/imme-emosol "imme-emosol (1 commits)")[![mollux](https://avatars.githubusercontent.com/u/3983285?v=4)](https://github.com/mollux "mollux (1 commits)")[![pavkatar](https://avatars.githubusercontent.com/u/259746?v=4)](https://github.com/pavkatar "pavkatar (1 commits)")[![pmacinec](https://avatars.githubusercontent.com/u/22483624?v=4)](https://github.com/pmacinec "pmacinec (1 commits)")

---

Tags

composercomposer-packagesgithubgitlabpackage-managerphprediswebhook

###  Code Quality

TestsPHPUnit

### Embed Badge

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

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

###  Alternatives

[sylius/sylius

E-Commerce platform for PHP, based on Symfony framework.

8.4k5.6M651](/packages/sylius-sylius)[shopware/platform

The Shopware e-commerce core

3.3k1.5M3](/packages/shopware-platform)[sulu/sulu

Core framework that implements the functionality of the Sulu content management system

1.3k1.3M152](/packages/sulu-sulu)[shopware/core

Shopware platform is the core for all Shopware ecommerce products.

595.2M386](/packages/shopware-core)[ec-cube/ec-cube

EC-CUBE EC open platform.

78527.0k1](/packages/ec-cube-ec-cube)[neos/flow

Flow Application Framework

862.0M451](/packages/neos-flow)

PHPackages © 2026

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