PHPackages                             e2tmk/skeleton-module - 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. [Framework](/categories/framework)
4. /
5. e2tmk/skeleton-module

ActiveLaravel-module[Framework](/categories/framework)

e2tmk/skeleton-module
=====================

v1.3.0(8mo ago)111[3 PRs](https://github.com/e2tmk/skeleton-module/pulls)MITPHPCI passing

Since Apr 11Pushed 2mo agoCompare

[ Source](https://github.com/e2tmk/skeleton-module)[ Packagist](https://packagist.org/packages/e2tmk/skeleton-module)[ GitHub Sponsors](https://github.com/e2tmk)[ RSS](/packages/e2tmk-skeleton-module/feed)WikiDiscussions main Synced today

READMEChangelog (5)Dependencies (1)Versions (12)Used By (0)

Skeleton Module
===============

[](#skeleton-module)

[![Latest Version on Packagist](https://camo.githubusercontent.com/5471157ed15b879af5ea64d7f3c194d89aeeea0e6befe7e6608e190731e13075/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6532746d6b2f736b656c65746f6e2d6d6f64756c652e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/e2tmk/skeleton-module)

The Skeleton module serves as a template for creating new modules in the system. It provides a streamlined structure and a convenient command-line tool to quickly generate new modules based on this skeleton.

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

[](#installation)

You can install the package via composer:

```
composer require e2tmk/skeleton-module
```

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

[](#requirements)

- PHP &gt;= 8.2
- Laravel &gt;= 11.0
- nwidart/laravel-modules &gt;= 9.0

Module Structure
----------------

[](#module-structure)

The Skeleton module contains a basic structure that follows best practices for module development:

- Configuration files
- Service provider setup
- Basic directory structure
- Composer configuration
- Module manifest

Module Builder Command
----------------------

[](#module-builder-command)

The Skeleton module includes a powerful command-line tool called `module-build` that helps you quickly create new modules based on this template.

### Usage

[](#usage)

You can create a new module using the command:

```
php artisan module-build
```

Or specify the module name directly with the `--name` option:

```
php artisan module-build --name=MyNewModule
```

### What it does

[](#what-it-does)

The `module-build` command performs the following operations:

1. **Creates a new module directory** based on the provided name
2. **Copies all files** from the Skeleton module to the new module
3. **Renames files and directories** by replacing "Skeleton" with your module name
    - PascalCase substitution: "Skeleton" → "YourModuleName"
    - Lowercase substitution: "skeleton" → "yourmodulename"
4. **Updates file contents** to replace all occurrences of "Skeleton" with your module name
5. **Updates specific files**:
    - `composer.json`: Updates package name and namespaces
    - `module.json`: Updates name, alias, and provider paths
    - Service Provider: Updates namespace, class name, and properties
6. **Cleans up**:
    - Removes `.git` directory if it exists
    - Removes `vendor` directory if it exists
    - Removes the `ModuleBuildCommand` from the new module
7. **Registers the module**:
    - Updates `modules_statuses.json` to enable the new module
8. **Updates autoloader**:
    - Runs `composer dump-autoload` to register the new namespaces

### After Creation

[](#after-creation)

Once your new module is created, it will be:

1. Properly registered in the system
2. Ready for development
3. Accessible through its namespace (`Modules\YourModuleName`)

You can then start adding your specific functionality to the new module!

Best Practices
--------------

[](#best-practices)

- Use the module-build command to ensure consistency across all modules
- Maintain the standard directory structure for new modules
- Follow the naming conventions established by the Skeleton module

Example
-------

[](#example)

To create a new "Reports" module:

```
php artisan module-build --name=Reports
```

This will create a fully functional Reports module with all necessary files and configurations.

Testing
-------

[](#testing)

```
composer test
```

Changelog
---------

[](#changelog)

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

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

[](#contributing)

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

Security Vulnerabilities
------------------------

[](#security-vulnerabilities)

Please review [our security policy](../../security/policy) on how to report security vulnerabilities.

Credits
-------

[](#credits)

- [Elias Olivtradet](https://github.com/edeoliv)
- [All Contributors](../../contributors)

License
-------

[](#license)

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

Support
-------

[](#support)

If you discover any issues or have questions, please [open an issue](https://github.com/e2tmk/skeleton-module/issues) on GitHub.

###  Health Score

35

—

LowBetter than 77% of packages

Maintenance75

Regular maintenance activity

Popularity4

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity44

Maturing project, gaining track record

 Bus Factor2

2 contributors hold 50%+ of commits

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

Total

5

Last Release

246d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/20531676?v=4)[olivtradet](/maintainers/olivtradet)[@olivtradet](https://github.com/olivtradet)

---

Top Contributors

[![andrefelipe18](https://avatars.githubusercontent.com/u/96439642?v=4)](https://github.com/andrefelipe18 "andrefelipe18 (9 commits)")[![edeoliv](https://avatars.githubusercontent.com/u/76831154?v=4)](https://github.com/edeoliv "edeoliv (9 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (2 commits)")[![github-actions[bot]](https://avatars.githubusercontent.com/in/15368?v=4)](https://github.com/github-actions[bot] "github-actions[bot] (1 commits)")

---

Tags

filamentphp-4laravel-modulesmodule-manager

### Embed Badge

![Health badge](/badges/e2tmk-skeleton-module/health.svg)

```
[![Health](https://phpackages.com/badges/e2tmk-skeleton-module/health.svg)](https://phpackages.com/packages/e2tmk-skeleton-module)
```

###  Alternatives

[laravel/dusk

Laravel Dusk provides simple end-to-end testing and browser automation.

1.9k39.6M299](/packages/laravel-dusk)[devdojo/wave

Wave SaaS Starter Kit

6.5k1.1k](/packages/devdojo-wave)[nineinchnick/edatatables

Grid widget for the Yii Framework, wrapper for the DataTables jQuery plugin

173.2k](/packages/nineinchnick-edatatables)[link-cloud/fast-hyperf

LinkCloud Fast Hyperf

241.2k1](/packages/link-cloud-fast-hyperf)

PHPackages © 2026

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