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

Easy Laravel Form Laravel Package

formfy/easy-laravel-form

Laravel form generator for building and rendering forms quickly. Define fields via a DBFormBuilder class, bind models, handle validation errors from the session, customize field options (text/select), and set submit labels, then render in Blade with minimal code.

View on GitHub
Deep Wiki
Context7

Formfy Laravel Form Generator

Formfy is a laravel package for easy form creation. It allows developers to build forms quickly, bind models, handle errors, and customize fields effortlessly.


Installation

You can install the package via Composer:

composer require formfy/easy-laravel-form

Create your first form

Import the package for the form database builder.

use Kian\EasyLaravelForm\DBFormBuilder

StudentForm.php

This student extends the DBFormBuilder class that generate the forms.

class StudentForm extends DBFormBuilder
{
    public function __construct(string $action = '', ?Model $model = null, $method = 'POST', $errors = [])
    {

        if (session()->has('errors') && session('errors') instanceof MessageBag) {
            $this->errors = session('errors')->getBag('default')->getMessages();
        }

        parent::__construct($action, $method, $errors, $model);
        $this->studentForm();
    }


    public function studentForm(): void
    {

        $this->addField('text', 'firstname', 'Firstname', ['placeholder' => 'Enter your firstname'])
            ->addField('text', 'middlename', 'Middlename', ['placeholder' => 'Enter your middlename'])
            ->addField('text', 'lastname', 'Lastname', ['placeholder' => 'Enter your lastname'])
            ->addField('text', 'age', 'Age', ['placeholder' => 'Enter your age'])
            ->addField('text', 'address', 'Permanent Address', ['placeholder' => 'Enter your permanent address'])
            ->addField('select', 'gender', 'Gender', ['options' => ['Male' => 'Male', 'Female' => 'Female']])
            ->addField('select', 'extension', 'Extension', ['options' => ['' => 'None', 'Jr' => 'Jr.', 'Sr' => 'Sr.']])
            ->addField('text', 'student_id', 'Student ID', ['placeholder' => 'Enter your student id'])
            ->setSubmitLabel('Submit');
    }
}
?>

StudentController.php

<?php
    public function create(): View
    {
        $form = new StudentForm(route('students.store'));
        $studentForm = $form->render();
        return view('student.create',compact('studentForm'));
    }
?>

create.blade.php

{!! $studentForm !!}
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.
nexmo/api-specification
capell-app/block-library
axium/identity
cetria/laravel-dummy-models
cetria/reflection-helper
agropredict/sso-auth-bundle
evolvestudio/spam-protection
datacore/hub-sdk
develia/commons
cuci/prototurk-sdk
cuci/prototurk-sdk-symfony
develia/geo-bundle
dreamzy/livewire-charts
touchestate-sdk/php-sdk
ecotone/kafka
22h/doctrine-garbage-collection-bundle
agtp/agtp-php
agtp/mod-php
splash/sonata-admin
splash/metadata