Skip to content
This documentation is in construction.

Publish your module

Once your module is completed, you can distribute it as an installable Composer package.


  1. Refer to the official guide on Laravel Package Development to structure your module as a standalone package. This includes:

    • Creating a separate package directory
    • Defining a dedicated composer.json
    • Moving your module’s Service Provider and related files into the package
    • Adding autoloading rules

  2. Ensure your package declares all necessary dependencies:

    "require": {
    "php": "^8.3",
    "illuminate/support": "^12.8",
    "epsicube/support": "*"
    }
  3. This section allows Epsicube to automatically detect and register your module:

    "extra": {
    "epsicube": {
    "modules": [
    "YourModuleNamespace\\YourModule"
    ]
    }
    }
  4. Your Composer package must be hosted in a Git repository (GitHub, GitLab, Bitbucket, etc.). Make sure to include:

    • A valid composer.json
    • A tagged version (git tag v0.0.1 && git push --tags)
    • PSR-4 autoloading

  5. Once published, you can install it like any standard Composer dependency:

    Terminal window
    composer require vendor/your-module-package
  6. After installation:

    • Epsicube will automatically detect your module via the extra.epsicube.modules section
    • Your module will be listed in php artisan modules:status
    • If needed, enable it explicitly:
    Terminal window
    php artisan modules:enable {identifier}

You can now distribute your module across multiple projects, version it, and maintain it as a standalone package.