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 Otp Input Laravel Package

solution-forest/filament-otp-input

Filament OTP Input adds a segmented one-time-password field to Laravel Filament forms and admin panels. Use it to capture verification codes in a clean, focused input that matches Filament styling, with configurable code length for login, signup, and security flows.

View on GitHub
Deep Wiki
Context7

Getting Started

This release (2.0.4) is a compatibility release: it adds support for Filament v4 and v5. Before anything else, confirm your Filament version, because the package now spans two major Filament lines with different internals.

  1. Check your composer.json for filament/filament and this package's constraint:
    composer show --direct | grep -E 'filament|your-vendor/package'
    composer why your-vendor/package   # confirm what pulled it in
    
  2. Upgrade path:
    composer require your-vendor/package:^2.0.4 --with-all-dependencies
    php artisan filament:upgrade   # if you use Filament's upgrade command
    php artisan optimize:clear
    
  3. Look first at the package's service provider registration and any Filament plugin registration (->plugin(...) or panel provider ->plugins([...])) — that is where v4/v5 differences usually surface.
  4. First use case: register the plugin on a panel, load the panel in the browser, and confirm resources/pages/widgets render without a BindingResolutionException or missing-asset error.

If you are still on Filament v3, stay on the previous package line — 2.0.4 targets v4/v5 and does not extend v3 support.

Implementation Patterns

Pin the major versions deliberately. Composer's --with-all-dependencies will happily pull Filament v5. Lock both sides explicitly so a future composer update does not move you across a Filament major without a test pass:

"require": {
    "filament/filament": "^4.0",
    "your-vendor/package": "^2.0.4"
}

Register once per panel. In multi-panel apps, register the plugin in each panel provider that needs it, and keep panel-specific config in the panel provider rather than in config/your-package.php so behaviour is not shared accidentally.

Test both paths if you support both Filament majors. CI matrix with filament/filament:^4.0 and ^5.0 against your lowest supported PHP/Laravel combination catches most of the surface-area divergence.

Gate upgrades behind a branch. Upgrade flow that works well day to day:

git checkout -b chore/filament-v5
composer require filament/filament:^5.0 your-vendor/package:^2.0.4 -W
php artisan test
npm run build   # if the plugin ships assets

Use the package's extension points instead of overriding views. Prefer published config, registered actions/columns, and plugin hooks over copying Blade views into resources/views/vendor/. Vendor view overrides are the first thing to break across Filament majors.

Keep a smoke test per panel. A Pest/PHPUnit test that boots each panel and hits the dashboard catches registration regressions that unit tests miss.

Gotchas and Tips

  • Version skew is the main failure mode. 2.0.4 supports v4 and v5, not v3. A half-upgraded lockfile (package v2, Filament v3) typically fails at container resolution or panel boot, not at install time.
  • "Filament v5" is early. Treat v5 as a target for new projects or a deliberate migration, not a default. Pin to v4 on mature apps until v5 has had a few patch releases.
  • Clear caches after upgrading. Filament caches components and panel config aggressively: php artisan filament:optimize-clear, php artisan optimize:clear, and php artisan view:clear.
  • Rebuild front-end assets. Compatibility releases often trail Filament's asset pipeline changes. If icons, modals, or styles break after upgrade, run your asset build before filing a bug.
  • Debugging registration issues. Wrap panel boot in php artisan about-adjacent checks or use filament:cache-components output; a missing Livewire component usually means a plugin registered on the wrong panel or a stale component cache.
  • Extension points over patching. If you need to alter behaviour in both v4 and v5, look for version-agnostic hooks (macros, custom actions, config flags) rather than branching on class_exists().
  • Release notes are thin. This patch is reported only as "support filament v4,5". Verify the actual constraint changes in composer.json and the diff before assuming no behavioural changes elsewhere — check the changelog and git diff on the tag.
  • Watch the transitive Filament versions. Filament v4/v5 pulled forward Livewire and PHP floors; if your app is on an older PHP, the upgrade may silently require a runtime bump.
  • Report incompatibilities with versions pinned. When opening issues, include exact filament/filament, package, PHP, Laravel, and Livewire versions — cross-major support issues are usually resolved by narrowing a constraint.
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.
ably/pubsub-server
mstfkhazaal/defender
mfonte/base62x
karnoweb/metapilot
tobya/bcsapiwrapper
swalker2/cpanel
vish4395/laravel-translation-manager
morningtrain/economic
teksite/systeminfo-laravel
atomcms/voting
run6/weather
siokas/laravelembeddirectives
adamlien/pkuuids
gilsonsouza/lara-doc-generator
manelgavalda/enrollment_mobile
unabomber/timezone
delatbabel/contacts
astritzeqiri/g-recaptcha
kevinongko/laravel-genode
developeruz/laravel-analytics