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

Resource Bundle Laravel Package

atoolo/resource-bundle

The Atoolo resource bundle aggregates resources from IES, Sitepark's content management system, into data this PHP library can handle. It provides the resource layer for Atoolo applications, with documentation available for developers working in the Atoolo context.

View on GitHub
Deep Wiki
Context7

Atoolo Resource Bundle brings resources from IES (Sitepark's content management system) into Symfony applications. It provides a typed, service-oriented layer for working with aggregated resource data, so content authored in IES can be consumed consistently from PHP code.

  • Seamless Symfony bundle integration for resource access
  • Typed abstraction over IES aggregated resources
  • PHPStan level 9 static analysis and codecov-tracked test coverage
  • Supports PHP 8.1–8.4, validated by end-to-end tests
  • Fully documented in the official Atoolo documentation
Frequently asked questions about Resource Bundle
What is atoolo/resource-bundle used for?
Atoolo Resource Bundle is a PHP library for working with resources from IES, Sitepark's content management system. It handles aggregated, pre-produced resource data in the Atoolo context and provides loaders, hierarchy tools, tenant support, and caching. Laravel applications can use it when they need structured access to CMS-backed resources rather than plain database records.
How do I install atoolo/resource-bundle in a Laravel application?
Install it with Composer using composer require atoolo/resource-bundle. Because it is built as a Symfony bundle, you will usually bootstrap its services through a Laravel service provider and map Symfony configuration to Laravel config files. The package supports PHP 8.1 through 8.4, and the project documentation covers the Atoolo resource integration details.
Is atoolo/resource-bundle compatible with Laravel 10 and Laravel 11?
It is not a Laravel-native package, but it can be integrated with Laravel through the Symfony container bridge that Laravel relies on. Laravel 10 and newer versions support the PHP 8.2 to 8.4 runtimes listed by the package, but you should verify service wiring and configuration in your own application. The safest approach is to test the integration with your Laravel version before using it in production.
Does atoolo/resource-bundle support lazy loading for large resource sets?
Yes, the package includes lazy-loading support such as ResourceChannel with p-parameter handling. This helps reduce memory usage when working with large volumes of CMS resource data. For frequently accessed resources, pair lazy loading with CachedResourceLoader to avoid repeated loading overhead.
Can atoolo/resource-bundle load hierarchical CMS content such as menus and taxonomies?
Yes, it provides ResourceHierarchyFinder and ResourceHierarchyWalker for hierarchical resource loading. These are useful for nested content structures like navigation menus, category trees, and taxonomies. You can use them to traverse parent and child relationships instead of building custom hierarchy logic around raw CMS data.
How does multi-tenancy work in atoolo/resource-bundle?
The package uses ResourceTenant and ResourceHost concepts to support tenant-isolated resources. This is useful for SaaS platforms, multi-brand sites, or applications that serve different CMS contexts from one Laravel codebase. In Laravel, bind the current tenant or host in the service container and pass that context into the resource loading layer.
What caching options does atoolo/resource-bundle provide?
CachedResourceLoader is available to reduce performance bottlenecks when the same resources are accessed repeatedly. The package is filesystem-centric by default, so multi-server deployments may need a custom cache adapter backed by Redis or Laravel's cache system. Cache invalidation is a key design concern and should be planned before production rollout.
Can atoolo/resource-bundle load resources from a database instead of the filesystem?
The package defaults to filesystem-based resource locations such as ResourceLocation::ofPath(). If your Laravel application stores resource data in Eloquent models, you will need a custom loader or adapter that implements the package's ResourceLoader interface. A hybrid approach can work well: use the bundle for static CMS artifacts and Laravel's ORM for dynamic application data.
How do I test atoolo/resource-bundle in Laravel with PHPUnit or Pest?
The package is checked with PHPStan level 9 and includes code coverage and end-to-end test signals in its repository. For Laravel unit tests, mock the ResourceLoader interfaces and test your service provider bindings separately from live CMS data. Also test the Symfony dependency injection bridge and any custom cache or database adapters with PHPUnit or Pest.
What are alternatives to atoolo/resource-bundle for Laravel CMS resource handling?
If you are not tied to Sitepark IES or Atoolo resource semantics, packages like spatie/laravel-translatable or spatie/array-to-object may cover simpler localization and array-to-object needs with less coupling. Laravel's Eloquent ORM is often enough for database-backed resources. Choose atoolo/resource-bundle when you specifically need IES resource loading, hierarchy traversal, tenant handling, and Atoolo-compatible caching.
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.
hsluv/hsluv
seampact/codegen
seampact/hooks
seampact/ir
mehedimi/laravel-amp-mail
happones/laravel-vue-i18n-generator
jwerd/inertia-table
siberfx/flysystem-wasabi
hollyit/token-replace
ippanelcom/laravel-sdk
adachsoft/changelog-linter
adachsoft/collection
payerurl/telegrambot-crypto-payment-instant-payout
dskripchenko/laravel-hybrid-search
riorizkyrainey/lara-ced
mehedimi/static-vel
zharp/zharp
nonsapiens/bigquery-model-sync
lgu-bayambang-ict-office/lgu-laravel-development-standards
andydefer/laravel-support