PHPackages                             theabhishekin/laravel-vps-deploy - 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. theabhishekin/laravel-vps-deploy

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

theabhishekin/laravel-vps-deploy
================================

Provision a fresh or existing VPS end-to-end for your Laravel app — powered by the standalone vps-deploy Rust binary.

v0.1.0(1mo ago)11↓66.7%MITPHPPHP &gt;=8.1CI passing

Since Jul 17Pushed 1mo agoCompare

[ Source](https://github.com/TheAbhishekIN/laravel-vps-deploy)[ Packagist](https://packagist.org/packages/theabhishekin/laravel-vps-deploy)[ RSS](/packages/theabhishekin-laravel-vps-deploy/feed)WikiDiscussions main Synced 1w ago

READMEChangelog (1)DependenciesVersions (2)Used By (0)

laravel-vps-deploy
==================

[](#laravel-vps-deploy)

Provision a fresh or existing VPS end-to-end for your Laravel app — PHP version, extensions, web server + domain + SSL, database, Redis, cron, queue workers, and websockets — from one command:

```
composer require theabhishekin/laravel-vps-deploy --dev
php artisan deploy:setup
```

This package is a thin distribution layer. The real engine is [`vps-deploy`](https://github.com/TheAbhishekIN/vps-deploy), a fast, dependency-free Rust binary that detects your app's requirements from `composer.json` / `package.json` and runs an idempotent, preview-first provisioning pipeline. `deploy:setup` fetches the right prebuilt binary for your server's OS/arch (into `vendor/bin/vps-deploy`) and execs it with your app's base path and `.env` location.

Two entry paths, one engine
---------------------------

[](#two-entry-paths-one-engine)

ScenarioEntry pointFresh VPS, no PHP installed yet`curl -sSL https://raw.githubusercontent.com/TheAbhishekIN/vps-deploy/main/install.sh | bash`Existing Laravel repo, PHP already present`composer require theabhishekin/laravel-vps-deploy --dev`Both run the same binary and the same pipeline, so there's no drift between "the composer version" and "the standalone version". **Caveat:**a truly bare VPS needs the `curl` bootstrap once — Composer itself requires PHP, which is exactly what the binary is about to install.

Usage
-----

[](#usage)

```
php artisan deploy:setup             # full interactive wizard (vps-deploy run)
php artisan deploy:setup update      # repeat-deploy reconciliation
php artisan deploy:setup plan        # dry run — show what would change
php artisan deploy:setup doctor      # health check, applies nothing
php artisan deploy:setup provision redis
php artisan deploy:setup history
```

Everything after `deploy:setup` is forwarded to the binary, which already receives `--base-path` and `--env-file` pointed at your app.

Optionally publish the config stub instead of using the interactive init:

```
php artisan vendor:publish --tag=vps-deploy-config
```

`deploy.yml` declares only what can't be inferred (domain, database engine, worker count, …). PHP version and extensions are read from your `composer.json`; the Node version from `package.json` / `.nvmrc`.

Binary download details
-----------------------

[](#binary-download-details)

- Prebuilt binaries exist for Linux `x86_64` and `aarch64`; on other platforms (e.g. your Mac) the download is skipped with a notice — this tool runs *on the VPS*.
- Set `VPS_DEPLOY_BIN=/path/to/vps-deploy` to use a binary you manage yourself (or one installed by `install.sh`).
- Composer only runs `post-install-cmd` scripts of the root package, so in consuming apps the download happens on the first `php artisan deploy:setup` instead — same code path, no difference in behavior.

Server-local state
------------------

[](#server-local-state)

The engine keeps `state.json` (current snapshot) and `history.jsonl`(append-only audit trail) under `~/.vps-deploy//` on the server — never in your repo, never part of a code deploy.

###  Health Score

34

—

LowBetter than 74% of packages

Maintenance90

Actively maintained with recent releases

Popularity3

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity32

Early-stage or recently created project

 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

46d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/52767864?v=4)[Abhishek Sharma](/maintainers/TheAbhishekIN)[@TheAbhishekIN](https://github.com/TheAbhishekIN)

---

Top Contributors

[![TheAbhishekIN](https://avatars.githubusercontent.com/u/52767864?v=4)](https://github.com/TheAbhishekIN "TheAbhishekIN (3 commits)")

---

Tags

laraveldevopsdeployvpsprovisioning

### Embed Badge

![Health badge](/badges/theabhishekin-laravel-vps-deploy/health.svg)

```
[![Health](https://phpackages.com/badges/theabhishekin-laravel-vps-deploy/health.svg)](https://phpackages.com/packages/theabhishekin-laravel-vps-deploy)
```

###  Alternatives

[downtoworld/laravel-devops

Laravel Cloudflare-Tunnels Ready Production Docker-Compose

161.1k](/packages/downtoworld-laravel-devops)

PHPackages © 2026

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