Weave Code
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

Block Settings Bundle Laravel Package

alengo/block-settings-bundle

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Reducing Technical Debt: Eliminates repetitive FormMetadataVisitor boilerplate for Sulu CMS block settings, allowing PMs to advocate for cleaner, maintainable codebases.
  • Accelerating Feature Delivery: Enables rapid addition of new block settings (e.g., theme, spacing, anchor) without custom visitor classes, aligning with sprint goals for CMS customization.
  • Componentization Strategy: Supports a "build vs. buy" decision by offering a lightweight, configurable alternative to reinventing form injection logic.
  • Use Cases:
    • Design System Adoption: Streamlines theming/spacing controls for blocks in a headless CMS-driven design system.
    • A/B Testing: Dynamically injects experimental settings (e.g., "background variants") without code changes.
    • Multi-Tenant CMS: Centralizes block configuration across tenant-specific projects via shared XML forms.

When to Consider This Package

  • Adopt if:

    • Your Sulu CMS project requires >3 custom block settings sections (e.g., theme, spacing, anchor) and you’re tired of maintaining duplicate visitor classes.
    • You prioritize configuration over code for CMS extensions (e.g., marketing teams managing settings via XML).
    • Your team uses Symfony 7.0+ and Sulu 3.0+ with PHP 8.2+.
    • You need idempotent form injection (avoids duplicates across locales).
  • Look Elsewhere if:

    • You’re using Sulu <3.0 or Symfony <7.0 (compatibility gap).
    • Your block settings are highly dynamic (e.g., user-generated) and require runtime logic beyond XML forms.
    • You lack XML form familiarity—this package shifts complexity to form definitions.
    • You need real-time validation or complex business logic in settings (consider a custom visitor instead).

How to Pitch It (Stakeholders)

For Executives: "This package cuts the busywork of customizing Sulu CMS block settings by 70%. Instead of writing 3+ boilerplate classes for every new setting (theme, spacing, etc.), our team can configure them in YAML/XML—saving dev time and reducing technical debt. For example, adding a ‘background variant’ toggle for A/B testing would take minutes instead of hours. It’s a low-risk, high-reward way to accelerate CMS customization without hiring more engineers."

For Engineering: *"The bundle replaces repetitive FormMetadataVisitor implementations with a single, configurable visitor. Key benefits:

  • DRY: One visitor handles all sections (defined in config/packages/alengo_block_settings.yaml).
  • Flexible: Sections are injected in order, skipping duplicates (idempotent).
  • Extensible: Project-specific forms live in config/forms/—no bundle code changes needed. Tradeoff: Shifts some logic to XML forms, but the payoff is cleaner services.yaml and faster iteration. Ideal for projects with 3+ block settings sections."*
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.
datacore/hub-sdk
alengo/sulu-http-cache-bundle
croct/coding-standard
croct/plug-php
develia/commons
cuci/prototurk-sdk
cuci/prototurk-sdk-symfony
develia/geo-bundle
dreamzy/livewire-charts
touchestate-sdk/php-sdk
22h/doctrine-garbage-collection-bundle
imbo/imbo-coding-standard
visualbuilder/filament-lottie
servicioslineaonce/starter-kit
atomcoder/laravel-reorderable
irajul/filament-shadcn-theme
agtp/agtp-php
agtp/mod-php
centraldesktop/protobuf-php
trappistes/laravel-custom-fields