PHPackages                             esemve/composerve - 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. esemve/composerve

ActiveProject

esemve/composerve
=================

Serve your git repositories as composer packages

0.0.6(9y ago)019MITPHP

Since Sep 1Pushed 9y ago1 watchersCompare

[ Source](https://github.com/esemve/CompoServe)[ Packagist](https://packagist.org/packages/esemve/composerve)[ RSS](/packages/esemve-composerve/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (7)Used By (0)

CompoServe
==========

[](#composerve)

**What is this?**

CompoServe is a git repository 2 composer package generator. With its help you can serve the content of the git repository available in the file system as a package.

Settings
========

[](#settings)

**Dependency:**

With the CLI php exec it should be able to start the git command. Besides that it is important that the user from which you start the generating has reading rights to the folder that contains your git repository.

**Installation**

1. Clone the project or install from composer

```
composer require esemve/composerve --prefer-dist
```

2. Make available the content of the public folder online
3. Transfer all request to index.php (this way it can serve the packages.json request as well)

**Settings**

Rename config/repositories.example.php to repositories.php, and add the packages and their git folders to it.

Usage
=====

[](#usage)

With the help of composerve.php in the root you can access the console. Run the command below after you modified your package (or added a new package):

```
  php composerve.php build
```

It goes through all of the added repositories, interprets the tags that are in the git, retrieves the data from the composer.json, and generates zipball to the versions.

Where you want to use the packages served by CompoServe, add it to the composer.json:

```
"repositories": [
    {
        "type": "composer",
        "url": "http:\/\/composerve.yourdomain.com"
    }
],
```

... where the  is the url through which the content of the /public folder is available.

From that point the

```
composer update
```

command has access to all of the packages, it can download any of the versions, just like you have been using the original packagist.org.

What should be in the git?
==========================

[](#what-should-be-in-the-git)

The system can work with the git repository formats that are accepted by packagist.com. You can find the description here:

---

If you want to help me fork it and send me a pull request! :)

---

License: MIT

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity57

Maturing project, gaining track record

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

Total

6

Last Release

3527d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/fcc234138346fa646ea0a5162f9de722aa584f0b23c97f282f61ce51a9befc0b?d=identicon)[esemve](/maintainers/esemve)

---

Top Contributors

[![esemve](https://avatars.githubusercontent.com/u/7847061?v=4)](https://github.com/esemve "esemve (9 commits)")

### Embed Badge

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

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

PHPackages © 2026

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