PHPackages                             bildvitta/iss-sdk - 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. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. bildvitta/iss-sdk

ActiveLibrary[Authentication &amp; Authorization](/categories/authentication)

bildvitta/iss-sdk
=================

This package is used to communicate with the permission and authentication microservice.

v0.2.0(3w ago)224.8k↓26.6%[2 PRs](https://github.com/appnave/nave-sdk-iss/pulls)3MITPHPPHP ^8.0|^8.1|^8.2|^8.3

Since May 3Pushed 1w ago6 watchersCompare

[ Source](https://github.com/appnave/nave-sdk-iss)[ Packagist](https://packagist.org/packages/bildvitta/iss-sdk)[ Docs](https://github.com/appnave/nave-sdk-iss)[ RSS](/packages/bildvitta-iss-sdk/feed)WikiDiscussions master Synced today

READMEChangelog (10)Dependencies (20)Versions (158)Used By (3)

ISS SDK
=======

[](#iss-sdk)

Pacote Laravel privado para integrar a aplicação ao Hub de autenticação, permissões, usuários, empresas e notificações.

Visão geral
-----------

[](#visão-geral)

- Consome o Hub via `Illuminate\Http\Client`.
- Registra o facade `hub` e os middlewares `hub.auth`, `hub.check` e `hub.programmatic`.
- Inclui o trait `HasCompanyLinks` para o model `User`.
- Inclui o `PermissionScope` para filtros por permissão.

Requisitos
----------

[](#requisitos)

- PHP `^8.0` até `^8.3`
- Laravel compatível com `illuminate/contracts` `^8` até `^12`
- `spatie/laravel-permission`
- `ably/ably-php` para notificações

Acesso a repositórios privados
------------------------------

[](#acesso-a-repositórios-privados)

Este pacote é distribuído como repositório privado via VCS. Nos projetos Laravel consumidores, adicione o repositório no `composer.json`:

```
{
  "repositories": [
    {
      "type": "vcs",
      "url": "https://github.com/appnave/nave-sdk-iss"
    }
  ]
}
```

Depois, instale o pacote normalmente:

```
composer require appnave/nave-sdk-iss
```

Se o Composer precisar de autenticação para acessar o GitHub, configure um token localmente:

```
composer config -g github-oauth.github.com
```

No GitHub Actions, exponha o token como secret e passe `COMPOSER_AUTH`:

```
env:
  COMPOSER_AUTH: >
    {"github-oauth":{"github.com":"${{ secrets.COMPOSER_GITHUB_TOKEN }}"}}
```

Instalação local
----------------

[](#instalação-local)

```
composer require appnave/nave-sdk-iss
php artisan hub:install
```

Esse comando publica `config/hub.php`, pode publicar as migrations do Spatie e executa `migrate`.

Variáveis mais usadas:

```
MS_HUB_BASE_URI="https://hub-server.nave.dev.br"
MS_HUB_FRONT_URI="https://hub.nave.dev.br"
MS_HUB_API_PREFIX="/api"
MS_HUB_API_VERSION="1"

HUB_PROGRAMMATIC_CLIENT=
HUB_PROGRAMMATIC_SECRET=

HUB_CLIENT_ID=
HUB_CLIENT_SECRET=
HUB_REDIRECT_URI=
HUB_SCOPE=profile

MS_HUB_DB_HOST=
MS_HUB_DB_PORT=
MS_HUB_DB_DATABASE=
MS_HUB_DB_USERNAME=
MS_HUB_DB_PASSWORD=
```

Se for usar notificações:

```
ABLY_KEY=
BROADCAST_CONNECTION=ably
```

Comandos úteis
--------------

[](#comandos-úteis)

```
php artisan hub:install
php artisan hub:clean-permissions
composer check-style
composer fix-style
php artisan vendor:publish --provider="BildVitta\Hub\HubServiceProvider" --tag=hub-config
```

Documentação da API
-------------------

[](#documentação-da-api)

Não há Swagger/OpenAPI neste repositório.

As rotas publicadas pelo pacote estão em `routes/api.php`:

- `GET /api/auth/login`
- `GET /api/auth/callback`
- `GET /api/auth/logout`
- `GET /api/auth/refresh`
- `GET /api/users/me`
- `PATCH /api/users/me`
- `GET /api/users/me/edit`
- `GET /api/users/me/notifications`
- `PATCH /api/users/me/notifications`

Convenções do projeto
---------------------

[](#convenções-do-projeto)

- Em `config/permission.php`, use os models `\BildVitta\Hub\Entities\HubPermission` e `\BildVitta\Hub\Entities\HubRole` quando precisar alinhar o Spatie ao Hub.
- No model `User`, adicione `\BildVitta\Hub\Traits\User\HasCompanyLinks`; o trait já inclui `HasRoles`.
- Use o middleware `hub.auth` para autenticação do token e criação do usuário local quando necessário.
- Use o middleware `hub.check` nas rotas que exigem token válido.
- Use o middleware `hub.programmatic` quando a aplicação precisar obter token via client credentials.
- Para filtros por permissão em queries, use `\BildVitta\Hub\Scopes\PermissionScope`.
- Para notificações privadas, habilite o `BroadcastServiceProvider`, configure o canal `notifications.{uuid}` em `routes/channels.php` e use `Broadcast::routes(['middleware' => ['hub.check'], 'prefix' => 'api']);`.
- A fonte de verdade para `base_uri`, `front_uri`, `prefix` e credenciais está em `config/hub.php`.

###  Health Score

59

—

FairBetter than 98% of packages

Maintenance96

Actively maintained with recent releases

Popularity26

Limited adoption so far

Community28

Small or concentrated contributor base

Maturity76

Established project with proven stability

 Bus Factor1

Top contributor holds 55.8% 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 ~12 days

Total

147

Last Release

21d ago

PHP version history (5 changes)v0.0.1PHP ^7.4|^8.0

v0.0.21PHP ^8.0

v0.0.63PHP ^7.4|^8.0|^8.1

v0.1.11-beta.1PHP ^7.4|^8.0|^8.1|^8.2|^8.3

v0.2.0PHP ^8.0|^8.1|^8.2|^8.3

### Community

Maintainers

![](https://www.gravatar.com/avatar/57ede45a8ce528ade98fadbb32397afb6c0234f9d05caae7ac207d3b4d026af1?d=identicon)[hynzhw](/maintainers/hynzhw)

![](https://www.gravatar.com/avatar/e32e39fb848943b1a94bb2c167a2bda11eb45814ba34d539e6b1685a5de6e272?d=identicon)[michaelnakamura](/maintainers/michaelnakamura)

![](https://www.gravatar.com/avatar/ab5f117bbac50e0314758bcc25c9052dc4546568082eff672b65b128be0e2d98?d=identicon)[fabiomartins](/maintainers/fabiomartins)

![](https://www.gravatar.com/avatar/3ce1635f07565fb1531991b47d86c407b9b30955eb1871dad4ed33810aaffe88?d=identicon)[leandrohago](/maintainers/leandrohago)

---

Top Contributors

[![zerossB](https://avatars.githubusercontent.com/u/8009480?v=4)](https://github.com/zerossB "zerossB (240 commits)")[![dklbueno](https://avatars.githubusercontent.com/u/8246721?v=4)](https://github.com/dklbueno "dklbueno (48 commits)")[![michaelnakamura](https://avatars.githubusercontent.com/u/10209108?v=4)](https://github.com/michaelnakamura "michaelnakamura (39 commits)")[![leandrohago](https://avatars.githubusercontent.com/u/64143489?v=4)](https://github.com/leandrohago "leandrohago (31 commits)")[![SOSTheBlack](https://avatars.githubusercontent.com/u/5401143?v=4)](https://github.com/SOSTheBlack "SOSTheBlack (21 commits)")[![estevao-simoes](https://avatars.githubusercontent.com/u/25695293?v=4)](https://github.com/estevao-simoes "estevao-simoes (18 commits)")[![paulodavanco](https://avatars.githubusercontent.com/u/11135122?v=4)](https://github.com/paulodavanco "paulodavanco (13 commits)")[![nathanmacsantos](https://avatars.githubusercontent.com/u/93023735?v=4)](https://github.com/nathanmacsantos "nathanmacsantos (11 commits)")[![fabiomartins1](https://avatars.githubusercontent.com/u/50298479?v=4)](https://github.com/fabiomartins1 "fabiomartins1 (6 commits)")[![pauloimon](https://avatars.githubusercontent.com/u/3463932?v=4)](https://github.com/pauloimon "pauloimon (2 commits)")[![natemacs](https://avatars.githubusercontent.com/u/5554604?v=4)](https://github.com/natemacs "natemacs (1 commits)")

---

Tags

laravelhubappnavenave-sdk-iss

###  Code Quality

TestsPHPUnit

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/bildvitta-iss-sdk/health.svg)

```
[![Health](https://phpackages.com/badges/bildvitta-iss-sdk/health.svg)](https://phpackages.com/packages/bildvitta-iss-sdk)
```

###  Alternatives

[spatie/laravel-permission

Permission handling for Laravel 12 and up

12.9k102.4M1.4k](/packages/spatie-laravel-permission)[bezhansalleh/filament-shield

Filament support for `spatie/laravel-permission`.

2.8k3.9M129](/packages/bezhansalleh-filament-shield)[spatie/laravel-passkeys

Use passkeys in your Laravel app

471890.7k39](/packages/spatie-laravel-passkeys)[binary-cats/laravel-rbac

Laravel enum-backed RBAC extension of spatie/laravel-permission

7838.1k](/packages/binary-cats-laravel-rbac)[rawilk/profile-filament-plugin

Profile &amp; MFA starter kit for filament.

3914.6k](/packages/rawilk-profile-filament-plugin)[chiiya/filament-access-control

Admin user, role and permission management for Laravel Filament

21852.5k](/packages/chiiya-filament-access-control)

PHPackages © 2026

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