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 Survey Laravel Package

tapp/filament-survey

View on GitHub
Deep Wiki
Context7

Technical Evaluation

Architecture Fit

  • Filament 3.2+ and Laravel 12 Support: The package now explicitly supports Filament 3.2+ and Laravel 12, broadening compatibility for newer Laravel ecosystems. This is critical for teams adopting these versions, as it reduces friction for integration into modern stacks.
  • Survey Core Functionality Unchanged: The underlying laravel-survey dependency (with Tapp’s translatable/sortable modifications) remains the same, preserving the structured survey engine for CRUD, analytics, and reporting.
  • Modularity Retained: The plugin remains self-contained, making it suitable for feature-flagged survey modules or optional admin panel extensions in larger applications.
  • Translatability and Sortability: The translatable/sortable features of the forked laravel-survey are still available, valuable for global applications or localized user experiences.

Integration Feasibility

  • Laravel 12 + Filament 3.2+: The package now enforces Laravel 12 and Filament 3.2+ compatibility, which may require upgrades for teams still on Laravel 10/Filament 3.x. However, this aligns with Laravel’s long-term support (LTS) roadmap, reducing long-term technical debt.
  • Database Schema: No changes to the schema are mentioned, so migration compatibility remains tied to laravel-survey tables (e.g., surveys, questions, responses). Existing apps must still verify schema alignment.
  • Filament Resource Overrides: The plugin continues to add Filament resources for surveys/questions/responses. Teams using custom Filament resources for similar entities must still address potential naming conflicts or UI duplication.
  • Excel Dependency: The maatwebsite/excel requirement persists, adding a heavy dependency if not already in use. No changes here impact feasibility.

Technical Risk

Risk Area Severity Mitigation Strategy Update for v3.2.0
Filament/Laravel Version Lock High Ensure Filament 3.2+ and Laravel 12 are used; test thoroughly before upgrading. New: Now requires Laravel 12 and Filament 3.2+. Teams on older versions must upgrade.
Survey Schema Conflicts Medium Audit existing DB schema; use laravel-survey migrations carefully. Unchanged
Translatability Overhead Medium Test performance impact if surveys have many translations. Unchanged
Excel Dependency Bloat Low Only a risk if the app avoids Excel-related packages. Unchanged
Plugin Maintenance Low TappNetwork is active (recent 2025 release), but long-term support depends on adoption. Unchanged

Key Questions

  1. Are you using Laravel 12 or Filament 3.2+?
    • If not, evaluate the upgrade cost (testing, compatibility, and potential breaking changes).
  2. Does the app already use surveys or similar data collection?
    • If yes, assess schema conflicts or duplication of effort.
  3. Is Filament 3.2+ already in use?
    • If not, evaluate the cost of adopting Filament for this feature.
  4. Are multi-language surveys a requirement?
    • The translatable feature is unique but may add complexity.
  5. What analytics/reporting needs exist?
    • The package provides basic Filament resources; advanced analytics may require customization.
  6. Is Excel export a must-have?
    • If not, the maatwebsite/excel dependency can be deferred.
  7. What is your Laravel upgrade timeline?
    • Delaying upgrades may leave the app unsupported if Laravel 10 drops LTS.

Integration Approach

Stack Fit

  • Best For:
    • Laravel 12 SaaS platforms needing user feedback (e.g., NPS, CSAT).
    • Filament 3.2+ admin panels where survey management fits naturally.
    • Internal tools requiring structured data collection (e.g., employee surveys).
  • Less Ideal For:
    • Projects not using Filament 3.2+ (would require building a separate admin UI or delaying upgrades).
    • Applications needing real-time survey analytics (this is a CRUD-focused plugin).
    • Lightweight form solutions (use Laravel Nova or FormKit instead).
  • Updated for v3.2.0:
    • Laravel 12 is now a hard requirement, which may necessitate stack upgrades for teams still on Laravel 10/11.

