PHPackages                             goodcatch/laravel-modules - 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. goodcatch/laravel-modules

ActiveLibrary

goodcatch/laravel-modules
=========================

Laravel Modules development

0.1.0(4y ago)11161MITPHPPHP &gt;=7.3

Since Sep 22Pushed 3y ago1 watchersCompare

[ Source](https://github.com/allenwakeup/laravel-modules)[ Packagist](https://packagist.org/packages/goodcatch/laravel-modules)[ RSS](/packages/goodcatch-laravel-modules/feed)WikiDiscussions master Synced today

READMEChangelogDependencies (4)Versions (2)Used By (1)

Laravel Modules extension
=========================

[](#laravel-modules-extension)

based on project [nwidart/laravel-modules](https://github.com/nwidart/laravel-modules)

Introduction
------------

[](#introduction)

The Goodcatch Laravel Modules library overwrite "nwidart/laravel-modules" service provider.

It extends "nwidart/laravel-modules" library, provide database activator.

Because of Laravel Package Discovery, "nwidart/laravel-modules" has been listed in composer.json.

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

[](#installation)

There might be a little bit more complicated things to do.

```
* add required php composer library
* do minor changes to laravel application
* initialize application
* add first goodcatch laravel-module 'Core'
* getting started development

```

### install library

[](#install-library)

```
composer require goodcatch/laravel-modules
```

### modify Application

[](#modify-application)

find file **/path\_to\_project/bootstrap/app.php**

change Kernel from app kernel to goodcatch kernel

for example

```
// ...

$app->singleton(
    Illuminate\Contracts\Console\Kernel::class,
    Goodcatch\Modules\Laravel\Console\Kernel::class
);

// ...
```

### for mcamara/laravel-localization

[](#for-mcamaralaravel-localization)

```
make sure Laravel Localization default local is 'en' if no Laravel Localization supported locals
in project configuration file 'project/config/laravellocalization.php' presents.

```

```
// ...

return [

    /*
    |--------------------------------------------------------------------------
    | Application Locale Configuration
    |--------------------------------------------------------------------------
    |
    | The application locale determines the default locale that will be used
    | by the translation service provider. You are free to set this value
    | to any of the locales which will be supported by the application.
    |
    */

    'locale' => 'en',
];

// ...
```

```
make sure laravel-localization is configured to laravel http kernel

```

```
// ...
class Kernel extends HttpKernel
{

// ...

    /**
     * The application's route middleware.
     *
     * These middleware may be assigned to groups or used individually.
     *
     * @var array
     */
    protected $routeMiddleware = [

        // ...

        // localization

        'localize'                => \Mcamara\LaravelLocalization\Middleware\LaravelLocalizationRoutes::class,
        'localizationRedirect'    => \Mcamara\LaravelLocalization\Middleware\LaravelLocalizationRedirectFilter::class,
        'localeSessionRedirect'   => \Mcamara\LaravelLocalization\Middleware\LocaleSessionRedirect::class,
        'localeCookieRedirect'    => \Mcamara\LaravelLocalization\Middleware\LocaleCookieRedirect::class,
        'localeViewPath'          => \Goodcatch\Modules\Laravel\Http\Middleware\LocalizationViewPath::class

        // ...

    ];

// ...

}
```

### Autoloading

[](#autoloading)

By default the module classes are not loaded automatically. You can autoload your modules using `psr-4` if modules are placed in different folder. For example:

```
{
  "autoload": {
    "psr-4": {
      "App\\": "app/",
      "Goodcatch\\Modules\\": "storage/app/modules"
    }
  }
}
```

**Note: don't forget to make sure the folder 'storage/app/modules' exists or checkout environment configuration name 'MODULE\_INSTALL\_PATH'**.

**Tip: don't forget to run `composer dump-autoload` afterwards.**

### module admin pages

[](#module-admin-pages)

Goodcatch Modules providers admin page to show modules list and disable/enable module if you want it.

first of all, generate tables and then install them.

```
php artisan goodcatch:table

php artisan migrate

php artisan goodcatch:cache
```

open modules admin page:

### install the first module Core

[](#install-the-first-module-core)

```
composer require goodcatch/laravel-module-core

php artisan module:migrate core --seed
```

checkout modules admin page, there will be a module named 'Core'.

Getting stated with development
-------------------------------

[](#getting-stated-with-development)

### have not created any module yet, create it at first

[](#have-not-created-any-module-yet-create-it-at-first)

Create first new module, the name is 'core'

```
php artisan module:make core

```

### Environments

[](#environments)

```
# optional that pre-append module route path in url
# default to: m
MODULE_ROUTE_PREFIX=m

# optional that change the default modules path from app/Modules to new path
# default to: storage/app/modules
MODULE_INSTALL_PATH=storage/app/modules

# optional that update module
# default to: https://laravel-modules.goodcatch.cn/dl?p=%s&n=%s&v=%s&s=%s
MODULE_INSTALL_REPO_URL=https://laravel-modules.goodcatch.cn/dl?p=%s&n=%s&v=%s&s=%s

# optional that indicate base project that laravel-modules is going to work with
MODULE_INTEGRATE=

```

Licensed under [The MIT License (MIT)](LICENSE).

###  Health Score

20

—

LowBetter than 14% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity12

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity35

Early-stage or recently created project

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

1691d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/7d2591286728fbc498decd82dc3b6707bf80ee949c6ef132406e35498cc1c990?d=identicon)[allenwakeup](/maintainers/allenwakeup)

### Embed Badge

![Health badge](/badges/goodcatch-laravel-modules/health.svg)

```
[![Health](https://phpackages.com/badges/goodcatch-laravel-modules/health.svg)](https://phpackages.com/packages/goodcatch-laravel-modules)
```

###  Alternatives

[mhmiton/laravel-modules-livewire

Using Laravel Livewire in Laravel Modules package with automatically registered livewire components for every modules.

236409.6k9](/packages/mhmiton-laravel-modules-livewire)[asgardcms/platform

The AsgardCms application.

78860.8k](/packages/asgardcms-platform)[coolsam/modules

Organize your Filament Code into modules using nwidart/laravel-modules

20195.1k4](/packages/coolsam-modules)[savannabits/filament-modules

Organize your Filament Code into modules using nwidart/laravel-modules

2014.3k](/packages/savannabits-filament-modules)[tomatophp/filament-plugins

Manage your modules as a plugin system with plugin generator

644.7k2](/packages/tomatophp-filament-plugins)[houdunwang/laravel-module

laravel modules

531.9k](/packages/houdunwang-laravel-module)

PHPackages © 2026

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