Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Materialized View Bundle

Materialized View Bundle Laravel Package

th3mouk/materialized-view-bundle

Symfony bundle for defining and managing PostgreSQL materialized views with Doctrine. Map views as entities, create and refresh them via console commands, and query cached results for faster dashboards, reports, and analytics.

View on GitHub
Deep Wiki
Context7

Symfony bundle for th3mouk/materialized-view: autoconfiguration, console commands, the locked multi-tenant deploy lane, async refresh and read-only ORM guards for PostgreSQL materialized views.

Frequently asked questions about Materialized View Bundle
What is th3mouk/materialized-view-bundle used for?
It is a Symfony bundle for th3mouk/materialized-view that adds autoconfiguration, console commands, a locked multi-tenant deploy lane, async refresh, and read-only ORM guards for PostgreSQL materialized views. You can map views as Doctrine entities, create and refresh them via console commands, and query cached results for dashboards, reports, and analytics. It is presented as a Symfony bundle, so Laravel teams should not assume native Laravel integration.
Is this package for Laravel or Symfony?
The Composer name and description identify th3mouk/materialized-view-bundle as a Symfony bundle. The TPM assessment discusses Laravel, php artisan-style deploy lanes, and matview:doctrine-lane, which may reflect a separate evaluation context or naming confusion. Laravel developers should confirm the actual integration path before adopting it and should not assume Laravel commands or service providers exist.
How do I install th3mouk/materialized-view-bundle?
Install it with Composer and register the bundle in a Symfony application according to its documentation. The TPM assessment had no source, docs, or prior assessment available, so exact registration and configuration steps are unconfirmed. Verify composer.json constraints for PHP, Symfony, Doctrine migrations and DBAL, and PostgreSQL before installing. Start against a disposable database rather than a production system.
Which Laravel versions are supported by th3mouk/materialized-view-bundle?
The available context does not confirm Laravel support, and the package is described as a Symfony bundle rather than a Laravel package. The TPM assessment explicitly asks which Laravel, PHP, and Doctrine versions are supported but provides no version numbers. Check composer.json and tagged releases for real constraints. If you need a Laravel-native solution, evaluate th3mouk/materialized-view or build a Laravel integration separately.
Which databases and advisory-lock implementations does the deploy lane support?
The context centers on PostgreSQL materialized views and Doctrine, and the v1.3.1 fix relies on an advisory lock and a DependencyFactory during the deploy lane. Exact supported database engines and lock implementations are not confirmed in the available material. Validate lock behavior in your target topology, including single-node, multi-node, clustered, and read-replica deployments.
Does matview:doctrine-lane replace or wrap doctrine:migrations:migrate?
The TPM assessment describes a Doctrine migrations lane invoked via matview:doctrine-lane and notes that it introduces a second migration orchestration path beside Laravel's native migrator. It is unclear whether the lane wraps doctrine:migrations:migrate or replaces it. Confirm command behavior by comparing both in a sandbox. Keep a documented fallback to your previous migration command.
What did v1.3.1 fix in the Doctrine deploy lane?
Previously, DoctrineLane read migration status before ensureInitialized(), so a drifted doctrine_migration_versions table caused the deploy lane to abort before any migration ran. v1.3.1 initializes metadata storage on the guard's DependencyFactory before the first status read, under the advisory lock, for every strategy. That makes the lane more self-healing, but it also introduces metadata initialization under lock as a new operational risk surface.
How are materialized view refreshes modeled: migrations, commands, or both?
The package description mentions async refresh and console commands, while the TPM assessment asks whether refreshes are modeled as migrations, separate commands, or both. No source or documentation was available to confirm the exact modeling. Treat refresh strategy as a key integration question. Test creation, refresh, and read-only ORM guard behavior in a sandbox before relying on it in production.
What are the production risks of the locked multi-tenant deploy lane?
Technical risk is moderate. The prior boot-time hard failure is mitigated, but the new surface is metadata initialization under lock: permissions to create or alter doctrine_migration_versions, lock timeout behavior, whether initialization is truly a no-op once current, partially applied migrations, and rollbacks. Validate least-privilege deploy credentials and lock behavior in multi-node deployments. Confirm the lane emits structured logs or metrics and that a rollback or fallback path is documented.
How should I test drift, lock contention, and concurrent deploys for this package?
Start with a non-production spike: install the package against a disposable database, create a doctrine_migration_versions table with a drifted schema, run matview:doctrine-lane, and confirm it self-heals rather than aborting. Test concurrent lane invocations and lock timeout behavior, and compare results with plain doctrine:migrations:migrate. Then integrate in staging with real migration history before a canary production deploy in a low-traffic window. Keep the previous migration command available as a documented fallback.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
robertmarney/lara-hierarchial-collections
simonschaufi/rule-doc-generator
emissaoja/emissaoja
blackbricksoftware/gravityforms-civicrm-form-processor
al-rahabi/fancy-crud
jinas/dhivatar-component
mltstephane/laravel-quality
bernskiold/laravel-talentlms
bernskioldmedia/laravel-form-architect
youbar/easy-crud
c-point-labs/laravel-hostyourai
dbravoan/dbcms-admin-theme-dbcms
dbravoan/dbcms-theme-db-cyber
dbravoan/dbcms-blocks-basic
dbravoan/dbcms-module-content-audit
dbravoan/dbcms-module-ai-assistant
paygate-to/paygate-php
padosoft/askmydocs-connector-base
defstudio/supercharged-carbon
bernskioldmedia/laravel-matomo