PHPackages                             zofe/dataform - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Database &amp; ORM](/categories/database)
4. /
5. zofe/dataform

ActiveLibrary[Database &amp; ORM](/categories/database)

zofe/dataform
=============

Form helper / builder with eloquent support, for Deficient

1.0.7(11y ago)024MITPHPPHP &gt;=5.3.2

Since Nov 1Pushed 11y ago1 watchersCompare

[ Source](https://github.com/zofe/dataform)[ Packagist](https://packagist.org/packages/zofe/dataform)[ Docs](https://github.com/zofe/dataform)[ RSS](/packages/zofe-dataform/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (2)Versions (9)Used By (0)

DataForm
========

[](#dataform)

DataForm is a form builder By default it produce Bootstrap 3 compatible output.

At this moment is built on [Deficient](https://github.com/zofe/deficient) (a subset of laravel components including eloquent and blade, plus [burp](https://github.com/zofe/burp) router). The plan is to make it compatible also with laravel, as standard package.

It can

- Make a Form
- Bind the form with an eloquent model

usage
-----

[](#usage)

as form helper:

```
    $form = DataForm::create();
    $form->text('title','Title'); //field name, label
    $form->text('body','Body')->rule('required'); //validator
    $form->submit('Save');
    $form->saved(function() use ($form)
    {
        //do something with post values, then..

        $form->message("ok record saved");
        $form->linkRoute("home","Back to the Form");
    });
    ...
```

form with model binding (preset values and store new values on save):

```
    $form = DataForm::source(User::find(1));
    $form->text('title','Title'); //field name, label
    $form->textarea('body','Body')->rule('required'); //validation
    $form->checkbox('public','Public');
    $form->select('role', 'Role')->options(Role::lists("name", "id"));
    $form->submit('Save');
    $form->saved(function() use ($form)
    {
        $form->message("ok record saved");
        $form->linkRoute("home","Back to the Form");
    });
    ...
```

for field "rules" you can reference to laravel validation

note that @ this time:

- there are only text,textarea,select and checkbox fields
- model-binding still not support relations

why not starting from laravel?
------------------------------

[](#why-not-starting-from-laravel)

We choose "deficient" (a subset of laravel components) to be more isoladed, and give the ability to use it stand-alone or embedded in any other project.

Installation
------------

[](#installation)

install via composer

```
{
    "require": {
        "zofe/dataform": "dev-master"
    }
}

```

Setup
-----

[](#setup)

To configure database, views, you must reference to [Deficient](https://github.com/zofe/deficient)
This is a small how-to

- create minimum folders / configuration files
- deploy dataform views
- deploy a front controller and a sample (optional, but suggested)

```
  $ php vendor/zofe/deficient/deficient setup:folders
  $ php vendor/zofe/dataform/dataform setup:views
  $ php vendor/zofe/dataform/dataform setup:router

```

###  Health Score

27

—

LowBetter than 49% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity63

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~1 days

Total

8

Last Release

4204d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/261951?v=4)[Felice Ostuni](/maintainers/zofe)[@zofe](https://github.com/zofe)

---

Top Contributors

[![zofe](https://avatars.githubusercontent.com/u/261951?v=4)](https://github.com/zofe "zofe (23 commits)")

---

Tags

phplaraveleloquentformdataformdeficient

### Embed Badge

![Health badge](/badges/zofe-dataform/health.svg)

```
[![Health](https://phpackages.com/badges/zofe-dataform/health.svg)](https://phpackages.com/packages/zofe-dataform)
```

###  Alternatives

[spiritix/lada-cache

A Redis based, automated and scalable database caching layer for Laravel

591444.8k2](/packages/spiritix-lada-cache)[io238/laravel-iso-countries

Ready-to-use Laravel models and relations for country (ISO 3166), language (ISO 639-1), and currency (ISO 4217) information with multi-language support.

5462.3k](/packages/io238-laravel-iso-countries)[sebastiaanluca/laravel-boolean-dates

Automatically convert Eloquent model boolean attributes to dates (and back).

40111.7k1](/packages/sebastiaanluca-laravel-boolean-dates)[matchory/elasticsearch

The missing elasticsearch ORM for Laravel!

3059.0k](/packages/matchory-elasticsearch)[kiwilan/typescriptable-laravel

PHP package for Laravel to type Eloquent models, routes, Spatie Settings with autogenerated TypeScript. If you want to use some helpers with Inertia, you can install associated NPM package.

3920.9k](/packages/kiwilan-typescriptable-laravel)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
