meghdadfadaee / nova-form-card
Submit-capable Laravel Nova 5 cards built with standard Nova fields.
1.0.0
2026-07-10 00:50 UTC
Requires
- php: ^8.2
- illuminate/contracts: ^11.0|^12.0|^13.0
- illuminate/http: ^11.0|^12.0|^13.0
- illuminate/routing: ^11.0|^12.0|^13.0
- illuminate/support: ^11.0|^12.0|^13.0
- illuminate/validation: ^11.0|^12.0|^13.0
- laravel/nova: ^5.0
Requires (Dev)
- nunomaduro/collision: ^8.0|^9.0|^10.0
- orchestra/testbench: ^9.0|^10.0|^11.0
- pestphp/pest: ^3.0|^4.0
- pestphp/pest-plugin-laravel: ^3.0|^4.0
README
Submit-capable Laravel Nova 5 cards powered by standard Nova fields.
nova-form-card gives Nova cards an Action-like flow: define fields, validate input, submit to a card endpoint, run handle(), and return a structured response.
Why
Nova cards are great for dashboards, but they are usually display-only. This package lets you build reusable form cards without creating a Nova resource page or a custom tool.
Features
- Use native Nova fields inside a card
- Submit data to a package route
- Validate with Nova field
rules()/creationRules() - Receive values through
FormFields - Show validation errors beside fields
- Support
dependsOn(), uploads, loading state, custom submit text, and authorization - Return success, error, redirect, or refresh responses
- Render display-only Nova fields such as
Badge,Heading,Stack,Status, andSparkline
Requirements
- PHP
^8.2 - Laravel
^11|^12|^13 - Laravel Nova
^5
Installation
composer require meghdadfadaee/nova-form-card
Laravel auto-discovers the service provider.
Optional publishes:
php artisan vendor:publish --tag=nova-form-card-config php artisan vendor:publish --tag=nova-form-card-translations
Quick Look
class InviteUserCard extends FormCard { public function fields(NovaRequest $request): array { return [ Text::make(__('Email'))->rules('required', 'email'), ]; } public function handle(FormFields $fields, NovaRequest $request): mixed { return static::message(__('Invitation sent.')); } }
Register it anywhere Nova accepts cards.
public function cards(NovaRequest $request): array { return [ new InviteUserCard(), ]; }
Documentation
Read the full documentation in docs/documentation.md.
Useful files:
Testing
composer install vendor/bin/pest
License
Nova Form Card is open-sourced software licensed under the MIT license.
