PHPackages                             risetechapps/has-uuid-for-laravel - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. risetechapps/has-uuid-for-laravel

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

risetechapps/has-uuid-for-laravel
=================================

Has Uuid Laravel

1.2.0(2mo ago)0476↓63.5%6MITPHPPHP ^8.3

Since Nov 27Pushed 2mo ago1 watchersCompare

[ Source](https://github.com/risetechapps/has-uuid-for-laravel)[ Packagist](https://packagist.org/packages/risetechapps/has-uuid-for-laravel)[ Docs](https://github.com/risetechapps/has-uuid-for-laravel)[ RSS](/packages/risetechapps-has-uuid-for-laravel/feed)WikiDiscussions main Synced 3w ago

READMEChangelogDependencies (8)Versions (5)Used By (6)

Laravel Has UUID for Laravel
============================

[](#laravel-has-uuid-for-laravel)

📌 Sobre o projeto
-----------------

[](#-sobre-o-projeto)

O **Laravel Has UUID** é um pacote enxuto que adiciona uma única trait para gerar automaticamente chaves primárias do tipo UUID em modelos Eloquent. Ele é ideal para projetos que desejam substituir IDs auto incrementais por identificadores universais sem repetir código.

✨ Funcionalidades
-----------------

[](#-funcionalidades)

- 🔄 **Geração automática de UUID**: atribui um UUID v4 ou v7 sempre que um modelo é criado e ainda não possui um valor definido para a chave primária.
- 🔐 **Configuração adequada do modelo**: força o uso de chaves não incrementais e do tipo `string`, requisitos essenciais para trabalhar com UUIDs no Eloquent.

---

🚀 Instalação
------------

[](#-instalação)

### 1️⃣ Requisitos

[](#1️⃣-requisitos)

Certifique-se de que seu projeto atende aos seguintes requisitos:

- PHP &gt;= 8.3
- Laravel 12.x
- Composer instalado

### 2️⃣ Instalação do pacote

[](#2️⃣-instalação-do-pacote)

Execute o comando abaixo no terminal:

```
  composer require risetechapps/has-uuid-for-laravel
```

### 3️⃣ Configure sua migration

[](#3️⃣-configure-sua-migration)

Crie a migration com chave primária do tipo `string`:

```
Schema::create('clients', function (Blueprint $table) {
    $table->string('id')->primary();
    $table->string('name');
    $table->timestamps();
});
```

### 4️⃣ Configure seu model

[](#4️⃣-configure-seu-model)

Adicione a trait `HasUuid` ao seu modelo Eloquent:

```
use Illuminate\Database\Eloquent\Model;
use RiseTechApps\HasUuid\Traits\HasUuid;

class Client extends Model
{
    use HasUuid;

    protected $fillable = ['name'];
}
```

A trait irá preencher automaticamente a chave primária com um UUID caso você não defina um valor manualmente.

---

🔎 Métodos de Busca por UUID
---------------------------

[](#-métodos-de-busca-por-uuid)

A trait adiciona métodos convenientes para buscar modelos pelo UUID:

```
// Busca por UUID - lança exceção se não encontrar
$client = Client::findByUuid('550e8400-e29b-41d4-a716-446655440000');

// Busca por UUID - retorna null se não encontrar
$client = Client::findByUuidOrNull('550e8400-e29b-41d4-a716-446655440000');

// Usando scope
$client = Client::byUuid('550e8400-e29b-41d4-a716-446655440000')->first();
```

---

🛠 Contribuição
--------------

[](#-contribuição)

Sinta-se à vontade para contribuir! Basta seguir estes passos:

1. Faça um fork do repositório
2. Crie uma branch (`feature/minha-melhoria`)
3. Faça um commit das suas alterações
4. Envie um Pull Request

---

📜 Licença
---------

[](#-licença)

Este projeto é distribuído sob a licença MIT. Veja o arquivo [LICENSE](LICENSE.md) para mais detalhes.

---

💡 **Desenvolvido por [Rise Tech](https://risetech.com.br)**

###  Health Score

46

—

FairBetter than 92% of packages

Maintenance88

Actively maintained with recent releases

Popularity16

Limited adoption so far

Community17

Small or concentrated contributor base

Maturity57

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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 ~86 days

Total

3

Last Release

61d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/160299136?v=4)[Rise Tech](/maintainers/risetechapps)[@risetechapps](https://github.com/risetechapps)

---

Top Contributors

[![risetechapps](https://avatars.githubusercontent.com/u/160299136?v=4)](https://github.com/risetechapps "risetechapps (34 commits)")

---

Tags

laraveluuidrisetech

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Code StyleLaravel Pint

Type Coverage Yes

### Embed Badge

![Health badge](/badges/risetechapps-has-uuid-for-laravel/health.svg)

```
[![Health](https://phpackages.com/badges/risetechapps-has-uuid-for-laravel/health.svg)](https://phpackages.com/packages/risetechapps-has-uuid-for-laravel)
```

###  Alternatives

[webpatser/laravel-uuid

Laravel integration for webpatser/uuid - High-performance drop-in UUID replacements (15% faster than Ramsey). Provides Str macros, HasUuids trait, facades, and casts. RFC 4122/9562 compliant.

1.8k17.7M135](/packages/webpatser-laravel-uuid)[psalm/plugin-laravel

Psalm plugin for Laravel

3345.1M337](/packages/psalm-plugin-laravel)[renatomarinho/laravel-page-speed

Laravel Page Speed

2.5k1.7M11](/packages/renatomarinho-laravel-page-speed)[vinkius-labs/laravel-page-speed

Laravel Page Speed

2.5k9.6k1](/packages/vinkius-labs-laravel-page-speed)[emargareten/inertia-modal

Inertia Modal is a Laravel package that lets you implement backend-driven modal dialogs for Inertia apps.

90128.1k](/packages/emargareten-inertia-modal)[linkxtr/laravel-qrcode

A clean, modern, and easy-to-use QR code generator for Laravel

3614.9k](/packages/linkxtr-laravel-qrcode)

PHPackages © 2026

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