- What is gerenuk/filament-banhammer used for in Laravel?
- It is a Filament plugin package for adding ban management to Filament admin panels in Laravel applications. The advertised use case is banning or unbanning users, setting temporary bans, recording reasons and history, and controlling access from Filament resources. Treat the package as Filament admin functionality and verify the underlying enforcement behavior before relying on it for security.
- How do I install filament-banhammer in a Laravel Filament project?
- The expected Laravel package flow is composer require, publish config and migrations, add a Bannable trait to your authenticatable model, and register the Filament plugin in a panel provider. Check the package composer.json constraints before installing so the Laravel, PHP, and Filament versions align. Test the published migration and plugin registration in a scratch branch first.
- Which Laravel, PHP, and Filament versions does filament-banhammer support?
- Supported versions are defined in the package composer.json, so compare that file against your Laravel, PHP, and Filament versions before installing. The available technical evaluation does not confirm a CI version matrix, and Filament plugin API changes between v3 and v4 make version alignment a critical check. Do not assume compatibility from the repository description alone.
- Does filament-banhammer enforce bans at the authentication layer or only provide Filament UI?
- The provided description focuses on Filament admin capabilities such as ban and unban actions, temporary bans, reasons, and history. The technical assessment specifically asks whether enforcement happens at the authentication layer or only persists state and renders UI. Verify this in the source code and test web login, remember-me, API tokens, password reset, and impersonation paths before treating bans as enforced.
- Does filament-banhammer support temporary bans and correct expiry handling?
- The package description states that it supports temporary bans, so expiry is part of the advertised scope. The evaluation says expiry behavior must be validated against actual code rather than the README. Confirm that expired bans are re-evaluated correctly on each request and are not only checked when the ban is created.
- Does filament-banhammer invalidate existing sessions and API tokens when a user is banned?
- The available context does not confirm session invalidation or API token revocation at ban time. The technical evaluation explicitly asks whether the package invalidates existing sessions and Sanctum or Passport tokens or only blocks new logins. Make that an integration test requirement before using it in a production auth flow.
- Is there an audit trail showing who banned a user, when, and why?
- The package advertises recording reasons and history, which suggests some audit trail exists. The evaluation asks whether that trail captures who banned whom, when, and why, and whether it is immutable. Inspect the schema and Filament UI behavior before relying on it for compliance or dispute handling.
- Can filament-banhammer handle multiple guards, multi-tenancy, or models other than User?
- The provided evaluation lists multi-guard auth, multi-tenancy, and banning non-User models as open questions rather than documented capabilities. Review the trait and migration footprint to see whether they assume a single User model and the default guard. If your Laravel app is API-first or multi-tenant, plan to write additional enforcement and scoping yourself.
- What migration footprint does filament-banhammer add, and is it reversible?
- The expected shape for this kind of Laravel package is a published migration adding ban columns to users or a separate bans table, but the exact footprint is not confirmed in the provided context. Rollback and reversibility behavior also needs verification. Inspect the generated migration on a disposable database before applying it to production.
- Is filament-banhammer production-ready, and what are the risks versus alternatives?
- Maturity signals in the evaluation are weak: 12 stars, zero dependents, one maintainer, and no evidence of production validation. The MIT license means vendoring or forking is legally straightforward, but you should budget for maintenance and test edge cases such as soft-deleted users, queued jobs, and multiple guards. For critical authentication enforcement, compare it with a small in-house trait and middleware layer or a more established package.