PHPackages                             solutionplus/microservice - 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. [HTTP &amp; Networking](/categories/http)
4. /
5. solutionplus/microservice

ActiveLibrary[HTTP &amp; Networking](/categories/http)

solutionplus/microservice
=========================

a laravel package to deal with specific case of micro-services connection. So, it doesn't suit all needs or handle all connection cases

1.4.6(11mo ago)35423[1 PRs](https://github.com/ah-mabrouk/otas_micro_service_package/pulls)1proprietaryPHP

Since Feb 20Pushed 11mo ago1 watchersCompare

[ Source](https://github.com/ah-mabrouk/otas_micro_service_package)[ Packagist](https://packagist.org/packages/solutionplus/microservice)[ RSS](/packages/solutionplus-microservice/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)Dependencies (4)Versions (39)Used By (1)

Solutionplus/MicroService
=========================

[](#solutionplusmicroservice)

solutionplus/microservice is a Laravel package for dealing with specific case of micro-services connection so, it doesn't suit all needs or handle all connection cases.

Table of Content
----------------

[](#table-of-content)

[Installation](#Installation)

[Usage](#Usage)

[License](#License)

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

[](#installation)

You can install the package using composer

```
# cli commands

composer require solutionplus/microservice

php artisan ms:install
```

#### Important:

[](#important)

> Don't forget to modify the added env key `MS_GLOBAL_PROJECT_SECRET` to exactly match all other microservices projects `MS_GLOBAL_PROJECT_SECRET` then run:

```
php artisan config:cache
```

- Then apply `micro-service` on the routes group you will create to communicate with other microservices

```
Route::group([
    'middleware' => [
        'micro-service',
    ]
], function () {
    // routes communicates with other microservices goes here
});
```

usage
-----

[](#usage)

There is some predefined methods that will help you communicate with other services shown below:

```
// EX: $microserviceName = 'payment';
// EX: $uri = 'license-payments' || 'orders' ...etc;
// EX: $origin = 'payment.com';

// `$params` and `$data` should be ['key' => 'value'] pair array
// which represent query string in get requests or inputs in post requests

$response = MsHttp::get($microserviceName, $uri, $params = []);

$response = MsHttp::post($microserviceName, $uri, $data = []);

$response = MsHttp::put($microserviceName, $uri, $data = []);

$response = MsHttp::delete($microserviceName, $uri); // Not finished yet

$response = MsHttp::establish($microserviceName, $origin, $localPort);
```

The above methods are must to be used if you need to encrypt requests between micro-services

#### Note:

[](#note)

> in case the middlewares are not auto discovered then follow the next steps:

- add both middlewares `micro-service` and `micro-service-establish-connection` to `$routeMiddleware` array inside `kernel.php` file like so:

```
# In kernel.php file

/**
 * The application's route middleware.
 *
 * These middleware may be assigned to groups or used individually.
 *
 * @var array
 */
protected $routeMiddleware = [
    //
    'micro-service' => \Solutionplus\MicroService\Http\Middleware\MicroServiceMiddleware::class,
    'micro-service-establish-connection' => \Solutionplus\MicroService\Http\Middleware\MicroServiceEstablishConnectionMiddleware::class,
];
```

Using `micro-service` middleware on micro-services routes group is a must as it's responsible about decoding requests in order to make you deal with it as you usually do. Otherwise it will lead to unexpected results.

#### Note:

[](#note-1)

> Don't use `micro-service-establish-connection` on any request yourself. It's already running on the predefined`micro-services` `store` route.

#### Note:

[](#note-2)

> UNDER CONSTRUCTION.

License
-------

[](#license)

Solutionplus/MicroService package is limited and proprietary software belongs to Solutionplus.net company.

###  Health Score

37

—

LowBetter than 83% of packages

Maintenance50

Moderate activity, may be stable

Popularity18

Limited adoption so far

Community15

Small or concentrated contributor base

Maturity57

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 87.3% of commits — single point of failure

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

Recently: every ~68 days

Total

36

Last Release

357d ago

Major Versions

0.0.1 → 1.0.02023-03-13

### Community

Maintainers

![](https://www.gravatar.com/avatar/ae1caf4ecd93c7c892c1bacb1a4a4915b070f4af8db722eef91795d1ccf997a7?d=identicon)[a.mabrouk](/maintainers/a.mabrouk)

---

Top Contributors

[![ah-mabrouk](https://avatars.githubusercontent.com/u/22894638?v=4)](https://github.com/ah-mabrouk "ah-mabrouk (55 commits)")[![omar-ashraf-s](https://avatars.githubusercontent.com/u/175690905?v=4)](https://github.com/omar-ashraf-s "omar-ashraf-s (6 commits)")[![ahmed-mabrouk-otas](https://avatars.githubusercontent.com/u/209609289?v=4)](https://github.com/ahmed-mabrouk-otas "ahmed-mabrouk-otas (2 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/solutionplus-microservice/health.svg)

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

###  Alternatives

[binaryk/laravel-restify

Laravel REST API helpers

651399.1k](/packages/binaryk-laravel-restify)[namu/wirechat

A Laravel Livewire messaging app for teams with private chats and group conversations.

54324.5k](/packages/namu-wirechat)[lomkit/laravel-rest-api

A package to build quick and robust rest api for the Laravel framework.

59152.2k](/packages/lomkit-laravel-rest-api)[wirechat/wirechat

A Laravel Livewire messaging app for teams with private chats and group conversations.

5434.7k](/packages/wirechat-wirechat)[api-platform/laravel

API Platform support for Laravel

59126.4k6](/packages/api-platform-laravel)[georgeboot/laravel-echo-api-gateway

Use Laravel Echo with API Gateway Websockets

10435.5k](/packages/georgeboot-laravel-echo-api-gateway)

PHPackages © 2026

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