webman/database
Database component for webman that integrates Laravel's Illuminate database layer. It offers the query builder, Eloquent ORM, schema builder, migrations, and pagination, with connection pooling for high-performance webman apps. Works with MySQL, PostgreSQL, SQLite, and SQL Server.
illuminate/database constraint to ^10.0 || ^11.0 || ^12.0 || ^13.0, i.e. it now declares support through the next major Laravel line. That is a maintenance-signal data point the PM can use: the dependency is being tracked forward, not pinned to a fading branch. It also means we can plan a Laravel 13-era upgrade without waiting on a fork or a patch of our own.Adopt when:
illuminate/database range is ^10.0 || ^11.0 || ^12.0 || ^13.0, so Laravel 10 through 13 are all in-scope. Services older than Laravel 10 are out of range.Look elsewhere when:
illuminate/database directly; on a Doctrine shop, use Doctrine. This package's value is the webman integration, not the ORM.^10.0; there is no stated support path for EOL illuminate majors, so that becomes a hard constraint on any legacy-service migration.Adoption caveats to gate on:
illuminate/* version compatibility, and load-test the pool under realistic concurrency including connection-drop recovery.^13.0 is direct evidence that the maintainer is following illuminate majors rather than letting the package drift onto a frozen Laravel branch. That materially lowers the "our security-patch lag becomes their release cadence" concern, but it is one data point, so keep the check in the review process: on each Laravel major, confirm a matching constraint bump lands within a reasonable window. Do not assume v2.1.10 was a functional change — it reads as a constraint-only release, so nothing in the runtime behavior, pooling, or API surface should be assumed to have moved.illuminate/database, swapping the container binding and connection resolver is a bounded effort. That keeps the lock-in argument honest and small.To executives: This is an MIT-licensed, first-party component of the webman ecosystem, maintained by the framework's own author. Adopting it means we don't build or maintain a database layer, we don't pay license or support fees, and we don't create vendor lock-in — it's a thin, replaceable layer over a widely used open-source ORM. The latest release (v2.1.10) extends declared compatibility to the newest major Laravel database package, which is a concrete signal that the dependency is being kept current rather than left to rot — and it means we can take upstream security patches on the normal cadence instead of scrambling. It also lets us staff against the largest PHP ORM skill pool, which reduces ramp time and delivery risk. Cost of adoption is low; cost of the alternative (bespoke persistence code) is ongoing and invisible until it breaks.
To engineering: Drop-in Eloquent models, query builder, and pagination, plus a connection pool designed for webman's resident-process model — which is what stops us from shipping a service that exhausts MySQL connections under load or serves stale connections after an idle period. Multi-connection and read/write split are supported. The API is familiar, so review and onboarding costs are near zero. Heads up on v2.1.10: it is a dependency-constraint release only — illuminate/database is now ^10.0 || ^11.0 || ^12.0 || ^13.0 — so treat it as a compatibility widening, not a feature drop. Practical implication: confirm our PHP version against the Laravel 13 requirement matrix before we claim that upper bound, and pin deliberately rather than floating on ^ if we want reproducible builds.
Risks to state plainly, not bury: small public footprint, PDO-blocking under the hood (not async), and a dependency on the webman ecosystem's release cadence — the last of which v2.1.10 improves but does not eliminate. Mitigations: a short validation spike with pinned versions, a load test that includes failure/recovery, and a documented exit path via the illuminate/database binding. Net recommendation: adopt for webman-hosted, CRUD-centric services on Laravel 10+; do not adopt as a general-purpose ORM or as a way to get async database access.
How can I help you explore Laravel packages today?