
Product
Introducing Data Exports
Export Socket alert data to your own cloud storage in JSON, CSV, or Parquet, with flexible snapshot or incremental delivery.
vue-laravel-forms
Advanced tools
Form helpers for Laravel backed Vue.js projects.
Disclaimer: This plugin is still in a BETA state
Install package via NPM
npm install vue-laravel-forms
Install plugin within project
import Vue from 'vue'
import { FormHelpers } from 'vue-laravel-forms'
Vue.use(FormHelpers);
or
window.Vue = require('vue');
reqiure('vue-laravel-forms');
Alternatively, you may import the various components of this plugin separately.
import { Form, FormErrors, Http } from 'vue-laravel-forms'
window.AppForm = Form;
window.AppFormErrors = FormErrors;
_.extend(App, new Http()) // Vue.http config not needed
_.extend(App, new Http(Vue.http)) // Vue.http config needed
Components installed via Vue
Vue.component('user-registration-form', {
forms: {
userRegistrationForm: {
name: '',
email: '',
password: '',
password_confirmation: ''
}
}
}
Components installed separately
Vue.component('user-registration-form', {
data() {
return {
userRegistrationForm: new AppForm({
name: '',
email: '',
password: '',
password_confirmation: '',
});
}
}
});
Via a POST request (Components installed via Vue)
Vue.component('user-registration-form', {
// Create your form using one of the techniques described above.
methods: {
registerUser() {
this.$forms.post('api/users', this.userRegistrationForm)
.then(respose => console.log(response.data))
.catch(errors => console.log(errors));
}
}
Via a POST request (Components installed separately)
Vue.component('user-registration-form', {
// Create your form using one of the techniques described above.
methods: {
registerUser() {
App.postForm('api/users', this.userRegistrationForm)
.then(respose => console.log(response.data))
.catch(errors => console.log(errors));
}
}
Components installed via Vue
vm.$form.delete(uri, form)vm.$form.post(uri, form)vm.$form.put(uri, form)vm.$form.submit(method, uri, form)Components installed Separately
App.deleteForm(uri, form)App.postForm(uri, form)App.putForm(uri, form)App.sendForm(method, uri, form)Vue.component('user-registration-form', {
methods: {
checkFieldForError(field) {
return this.userRegistrationForm.errors.has('field');
}
}
});
fieldClass helper methodformInstance.fieldClass(field, defaultClass, errorClass)
<div :class="userRegistrationForm.fieldClass('email', 'form-group', 'has-error')">
// Truncated for brevity
</div>
Alternatively, pass callbacks for defaultClass and errorClass.
<div :class="userRegistrationForm.fieldClass('email', getFieldClass, getFieldErrorClass)">
// Truncated for brevity
</div>
Vue.component('user-registration-form', {
methods: {
getFieldClass(field) {
return `form-group ${field}`;
},
getFieldErrorClass(field) {
return `has-error ${field}-error`;
}
}
});
<p class="help-block">
{{ userRegistrationForm.errors.get('email') }}
</p>
If you have any questions, feedback or would like to make improvements, please open an issue or pull request.
FAQs
Form helpers for Laravel backed Vue.js projects.
We found that vue-laravel-forms demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Product
Export Socket alert data to your own cloud storage in JSON, CSV, or Parquet, with flexible snapshot or incremental delivery.

Research
/Security News
Bitwarden CLI 2026.4.0 was compromised in the Checkmarx supply chain campaign after attackers abused a GitHub Action in Bitwarden’s CI/CD pipeline.

Research
/Security News
Docker and Socket have uncovered malicious Checkmarx KICS images and suspicious code extension releases in a broader supply chain compromise.