{"componentChunkName":"component---gatsby-theme-teklog-src-templates-post-tsx","path":"/is-it-beneficial-to-add-laravel-collective-html-package-into-your-laravel-project","result":{"data":{"site":{"siteMetadata":{"siteUrl":"https://blog.tekmi.nl","author":{"name":"Teklog","avatar":"/img/tekmi-icon.svg"}}},"blogPost":{"frontmatter":{"title":"Is it beneficial to add Laravel Collective HTML package into your Laravel project?","slug":"is-it-beneficial-to-add-laravel-collective-html-package-into-your-laravel-project","series":null,"date":"2017-07-10","datePretty":"10 July, 2017","coverImage":{"childImageSharp":{"fixed":{"base64":"data:image/jpeg;base64,/9j/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wgARCAAPABQDASIAAhEBAxEB/8QAGQAAAgMBAAAAAAAAAAAAAAAAAAUBAwQG/8QAFgEBAQEAAAAAAAAAAAAAAAAAAAEC/9oADAMBAAIQAxAAAAHbKqvLoRIJ/8QAGRAAAwEBAQAAAAAAAAAAAAAAAAECAyER/9oACAEBAAEFAq3iSdoo6cQ59E2l/8QAFBEBAAAAAAAAAAAAAAAAAAAAEP/aAAgBAwEBPwE//8QAFREBAQAAAAAAAAAAAAAAAAAAABL/2gAIAQIBAT8Bpb//xAAZEAEAAgMAAAAAAAAAAAAAAAAAETEBEFH/2gAIAQEABj8C6uF6yh//xAAeEAACAgAHAAAAAAAAAAAAAAAAAREhMUFRYYGx8f/aAAgBAQABPyGFxlpkNK5CfQaYujYJFVHSP//aAAwDAQACAAMAAAAQ2y//xAAXEQEAAwAAAAAAAAAAAAAAAAAAAREh/9oACAEDAQE/EKhj/8QAFhEBAQEAAAAAAAAAAAAAAAAAAAER/9oACAECAQE/EI4f/8QAHRABAAICAgMAAAAAAAAAAAAAAQARITFBcVFhkf/aAAgBAQABPxAytLzTMAi86rR91PInoSiAQT1xAs0Ri3jqGj0BnE//2Q==","width":1000,"height":750,"src":"/static/dee0051b0ac0981d7cbd508c841e999c/a7715/oldShedInField.jpg","srcSet":"/static/dee0051b0ac0981d7cbd508c841e999c/a7715/oldShedInField.jpg 1x"}}},"author":null,"authorAvatar":null},"timeToRead":12,"excerpt":"Introduction Laravel Collective is a set of components that have been removed from Laravel's core framework and are no longer maintained by Taylor…","html":"<h2 id=\"introduction\" style=\"position:relative;\"><a href=\"#introduction\" aria-label=\"introduction permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Introduction</h2>\n<p><a href=\"https://laravelcollective.com/\">Laravel Collective</a> is a set of components that have been removed from Laravel's core framework and are no longer maintained by Taylor Otwell. Instead there is <a href=\"https://github.com/orgs/LaravelCollective/people\">group of volunteers</a> who decided to maintain following once famous packages:</p>\n<ul>\n<li><a href=\"https://github.com/LaravelCollective/annotations\">laravelcollective/annotations</a> - allows to use annotation in PHP Docblocks, such as (@Hears, @Get, @Middleware)</li>\n<li><a href=\"https://github.com/LaravelCollective/html\">laravelcollective/html</a> - delivers Form and Html conveniences (via HtmlBuilder aka Html facade and FormBuilder aka Form facade)</li>\n<li><a href=\"https://github.com/LaravelCollective/remote\">laravelcollective/remote</a> - allows to SSH into remote servers and run commands (via SSH facade)</li>\n<li><a href=\"https://github.com/LaravelCollective/iron-queue\">laravelcollective/iron-queue</a> - ensures IronMQ support for the Laravel queue (not ready for Laravel 5.4 yet)</li>\n<li><a href=\"https://github.com/LaravelCollective/bus\">laravelcollective/bus</a> - delivers Laravel Command Bus functionality (not ready for Laravel 5.4 yet)</li>\n</ul>\n<p>In this tutorial, we are going to examine <em>laravelcollective/html</em>, trying to verify its usefulness in your future projects. Let's start then!</p>\n<h2 id=\"assumptions\" style=\"position:relative;\"><a href=\"#assumptions\" aria-label=\"assumptions permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Assumptions</h2>\n<ul>\n<li>php and composer are installed</li>\n<li>laravel command is available</li>\n</ul>\n<h2 id=\"solution\" style=\"position:relative;\"><a href=\"#solution\" aria-label=\"solution permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Solution</h2>\n<p>Create Laravel project from scratch</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">laravel new testing-laravel-collective</code></pre></div>\n<p>As you probably know, Laravel base project comes with three packages</p>\n<div class=\"gatsby-highlight\" data-language=\"json\"><pre class=\"language-json\"><code class=\"language-json\"><span class=\"token property\">\"require\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">{</span>\n    <span class=\"token property\">\"php\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\">=5.6.4\"</span><span class=\"token punctuation\">,</span>\n    <span class=\"token property\">\"laravel/framework\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"5.4.*\"</span><span class=\"token punctuation\">,</span>\n    <span class=\"token property\">\"laravel/tinker\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"~1.0\"</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n<p>In order to add Laravel Collective Html package, update composer dependency as shown below</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">composer require <span class=\"token string\">\"laravelcollective/html\"</span><span class=\"token builtin class-name\">:</span><span class=\"token string\">\"^5.4.0\"</span></code></pre></div>\n<p>Please note that Laravel Collective Html is not standalone package, it requires <a href=\"https://github.com/LaravelCollective/html/blob/5.4/composer.json#L20\">five other illuminate packages</a> such as</p>\n<div class=\"gatsby-highlight\" data-language=\"json\"><pre class=\"language-json\"><code class=\"language-json\"><span class=\"token property\">\"require\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">{</span>\n  <span class=\"token property\">\"php\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\">=5.6.4\"</span><span class=\"token punctuation\">,</span>\n  <span class=\"token property\">\"illuminate/http\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"5.4.*\"</span><span class=\"token punctuation\">,</span>\n  <span class=\"token property\">\"illuminate/routing\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"5.4.*\"</span><span class=\"token punctuation\">,</span>\n  <span class=\"token property\">\"illuminate/session\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"5.4.*\"</span><span class=\"token punctuation\">,</span>\n  <span class=\"token property\">\"illuminate/support\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"5.4.*\"</span><span class=\"token punctuation\">,</span>\n  <span class=\"token property\">\"illuminate/view\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"5.4.*\"</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n<p>Typically, when you create new Laravel project, you are actually pulling <em>laravel/framework</em> package which <a href=\"https://github.com/laravel/framework/blob/5.4/composer.json#L41\">replaces all illuminate packages</a> required by Laravel Collective Html.</p>\n<div class=\"gatsby-highlight\" data-language=\"json\"><pre class=\"language-json\"><code class=\"language-json\"><span class=\"token property\">\"replace\"</span><span class=\"token operator\">:</span> <span class=\"token punctuation\">{</span>\n  <span class=\"token property\">\"illuminate/http\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"self.version\"</span><span class=\"token punctuation\">,</span>\n  <span class=\"token property\">\"illuminate/routing\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"self.version\"</span><span class=\"token punctuation\">,</span>\n  <span class=\"token property\">\"illuminate/session\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"self.version\"</span><span class=\"token punctuation\">,</span>\n  <span class=\"token property\">\"illuminate/support\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"self.version\"</span><span class=\"token punctuation\">,</span>\n  <span class=\"token property\">\"illuminate/view\"</span><span class=\"token operator\">:</span> <span class=\"token string\">\"self.version\"</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n<p>As a result, you only see <em>laravelcollective/html</em> package being added to your <em>composer.json</em>.</p>\n<p>If this part is clear, let's move on to adding Laravel Collective Html provider to the <em>providers</em> array of <strong>config/app.php</strong></p>\n<div class=\"gatsby-highlight\" data-language=\"php\"><pre class=\"language-php\"><code class=\"language-php\"> <span class=\"token single-quoted-string string\">'providers'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token punctuation\">[</span>\n     <span class=\"token comment\">// ...</span>\n     Collective\\<span class=\"token package\">Html<span class=\"token punctuation\">\\</span>HtmlServiceProvider</span><span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token keyword\">class</span><span class=\"token punctuation\">,</span>\n     <span class=\"token comment\">// ...</span>\n <span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span></code></pre></div>\n<p>If you enjoy Laravel Facades, don't forget to add two class aliases to the <em>aliases</em> array of <strong>config/app.php</strong></p>\n<div class=\"gatsby-highlight\" data-language=\"php\"><pre class=\"language-php\"><code class=\"language-php\"> <span class=\"token single-quoted-string string\">'aliases'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token punctuation\">[</span>\n     <span class=\"token comment\">// ...</span>\n     <span class=\"token single-quoted-string string\">'Form'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> Collective\\<span class=\"token package\">Html<span class=\"token punctuation\">\\</span>FormFacade</span><span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token keyword\">class</span><span class=\"token punctuation\">,</span>\n     <span class=\"token single-quoted-string string\">'Html'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> Collective\\<span class=\"token package\">Html<span class=\"token punctuation\">\\</span>HtmlFacade</span><span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token keyword\">class</span><span class=\"token punctuation\">,</span>\n     <span class=\"token comment\">// ...</span>\n <span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span></code></pre></div>\n<p>Installation part is over, so let's try to explore a few features from Laravel Collective Html package.</p>\n<h2 id=\"features\" style=\"position:relative;\"><a href=\"#features\" aria-label=\"features permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Features</h2>\n<h3 id=\"general-form-creation\" style=\"position:relative;\"><a href=\"#general-form-creation\" aria-label=\"general form creation permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>General Form creation</h3>\n<table>\n<thead>\n<tr>\n<th>Laravel Collective Html</th>\n<th>Laravel</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code class=\"language-text\">{!! Form::open([&#39;url&#39; =&gt; &#39;/&#39;]) !!}</code> <br/> <code class=\"language-text\">{!! Form::close() !!}</code></td>\n<td><code class=\"language-text\">&lt;form method=&quot;post&quot; action=&quot;{{ url(&#39;/&#39;) }}&quot; accept-charset=&quot;utf-8&quot;&gt;</code> <br /> <code class=\"language-text\">&lt;/form&gt;</code></td>\n</tr>\n</tbody>\n</table>\n<p>If you care about HTML naming conventions, please keep in mind that Laravel Collective Html produces form with uppercased <em>method</em> and <em>accept-charset</em> as shown below.</p>\n<div class=\"gatsby-highlight\" data-language=\"html\"><pre class=\"language-html\"><code class=\"language-html\"><span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>form</span> <span class=\"token attr-name\">method</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>POST<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">action</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>http://blogging.app<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">accept-charset</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>UTF-8<span class=\"token punctuation\">\"</span></span><span class=\"token punctuation\">></span></span>\n  <span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>input</span> <span class=\"token attr-name\">name</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>_token<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">type</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>hidden<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">value</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>XnZwoGRTD4GszGv1kgTuFO9U8rlmMCX4HH7evCdM<span class=\"token punctuation\">\"</span></span><span class=\"token punctuation\">></span></span>\n<span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;/</span>form</span><span class=\"token punctuation\">></span></span></code></pre></div>\n<h3 id=\"sophisticated-form-creation\" style=\"position:relative;\"><a href=\"#sophisticated-form-creation\" aria-label=\"sophisticated form creation permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Sophisticated Form creation</h3>\n<table>\n<thead>\n<tr>\n<th>Laravel Collective Html</th>\n<th>Laravel</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code class=\"language-text\">{!! Form::open([&#39;route&#39; =&gt; &#39;home&#39;, &#39;method&#39; =&gt; &#39;put&#39;, &#39;files&#39; =&gt; &#39;yes&#39;]) !!}</code> <br/> <code class=\"language-text\">{!! Form::close() !!}</code></td>\n<td><code class=\"language-text\">&lt;form method=&quot;post&quot; action=&quot;{{ route(&#39;home&#39;) }}&quot; accept-charset=&quot;utf-8&quot; enctype=&quot;multipart/form-data&quot;&gt;</code> <br /> <code class=\"language-text\">{{ method_field(&#39;PUT&#39;) }}</code> <br /> <code class=\"language-text\">{{ csrf_field() }}</code> <br /> <code class=\"language-text\">&lt;/form&gt;</code></td>\n</tr>\n</tbody>\n</table>\n<h3 id=\"form-model-bindings\" style=\"position:relative;\"><a href=\"#form-model-bindings\" aria-label=\"form model bindings permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Form Model Bindings</h3>\n<p>Having following user</p>\n<div class=\"gatsby-highlight\" data-language=\"json\"><pre class=\"language-json\"><code class=\"language-json\"><span class=\"token punctuation\">{</span>\n  <span class=\"token property\">\"id\"</span><span class=\"token operator\">:</span><span class=\"token number\">1</span><span class=\"token punctuation\">,</span>\n  <span class=\"token property\">\"name\"</span><span class=\"token operator\">:</span><span class=\"token string\">\"Miss Dianna Funk\"</span><span class=\"token punctuation\">,</span>\n  <span class=\"token property\">\"email\"</span><span class=\"token operator\">:</span><span class=\"token string\">\"isadore.farrell@example.com\"</span><span class=\"token punctuation\">,</span>\n  <span class=\"token property\">\"active\"</span><span class=\"token operator\">:</span><span class=\"token number\">0</span><span class=\"token punctuation\">,</span>\n  <span class=\"token property\">\"created_at\"</span><span class=\"token operator\">:</span><span class=\"token string\">\"2017-07-08 16:30:36\"</span><span class=\"token punctuation\">,</span>\n  <span class=\"token property\">\"updated_at\"</span><span class=\"token operator\">:</span><span class=\"token string\">\"2017-07-08 16:30:36\"</span>\n<span class=\"token punctuation\">}</span></code></pre></div>\n<p>passed to the Blade template, you can easily <a href=\"https://laravelcollective.com/docs/master/html#form-model-binding\">bind it to the form</a>, using <code class=\"language-text\">Form::model</code> method, instead of <code class=\"language-text\">Form::open</code>.</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\"><span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form::model<span class=\"token punctuation\">(</span><span class=\"token variable\">$user</span>, <span class=\"token punctuation\">[</span><span class=\"token string\">'action'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token string\">'HomeController@user'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form::label<span class=\"token punctuation\">(</span><span class=\"token string\">'email'</span>, <span class=\"token string\">'E-mail Address'</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form::email<span class=\"token punctuation\">(</span><span class=\"token string\">'email'</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form::label<span class=\"token punctuation\">(</span><span class=\"token string\">'active'</span>, <span class=\"token string\">'Is Active?'</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form::checkbox<span class=\"token punctuation\">(</span><span class=\"token string\">'active'</span>, <span class=\"token string\">'Yes'</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form::label<span class=\"token punctuation\">(</span><span class=\"token string\">'updatedAt'</span>, <span class=\"token string\">'Updated At'</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form::date<span class=\"token punctuation\">(</span><span class=\"token string\">'updatedAt'</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form::label<span class=\"token punctuation\">(</span><span class=\"token string\">'created_at'</span>, <span class=\"token string\">'&lt;strong>Created At&lt;/strong>'</span>, <span class=\"token punctuation\">[</span><span class=\"token string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token string\">'btn btn-success'</span>, <span class=\"token string\">'id'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token string\">'created_at_id'</span><span class=\"token punctuation\">]</span>, <span class=\"token boolean\">false</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form::datetime<span class=\"token punctuation\">(</span><span class=\"token string\">'created_at'</span>, null, <span class=\"token punctuation\">[</span><span class=\"token string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token string\">'btn'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form::submit<span class=\"token punctuation\">(</span><span class=\"token string\">'Edit'</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form::close<span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span></code></pre></div>\n<p>However there are some caveats.</p>\n<ul>\n<li>if you want to use <code class=\"language-text\">Form::date</code>, make sure your model formats Carbon object properly. In order to do it, you could use <a href=\"https://laravel.com/docs/5.4/eloquent-mutators\">Eloquent Mutators</a> or benefit from trait <code class=\"language-text\">Collective\\Html\\Eloquent\\FormAccessible</code></li>\n<li>you must name your inputs exactly the same as properties in your Eloquent model. You will face the wall if you intend to construct the input names as arrays such as <code class=\"language-text\">user[email]</code>, <code class=\"language-text\">user[updatedAt]</code>.</li>\n</ul>\n<p>If you wanted to achieve the same with plain Laravel, here is the snippet</p>\n<div class=\"gatsby-highlight\" data-language=\"html\"><pre class=\"language-html\"><code class=\"language-html\"><span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>form</span> <span class=\"token attr-name\">action</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>{{ action('HomeController@user') }}<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">method</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>post<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">accept-charset</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>utf-8<span class=\"token punctuation\">\"</span></span><span class=\"token punctuation\">></span></span>\n  {{ csrf_field() }}\n\n  <span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>label</span> <span class=\"token attr-name\">for</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>email<span class=\"token punctuation\">\"</span></span><span class=\"token punctuation\">></span></span>Email<span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;/</span>label</span><span class=\"token punctuation\">></span></span>\n  <span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>input</span> <span class=\"token attr-name\">type</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>email<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">id</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>email<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">name</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>email<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">value</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>{{ old('email', request('email') ?? $user->email ?? null) }}<span class=\"token punctuation\">\"</span></span> <span class=\"token punctuation\">/></span></span>\n\n  <span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>label</span> <span class=\"token attr-name\">for</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>active<span class=\"token punctuation\">\"</span></span><span class=\"token punctuation\">></span></span>Is Active?<span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;/</span>label</span><span class=\"token punctuation\">></span></span>\n  <span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>input</span> <span class=\"token attr-name\">type</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>checkbox<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">id</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>active<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">name</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>active<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">value</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>Yes<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">@if(old('active',</span> <span class=\"token attr-name\">request('active')</span> <span class=\"token attr-name\">??</span> <span class=\"token attr-name\">$user-</span><span class=\"token punctuation\">></span></span>active ?? null)) checked @endif />\n\n  <span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>label</span> <span class=\"token attr-name\">for</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>updatedAt<span class=\"token punctuation\">\"</span></span><span class=\"token punctuation\">></span></span>Updated At<span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;/</span>label</span><span class=\"token punctuation\">></span></span>\n  <span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>input</span> <span class=\"token attr-name\">name</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>updatedAt<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">type</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>date<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">value</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>{{ old('updatedAt', request('updatedAt') ?? $user->updated_at ?? null) }}<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">id</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>updatedAt<span class=\"token punctuation\">\"</span></span><span class=\"token punctuation\">></span></span>\n\n  <span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>label</span> <span class=\"token attr-name\">for</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>created_at<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">class</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>btn btn-success<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">id</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>created_at_id<span class=\"token punctuation\">\"</span></span><span class=\"token punctuation\">></span></span><span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>strong</span><span class=\"token punctuation\">></span></span>Created At<span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;/</span>strong</span><span class=\"token punctuation\">></span></span><span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;/</span>label</span><span class=\"token punctuation\">></span></span>\n  <span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>input</span> <span class=\"token attr-name\">class</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>btn<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">name</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>created_at<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">type</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>datetime<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">value</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>{{ old('createdAt', request('createdAt') ?? $user->created_at ?? null) }}<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">id</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>created_at<span class=\"token punctuation\">\"</span></span><span class=\"token punctuation\">></span></span>\n\n  <span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>input</span> <span class=\"token attr-name\">type</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>submit<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">value</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>Edit<span class=\"token punctuation\">\"</span></span> <span class=\"token punctuation\">/></span></span>\n<span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;/</span>form</span><span class=\"token punctuation\">></span></span></code></pre></div>\n<h3 id=\"macros-and-components\" style=\"position:relative;\"><a href=\"#macros-and-components\" aria-label=\"macros and components permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Macros and Components</h3>\n<p>In order to create a Macro or Component, head over to your <em>AppServiceProvider</em> and inside <em>boot</em> method place the following</p>\n<div class=\"gatsby-highlight\" data-language=\"php\"><pre class=\"language-php\"><code class=\"language-php\">FormBuilder<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">macro</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'tekmi'</span><span class=\"token punctuation\">,</span> <span class=\"token keyword\">function</span> <span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">{</span>\n  <span class=\"token keyword\">return</span> <span class=\"token single-quoted-string string\">'&lt;input type=\"text\" value=\"tekmi\">'</span><span class=\"token punctuation\">;</span>\n<span class=\"token punctuation\">}</span><span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span>\n\nFormBuilder<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">component</span><span class=\"token punctuation\">(</span>\n  <span class=\"token single-quoted-string string\">'bsTekmi'</span><span class=\"token punctuation\">,</span> \n  <span class=\"token single-quoted-string string\">'components.form.text'</span><span class=\"token punctuation\">,</span> \n  <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'name'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'value'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token constant\">null</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'attributes'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token punctuation\">[</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">]</span>\n<span class=\"token punctuation\">)</span><span class=\"token punctuation\">;</span></code></pre></div>\n<p>Additionally, Components use Blade templates, so don't forget to create one in <strong>resources/views/components/form/text.blade.php</strong> with following snippet</p>\n<div class=\"gatsby-highlight\" data-language=\"html\"><pre class=\"language-html\"><code class=\"language-html\"><span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>div</span> <span class=\"token attr-name\">class</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>form-group<span class=\"token punctuation\">\"</span></span><span class=\"token punctuation\">></span></span>\n  {{ Form::label($name, null, ['class' => 'control-label tekmi-label']) }}\n  {{ Form::text($name, $value, array_merge(['class' => 'form-control tekmi-text'], $attributes)) }}\n<span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;/</span>div</span><span class=\"token punctuation\">></span></span></code></pre></div>\n<p>Having Macro and Component ready, here is how this can be invoked inside your Blade templates</p>\n<div class=\"gatsby-highlight\" data-language=\"php\"><pre class=\"language-php\"><code class=\"language-php\"><span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">tekmi</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">bsTekmi</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'first_name'</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">bsTekmi</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'last_name'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'tekmi'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'form-control tekmi-text'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span></code></pre></div>\n<p>If you wanted to achieve something similar in pure Laravel, it should be pretty straightforward. Just create a custom class which:</p>\n<ul>\n<li>will use trait <code class=\"language-text\">Illuminate\\Support\\Traits\\Macroable</code> from Laravel Illuminate Support</li>\n<li>will reuse the logic from trait  <code class=\"language-text\">Collective\\Html\\Componentable</code> from Laravel Collective Html</li>\n</ul>\n<h3 id=\"other-formbuilder-and-htmlbuilder-conveniences\" style=\"position:relative;\"><a href=\"#other-formbuilder-and-htmlbuilder-conveniences\" aria-label=\"other formbuilder and htmlbuilder conveniences permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Other FormBuilder and HtmlBuilder conveniences</h3>\n<p>I went carefully through all the public methods from <a href=\"https://github.com/LaravelCollective/html/blob/5.4/src/FormBuilder.php\">Collective\\Html\\FormBuilder</a> and <a href=\"https://github.com/LaravelCollective/html/blob/5.4/src/HtmlBuilder.php\">Collective\\Html\\HtmlBuilder</a> classes, using the most complicated combination of parameters possible, as presented below.</p>\n<div class=\"gatsby-highlight\" data-language=\"php\"><pre class=\"language-php\"><code class=\"language-php\"><span class=\"token punctuation\">{</span><span class=\"token punctuation\">{</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">token</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">)</span> <span class=\"token punctuation\">}</span><span class=\"token punctuation\">}</span>\n\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">textarea</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'description'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'Text'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'size'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'20x5'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'id'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'description'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'name'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'description'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'text text-long'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">hidden</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'hidden'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'Hidden'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'id'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'hidden'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'name'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'hidden'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'text text-hidden'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">password</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'password'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'id'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'password'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'name'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'password'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'text text-center'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">search</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'search'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'Search'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'id'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'search'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'name'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'search'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'text text-left'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">tel</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'tel'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'031647555333'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'id'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'tel'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'name'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'tel'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'text text-left'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">number</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'number'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'0.05'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'min'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token number\">0</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'step'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token number\">0.01</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'id'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'number'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'name'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'number'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'text text-left'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">datetimeLocal</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'localDateTime'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'2017-10-10T21:10:10'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'id'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'localDateTime'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'name'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'localDateTime'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'text text-left'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">time</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'time'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'10:30:55'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'id'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'time'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'name'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'time'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'text text-left'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">url</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'url'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'http://tekmi.nl'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'id'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'url'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'name'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'url'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'text text-left'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">select</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'size'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'L'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'Large'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'S'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'Small'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> <span class=\"token constant\">null</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'placeholder'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'Pick a size...'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'id'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'size'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'select select-big'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'L'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'option option-red'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">select</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'animal'</span><span class=\"token punctuation\">,</span><span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'Cats'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'leopard'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'Leopard'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'Dogs'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'spaniel'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'Spaniel'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'spaniel'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'select-with-optgroup'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">selectRange</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'range'</span><span class=\"token punctuation\">,</span> <span class=\"token number\">10</span><span class=\"token punctuation\">,</span> <span class=\"token number\">30</span><span class=\"token punctuation\">,</span> <span class=\"token number\">20</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'id'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'range'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'range range-20'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">reset</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'resetButton'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'name'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'reset'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'reset-now'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">selectMonth</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'month'</span><span class=\"token punctuation\">,</span> <span class=\"token number\">5</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'id'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'month'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'month month-1'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'%h'</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">selectYear</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'birthdayDay'</span><span class=\"token punctuation\">,</span> <span class=\"token number\">2020</span><span class=\"token punctuation\">,</span> <span class=\"token number\">2000</span><span class=\"token punctuation\">,</span> <span class=\"token number\">2001</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'id'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'year'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">file</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'file'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'id'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'file'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'name'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'file'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'file'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">radio</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'radio'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'Switch On'</span><span class=\"token punctuation\">,</span> <span class=\"token constant\">null</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'id'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'radio-1'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'name'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'radio'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'radio tune-in'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">radio</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'radio'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'Switch Off'</span><span class=\"token punctuation\">,</span> <span class=\"token boolean constant\">true</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'id'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'radio-2'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'name'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'radio'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'radio tune-in'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">image</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'images/image.jpg'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'Image Button'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'reset-now'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">color</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'color'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'#ff0000'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'id'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'color'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'text-color'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Form<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">button</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'button'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'id'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'button'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'btn btn-success'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span></code></pre></div>\n<div class=\"gatsby-highlight\" data-language=\"php\"><pre class=\"language-php\"><code class=\"language-php\"><span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Html<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">script</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'app.js'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'type'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'text/javascript'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> <span class=\"token boolean constant\">true</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Html<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">style</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'app.css'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'media'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'screen'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> <span class=\"token boolean constant\">true</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Html<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">image</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'images/image.jpg'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'Image Alt'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'image'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> <span class=\"token boolean constant\">true</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Html<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">favicon</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'favicon.ico'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'type'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'image/x-icon'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> <span class=\"token boolean constant\">true</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Html<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">link</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'users/1/edit'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'&lt;i>Title&lt;/i>'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'link'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> <span class=\"token boolean constant\">true</span><span class=\"token punctuation\">,</span> <span class=\"token boolean constant\">false</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Html<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">linkAsset</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'img/image.jpg'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'Image'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'img'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> <span class=\"token boolean constant\">true</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Html<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">linkRoute</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'home'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'Home'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'param'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'value'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'btn'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Html<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">linkAction</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'HomeController@index'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'Home'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'param'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'value'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'btn'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Html<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">nbsp</span><span class=\"token punctuation\">(</span><span class=\"token number\">5</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Html<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">mailto</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'ala@ala.nl'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'&lt;i>Mail me&lt;/i>'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'mail'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> <span class=\"token boolean constant\">false</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Html<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">ol</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'a'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'b'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'c'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'d'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'e'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'ol-list'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Html<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">ul</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'a'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'b'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'c'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'d'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'e'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'ul-list'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Html<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">dl</span><span class=\"token punctuation\">(</span><span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'a'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'a character'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'b'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'c multiple'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'d'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'d is here'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'e'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'e is there'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'class'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'dl-list'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Html<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">meta</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'viewport'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'width=device-width, initial-scale=1'</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Html<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">meta</span><span class=\"token punctuation\">(</span><span class=\"token constant\">null</span><span class=\"token punctuation\">,</span> <span class=\"token constant\">null</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'charset'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'utf-8'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Html<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">meta</span><span class=\"token punctuation\">(</span><span class=\"token constant\">null</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'IE=edge'</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'http-equiv'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'X-UA-Compatible'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span>\n\n<span class=\"token punctuation\">{</span><span class=\"token operator\">!</span><span class=\"token operator\">!</span> Html<span class=\"token punctuation\">:</span><span class=\"token punctuation\">:</span><span class=\"token function\">tag</span><span class=\"token punctuation\">(</span><span class=\"token single-quoted-string string\">'input'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">''</span><span class=\"token punctuation\">,</span> <span class=\"token punctuation\">[</span><span class=\"token single-quoted-string string\">'type'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'week'</span><span class=\"token punctuation\">,</span> <span class=\"token single-quoted-string string\">'value'</span> <span class=\"token operator\">=</span><span class=\"token operator\">></span> <span class=\"token single-quoted-string string\">'2017-W05'</span><span class=\"token punctuation\">]</span><span class=\"token punctuation\">)</span> <span class=\"token operator\">!</span><span class=\"token operator\">!</span><span class=\"token punctuation\">}</span></code></pre></div>\n<p>Creating pure Laravel counterparts should be straightforward. If you are struggling though, please check an <a href=\"https://github.com/tekmi/blogging-laravelcollectivehtml\">example github repository</a> I've created.</p>\n<h3 id=\"url-generation-with-global-helpers\" style=\"position:relative;\"><a href=\"#url-generation-with-global-helpers\" aria-label=\"url generation with global helpers permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>URL generation with global helpers</h3>\n<table>\n<thead>\n<tr>\n<th>Laravel Collective Html</th>\n<th>Laravel</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td><code class=\"language-text\">{{ link_to(&#39;/&#39;) }}</code> <br/> <code class=\"language-text\">{{ link_to(&#39;/&#39;, &#39;Title&#39;) }}</code> <br/> <code class=\"language-text\">{{ link_to(&#39;/&#39;, &#39;Title&#39;, [&#39;class&#39; =&gt; &#39;btn&#39;]) }}</code> <br/> <code class=\"language-text\">{{ link_to(&#39;/&#39;, &#39;Title&#39;, [&#39;class&#39; =&gt; &#39;btn&#39;], true) }}</code> <br/> <code class=\"language-text\">{{ link_to(&#39;/&#39;, &#39;&lt;strong&gt;Title&lt;/strong&gt;&#39;, [&#39;class&#39; =&gt; &#39;btn&#39;], true, false) }}</code></td>\n<td><code class=\"language-text\">&lt;a href=&quot;{{ url(&#39;/&#39;) }}&quot;&gt;{{ url(&#39;/&#39;) }}&lt;/a&gt;</code> <br/> <code class=\"language-text\">&lt;a href=&quot;{{ url(&#39;/&#39;) }}&quot;&gt;Title&lt;/a&gt;</code> <br/> <code class=\"language-text\">&lt;a class=&quot;btn&quot; href=&quot;{{ url(&#39;/&#39;) }}&quot;&gt;Title&lt;/a&gt;</code> <br/> <code class=\"language-text\">&lt;a class=&quot;btn&quot; href=&quot;{{ url(&#39;/&#39;, [], true) }}&quot;&gt;Title&lt;/a&gt;</code> <br/> <code class=\"language-text\">&lt;a class=&quot;btn&quot; href=&quot;{{ url(&#39;/&#39;, [], true) }}&quot;&gt;&lt;strong&gt;Title&lt;/strong&gt;&lt;/a&gt;</code></td>\n</tr>\n<tr>\n<td><code class=\"language-text\">{{ link_to_asset(&#39;img/image.jpg&#39;) }}</code> <br/> <code class=\"language-text\">{{ link_to_asset(&#39;img/image.jpg&#39;, &#39;Image&#39;) }}</code> <br/> <code class=\"language-text\">{{ link_to_asset(&#39;img/image.jpg&#39;, &#39;Image&#39;, [&#39;class&#39; =&gt; &#39;img&#39;]) }}</code> <br/> <code class=\"language-text\">{{ link_to_asset(&#39;img/image.jpg&#39;, &#39;Image&#39;, [&#39;class&#39; =&gt; &#39;img&#39;], true) }}</code></td>\n<td><code class=\"language-text\">&lt;a href=&quot;{{ asset(&#39;img/image.jpg&#39;) }}&quot;&gt;{{ asset(&#39;img/image.jpg&#39;) }}&lt;/a&gt;</code> <br/> <code class=\"language-text\">&lt;a href=&quot;{{ asset(&#39;img/image.jpg&#39;) }}&quot;&gt;Image&lt;/a&gt;</code> <br/> <code class=\"language-text\">&lt;a class=&quot;img&quot; href=&quot;{{ asset(&#39;img/image.jpg&#39;) }}&quot;&gt;Image&lt;/a&gt;</code> <br/> <code class=\"language-text\">&lt;a class=&quot;img&quot; href=&quot;{{ asset(&#39;img/image.jpg&#39;, true) }}&quot;&gt;Image&lt;/a&gt;</code></td>\n</tr>\n<tr>\n<td><code class=\"language-text\">{{ link_to_route(&#39;home&#39;) }}</code> <br/> <code class=\"language-text\">{{ link_to_route(&#39;home&#39;, &#39;Home&#39;) }}</code> <br/> <code class=\"language-text\">{{ link_to_route(&#39;home&#39;, &#39;Home&#39;, [&#39;param&#39; =&gt; &#39;value&#39;]) }}</code> <br/> <code class=\"language-text\">{{ link_to_route(&#39;home&#39;, &#39;Home&#39;, [&#39;param&#39; =&gt; &#39;value&#39;], [&#39;class&#39; =&gt; &#39;btn&#39;]) }}</code></td>\n<td><code class=\"language-text\">&lt;a href=&quot;{{ route(&#39;home&#39;) }}&quot;&gt;{{ route(&#39;home&#39;) }}&lt;/a&gt;</code> <br/> <code class=\"language-text\">&lt;a href=&quot;{{ route(&#39;home&#39;) }}&quot;&gt;Home&lt;/a&gt;</code> <br/> <code class=\"language-text\">&lt;a href=&quot;{{ route(&#39;home&#39;, [&#39;param&#39; =&gt; &#39;value&#39;]) }}&quot;&gt;Home&lt;/a&gt;</code> <br/> <code class=\"language-text\">&lt;a class=&quot;btn&quot; href=&quot;{{ route(&#39;home&#39;, [&#39;param&#39; =&gt; &#39;value&#39;]) }}&quot;&gt;Home&lt;/a&gt;</code></td>\n</tr>\n<tr>\n<td><code class=\"language-text\">{{ link_to_action(&#39;HomeController@index&#39;) }}</code> <br/> <code class=\"language-text\">{{ link_to_action(&#39;HomeController@index&#39;, &#39;Home&#39;) }}</code> <br/> <code class=\"language-text\">{{ link_to_action(&#39;HomeController@index&#39;, &#39;Home&#39;, [&#39;param&#39; =&gt; &#39;value&#39;]) }}</code> <br/> <code class=\"language-text\">{{ link_to_action(&#39;HomeController@index&#39;, &#39;Home&#39;, [&#39;param&#39; =&gt; &#39;value&#39;], [&#39;class&#39; =&gt; &#39;btn&#39;]) }}</code></td>\n<td><code class=\"language-text\">&lt;a href=&quot;{{ action(&#39;HomeController@index&#39;) }}&quot;&gt;{{ action(&#39;HomeController@index&#39;) }}&lt;/a&gt;</code> <br/> <code class=\"language-text\">&lt;a href=&quot;{{ action(&#39;HomeController@index&#39;) }}&quot;&gt;Home&lt;/a&gt;</code> <br/> <code class=\"language-text\">&lt;a href=&quot;{{ action(&#39;HomeController@index&#39;, [&#39;param&#39; =&gt; &#39;value&#39;]) }}&quot;&gt;Home&lt;/a&gt;</code> <br/> <code class=\"language-text\">&lt;a class=&quot;btn&quot; href=&quot;{{ action(&#39;HomeController@index&#39;, [&#39;param&#39; =&gt; &#39;value&#39;]) }}&quot;&gt;Home&lt;/a&gt;</code></td>\n</tr>\n</tbody>\n</table>\n<p>It's worth to know that Laravel's route and action methods provide third parameter called absolute, which is not covered by the Laravel Collective counterparts. If you set it to false, you will get the URI without the domain (e.g: <em>/?param=value</em> or <em>/home?param=value</em>).</p>\n<div class=\"gatsby-highlight\" data-language=\"html\"><pre class=\"language-html\"><code class=\"language-html\"><span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>a</span> <span class=\"token attr-name\">class</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>btn<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">href</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>{{ route('home', ['param' => 'value'], false) }}<span class=\"token punctuation\">\"</span></span><span class=\"token punctuation\">></span></span>Home<span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;/</span>a</span><span class=\"token punctuation\">></span></span>\n<span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;</span>a</span> <span class=\"token attr-name\">class</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>btn<span class=\"token punctuation\">\"</span></span> <span class=\"token attr-name\">href</span><span class=\"token attr-value\"><span class=\"token punctuation\">=</span><span class=\"token punctuation\">\"</span>{{ action('HomeController@index', ['param' => 'value'], false) }}<span class=\"token punctuation\">\"</span></span><span class=\"token punctuation\">></span></span>Home<span class=\"token tag\"><span class=\"token tag\"><span class=\"token punctuation\">&lt;/</span>a</span><span class=\"token punctuation\">></span></span></code></pre></div>\n<h2 id=\"summary\" style=\"position:relative;\"><a href=\"#summary\" aria-label=\"summary permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Summary</h2>\n<p>We have gone through long journey together, trying to discover hidden gems of <em>laravelcollective/html</em> package. Along the way we experienced some issues and shortcomings of it, so let's try to enumerate them now</p>\n<ul>\n<li>not every input type from <a href=\"https://html.spec.whatwg.org/multipage/input.html\">HTML standards</a> is covered (missing types: <em>range</em>, <em>week</em>, <em>month</em>)</li>\n<li>model bindings cannot handle html name arrays (e.g <code class=\"language-text\">users[name]</code>, <code class=\"language-text\">users[description]</code>)</li>\n<li>\n<p>misleading and not comprehensive documentation (better to explore methods from <em>FormBuilder</em> and <em>HtmlBuilder</em> classes)</p>\n<ul>\n<li>misleading information about <code class=\"language-text\">Form::textarea</code> which doesn't extend <code class=\"language-text\">Form::input</code></li>\n<li><code class=\"language-text\">Form::textarea</code> uses not documented option like <em>size=10x5</em></li>\n<li>zero information about <em>FormAccesible</em> trait</li>\n<li>no information about HTML facade and its conveniences</li>\n</ul>\n</li>\n<li>package tightly coupled to Laravel, but not adapted into Lumen (<a href=\"https://laravelcollective.com/docs/master/html#installation\">here is an explanation</a>)</li>\n<li>generating URLs via <code class=\"language-text\">link_to*</code> methods or <code class=\"language-text\">HTML::link*</code> look a bit redundant, comparing to Laravel <em>route</em>, <em>action</em>, <em>url</em> global functions.</li>\n<li><code class=\"language-text\">link_to_action</code> and <code class=\"language-text\">link_to_route</code> miss 3rd parameter <em>absolute</em>, which is used by Laravel <em>route</em> and <em>action</em> helpers</li>\n<li><code class=\"language-text\">FormBuilder::selectRange</code>, <code class=\"language-text\">FormBuilder::selectYear</code> and <code class=\"language-text\">FormBuilder::selectMonth</code> don't use 5th parameter from <code class=\"language-text\">FormBuilder::select</code></li>\n<li>Inconsistent HTML naming conventions</li>\n</ul>\n<p>If I missed anything relevant, please write your findings on Twitter.</p>\n<h2 id=\"sample-code\" style=\"position:relative;\"><a href=\"#sample-code\" aria-label=\"sample code permalink\" class=\"anchor before\"><svg aria-hidden=\"true\" focusable=\"false\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path fill-rule=\"evenodd\" d=\"M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z\"></path></svg></a>Sample Code</h2>\n<p><a href=\"https://github.com/tekmi/blogging-laravelcollectivehtml\">https://github.com/tekmi/blogging-laravelcollectivehtml</a></p>"}},"pageContext":{"postId":"4be567ad-0aa5-562c-b3d4-908ceee3da9b","slug":"is-it-beneficial-to-add-laravel-collective-html-package-into-your-laravel-project"}}}