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

Filament Hashids Laravel Package

swindon/filament-hashids

Integrates Hashids with Filament so resource URLs use short, unique hash strings instead of sequential numeric IDs. Hide database keys, keep admin links cleaner and harder to guess, and configure encoding without changing your underlying schema or models.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Feature scoping & effort estimation: A Filament plugin like filament-hashids offloads a recurring "hide sequential IDs" requirement from your roadmap. Rather than budgeting engineering time to wrap route model binding, resource URLs, and relation managers with Hashids encoding, you can scope this as a dependency decision in days rather than a sprint.
  • Build vs. buy / adopt: The core value proposition is consolidating a solved technical concern into a maintained third-party package. For most teams, this tips toward "adopt" over "build" unless you have bespoke ID-encoding needs (e.g., custom alphabet requirements, legacy hash compatibility, or strict vendor review policies).
  • Security posture & roadmap framing: Hashids obfuscates but does not secure. It reduces casual ID enumeration in admin/power-user URLs and supports a "least-obvious" posture. This should inform roadmap language: it is a defense-in-depth enhancement, not a substitute for authorization (policies, gates).
  • Use-case fit assessment: Best for internal/admin panels, multi-tenant SaaS where operators share links, and any UI where sequential IDs (/users/1, /invoices/42) are exposed and create a poor impression or invite guessing. Less relevant where IDs are already opaque (UUIDs/ULIDs) in public-facing surfaces.
  • Release cadence signal: v1.0.0 marks the first stable tag. From a product standpoint, this is the milestone to treat the package as production-eligible for evaluation, not necessarily production-hardened—validate against your Filament and Laravel version matrix.

When to Consider This Package

  • Consider it when: you run a Filament panel, expose resource URLs containing auto-increment IDs, want cleaner-looking or harder-to-guess identifiers, and prefer a vetted plugin over in-house glue code. Also when your team is already comfortable with Hashids semantics and accepts its limitations.
  • Look elsewhere when: you need true security (use signed URLs, authorization policies, or UUID/ULID primary keys instead); you require strict, long-lived identifier stability across systems (Hashids are derived—re-keying or salt changes break old links); or your compliance/vendor policy does not allow small third-party packages for identifier handling.
  • Caution flags to check before committing: compatibility with your specific Filament major version, behavior in exported/printed reports, and how it interacts with API routes that may share the same models. The sparse v1.0.0 release notes (a changelog link only) mean you should read the actual commits and README rather than assume scope.

How to Pitch It (Stakeholders)

For executives: This is a small, low-effort dependency that removes sequential IDs from admin panel URLs—an inexpensive quality and perceived-security improvement. It is not a security control on its own, but it reduces easy enumeration and tidies operator-facing links. Cost is essentially integration and review time.

For engineering: A Filament plugin wrapping Hashids so resource routing and URL generation encode IDs transparently. Adopt over custom code to avoid maintaining glue. Validate the v1.0.0 tag against your Filament/Laravel versions, confirm salt/key management, and keep authorization as the real access-control boundary—treat Hashids as obfuscation only.

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.
muka/shape-reader
tdt/json
refinery29/php-cs-fixer-config
hotmeteor/eco-env
mvaliolahi/hydrate
wearede/tbcpay-php
parsnick/steak
thibaud-dauce/mattermost-php
multilinguals/apollo-client
antaresbr/collection
kr0lik/phpstan-rules
loco/loco
starfederation/datastar-php
yupmin/modern-phystrix
stephenjude/extended-artisan-commands
lumphp/laravel-macroable
lumphp/laravel-collections
lumphp/laravel-contracts
sermepa/sermepa
arkecosystem/fortify