omegaalfa / utils
A lightweight, zero-dependency PHP utility package designed to provide essential helper functions for small scripts, microservices, and CLI applications.
Requires
- php: >=8.4
- ext-intl: *
- ext-mbstring: *
Requires (Dev)
- phpstan/phpstan: ^2.0
- phpunit/phpunit: ^11.0 || ^12.0
- roave/security-advisories: dev-latest
This package is not auto-updated.
Last update: 2026-08-03 00:00:47 UTC
README
Omegaalfa Utils
Utilitários PHP pequenos, tipados e sem dependências de runtime.
Um ecossistema modular para scripts, aplicações CLI e microsserviços.
Visão geral
O Omegaalfa Utils reúne componentes independentes para problemas recorrentes de infraestrutura PHP. O projeto prioriza APIs pequenas, comportamento explícito e baixo custo de adoção.
Cada módulo possui responsabilidade e documentação próprias. Você pode usar somente as APIs necessárias; nenhum framework, container ou ciclo de vida global é imposto pelo pacote.
Instalação
Todos os módulos são distribuídos atualmente pelo mesmo pacote Composer:
composer require omegaalfa/utils
Requisitos:
| Requisito | Versão |
|---|---|
| PHP | 8.4 ou superior |
| Extensões obrigatórias adicionais | intl e mbstring |
| Dependências de runtime | Nenhuma |
| Autoload | PSR-4; helpers globais são opt-in |
Módulos
| Módulo | Responsabilidade | Use quando | Documentação |
|---|---|---|---|
| EnvLoader | Ler configuração de arquivos .env confiáveis |
Scripts, CLIs e desenvolvimento local precisam carregar variáveis | Guia do EnvLoader |
| Stream | Encapsular resources nativos com leitura incremental | Você precisa manipular arquivos, memória, linhas ou CSV sem carregar tudo | Guia de Stream |
| Session | Gerenciar a sessão nativa preservando tipos | Uma aplicação HTTP pequena precisa de uma API previsível sobre $_SESSION |
Guia de Session |
| Helpers | Funções opcionais de texto, JSON e validação | Um script aceita importar explicitamente funções globais | Guia de Helpers |
| Debug | Dump tipado com atalhos globais opcionais | Você precisa inspecionar valores durante o desenvolvimento | Guia de Debug |
| Clock | Tempo atual injetável e determinístico | Regras temporais precisam ser testadas sem depender do relógio real | Guia de Clock |
| LazyObject | Fachada tipada sobre lazy objects nativos | Construção ou hidratação cara deve ocorrer somente no primeiro uso | Guia de LazyObject |
| ScriptRunner | Descobrir e executar scripts PHP por menu seguro | Rotinas locais precisam de navegação, isolamento e captura de resultado | Guia de ScriptRunner |
| String Utils | Operações estáticas otimizadas de string | Você precisa de consultas, slug, truncamento, random ou máscara | Guia de String Utils |
| Lock | Exclusão mútua entre processos locais | Uma operação não pode executar simultaneamente | Guia de Lock |
| Profiler | Tempo, memória, chamadas e etapas | Você precisa localizar gargalos com dados reais | Guia de Profiler |
| Filesystem | Arquivos e diretórios com raiz isolada e operações previsíveis | Você precisa controlar caminhos, escrita, cópia, movimentação ou streams | Guia de Filesystem |
| UUID e ULID | Identificadores únicos e ordenáveis por tempo | Você precisa gerar IDs sem depender do banco de dados | Guia de UUID e ULID |
| Retry | Repetição controlada de operações temporariamente instáveis | APIs, bancos ou filas podem falhar de forma transitória | Guia de Retry |
| CLI | Comandos, argumentos, opções e saída de terminal | Você precisa estruturar ferramentas de linha de comando pequenas | Guia de CLI |
| DTO | Objetos imutáveis e tipados para transporte de dados | Arrays sem contrato precisam virar dados previsíveis entre camadas | Guia de DTO |
Escolha rápida
flowchart TD
A[Qual problema preciso resolver?]
A -->|Configuração .env| B[EnvLoader]
A -->|I/O incremental| C[Stream]
A -->|Estado HTTP por usuário| D[Session]
A -->|Transformação pequena| F[Helpers]
A -->|String otimizada| G[Str]
A -->|Evitar execução simultânea| H[Lock]
A -->|Localizar gargalos| I[Profiler]
A -->|Operar arquivos com segurança| J[Filesystem]
A -->|Gerar identificadores| K[UUID e ULID]
A -->|Repetir falhas temporárias| L[Retry]
A -->|Criar comandos| M[CLI]
A -->|Transportar dados tipados| N[DTO]
A -->|Inspecionar valores| O[Debug]
A -->|Controlar o tempo em testes| P[Clock]
A -->|Adiar construção de objetos| Q[LazyObject]
A -->|Executar scripts por menu| R[ScriptRunner]
Loading
Important
Os módulos permanecem no mesmo pacote Composer; instale omegaalfa/utils e importe somente as APIs desejadas.
Os requisitos de ambiente são compartilhados enquanto os módulos estiverem no mesmo pacote. Helpers globais não são registrados automaticamente.
Princípios do ecossistema
- zero dependências em produção;
- tipos estritos e PHP moderno;
- namespaces PSR-4 sob
Omegaalfa\Utils; - falhas explícitas por exceptions;
- processamento incremental quando aplicável;
- ausência de integração obrigatória com frameworks;
- testes automatizados e PHPStan no nível máximo.
Desenvolvimento
composer install composer check composer test:coverage composer audit
composer check executa análise estática e testes. Mudanças de comportamento devem incluir testes e atualização do README do módulo afetado.
Contribuição
Antes de propor um novo módulo, confirme que ele:
- resolve uma responsabilidade pequena e bem definida;
- não duplica uma solução nativa simples sem ganho claro;
- não introduz dependência de runtime sem justificativa;
- possui contratos tipados, testes e documentação independente;
- não mistura responsabilidades de outro módulo.
Abra uma issue para discutir alterações amplas. Pull requests devem passar por composer check e composer audit.
Licença
Distribuído sob a licença MIT.