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

Filament Developer Logins Laravel Package

dutchcodingcompany/filament-developer-logins

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture Fit

  • Core Use Case Alignment: The package directly addresses a developer productivity gap in Filament-based applications by enabling quick role-based logins, reducing manual user-switching overhead. This is particularly valuable for multi-tenant, role-heavy, or complex permission systems where testing UX across roles is critical.
  • Filament Ecosystem Lock-in: Tightly coupled to Filament’s authentication flow (Laravel Breeze/Inertia-based). Assumes Filament’s default login stack (e.g., filament/support v3.x). Risk: May conflict with custom auth providers or non-standard Filament setups.
  • Extensibility: MIT-licensed, modular design (hooks into Filament’s login blade). Can be extended via Filament’s plugin system (e.g., customizing login buttons, adding user filters).
  • Security Considerations:
    • Local-only: Explicitly designed for development environments (README warns against production use). Mitigates risk of exposing sensitive login endpoints.
    • No session hijacking: Uses Filament’s native auth logic; no direct session manipulation.

Integration Feasibility

  • Laravel/PHP Compatibility:
    • Requires Filament v3.x (Laravel 10/11). Tested with PHP 8.1+. Blockers:
      • Older Filament versions (v2.x) or Laravel <10 may need polyfills.
      • Custom Filament login blades (e.g., Jetstream, Sanctum) may require overrides.
    • Dependencies: Minimal (only Filament core). No external APIs or heavy libraries.
  • Database/ORM: Relies on Laravel’s Eloquent user model. Assumptions:
    • Users must implement HasApiTokens (for Filament’s auth) or similar.
    • Custom user models may need trait adjustments (e.g., Filament\Contracts\Auth\Access\Authorizable).
  • Frontend: Uses Inertia.js/Blade. Compatibility:
    • Works with Filament’s default login page. Custom JS/CSS may need adjustments if overriding login templates.

Technical Risk

Risk Area Severity Mitigation
Filament Version Mismatch High Validate Filament version in composer.json or CI. Use filament/filament constraint.
Custom Auth Overrides Medium Document deviations from Filament’s default auth. Provide fallback hooks.
Performance (Large Teams) Low User list queries could be optimized with caching (e.g., remember() in blade).
Security Misconfiguration Critical Must restrict to APP_ENV=local. Add .env checks in package code.
Plugin Conflicts Medium Test with other Filament plugins (e.g., filament-spatie-laravel-permission).

Key Questions

  1. Filament Setup:
    • Are you using Filament’s default auth (Breeze/Inertia) or a custom provider (e.g., Sanctum, Passport)?
    • Do you override the login blade template? If so, how?
  2. User Model:
    • Does your User model extend Filament\User or a custom class?
    • Are there additional fields (e.g., tenant_id) that need filtering?
  3. Environment:
    • How do you manage APP_ENV in CI/CD? Can the package be auto-disabled in production?
  4. Scaling:
    • How many users/roles need quick access? (>100 may require pagination or search).
  5. Testing:
    • Will this replace existing user-switching workflows (e.g., Laravel Telescope)? How will you validate coverage?

Integration Approach

Stack Fit

  • Primary Fit: Laravel + Filament v3.x applications with multi-role development needs.

    • Ideal For:
      • SaaS platforms with tenant/role testing.
      • Admin panels with granular permissions.
      • Teams using Filament for internal tools.
    • Avoid If:
      • Using Filament v2.x or custom auth (e.g., API-only apps).
      • No need for role-switching (e.g., simple CRUD apps).
  • Tech Stack Dependencies:

    • Backend: Laravel 10/11, Filament 3.x, Eloquent.
    • Frontend: Inertia.js/Blade (no Vue/React required).
    • Dev Tools: Composer, Laravel Mix (if customizing assets).

