{"id":13824342,"url":"https://github.com/laraform/laraform","last_synced_at":"2025-04-05T18:05:13.780Z","repository":{"id":54289208,"uuid":"184087120","full_name":"laraform/laraform","owner":"laraform","description":"Reactive Form Builder for Vue.js with Laravel Support","archived":false,"fork":false,"pushed_at":"2021-11-30T06:00:08.000Z","size":1767,"stargazers_count":373,"open_issues_count":1,"forks_count":41,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-03-29T17:02:25.505Z","etag":null,"topics":["form","form-builder","form-generator","laraform","laravel","laravel-framework","vue","vuejs"],"latest_commit_sha":null,"homepage":"https://laraform.io","language":"SCSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/laraform.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null}},"created_at":"2019-04-29T14:31:52.000Z","updated_at":"2025-02-16T13:31:12.000Z","dependencies_parsed_at":"2022-08-13T11:01:11.777Z","dependency_job_id":null,"html_url":"https://github.com/laraform/laraform","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/laraform%2Flaraform","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/laraform%2Flaraform/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/laraform%2Flaraform/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/laraform%2Flaraform/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/laraform","download_url":"https://codeload.github.com/laraform/laraform/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247378135,"owners_count":20929296,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["form","form-builder","form-generator","laraform","laravel","laravel-framework","vue","vuejs"],"created_at":"2024-08-04T09:01:01.253Z","updated_at":"2025-04-05T18:05:13.740Z","avatar_url":"https://github.com/laraform.png","language":"SCSS","funding_links":[],"categories":["CSS","Components \u0026 Libraries","UI Components [🔝](#readme)","UI Components","Packages"],"sub_categories":["UI Components","Form","Web Forms"],"readme":"\u003cdiv align=\"center\"\u003e\n\n\u003ca href=\"https://laraform.io\"\u003e\u003cimg src=\"assets/logo.svg\" style=\"margin: 20px auto 10px\" width=\"220\"\u003e\u003c/a\u003e\n\nDynamic Form Builder for Laravel with Vue.js\n\nCreate even the most complex forms with ease, using two-sided validation, \u003cbr\u003e eloquent, nested elements, conditional logic, wizards and many more.\n\n\u003ca href=\"https://laraform.io\"\u003e\u003cimg src=\"screenshots/screencast-1.gif\" style=\"margin: 24px auto 24px\" width=\"540\"\u003e\u003c/a\u003e\n\n\u003c/div\u003e\n\n# Laraform Community Edition (Vue.js)\n\nLaraform is a premium library aiming to become the world's best form builder tool for web developers. It enhances collaboration by standardizing the creation of forms and increases efficiency by eliminating tons of repetitive work. Laraform comes with a lighter \"Community Edition\" and a full version which can be purchased at our [website](https://laraform.io/pricing).\n\n## Features\n\nFull features of Laraform:\n\n* Two-sided validation\n* 54 Laravel compatible frontend validators\n* Eloquent ORM support\n* Multiple file uploads\n* 34+ built-in elements\n* Nested elements\n* Repeatable elements\n* Translatable elements\n* Conditional logic\n* Form wizard\n* Localization\n* Theming\n* Extensibility\n\n## Examples\n\n* [Shopify checkout clone](https://laraform.io/examples#shopify)\n* [Login with backend support](https://laraform.io/examples#login)\n* [Element examples](https://laraform.io/examples#elements)\n\n## Browser Support\n\nLaraform aims to support the latest versions of:\n\n* Google Chrome\n* Firefox\n* Apple Safari\n* Microsoft Edge\n* Opera\n* Safari iOS\n* Chrome, Firefox and Default Browser Android\n\n## Installation\n\nLaraform is a full-stack library which comes with a separate frontend and backend library. This will install Laraform's Community Edition. For the full package please [check out our website](https://laraform.io/pricing).\n\nInstall frontend library for Vue.js:\n\n``` bash\nnpm i laraform --save\n```\n\nMake sure you have the following peer dependencies installed:\n\n```\nnpm i axios lodash moment vue --save\n```\n\nInstall backend library for Laravel:\n\n``` bash\ncomposer require laraform/laraform-laravel\n```\n\nPublish assets:\n``` bash\nphp artisan vendor:publish\n```\n\nWhen asked, choose: `Laraform\\LaraformServiceProvider`. This will publish a config file at `config/laraform.php`.\n\n## Usage\n\nCreate a form at `app\\Forms\\FirstForm.php`:\n\n``` php\n\u003c?php\n\nnamespace App\\Forms;\n\nclass FirstForm extends \\Laraform\n{\n  public function schema() {\n    return [\n      'hello_world' =\u003e [\n        'type' =\u003e 'text',\n        'label' =\u003e 'Hello',\n        'default' =\u003e 'World'\n      ]\n    ];\n  }\n}\n```\n\nPass the form to view in `routes/web.php` using `app()` function:\n\n``` php\nRoute::get('/', function () {\n  return view('welcome', [\n    'form' =\u003e app('App\\Forms\\FirstForm')\n  ]);\n});\n```\n\nSet up rendering in view in `resources/views/welcome.blade.php`:\n\n``` html\n\u003c!DOCTYPE html\u003e\n\u003chtml lang=\"{{ str_replace('_', '-', app()-\u003egetLocale()) }}\"\u003e\n  \u003chead\u003e\n    \u003cmeta charset=\"utf-8\"\u003e\n    \u003cmeta name=\"viewport\" content=\"width=device-width, initial-scale=1\"\u003e\n    \u003cmeta name=\"csrf-token\" content=\"{{ csrf_token() }}\"\u003e\n\n    \u003ctitle\u003eLaravel\u003c/title\u003e\n\n    \u003clink rel=\"stylesheet\" type=\"text/css\" href=\"/css/app.css\"\u003e\n  \u003c/head\u003e\n  \u003cbody\u003e\n    \u003cdiv id=\"app\"\u003e\n      {!! $form-\u003erender() !!}\n    \u003c/div\u003e\n\n    \u003cscript src=\"/js/app.js\"\u003e\u003c/script\u003e\n  \u003c/body\u003e\n\u003c/html\u003e\n```\n\nInclude `Laraform` in `resources/js/app.js`:\n\n``` javascript\nrequire('./bootstrap');\n\nimport Vue from 'vue'\nimport Laraform from 'laraform'\n\nVue.use(Laraform)\n\nconst app = new Vue({\n  el: '#app',\n})\n```\n\nImport theme in `resources/sass/app.scss`:\n\n``` scss\n@import 'laraform/src/themes/default/scss/theme.scss';\n```\n\nIf you are planning to use a CSS framework, like Bootstrap, make sure you include its theme file **before** Laraform's theme, so that Laraform can make use of the CSS framework's variables.\n\nThis is how it should look like in case of Bootstrap 4:\n\n``` scss\n// Bootstrap 4's main theme file\n@import 'bootstrap/scss/bootstrap';\n\n// Laraform's theme file created for Bootstrap 4\n@import 'laraform/src/themes/bs4/scss/theme.scss';\n```\n\nLaraform currently support Bootstrap 3 and Bootstrap 4. **If you are using one of those also make sure to change the global `theme` in  `config/laraform.php` to `bs3` or `bs4`:**\n\n``` php\n// ...\n'theme' =\u003e 'bs4',\n\n// ...\n```\n\nCompile your assets with:\n\n``` bash\nnpm run dev\n```\n\nLaunch your site for example with:\n\n``` bash\nphp artisan serve\n```\n\nNow if you load the site you should see a very simple form with one single input. Check out our [docs](https://laraform.io/docs) to learn how to create more advanced forms.\n\nYou can also download [Examples](https://github.com/laraform/examples) to see more forms in action.\n\n## Feature Comparison\n\n|  | Full Version | Community Edition |\n| --- | --- | --- |\n| **Backend support** | ✔ | ✔ |\n| **Elements** | all | checkbox, checkbox group, hidden, key, meta, \u003cbr\u003emultiselect (native), password, radio, radio group, static, \u003cbr\u003etextarea, text  |\n| **File uploads** | ✔ | - |\n| **Nested elements** | ✔ | - |\n| **Custom elements** | ✔ | ✔ |\n| **Translatable elements** | ✔ | - |\n| **Localization** | ✔ | ✔ |\n| **Custom locales** | ✔ | ✔ |\n| **Validation** | ✔ | ✔ |\n| **Validation rules** | all | accepted, alpha, alpha_dash, alpha_num, between,\u003cbr\u003e boolean, digits, digits_between, email, filled, in, \u003cbr\u003einteger, ip, ipv4, ipv6, json, max, min, not_in, not_regex, \u003cbr\u003enumeric, regex, required, size, string, timezone, url, uuid |\n| **Custom rules** | ✔ | ✔ |\n| **Conditions** | ✔ | - |\n| **Tabs** | ✔ | - |\n| **Wizard** | ✔ | - |\n| **Events \u0026 hooks** | ✔ | ✔ |\n| **Buttons** | ✔ | ✔ |\n| **Themes** | all | all |\n| **Custom themes** | ✔ | - |\n| **Custom styles** | ✔ | ✔ |\n| **Custom layout** | ✔ | ✔ |\n| **Code splitting** | ✔ | - |\n| | [Get Full version](https://laraform.io/pricing) | [Try out Community Edition](#installation) |\n\n## Documentation\n\nA complete [Developer Guide](https://laraform.io/docs/1.x/basics/rendering) and [API Reference](https://laraform.io/docs/1.x/reference/frontend-form) is available at Laraform website.\n\n## Issue Tracking\n\nLaraform uses [GitHub Issues](/laraform/laraform/issue) for official bug tracking. Please follow our issue template to help us hunt down bugs as efficiently as possible.\n\n## Support \u0026 Contribution\n\nIf you have any questions about Laraform or interested in contributing, please drop us a line at hello@laraform.io. We are happy for receiving feedbacks as well as growing our enthusiastic developer team.\n\n## License\n\nLaraform Community Edition comes with an GPL license so you are free to use this library in your projects. For the full version check out the license at [our website](https://laraform.io/pricing).\n\n## Vueform\n\nIf you are looking for a form builder library that specifically focuses on Vue.js, check out [vueform.com](https://vueform.com).","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flaraform%2Flaraform","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flaraform%2Flaraform","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flaraform%2Flaraform/lists"}