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.
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
atriumphp/atrium
sandermuller/package-boost-laravel
sandermuller/boost-skills
redaxo/core
yusufgenc/filament-api-forge
l3aro/rating-star-for-filament
leek/filament-subtenant-scope