Download the PHP package dem1-off/laravel-modular without Composer

On this page you can find all versions of the php package dem1-off/laravel-modular. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package laravel-modular

dem1-off/laravel-modular

Latest Version on Packagist Tests Total Downloads PHP Version

Modular architecture tooling for Laravel. DDD modules (Domain / Application / Infrastructure) that are real Composer packages from day one, so any module can be promoted to a standalone package with zero code churn.

Highlights

A module at a glance

Installation

config/modules.php uses conventional module config keys (namespace, paths, statuses_file), so an existing modular project migrates without editing modules.

Creating a module

Produces a promotion-ready package:

Prefer to start with nothing? --layout=clean scaffolds a namespace and a provider, and nothing else — every convention folder is opt-in, and one you never add costs nothing at boot:

Presets: ddd (default), simple, contracts, clean.

Configuring a module

Convention loads, attributes wire. Config, migrations, views, routes, translations and artisan commands (from Console/ directories) load automatically when their folders exist. Declare container bindings and listeners with attributes:

Need more than attributes? Override register()/boot() and call the parent — it's a normal Laravel provider. See the docs.

Performance

Attributes reflect in development. In production, php artisan module:cache compiles discovery, attributes and each module's resolved convention folders into one PHP file — a request does zero reflection, zero filesystem scanning and no stat calls per module. It's wired into php artisan optimize, and the usual cached-artifact rule applies: add a routes/ or lang/ folder to a module and rebuild the cache for it to take effect.

Runtime API

Customising behaviour

A module provider is a normal Laravel ServiceProvider. For anything beyond attributes, override register()/boot() and call the parent:

Keep anything proprietary (navigation, mailing, metrics, …) in your application, invoked from the module's boot() — never inside this package.

Promoting a module to a standalone package

Because a module is already a Composer package and its namespace (Modules\Blog\) never changes, promotion is mechanical:

  1. Move the directory to its own git repo

  2. Point the app at it via Composer — swap the path entry for a VCS/version constraint in the root composer.json:

  3. composer update acme/blog-module — done.

No namespace changes, no provider rewrites: Laravel package auto-discovery reads extra.laravel.providers from the module's own composer.json, exactly as it did in-app. Tests, static-analysis config, and the module_path() helper all keep working because the module's internal layout is unchanged.

Tip: develop with "type": "path" + "url": "Modules/*" and "symlink": true so in-app modules and promoted packages behave identically during development.

License

MIT.


All versions of laravel-modular with dependencies

PHP Build Version
Package Version
Requires php Version ^8.3
illuminate/support Version ^11.0|^12.0|^13.0
illuminate/console Version ^11.0|^12.0|^13.0
illuminate/filesystem Version ^11.0|^12.0|^13.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package dem1-off/laravel-modular contains the following files

Loading the files please wait ...