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

Laravel Brain Laravel Package

laramint/laravel-brain

View on GitHub
Deep Wiki
Context7
v2.3.1

What's Changed

New Contributors

Full Changelog: https://github.com/laramint/laravel-brain/compare/v2.3.0...v2.3.1

v2.3.0

What's Changed

New Contributors

Full Changelog: https://github.com/laramint/laravel-brain/compare/v2.2.1...v2.3.0

v2.0.3

What's Changed

New Contributors

Full Changelog: https://github.com/laramint/laravel-brain/compare/v2.0.2...v2.0.3

v2.0.0

New Features

Filament PHP Support

Full first-class support for Filament PHP applications. The new FilamentAnalyzer discovers every panel registered via service providers and resolves its resources, pages, widgets, and relation managers — both explicitly listed and auto-discovered via discoverResources() / discoverPages() / discoverWidgets(). Filament page methods are traced through the same call-chain engine as controller actions, so every model and service they touch appears in the graph. Computed Filament URLs (e.g. /admin/posts) are resolved and shown as route nodes.

New node types added: Filament Panel, Filament Resource, Filament Page, Filament Page Method, Filament Widget, Filament Relation Manager — each with its own distinct accent color.

Facade Analyzer

A dedicated FacadeAnalyzer now resolves Laravel facade usage throughout your call chains. Facades are surfaced as first-class nodes (cyan #00BCD4) in the graph so you can see exactly which facades a controller, service, or Filament page calls.

Container Binding Analyzer

A new ContainerBindingAnalyzer scans app/Providers for all bind(), singleton(), scoped(), and $bindings registrations. This allows the graph to correctly resolve interface-to-concrete mappings and show the real implementation class when a constructor injects an interface.

Interface & Abstract Class Nodes

Interfaces (sky blue #38bdf8) and abstract classes (slate #94a3b8) are now discovered and rendered as distinct node types. Concrete implementations are linked back to their interface contracts, making dependency inversion visible at a glance.

Validation Rules Panel

When a controller action or Form Request has rules() or inline validate() calls, the sidebar now shows a Validation Rules section listing every field and its associated rule set. Powered by the new ValidationRulesExtractor.

Configurable Route & File Paths

A new published config file config/laravel-brain.php lets you override the glob patterns used to discover route files, channel files, and Artisan command files. This is essential for non-standard project structures (e.g. module-based layouts, app/routes/, versioned API directories).

php artisan vendor:publish --tag=laravel-brain-config

Config keys: route_paths, channel_paths, commands.console_route_paths, commands.class_paths, commands.kernel_paths.


Graph Engine — Migration from Cytoscape.js to D3.js

The entire graph rendering engine has been rewritten from Cytoscape.js to D3.js. This is the largest single change in this release and is the reason for the major version bump.

What changed:

  • All layout algorithms (dagre hierarchical, force-directed, breadth-first, circle, grid) are now implemented natively with D3-force and the dagre library, removing the Cytoscape dependency entirely.
  • Edges are rendered as orthogonal routed paths with rounded corners (7 px radius) instead of straight bezier curves, dramatically improving readability on complex graphs.
  • Node rendering is now canvas-drawn card components, giving full control over typography, badge overlays, and color tiers.
  • Zoom and pan use D3's zoom behavior, which is smoother and better integrated with the layout transforms.
  • The vendor bundle now ships a dedicated vendor-d3 chunk separate from the React chunk.

Collapsible / Foldable Nodes

Any node with more than 4 outgoing edges now shows a collapse toggle. Clicking it hides all descendants (recursive BFS) and shows a badge with the hidden count. Expanding restores the full subgraph. This makes large graphs with hundreds of nodes navigable without switching tabs.


UI / UX

Glassmorphism Design

All sidebars, toolbars, panels, and modal overlays now use a glass effectbackdrop-filter: blur(28px) with subtle border highlights — applied consistently across both dark and light themes via CSS custom properties (--glass-blur, --glass-border, --glass-border-strong).

Redesigned Right Sidebar

The right sidebar received a full visual redesign: tighter section spacing, improved typography hierarchy, color-coded section headers, and the new Validation Rules section described above.

Resizable Left Sidebar

The left sidebar now has a drag handle on its right edge. You can resize it between 160 px and 480 px (default 240 px) by dragging. The resize is smooth with col-resize cursor feedback and userSelect lock during drag.


Backend Improvements

  • PhpStructureInspector — new utility that extracts structural metadata (interfaces implemented, parent class, abstract/final flags) from any PHP class file without full AST traversal.
  • PhpExtendsFqcnResolver — new parser helper that resolves extends FQCNs from use-map context, used by the container binding and facade analyzers.
  • GraphBuilder — major expansion (+1 500 lines) wiring all new node types into the graph output and handling the container binding resolution pass.
  • ControllerAnalyzer — expanded to resolve abstract controller inheritance and detect Form Request classes from method signatures.
  • ConsoleAnalyzer — refactored to support the new configurable class_paths and kernel_paths glob patterns.
  • ChannelAnalyzer — updated to support configurable channel_paths.

Bug Fixes

  • Fixed method flowchart rendering in certain edge cases where the flow diagram would render blank.
  • Fixed stress test panel not resetting correctly after a completed run.
  • Fixed PINT code style violations across multiple analyzer files.
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.
codifyo/ts-generator-bundle
andydefer/laravel-cluster
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky
spatie/mailcoach-vapor