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

Statamic Bard Assist Laravel Package

goldnead/statamic-bard-assist

Bard Assist adds AI-powered writing help to Statamic's Bard editor. Generate, rewrite, and refine copy in place, speed up everyday editing, and keep your team publishing faster—all without leaving the control panel. A lightweight addon that fits your existing fieldsets.

View on GitHub
Deep Wiki
Context7

Getting Started

Start with the package README and composer.json to confirm Laravel/PHP version support, then install and publish only the assets you need (config, views, translations, frontend assets if applicable). Look first at:

  • The published config for consent categories/pills and persistence options.
  • The Blade/view/component entry point that renders the consent UI.
  • Any events, middleware, helpers, or JS API exposed for reading consent state.
  • The changelog for v1.0.2, specifically the keyboard-focus fix.

A good first use case is adding the consent UI once in your root application layout, then gating one non-essential script—such as analytics—behind the relevant consent category. Before rollout, run a keyboard-only smoke test: Tab to “Accept all”, press Enter, and confirm focus returns to the text/trigger rather than the page body. Repeat by tabbing to a consent pill and accepting it with Enter.

Implementation Patterns

  • Render once at the layout level. Put the consent component in your persistent app layout so it is available across pages, and avoid duplicating it in individual views.
  • Centralize consent reads. Wrap consent checks in a small helper/service or frontend store rather than scattering raw cookie/localStorage checks through templates.
  • Gate by category. Map analytics, marketing, and preference scripts to configured consent pills/categories. Keep essential scripts ungated.
  • Pair client and server checks. Use the package’s client-side UI for consent collection, but enforce consent server-side for routes, tracking endpoints, or persisted preferences where it matters.
  • Customize through published views/config. Adjust labels, pill order, styling, and persistence in the published extension points rather than editing vendor files.
  • Test the v1.0.2 focus behavior in CI or a browser test. Add a regression check for “Accept all” and “accept pill with Enter” focus return if your test stack supports it.
  • Use events/state hooks for integration. If the package exposes events or a JS API, use them to update analytics consent mode, refresh preference displays, or record consent changes.

Gotchas and Tips

  • Do not break the v1.0.2 focus fix. If you override the consent component’s markup or JavaScript, preserve the focus-return target after “Accept all” and after accepting a pill with Enter.
  • Test Enter and Space separately. Keyboard activation can differ by element role; a pill that works with Enter may still fail with Space if custom controls are involved.
  • Ensure the focus target exists and is visible. Focus returning to a hidden, removed, or conditionally rendered text element will still look like focus loss.
  • Clear caches after publishing. Run the relevant Laravel cache-clear commands after changing published views/config, and remember config caching can mask edits.
  • Watch asset/version publishing. If the package ships frontend assets, re-publish or rebuild them after upgrades so the v1.0.2 behavior is actually present in the browser.
  • Do not rely on the UI alone for compliance. Persist consent state and enforce it where non-essential processing occurs.
  • Use extension points over vendor edits. Published views, config, translations, and events are safer upgrade paths than patching package files.
  • Add an accessibility regression check. The release is a targeted accessibility fix; a small browser test for focus return after acceptance is high-value protection against future regressions.
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.
tequilarapido/trackit
gregsphotography/site-builder-filament
cabaoctavio/laravel-query-log
gregsphotography/site-builder-components
io-digital/clickatell
snowsoft/laravel-admin
oxygen/auth
relicsoftware/barakah-payment-gateway
tobya/work-with-composer
equipc/laravel-email-validator
equipc/laravel-email-database-log
adedsec/nova-translated-labels
wazza/laravel-db-encryption
hokny/laravel-generator
vonsogt/backup
jengo/queues
jeremykenedy/laravel-observability
coleus/frame
thtg88/journalism
filagora/filagora-ai-forums