PHPackages                             lsnepomuceno/laravel-package-maker - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. lsnepomuceno/laravel-package-maker

ActivePackage[Utility &amp; Helpers](/categories/utility)

lsnepomuceno/laravel-package-maker
==================================

Get a package skeleton and all other `make` commands from laravel base for package development.

v5.0.0(4y ago)012MITPHP

Since Aug 9Pushed 4y agoCompare

[ Source](https://github.com/lsnepomuceno/laravel-package-maker)[ Packagist](https://packagist.org/packages/lsnepomuceno/laravel-package-maker)[ Docs](https://github.com/lsnepomuceno/laravel-package-maker)[ GitHub Sponsors](https://github.com/LSNepomuceno)[ RSS](/packages/lsnepomuceno-laravel-package-maker/feed)WikiDiscussions main Synced today

READMEChangelog (1)Dependencies (6)Versions (41)Used By (0)

laravel-package-maker
=====================

[](#laravel-package-maker)

### forked from [Naoray/laravel-package-maker](https://github.com/naoray/laravel-package-maker)

[](#forked-from-naoraylaravel-package-maker)

[![Software License](https://camo.githubusercontent.com/55c0218c8f8009f06ad4ddae837ddd05301481fcf0dff8e0ed9dadda8780713e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d627269676874677265656e2e7376673f7374796c653d666c61742d737175617265)](LICENSE.md)[![Total Downloads](https://camo.githubusercontent.com/e5f0e516738410bdb5f79f2b0d7f2641f66bfdc5373eb35252fc025b129d0ccd/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6c736e65706f6d7563656e6f2f6c61726176656c2d7061636b6167652d6d616b65722e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/lsnepomuceno/laravel-package-maker)

All the `make` commands you use in your daily Laravel app development workflow but for packages! This package was created solely for the purpose to make package development as fast and easy as possible. Creating a new package only takes one command (`make:package`) and you will end up with the following file structure:

```
.
└── package
    ├── .codecov.yml
    ├── composer.json
    ├── CONTRIBUTING.md
    ├── .gitignore
    ├── LICENSE.md
    ├── phpunit.xml
    ├── readme.md
    ├── src
    │   └── PackageServiceProvider.php
    ├── .styleci.yml
    ├── tests
    │   └── TestCase.php
    └── .travis.yml
```

Install
-------

[](#install)

`composer require lsnepomuceno/laravel-package-maker --dev`

Usage
-----

[](#usage)

- [laravel-package-maker](#laravel-package-maker)
    - [Install](#install)
    - [Usage](#usage)
        - [Create a package](#create-a-package)
        - [Create a nova tool](#create-a-nova-tool)
        - [Add a package](#add-a-package)
        - [Save package credentials](#save-package-credentials)
        - [Delete package credentials](#delete-package-credentials)
        - [Clone a package](#clone-a-package)
        - [Replace Content](#replace-content)
        - [Make Commands](#make-commands)
            - [Foundation](#foundation)
            - [Database](#database)
            - [Routing](#routing)
            - [Standard Php](#standard-php)
        - [Commands used for creating initial package stubs](#commands-used-for-creating-initial-package-stubs)
        - [Example Usage](#example-usage)
    - [Testing](#testing)
    - [Changelog](#changelog)
    - [Contributing](#contributing)
    - [Credits](#credits)
    - [Security](#security)
    - [License](#license)

### Create a package

[](#create-a-package)

```
php artisan make:package

```

![make:package](https://user-images.githubusercontent.com/10154100/44323501-89bdf000-a452-11e8-8fc4-3ec5c451c30a.gif)

### Create a nova tool

[](#create-a-nova-tool)

```
php artisan make:nova

```

Inspired by [Spatie's nova-skeleton-tool](https://github.com/spatie/skeleton-nova-tool) this command clones the repository, replaces all strings with your own and adds it to your own project.

[![make:nova](https://user-images.githubusercontent.com/10154100/44515270-5d100f80-a6c2-11e8-9a8c-a26e9a3af55d.png)](https://user-images.githubusercontent.com/10154100/44515270-5d100f80-a6c2-11e8-9a8c-a26e9a3af55d.png)

### Add a package

[](#add-a-package)

```
php artisan package:add

```

If you have already created a package or you want to add a modified version of a package which is currently only available locally, you can use the following command to add you package to your project. It does simply add your package to your project`s composer repositories and requires a local version of it.

**This command is run by `make:package` automatically, so you have no need to execute it after creating a package!**

### Save package credentials

[](#save-package-credentials)

```
php artisan package:save
				{namespace : Root namespace of the package (Vendor\Package_name)}
				{path : Relative path to the package's directory}

```

Every `package:*` command needs to know the package's *namespace* and the relative *path* to the location your package is stored. Because of that every `package:*` command comes with those two options by default. To avoid entering those two options every time a `package:*` command executed this command saves the credentials of your package in the cache.

### Delete package credentials

[](#delete-package-credentials)

```
php artisan package:delete

```

This one wipes all stored credentials from your cache.

### Clone a package

[](#clone-a-package)

```
php artisan package:clone
                {src : Source path of the package to clone}
                {target : Path where it should be cloned in}

```

The clone command clones a given repository or directory into the given target.

### Replace Content

[](#replace-content)

```
php artisan package:replace
                {path : The path to a file or directory}
                {--O|old=* : Old strings which will be replaced}
                {--N|new=* : New strings which will be used as replacement}'

```

The replace command takes a path of a file or a directory and an indefinite number of 'old' options which will be replaced by the 'new' options.

### Make Commands

[](#make-commands)

All of these commands do have all arguments &amp; options to which you are used to in a normal laravel app! To execute any of these commands simply add the prefix `package:`.

#### Foundation

[](#foundation)

- `channel`
- `console`
- `event`
- `exception`
- `job`
- `listener`
- `mail`
- `model`
- `notification`
- `observer`
- `policy`
- `provider`
- `request`
- `resource`
- `rule`
- `test`

#### Database

[](#database)

- `factory`
- `migration`
- `seeder`

#### Routing

[](#routing)

- `controller`
- `middleware`

#### Standard Php

[](#standard-php)

All of the following routes only accept a `name` argument.

- `contract`
- `interface` (same as `contract`)
- `trait`

### Commands used for creating initial package stubs

[](#commands-used-for-creating-initial-package-stubs)

- `package:basetest {provider : The package's provider name}` - creates `TestCase` in `tests` folder
- `package:codecov` - creates a `.codecov.yml` file
- `package:composer {--author : The author of the package.} {--email : The author's email.}` - creates `composer.json`
- `package:contribution` - creates `CONTRIBUTING.md`
- `package:gitignore` - creates `.gitignore` file
- `package:license {--copyright : The company or vendor name to place it int the license file}` - creates `LICENSE.md` file
- `package:phpunit` - creates `phpunit.xml`
- `package:readme {--author : The author of the package.} {--email : The author's email.}` - creates `readme.md`
- `package:styleci` - creates `.styleci.yml`
- `package:travis` - creates `.travis.yml`

### Example Usage

[](#example-usage)

*Use a few `make` commands*![package:*](https://user-images.githubusercontent.com/10154100/44323506-8cb8e080-a452-11e8-9f7c-fb07462c9b96.gif)

*All arguments &amp; options you know from the standard `make` commands are available. Create a model with all option.*![package:model --all](https://user-images.githubusercontent.com/10154100/44323509-8f1b3a80-a452-11e8-9a98-1ecaa96b1ae6.gif)

Testing
-------

[](#testing)

Run the tests with:

```
vendor/bin/phpunit
```

Changelog
---------

[](#changelog)

Please see [CHANGELOG](CHANGELOG.md) for more information what has changed recently.

Contributing
------------

[](#contributing)

Please see [CONTRIBUTING](CONTRIBUTING.md) for details.

Credits
-------

[](#credits)

- [Krishan König](https://github.com/lsnepomuceno)
- [All Contributors](https://github.com/lsnepomuceno/laravel-package-maker/contributors)

Security
--------

[](#security)

If you discover any security-related issues, please email  instead of using the issue tracker.

License
-------

[](#license)

The MIT License (MIT). Please see [License File](/LICENSE.md) for more information.

###  Health Score

31

—

LowBetter than 66% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity5

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity75

Established project with proven stability

 Bus Factor1

Top contributor holds 84.3% 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 ~36 days

Recently: every ~122 days

Total

37

Last Release

1582d ago

Major Versions

v1.4.4 → 2.0.02019-10-21

2.0.0 → v3.0.02020-05-15

v3.1.0 → v4.0.02020-10-29

v4.0.4 → v5.0.02022-03-03

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/14093492?v=4)[Lucas Nepomuceno](/maintainers/lsnepomuceno)[@lsnepomuceno](https://github.com/lsnepomuceno)

---

Top Contributors

[![Naoray](https://avatars.githubusercontent.com/u/10154100?v=4)](https://github.com/Naoray "Naoray (215 commits)")[![rennokki](https://avatars.githubusercontent.com/u/21983456?v=4)](https://github.com/rennokki "rennokki (21 commits)")[![byjujohn](https://avatars.githubusercontent.com/u/1469621?v=4)](https://github.com/byjujohn "byjujohn (8 commits)")[![lsnepomuceno](https://avatars.githubusercontent.com/u/14093492?v=4)](https://github.com/lsnepomuceno "lsnepomuceno (6 commits)")[![immeyti](https://avatars.githubusercontent.com/u/24190257?v=4)](https://github.com/immeyti "immeyti (4 commits)")[![myckhel](https://avatars.githubusercontent.com/u/34090541?v=4)](https://github.com/myckhel "myckhel (1 commits)")

---

Tags

laravelpackage maker

### Embed Badge

![Health badge](/badges/lsnepomuceno-laravel-package-maker/health.svg)

```
[![Health](https://phpackages.com/badges/lsnepomuceno-laravel-package-maker/health.svg)](https://phpackages.com/packages/lsnepomuceno-laravel-package-maker)
```

###  Alternatives

[laravel/ai

The official AI SDK for Laravel.

1.0k3.2M193](/packages/laravel-ai)[illuminate/queue

The Illuminate Queue package.

21332.6M1.6k](/packages/illuminate-queue)[roots/acorn

Framework for Roots WordPress projects built with Laravel components.

9762.4M130](/packages/roots-acorn)[moonshine/moonshine

Laravel administration panel

1.3k253.1k81](/packages/moonshine-moonshine)[laravel/folio

Page based routing for Laravel.

603583.7k33](/packages/laravel-folio)[erag/laravel-lang-sync-inertia

A powerful Laravel package for syncing and managing language translations across backend and Inertia.js (Vue/React/Svelte) frontends, offering effortless localization, auto-sync features, and smooth multi-language support for modern Laravel applications.

4925.3k](/packages/erag-laravel-lang-sync-inertia)

PHPackages © 2026

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