PHPackages                             refs/sputnik - 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. refs/sputnik

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

refs/sputnik
============

Modern PHP TaskRunner with class-based tasks, Nette DI, and template engine

0.1.0(3mo ago)11[10 PRs](https://github.com/refsz/sputnik/pulls)MITPHPPHP ^8.2CI passing

Since Apr 3Pushed 1w agoCompare

[ Source](https://github.com/refsz/sputnik)[ Packagist](https://packagist.org/packages/refs/sputnik)[ Docs](https://github.com/refsz/sputnik)[ RSS](/packages/refs-sputnik/feed)WikiDiscussions main Synced today

READMEChangelog (1)Dependencies (17)Versions (16)Used By (0)

Sputnik
=======

[](#sputnik)

[![CI](https://github.com/refsz/sputnik/actions/workflows/ci.yml/badge.svg)](https://github.com/refsz/sputnik/actions/workflows/ci.yml)[![Latest Release](https://camo.githubusercontent.com/82dcb385715d6632474d10ddf8aac59d281ab8f71144a33e261500a6afdfbc59/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f762f72656c656173652f726566737a2f737075746e696b)](https://github.com/refsz/sputnik/releases/latest)[![Packagist](https://camo.githubusercontent.com/6b7b07acc063b3253536d9bde6e53dae7250a8fc781e75a44426bdba30ef9ab6/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f726566732f737075746e696b)](https://packagist.org/packages/refs/sputnik)[![License: MIT](https://camo.githubusercontent.com/08cef40a9105b6526ca22088bc514fbfdbc9aac1ddbf8d4e6c750e3a88a44dca/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f4c6963656e73652d4d49542d626c75652e737667)](LICENSE)[![PHP](https://camo.githubusercontent.com/16bf0df300ac7f74a802f399db53d10a7b86eaf85b74d59c3f8ec13d2017374b/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f646570656e64656e63792d762f726566732f737075746e696b2f706870)](composer.json)

A PHP TaskRunner for project automation. Class-based tasks, context switching, environment-aware execution.

What it does
------------

[](#what-it-does)

Sputnik runs tasks defined as PHP classes. Each task is a single class with attributes -- no YAML actions, no function dumps, no DSL. You write normal PHP, Sputnik handles discovery, CLI, contexts, and shell routing.

```
#[Task(name: 'deploy', description: 'Deploy the application', environment: 'container')]
final class DeployTask implements TaskInterface
{
    public function __invoke(TaskContext $ctx): TaskResult
    {
        $ctx->shell('rsync -avz ./dist/ {{ deployPath }}/');
        $ctx->shellRaw('php artisan migrate --force');

        return TaskResult::success();
    }
}
```

```
$ php sputnik.phar deploy

Sputnik 0.1.0 │ .sputnik.dist.neon │ prod

▸ deploy · Deploy the application

  > rsync -avz ./dist/ /var/www/app/
  > php artisan migrate --force
✓ Done (1.24s)

```

Install
-------

[](#install)

### PHAR (recommended)

[](#phar-recommended)

```
curl -Lo sputnik.phar https://github.com/refsz/sputnik/releases/latest/download/sputnik.phar
chmod +x sputnik.phar
php sputnik.phar init
```

Verify the download:

```
curl -Lo sputnik.phar.sha256 https://github.com/refsz/sputnik/releases/latest/download/sputnik.phar.sha256
sha256sum -c sputnik.phar.sha256
```

For IDE autocompletion you can additionally install via Composer: `composer require --dev refs/sputnik`. See [Installation](https://refsz.github.io/sputnik/installation/) for details.

Key concepts
------------

[](#key-concepts)

**Tasks** are PHP classes with `#[Task]` attributes. Options, arguments, and shell execution are built in. [Writing Tasks](https://refsz.github.io/sputnik/tasks/)

**Contexts** let you define named configurations -- different variables, different behavior. Switch with one command, no code changes. [Contexts](https://refsz.github.io/sputnik/contexts/)

**Templates** render files like `.env` with `{{ variable }}` syntax. Re-rendered automatically on context switch. [Templates](https://refsz.github.io/sputnik/templates/)

**Environments** route commands transparently between host and container. A task marked `environment: 'container'` is automatically wrapped with your Docker executor. [Environments](https://refsz.github.io/sputnik/environments/)

Links
-----

[](#links)

- [Documentation](https://refsz.github.io/sputnik) -- full docs, recipes, CLI reference
- [Releases](https://github.com/refsz/sputnik/releases) -- release notes and downloads
- [Contributing](CONTRIBUTING.md) -- development setup
- [Security](SECURITY.md) -- reporting vulnerabilities
- [License](LICENSE) -- MIT

###  Health Score

38

—

LowBetter than 83% of packages

Maintenance91

Actively maintained with recent releases

Popularity4

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity44

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 97.9% 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

Unknown

Total

1

Last Release

92d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/6905948?v=4)[Alex Unger](/maintainers/refs)[@refs](https://github.com/refs)

---

Top Contributors

[![refsz](https://avatars.githubusercontent.com/u/4622811?v=4)](https://github.com/refsz "refsz (47 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (1 commits)")

---

Tags

cliautomationdevopsbuildtask-runner

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan, Rector

Code StylePHP CS Fixer

Type Coverage Yes

### Embed Badge

![Health badge](/badges/refs-sputnik/health.svg)

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

###  Alternatives

[matomo/matomo

Matomo is the leading Free/Libre open analytics platform

21.7k38.9k](/packages/matomo-matomo)[laravel/framework

The Laravel Framework.

34.8k543.8M20.1k](/packages/laravel-framework)[drupal/core-recommended

Locked core dependencies; require this project INSTEAD OF drupal/core.

6942.5M420](/packages/drupal-core-recommended)[drupal/core

Drupal is an open source content management platform powering millions of websites and applications.

21866.0M1.7k](/packages/drupal-core)[sulu/sulu

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

1.3k1.4M203](/packages/sulu-sulu)[kimai/kimai

Kimai - Time Tracking

4.8k9.0k1](/packages/kimai-kimai)

PHPackages © 2026

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