goldnead/statamic-flow-canvas
A Statamic addon that adds an interactive flow canvas for visually arranging content and building node-based layouts in the control panel. Connect items, design structures, and manage flows directly in Statamic.
Canvas, NodeCard, NodeLibrary, ControlBar, AdderNode, InsertableEdge, PropertiesSection) describe a fairly complete node-editor surface. This package is the argument for buying the canvas and building only your domain logic — node types, validation, persistence, permissions.content globs scanning vendor/. That is an invisible, per-host, per-upgrade configuration task that fails silently and is usually diagnosed as "the package is broken." Moving the seven affected components to scoped fc- classes removes a class of integration bug that generates support load disproportionate to its severity.tests/js/plain-css.test.js, it does not compete with other roadmap items for engineering review time. It is a cheap upgrade that improves the onboarding story you tell in docs.Adopt when:
vendor/.Look elsewhere or delay when:
<style> block per component can require style-src 'unsafe-inline'. If your app ships a hardened CSP, confirm this before adoption — the fix trades one integration hazard for a potentially harder-to-negotiate one.fc- selectors rather than by composing utilities. That is more robust but less ergonomic for fine-grained visual work..dark ancestor class. The :global(.dark) selector is an explicit assumption about how your app toggles themes. Verify it matches your convention (class vs. prefers-color-scheme vs. data-theme).To executives: This release removes a recurring source of "the editor looks broken" reports. Previously, correct rendering depended on each host app configuring its build to scan the package — a step that is easy to miss, hard to notice, and unrelated to anything the user did. Those seven components now carry their own scoped styles, so the editor renders correctly on install. Practically, this shortens time-to-first-value on any graph or workflow feature and lets us offer per-customer theming without per-customer builds. Scope is small and patch-level, but the integration risk it retires is not.
To engineering: Styling for the seven shared components moved from Tailwind utilities to fc- classes inside scoped <style> blocks, with values held identical — hex colours replaced by CSS variables, dark mode via :global(.dark). Utilities outside the affected list are untouched. A JS test (tests/js/plain-css.test.js) guards against regression. Two things to check before merging: (1) any local overrides that targeted the old utility class names need to be rewritten against fc- classes or the CSS variables, and (2) if we run a strict CSP, confirm the inline <style> blocks do not require an unsafe-inline exemption we are unwilling to grant. No PHP API or component-prop changes are implied by these notes.
How can I help you explore Laravel packages today?