Download the PHP package hussiensulyman/modulate without Composer

On this page you can find all versions of the php package hussiensulyman/modulate. 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 modulate

# modulate **The pragmatic middle ground between monolith spaghetti and microservices complexity.** A Laravel package that scaffolds a clean modular monolith architecture — with enforced boundaries, self-contained modules, a built-in violation checker, and a natural extraction path to microservices when you actually need it. [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE) [![Status: Stable](https://img.shields.io/badge/status-stable-brightgreen)](https://packagist.org/packages/hussiensulyman/modulate) [![PHP: ^8.2](https://img.shields.io/badge/PHP-%5E8.2-777BB4)](https://php.net) [![Laravel: ^10|^11|^12](https://img.shields.io/badge/Laravel-%5E10%7C%5E11%7C%5E12-FF2D20)](https://laravel.com) [![Packagist Version](https://img.shields.io/packagist/v/hussiensulyman/modulate)](https://packagist.org/packages/hussiensulyman/modulate) [![Packagist Downloads](https://img.shields.io/packagist/dt/hussiensulyman/modulate)](https://packagist.org/packages/hussiensulyman/modulate) [![Tests](https://github.com/hussiensulyman/modulate/actions/workflows/tests.yml/badge.svg)](https://github.com/hussiensulyman/modulate/actions/workflows/tests.yml)

Why Modulate?

Every Laravel project eventually faces the same crossroads:

Modulate is the third option. Your app stays a single deployable unit, but internally it's divided into strict, self-contained modules that can be extracted into real microservices later — without rewriting everything.

Each module owns its routes, models, migrations, services, events, and tests. Modules talk to each other only through published contracts and events. When a module needs to become its own service, you move the folder and swap the bindings. That's it.


Requirements


Installation

New project

Run modulate:init immediately after creating a fresh Laravel project. It cleans up the default boilerplate and sets up the modular structure:

This will:

Options:

Existing project

See docs/migration-guide.md for a step-by-step incremental adoption guide.


Quickstart

Create a module

Generated structure:

Plus a root-level tests/E2E/ folder for cross-module journey tests (generated once on first modulate:make).


Flags

Preset flags

Granular control

--add available values

Value Generates
repositories Repositories/ + CourseRepositoryInterface.php in Contracts/
actions Actions/ — single-responsibility action classes
dtos DTOs/ — immutable readonly DTO classes
enums Enums/
policies Policies/ + CoursePolicy.php
dusk Dusk browser test stubs alongside HTTP E2E tests

--skip available values

events, listeners, resources, requests, migrations, tests, e2e


All Commands

Setup

Scaffolding

Module management

Health & integrity

CI with GitHub Actions

The reusable action works the same whether hussiensulyman/modulate is installed from Packagist or via a Composer path repository, as long as dependencies are installed before running the action.

Microservices

Use php artisan modulate:doctor to scan installed packages against known compatibility notes.


The Three Rules

1. Modules never touch each other's internals

2. Queries use contracts. Side effects use events.

3. Each module is self-contained

A module registers its own routes, migrations, and bindings through its ServiceProvider. No central wiring required.


The Shared Module

modulate:init generates a Shared/ module that provides base infrastructure for all other modules:

Rule: Shared contains no business logic, no routes, and no module-specific code — only infrastructure primitives.


Coupling Violation Detection

Detects:

Runs automatically on php artisan optimize when enabled. Detection combines fast regex rules and AST analysis via nikic/php-parser.


Third-Party Package Compatibility

Most Laravel packages work with Modulate without issues. The ones that generate code (Breeze, Jetstream, Filament) will place files in default Laravel locations — move them into the correct module afterward.

Packages that extend the User model (Sanctum, Spatie Permission, JWT) work fine as long as they reference the correct User class location. See docs/compatibility.md for a curated list of popular packages and their setup notes.

modulate:doctor is available and can be used in CI or locally to flag compatibility risks before deployment.


Versioning

Modulate follows Semantic Versioning. Breaking changes are always a major version bump and always come with an upgrade guide in UPGRADING.md.


Further Reading


Contributing

See CONTRIBUTING.md. Package compatibility entries in docs/compatibility.md are especially welcome as community contributions.


License

Modulate is open-sourced software licensed under the MIT license.


All versions of modulate with dependencies

PHP Build Version
Package Version
Requires php Version ^8.2
illuminate/support Version ^10.0|^11.0|^12.0
nikic/php-parser Version ^5.0
symfony/finder Version ^6.0|^7.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 hussiensulyman/modulate contains the following files

Loading the files please wait ...