PHPackages                             sydgren/laravel-shipit - 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. [DevOps &amp; Deployment](/categories/devops)
4. /
5. sydgren/laravel-shipit

ActiveLibrary[DevOps &amp; Deployment](/categories/devops)

sydgren/laravel-shipit
======================

Trigger and monitor ShipIt deployments from Artisan — php artisan shipit:deploy.

v1.0.0(2mo ago)057↓25%MITPHPPHP ^8.2

Since Jun 1Pushed 1mo agoCompare

[ Source](https://github.com/sydgren/laravel-shipit)[ Packagist](https://packagist.org/packages/sydgren/laravel-shipit)[ Docs](https://shipit.henriknordquist.dk)[ RSS](/packages/sydgren-laravel-shipit/feed)WikiDiscussions main Synced 2w ago

READMEChangelogDependencies (6)Versions (2)Used By (0)

ShipIt Deployer
===============

[](#shipit-deployer)

Trigger and monitor [ShipIt](https://shipit.henriknordquist.dk) deployments straight from your Laravel app's Artisan console.

```
php artisan shipit:deploy --watch
```

Drop it into any Laravel project, point it at a ShipIt site, and deploy from your terminal or CI pipeline — `--watch` streams the live log and exits non-zero if the deployment fails, so it gates a pipeline cleanly.

Requirements
------------

[](#requirements)

- PHP 8.2+
- Laravel 11, 12, or 13

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

[](#installation)

```
composer require sydgren/laravel-shipit
```

The service provider is auto-discovered. Optionally publish the config:

```
php artisan vendor:publish --tag=shipit-config
```

Configuration
-------------

[](#configuration)

Configure via environment variables (no published config needed):

```
SHIPIT_TOKEN=your-personal-access-token
SHIPIT_SITE=example.com          # site id or domain this project deploys to
SHIPIT_URL=https://shipit.henriknordquist.dk   # only if self-hosted elsewhere
```

Create a token in ShipIt under **Settings → API tokens**. `SHIPIT_SITE` is the default site every command targets when you don't pass one explicitly — set it once per project and `php artisan shipit:deploy` just works.

Commands
--------

[](#commands)

CommandDescription`shipit:deploy {site?} {--branch=} {--watch} {--no-wait}`Trigger a deployment`shipit:status {site?}`Latest deployment status for a site`shipit:logs {deployment?} {--site=} {--watch}`Show / follow deployment output`shipit:deployments {site?} {--limit=10}`List recent deployments`shipit:rollback {deployment}`Roll back to a previous successful deployment`shipit:sites`List all sites on your account (handy for finding ids)`{site}` accepts either a numeric ShipIt id or a domain/name. When omitted, commands fall back to `SHIPIT_SITE`.

### Examples

[](#examples)

```
# Deploy the configured site and watch the log (exits non-zero on failure)
php artisan shipit:deploy --watch

# Deploy a specific branch of a specific site, don't block
php artisan shipit:deploy example.com --branch=staging --no-wait

# Tail the latest deployment's log
php artisan shipit:logs --watch

# Roll back
php artisan shipit:deployments      # find the id of a good release
php artisan shipit:rollback 1234
```

### In CI (GitHub Actions)

[](#in-ci-github-actions)

```
- name: Deploy
  run: php artisan shipit:deploy --watch
  env:
    SHIPIT_TOKEN: ${{ secrets.SHIPIT_TOKEN }}
    SHIPIT_SITE: ${{ vars.SHIPIT_SITE }}
```

Programmatic use
----------------

[](#programmatic-use)

The `ShipIt` facade exposes the same API client the commands use:

```
use Sydgren\ShipIt\Facades\ShipIt;

$siteId = ShipIt::resolveSiteId('example.com');
$deployment = ShipIt::deploy($siteId, branch: 'main')['deployment'];
$status = ShipIt::output($deployment['id'])['status'];
```

Testing
-------

[](#testing)

```
composer install
vendor/bin/pest
```

License
-------

[](#license)

MIT

###  Health Score

41

—

FairBetter than 87% of packages

Maintenance89

Actively maintained with recent releases

Popularity12

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity46

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

Unknown

Total

1

Last Release

64d ago

### Community

Maintainers

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

---

Top Contributors

[![sydgren](https://avatars.githubusercontent.com/u/11387613?v=4)](https://github.com/sydgren "sydgren (1 commits)")

---

Tags

laravelartisancideploymentshipit

###  Code Quality

TestsPest

### Embed Badge

![Health badge](/badges/sydgren-laravel-shipit/health.svg)

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

###  Alternatives

[laravel/mcp

Rapidly build MCP servers for your Laravel applications.

78727.1M206](/packages/laravel-mcp)[spatie/laravel-export

Create a static site bundle from a Laravel app

679153.2k6](/packages/spatie-laravel-export)[roots/acorn

Framework for Roots WordPress projects built with Laravel components.

9872.4M142](/packages/roots-acorn)[psalm/plugin-laravel

Psalm plugin for Laravel

3355.4M352](/packages/psalm-plugin-laravel)[forjedio/inertia-table

Backend-driven dynamic tables for Laravel + Inertia.js

272.0k](/packages/forjedio-inertia-table)[aedart/athenaeum

Athenaeum is a mono repository; a collection of various PHP packages

255.2k](/packages/aedart-athenaeum)

PHPackages © 2026

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