Migration Path

  1. Pre-Integration:

    • Audit Filament version (composer show filament/filament).
    • Backup custom login templates (if overridden).
    • Verify user model extends Filament\User or implements required traits.
  2. Installation:

    composer require dutchcodingcompany/filament-developer-logins
    php artisan filament-developer-logins:install
    
    • Customization: Publish config/assets if needed:
      php artisan vendor:publish --tag="filament-developer-logins:config"
      php artisan vendor:publish --tag="filament-developer-logins:assets"
      
  3. Configuration:

    • Update .env to enable:
      FILAMENT_DEVELOPER_LOGINS_ENABLED=true
      
    • (Optional) Extend config/filament-developer-logins.php to:
      • Whitelist/blacklist users.
      • Customize button labels or icons.
      • Add user search/filtering.
  4. Testing:

    • Validate login buttons appear in /login (local only).
    • Test role-specific access (e.g., admin vs. editor).
    • Verify no conflicts with existing auth middleware.

Compatibility

Component Compatibility Workaround
Filament v3.x ✅ Full support -
Custom Login Blade ⚠️ May require overrides Extend Login class or use @stack('developer-logins') in custom blade.
Sanctum/Passport ⚠️ Limited (relies on Filament’s auth) Use Filament’s built-in auth or patch package.
Large User Base ⚠️ No pagination by default Add ->take(50) to user query in DeveloperLoginsServiceProvider.
CI/CD Environments ❌ Auto-enable in non-local envs is a risk Add if (!app()->environment('local')) return; guard in service provider.

Sequencing

  1. Phase 1: Proof of Concept (1–2 days)

    • Install in a staging environment.
    • Test with 3–5 user roles.
    • Validate no auth conflicts.
  2. Phase 2: Customization (0–3 days)

    • Adjust config for team-specific needs (e.g., user filtering).
    • Customize UI (CSS/JS) if needed.
  3. Phase 3: Documentation (0.5 days)

    • Add team wiki entry for:
      • How to use the login buttons.
      • Disabling in CI/CD.
      • Troubleshooting (e.g., missing buttons).
  4. Phase 4: Rollout (Immediate)

    • Deploy to dev teams.
    • Monitor for auth issues (e.g., failed logins).

Operational Impact

Maintenance

  • Package Updates:
    • Low Effort: Follows Filament’s release cadence. Update via Composer.
    • Breaking Changes: Monitor Filament major versions (e.g., v3.x → v4.x).
  • Customizations:
    • Config: Centralized in config/filament-developer-logins.php (easy to revert).
    • Blade/JS: Changes may need re-application after updates.
  • Deprecation Risk:
    • MIT license + active maintenance (last release: 2026). Low risk of abandonment.

Support

  • Troubleshooting:
    • Common Issues:
      • Buttons missing → Check FILAMENT_DEVELOPER_LOGINS_ENABLED and APP_ENV.
      • Auth failures → Validate user model traits (HasApiTokens, Authorizable).
    • Debugging Tools:
      • Laravel Logs (storage/logs/laravel.log).
      • Filament’s debug:dump command for auth data.
  • Vendor Support:
    • GitHub Issues: Responsive (61 stars, active CI).
    • SLA: Community-driven; prioritize for critical bugs.

Scaling

  • Performance:
    • User List: Queries all users by default. Optimization:
      • Add ->where('is_active', true) or pagination in DeveloperLoginsServiceProvider.
      • Cache user list if >100 users (e.g., Cache::remember()).
    • Login Load: Negligible impact (uses Filament’s existing auth stack
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.
jayeshmepani/jpl-moshier-ephemeris-php
elnasnato/laraliveui
labrodev/rest-sdk
sampaui/sampaui
babelqueue/php-sdk
facebook/capi-param-builder-php
babelqueue/symfony
hamzi/corewatch
minionfactory/raw-hydrator
hexters/coinpayment
rjcodes/rjcms
act-training/laravel-permissions-manager
alimarchal/laravel-chart-of-accounts
babenkoivan/elastic-scout-driver
mkwebdesign/filament-watchdog-v5
renatomarinho/laravel-page-speed
zedmagdy/filament-business-hours
renatovdemoura/blade-elements-ui
devgeek/beacon-admin
benjamin-rqt/data-watcher-bundle