Migration Path

  1. Prerequisite Setup:
    • Upgrade to Laravel 12 and Filament 3.2+ (if not already using them).
    • Ensure PHP 8.2+ and Composer dependency management.
  2. Dependency Installation:
    composer require tapp/filament-survey:^3.2
    composer require matt-daneshvar/laravel-survey spatie/eloquent-sortable maatwebsite/excel
    
    • Note: The package version is now pinned to ^3.2 to ensure compatibility.
  3. Publish Assets & Config:
    php artisan vendor:publish --tag="filament-survey-config"
    php artisan vendor:publish --tag="filament-survey-migrations"
    
  4. Run Migrations:
    php artisan migrate
    
  5. Register Plugin in Filament: Add to app/Providers/Filament/AdminPanelProvider.php:
    return [
        // ...
        'plugins' => [
            \Tapp\FilamentSurvey\FilamentSurveyPlugin::make(),
        ],
    ];
    
  6. Customization (Optional):
    • Extend survey models (e.g., add custom fields).
    • Override Filament resources for branding or additional fields.

Compatibility

  • Filament 3.2+: Fully supported; earlier versions (e.g., 3.1) may break.
  • Laravel 12: Now a hard requirement; Laravel 10/11 will not work.
  • Laravel Survey: Uses a forked version with translatable/sortable features. Ensure no breaking changes in upstream laravel-survey.
  • Database: Assumes a fresh laravel-survey schema. Existing survey data may require manual mapping.
  • Theming: Follows Filament’s styling system; can be customized via CSS or Filament’s theme overrides.

Sequencing

  1. Phase 0: Stack Upgrade (if needed)
    • Upgrade to Laravel 12 and Filament 3.2+.
    • Test all existing features post-upgrade.
  2. Phase 1: Core Integration
    • Install dependencies and basic plugin setup.
    • Test CRUD operations for surveys/questions/responses.
  3. Phase 2: Data Migration (if applicable)
    • Map existing survey data to laravel-survey schema.
  4. Phase 3: Customization
    • Extend models/resources for app-specific needs.
    • Implement translatable fields if required.
  5. Phase 4: Analytics & Reporting
    • Leverage Filament’s built-in tools or build custom dashboards.
    • Test Excel exports for large datasets.

Operational Impact

Maintenance

  • Dependency Updates:
    • Monitor tapp/filament-survey:^3.2, laravel-survey, and Filament for breaking changes.
    • The plugin’s forked laravel-survey may diverge from upstream; track TappNetwork’s updates.
    • Laravel 12 introduces new features (e.g., model macros, improved routing) that may require adaptation in custom survey logic.
  • Plugin-Specific:
    • Filament resources may need updates if the app’s Filament version upgrades beyond 3.2.
    • Excel exports could require maintenance if maatwebsite/excel is updated.
  • Long-Term Support:
    • Low risk: TappNetwork is active, but the package has no dependents, suggesting niche use. Consider forking if critical.
    • Laravel 12 LTS: Aligns with Laravel’s support cycle, reducing long-term maintenance overhead.

Support

  • Troubleshooting:
    • Debugging Filament resource issues may require familiarity with Filament’s internals.
    • Survey logic issues could span Laravel Survey, Filament, and custom code.
    • Laravel 12 changes (e.g., new query builder methods) may affect survey queries.
  • Community:
    • Limited stars (31) and dependents (0) imply small user base. Support may rely on GitHub issues or TappNetwork’s responsiveness.
  • Documentation:
    • Good: Includes README, changelog, and
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.
daikazu/eloquent-salesforce-objects
unseen-codes/chat
romalytar/yammi-jobs-monitoring-laravel
kisame76/filament-db-table-state
nqxcode/laravel-lucene-search
dpfx/laravel-livewire-wizards
workos/workos-php-laravel
sofa/laravel-global-scope
nawasara/auth-primitives
adhocrat-io/arkhe-main
make-dev/orca-harpoon
itsemon245/lamet
baks-dev/dashboard
amoifr/pickle-panther-bundle
make-dev/orca
dmstr/symfony-system-resources-bundle
dmstr/symfony-job-queue-bundle
dmstr/openapi-json-schema-bundle
dmstr/keycloak-security-bundle
dmstr/doctrine-audit-log-bundle