Common Cast
AtomExplicit type coercers. Conversion is a decision, never an accident.
Repositories
24 open source repositories. Each one is exactly one shape: an atom, an assembly, an application or a template.
Filter by shape
24 repositories
Explicit type coercers. Conversion is a decision, never an accident.
The interfaces every commons package agrees on. Contracts only: no logic, no leaks.
Small, composable traits shared by the commons. Behaviour you can attach, not inherit.
PHP primitives wrapped with intent: if it is a string, say which string.
Interfaces for data transfer objects and typed collections.
Traits that give a DTO its collection behaviour without inheritance.
A client that speaks contracts instead of leaking curl around your domain.
Wires request, client and response into one replaceable part.
PSR-aligned HTTP contracts. The promise, written before the code.
A request is data. This is that data, immutable and typed.
Methods, URIs, headers and status codes as immutable value objects.
Meta-package: the entire commons in a single composer require.
DTOs and typed collections assembled from common atoms. The starting point for your own.
Meta-package: contracts, value objects, request, client and connector, assembled.
Payment service provider integration, built on top of the HTTP assembly.
PHP SDK for Stone: typed, testable and free of hidden globals.
Watches your workspace and routes work to autonomous agents.
Agents as a real development team. Self-hosted kanban board with roles, handoffs and history.
A generic gateway for Symfony and ApiPlatform applications. One door, many services.
Identity and authentication for the ecosystem: users, credentials, tokens, tenants.
Start an Application repository: Clean Architecture, DDD and the business heart protected.
Start an Assembly repository: composition declared in composer.json, no logic inside.
Start an Atomic repository: one responsibility, one level of directory, nothing more.
The base skeleton every PHPRise repository starts from.
No repository matches this filter.