PHPackages                             davidpeach/laravel-base-command - 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. davidpeach/laravel-base-command

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

davidpeach/laravel-base-command
===============================

v1.0.0(4y ago)161[3 issues](https://github.com/davidpeach/laravel-base-command/issues)1MITPHPPHP ^8

Since Oct 28Pushed 4y ago1 watchersCompare

[ Source](https://github.com/davidpeach/laravel-base-command)[ Packagist](https://packagist.org/packages/davidpeach/laravel-base-command)[ RSS](/packages/davidpeach-laravel-base-command/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (6)Dependencies (2)Versions (7)Used By (1)

Laravel Base Command
====================

[](#laravel-base-command)

A little package to help create an automated flow in a Laravel project.

Let's say you or your company build Laravel sites / apps regularly. And let's say that there are a bunch of steps you go through each and every time you start a new project.

Wouldn't it be nice if you could automate that whole process?

Well that is exactly what Laravel Base Command tries to help you with.

By extending this package with your own, and with minimal setup, you can get a working setup flow.

Quick Start
-----------

[](#quick-start)

### Installation

[](#installation)

```
composer require davidpeach/laravel-base-command
```

### Usage

[](#usage)

#### Required files in your child package

[](#required-files-in-your-child-package)

As Laravel Base Command attempts to do most of the heavy lifting for you, you only really need to create your `Step`classes -- one for each step that you wish to perform.

- A `ServiceProvider` class that extends `BaseCommandServiceProvider`
- A set of `Step` classes in your package's `/src/Steps` folder. A step class must extend either `StepAlways`, `StepBinary` or `StepChoice`.

#### Process

[](#process)

1. Extend the base command service provider with your own.
2. Add your command class that extends BaseCommand and add it to your service provider.
3. Create your command classes.
4. Add a list of your command classes in your command class that extends BaseCommand.
5. Run your setup command.

When extending `laravel-base-command`, you define a command to run in order to run through your setup process. "Your setup command" is just the command that you run. e.g. `php artisan mycompany:setup`.

Essentially, your own package's Service Provider should extend the one in this project. Then you just create as many Task classes as is needed for your own setup steps.

Your own steps should extend either `StepAlways`, `StepBinary` or `StepChoices`.

A full explanation and documentation is coming soon.

Thanks for your patience, Dave.

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance0

Infrequent updates — may be unmaintained

Popularity10

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity58

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

Recently: every ~98 days

Total

6

Last Release

1629d ago

Major Versions

v0.1.0 → v1.0.02021-11-24

PHP version history (2 changes)v0.1.0PHP ^8.0

v1.0.0PHP ^8

### Community

Maintainers

![](https://www.gravatar.com/avatar/4d7faf5eee1f055a85788c44936b8995eaab6dfb004e7854ec747ccb272e91ee?d=identicon)[davidpeach](/maintainers/davidpeach)

---

Top Contributors

[![davidpeach](https://avatars.githubusercontent.com/u/1392924?v=4)](https://github.com/davidpeach "davidpeach (19 commits)")

---

Tags

laravel

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/davidpeach-laravel-base-command/health.svg)

```
[![Health](https://phpackages.com/badges/davidpeach-laravel-base-command/health.svg)](https://phpackages.com/packages/davidpeach-laravel-base-command)
```

###  Alternatives

[wp-cli/wp-cli

WP-CLI framework

5.0k17.2M320](/packages/wp-cli-wp-cli)[consolidation/annotated-command

Initialize Symfony Console commands from annotated command class methods.

22569.8M19](/packages/consolidation-annotated-command)[chi-teck/drupal-code-generator

Drupal code generator

26947.8M5](/packages/chi-teck-drupal-code-generator)[seld/cli-prompt

Allows you to prompt for user input on the command line, and optionally hide the characters they type

24725.8M17](/packages/seld-cli-prompt)[illuminate/console

The Illuminate Console package.

12944.1M5.1k](/packages/illuminate-console)[php-tui/php-tui

Comprehensive TUI library heavily influenced by Ratatui

589747.0k6](/packages/php-tui-php-tui)

PHPackages © 2026

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