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
Grabit Bundle

Grabit Bundle Laravel Package

nicolas-joubert/grabit-bundle

A Symfony bundle that integrates Grabit into PHP applications, providing service configuration and Composer-ready setup for adding Grabit-based functionality. Useful when you want a simple, bundle-managed way to wire Grabit services into Symfony projects.

View on GitHub
Deep Wiki
Context7

Grab it is R&D crawler to grab HTML pages

Frequently asked questions about Grabit Bundle
How do I install nicolas-joubert/grabit-bundle with Composer?
Run composer require nicolas-joubert/grabit-bundle and let Composer resolve the version constraint; the package is described as Composer-ready. In a Symfony app you then register the bundle in config/bundles.php if it is not auto-registered, and configure the Grabit services. In Laravel there is no documented service provider, so installation alone may not wire anything up. Check the repository README for the current required PHP and Symfony versions before installing.
Is grabit-bundle a Laravel package or a Symfony bundle?
The name and blurb describe it as a Symfony bundle that integrates Grabit, an R&D HTML crawler, into PHP applications. The -bundle suffix and service-configuration focus are Symfony conventions, not Laravel package conventions. There is no confirmed Illuminate service provider or Laravel-native event dispatcher in the provided information. Treat it as Symfony-first until the maintainer documents otherwise.
Can I use grabit-bundle in a Laravel application?
Possibly, but it is not confirmed as Laravel-native. Laravel can often consume Symfony components, yet a Symfony bundle's container wiring, configuration tree, and dispatcher semantics do not map automatically onto Laravel's service container and Illuminate event dispatcher. Before committing, verify which event dispatcher the v1.5 events use and whether a Laravel service provider exists. A short spike is cheaper than discovering the mismatch in production.
What events does grabit-bundle v1.5 add?
v1.5 adds two domain events: a source disabled event and a source error event, dispatched by the grab component that executes a grab run. The release is described as additive, with no removals, renames, or deprecations in the changelog. They are intended to make grab runs observable so you can attach listeners for alerting, metrics, or audit trails. The exact class names and public contracts are not documented in the provided notes.
What is in the grabit-bundle SourceError and SourceDisabled event payloads?
The payload shape is not documented in the release notes, so source identifier, exception, attempt count, and timestamp are all unconfirmed. The TPM assessment explicitly flags this as an open question for the maintainer. Code defensively: read properties rather than relying on constructor signatures, and tolerate nulls. Do not tightly type listeners against undocumented fields until a public contract exists.
Are grabit-bundle events synchronous or queued?
This is not stated in the available release information. Symfony's default event dispatcher is synchronous and inline, but the bundle may queue or defer dispatch. Whether a throwing listener can abort a grab run is also undocumented. Test this explicitly in a spike before relying on events for critical alerting.
How do I listen for grabit-bundle events in Laravel?
Only after confirming the bundle dispatches through Illuminate\Contracts\Events\Dispatcher can you use Event::listen or auto-discovered listeners. If it uses Symfony's event dispatcher instead, Laravel listeners will not fire and you would need an adapter or a different integration point. The intended consumption pattern is ordinary Laravel work: a structured-log listener, a failure-counter listener, and an alert on repeated source-disabled events. Keep those listeners defensive against payload changes.
Which PHP and Laravel versions does grabit-bundle support?
The provided information does not list PHP or Laravel version constraints as of v1.5. The blurb frames it as a Symfony bundle, so expect Symfony framework constraints rather than Laravel ones. Check composer.json on the repository for the authoritative requirements before planning an upgrade. If Laravel support matters, confirm it in writing with the maintainer.
Is grabit-bundle maintained and safe for production?
The TPM assessment rates supply-chain risk medium-high: single maintainer, small project, sparse release cadence, changelog-only documentation, and no linked test evidence. Breaking-change risk in v1.5 is low because the release is additive, but semantic risk around event contracts is medium. Size your blast radius accordingly, pin versions, and wrap usage behind your own abstraction. For ingestion workloads, prefer isolating the crawler so a package change cannot take down the wider app.
How do I upgrade from grabit-bundle 1.4 to 1.5 without breaking anything?
v1.5 is described as additive with no removals, renames, or deprecations, so semver-respecting consumers on ^1.4 should absorb it silently. That silence is itself a mild risk, because new events can change control flow in error paths without an explicit opt-in. Run your test suite against 1.5, verify whether exceptions are still thrown or converted to events, and check whether SourceError fires per run, per source, or per failed item. Only then wire alerting to it.
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.
uni-method/symfony-lib
tacticmedia/scim-server-bundle
neika-ai/symfony-bundle
mattleads/agent-publishing-bundle
glavweb/framework-bundle
glavweb/extra-bundle
glavweb/api-bundle
glavweb/admin-bundle
adachsoft/api-version-bundle
elsayed85/laravel-api-exceptions
ouhssini/laravel-demo-mode
daworks/ncloud-outbound-mailer-driver
gp247/cms
ignibyte/aic-gates
nexa-merchant/blog
novasa/laravel-language-center
opencage/geocode
adolfoholzer/parameters
livenetworks/ln-starter
cgv/localized-resource