PHPackages                             otas/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. [API Development](/categories/api)
4. /
5. otas/microservice

ActiveLibrary[API Development](/categories/api)

otas/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.0.0(2mo ago)028↓50%1proprietaryPHP

Since May 20Pushed 2mo agoCompare

[ Source](https://github.com/SolutionPlus-net/otas_micro_service_package)[ Packagist](https://packagist.org/packages/otas/microservice)[ RSS](/packages/otas-microservice/feed)WikiDiscussions master Synced 3w ago

READMEChangelog (1)Dependencies (4)Versions (2)Used By (1)

Otas/MicroService
=================

[](#otasmicroservice)

otas/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 otas/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' => \Otas\MicroService\Http\Middleware\MicroServiceMiddleware::class,
    'micro-service-establish-connection' => \Otas\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)

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

###  Health Score

36

—

LowBetter than 79% of packages

Maintenance88

Actively maintained with recent releases

Popularity9

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity33

Early-stage or recently created project

 Bus Factor1

Top contributor holds 84.6% 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

Unknown

Total

1

Last Release

65d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/12228974?v=4)[solutionplus](/maintainers/solutionplus)[@solutionplus](https://github.com/solutionplus)

---

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 (8 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/otas-microservice/health.svg)

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

###  Alternatives

[statamic/cms

The Statamic CMS Core Package

4.8k3.6M1.0k](/packages/statamic-cms)[darkaonline/l5-swagger

OpenApi or Swagger integration to Laravel

2.9k37.6M141](/packages/darkaonline-l5-swagger)[knuckleswtf/scribe

Generate API documentation for humans from your Laravel codebase.✍

2.3k14.2M63](/packages/knuckleswtf-scribe)[duncanmcclean/statamic-cargo

Comprehensive e-commerce addon for Statamic. Build bespoke e-commerce sites without the complexity.

3518.3k](/packages/duncanmcclean-statamic-cargo)[scriptdevelop/whatsapp-manager

Paquete para manejo de WhatsApp Business API en Laravel

783.8k](/packages/scriptdevelop-whatsapp-manager)[weapnl/laravel-junction

Easily create a REST API with extended functionality, such as eager loading, searching, filtering, and more.

2214.3k](/packages/weapnl-laravel-junction)

PHPackages © 2026

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