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

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

smony/module
============

Generate modules

1.1.0(1y ago)06MITPHPPHP ^8.0

Since Sep 29Pushed 1y ago1 watchersCompare

[ Source](https://github.com/Smony/module)[ Packagist](https://packagist.org/packages/smony/module)[ RSS](/packages/smony-module/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)Dependencies (2)Versions (3)Used By (0)

Module Package for Laravel 11
=============================

[](#module-package-for-laravel-11)

This package provides a simple way to create and manage modules in Laravel 11. It offers a modular architecture that allows developers to separate functionality into independent modules, making the application more scalable and maintainable.

Features
--------

[](#features)

- **Create Modules**: Easily generate new modules using a command.
- **Manage Module Status**: Enable or disable modules through the `enabled_modules.json` file.
- **Auto Register Routes**: Automatically load web and API routes for each module.
- **Versioning Support**: Track module versions via the `module.json` file.
- **Migration Support**: Automatically register and run migrations for modules.
- **Customizable Module Directory**: You can set a custom directory for storing modules via the `module.php` configuration file.
- **View All Modules**: Use a command to list all modules with their status and version.

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

[](#installation)

1. Add the package to your `composer.json` file:

    ```
    composer require smony/module
    ```
2. Publish the configuration file:

    ```
    php artisan vendor:publish --tag=config
    ```
3. Create your first module using the built-in command:

    ```
    php artisan make:module {ModuleName}
    ```

    This will create a new module with its own structure, including routes, controllers, migrations, and more.

Basic Usage
-----------

[](#basic-usage)

### Creating a Module

[](#creating-a-module)

To create a new module, use the following command:

```
php artisan make:module {ModuleName}
```

This will create a folder inside the `Modules` directory (or a custom directory, if configured) with the following structure:

```
Modules/
    ModuleName/
        Controllers/
        Routes/
        Database/
        Providers/
        module.json

```

### Viewing All Modules

[](#viewing-all-modules)

You can list all modules, their status, and their version using:

```
php artisan module:list
```

This command will display a table with information about each module.

### Enable or Disable a Module

[](#enable-or-disable-a-module)

Modules are managed through the `enabled_modules.json` file located in the root directory. To disable a module, simply set its status to `false`:

```
{
    "ModuleName": true,
    "AnotherModule": false
}
```

### Customizing Module Directory

[](#customizing-module-directory)

By default, modules are created inside the `Modules` directory. You can change this by updating the `module.php` configuration file.

Future Plans
------------

[](#future-plans)

- Add more customizable commands for module creation.
- Improve the versioning system and compatibility checking.
- Add tests for better package stability.
- Add more features like modular middleware and more advanced routing.

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

[](#contributing)

Feel free to contribute to this project! Fork, create a feature branch, and submit a pull request.

License
-------

[](#license)

This package is open-sourced software licensed under the MIT license.

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance36

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community4

Small or concentrated contributor base

Maturity45

Maturing project, gaining track record

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

Total

2

Last Release

596d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/829dd222d51ab9b4ea78f272ea0b844e255eea0f3d90f70db9dcb266c848c709?d=identicon)[Smony](/maintainers/Smony)

### Embed Badge

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

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

###  Alternatives

[spatie/laravel-livewire-wizard

Build wizards using Livewire

4061.0M4](/packages/spatie-laravel-livewire-wizard)[nativephp/mobile

NativePHP for Mobile

82724.0k43](/packages/nativephp-mobile)[tonysm/importmap-laravel

Use ESM with importmap to manage modern JavaScript in Laravel without transpiling or bundling.

148399.8k1](/packages/tonysm-importmap-laravel)[bezhansalleh/filament-google-analytics

Google Analytics integration for FilamentPHP

205144.8k5](/packages/bezhansalleh-filament-google-analytics)[kirschbaum-development/commentions

A package to allow you to create comments, tag users and more

12369.2k](/packages/kirschbaum-development-commentions)[laracraft-tech/laravel-useful-additions

A collection of useful Laravel additions!

58109.4k](/packages/laracraft-tech-laravel-useful-additions)

PHPackages © 2026

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