PHPackages                             kduma/s3-satis - 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. kduma/s3-satis

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

kduma/s3-satis
==============

Extends composer/satis with S3 support

v0.2.1(2y ago)303[1 PRs](https://github.com/kduma-OSS/CLI-s3-satis/pulls)MITPHPPHP ^8.2CI passing

Since Dec 16Pushed 8mo ago1 watchersCompare

[ Source](https://github.com/kduma-OSS/CLI-s3-satis)[ Packagist](https://packagist.org/packages/kduma/s3-satis)[ Docs](https://github.com/kduma-OSS/CLI-s3-satis)[ RSS](/packages/kduma-s3-satis/feed)WikiDiscussions master Synced yesterday

READMEChangelog (10)Dependencies (6)Versions (14)Used By (0)

`s3-satis` tool
===============

[](#s3-satis-tool)

Tool to generate a [Composer](https://getcomposer.org/) PHP packages repository (based on [Satis - static Composer repository generator](https://github.com/composer/satis)) and synchronize generated repository with a [Amazon S3](https://aws.amazon.com/s3/)(or compatible) bucket.

Check full documentation here: [opensource.duma.sh/systems/serverless-satis/s3-satis](https://opensource.duma.sh/systems/serverless-satis/s3-satis)

Setup
-----

[](#setup)

You can install `s3-satis` tool in four ways:

- As a [Docker](https://www.docker.com/) container -using image [ghcr.io/kduma-oss/s3-satis](https://github.com/kduma-OSS/CLI-s3-satis/pkgs/container/s3-satis)
- Global composer installation - tool will be available globally as `s3-satis` command
- You can download phar executable file from [GitHub Releases](https://github.com/kduma-OSS/CLI-s3-satis/releases/latest) page
- Download source code form [GitHub](https://github.com/kduma-OSS/CLI-s3-satis) to run

Usage
-----

[](#usage)

First prepare a `satis.json` file with your repository configuration. This tool is based on [Satis - static Composer repository generator](https://github.com/composer/satis){:target="\_blank"}, so please check [Satis documentation](https://getcomposer.org/doc/articles/handling-private-packages-with-satis.md){:target="\_blank"} for configuration options.

```
{
  "name": "my/repo",

  "homepage": "https://satis.example.com",

  "repositories": [
    { "type": "vcs", "url": "https://github.com/laravel/framework" }
  ],

  "require-all": true
}
```

Second, configure your environment variables (or `.env` file) with your S3 bucket credentials:

```
S3_ACCESS_KEY_ID=
S3_SECRET_ACCESS_KEY=
S3_REGION=us-east-1
S3_BUCKET=
S3_ENDPOINT=
S3_USE_PATH_STYLE_ENDPOINT=false
```

Then run `s3-satis` tool to generate repository and upload it to S3 bucket:

```
s3-satis build satis.json
```

###  Health Score

30

—

LowBetter than 62% of packages

Maintenance42

Moderate activity, may be stable

Popularity6

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity52

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 98.8% 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 ~0 days

Total

12

Last Release

927d ago

### Community

Maintainers

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

---

Top Contributors

[![kduma](https://avatars.githubusercontent.com/u/1062582?v=4)](https://github.com/kduma "kduma (81 commits)")[![michaelmeneses](https://avatars.githubusercontent.com/u/6410303?v=4)](https://github.com/michaelmeneses "michaelmeneses (1 commits)")

---

Tags

dockerlaravel-zerophpserverless-satiscomposerclis3satis

###  Code Quality

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/kduma-s3-satis/health.svg)

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

###  Alternatives

[nunomaduro/collision

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

4.7k357.7M11.1k](/packages/nunomaduro-collision)[mehrancodes/laravel-harbor

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

10097.5k](/packages/mehrancodes-laravel-harbor)[illuminate/console

The Illuminate Console package.

13046.0M6.5k](/packages/illuminate-console)

PHPackages © 2026

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