yousef-aman/laravel-feedback-board
yousef-aman/laravel-feedback-board provides a ready-to-use feedback and feature-request board for Laravel. Users can submit posts, upvote ideas, and comment, while admins moderate submissions and update statuses. Includes migrations, routes, controllers, and Blade views for quick setup.
composer require and an install command — a decision that is cheap to reverse and cheap to trial.FeedbackBoard::extendTriage(). That lets you test auto-classification of type/priority as a product hypothesis without committing to a provider or a vendor contract — and the "developer applies one field at a time" interaction keeps a human in the loop, which is the right default for anything that touches prioritisation.auth.guards, auth.developer_guards, FeedbackBoard::user()) and separate reporter/developer resolvers are the deciding features for multi-sided products — staff on web, clients on a Filament panel guard. If your product is single-guard, these are inert; if it isn't, their absence would be disqualifying.Consider it when:
feedback-board.manage, feedback-board.report), resolvers, linkReportsUsing(), extendTriage(). The fail-safe resolver behaviour (throws or non-boolean returns deny and are logged once rather than breaking the page) is the kind of detail that matters in production.Look elsewhere when:
base_url covers many gateways, but verify it covers yours before assuming.Adoption caveat for this specific release: v1.0.2 is a package rename/republish (yousefaman/laravel-feedback-board) with code identical to 1.0.0 and 1.0.1. Before adopting, verify the previous package name, confirm the namespace and vendor are the ones you intend to depend on, and pin an exact version. Renames on Packagist are a normal but real dependency-hygiene signal — treat the vendor identity as part of the build-vs-buy calculus.
For executives: We can close the loop between what users report and what we build, in days rather than a quarter. Users report from inside the product with a screenshot and the page they were on; developers triage on a board and reply in the same place. Notifications and Slack/GitHub mirroring mean the people who need to know already do. AI triage is opt-in and provider-agnostic, so we can measure whether it improves routing before paying for it. Cost is one dependency and a config file, not a headcount.
For engineering: One composer require plus php artisan feedback-board:install. Config, routes, and tables are stable across 1.0.x; access control works with config:cache; resolvers deny safely instead of throwing; webhook/Slack/GitHub deliveries are queued, isolated per destination, retried on a fixed backoff, and fail fast on un-retryable errors, with secrets kept out of exception messages and job payloads. The ingest endpoint is HMAC-signed, single-use per signature, Content-Type-strict, and can share nonce state across servers. If you already run Filament, the plugin reuses the panel's guard, tenancy, theme, and navigation — no second admin surface to maintain.
What to flag in the room: the 1.0.2 republish means a dependency-name change to absorb now; reports are app-wide, so multi-tenant isolation is a decision, not a default; and the AI runner contract (Level B/C) is a large, fast-moving surface — pilot it behind a flag rather than adopting it on day one.
How can I help you explore Laravel packages today?