Skip to content

A Laravel package that provides two generators to speed up your Vue development process.

License

Notifications You must be signed in to change notification settings

beckenrode/vue-generators

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Laravel Vue Generators

StyleCI

This Laravel package provides the following two generators to speed up your Vue development process:

  • make:vue-component
  • make:vue-mixin

Usage

Step 1: Install Through Composer

composer require beckenrode/vue-generator

Step 2: Add the Service Provider

Laravel 5.5

Laravel's Package Discovery automatically discovers this package.

Laravel < 5.5

Open config/app.php, and add a new item to the Package Service Providers array.

Beckenrode\VueGenerators\VueGeneratorsServiceProvider::class,

Step 3: Configuration (Optional)

You may want to adjust your Component/Mixin stubs or change the path in which they are generated. To do this you simply need to publish the configuration file.

Laravel 5.5

php artisan vendor:publish

Laravel < 5.5

php artisan vendor:publish --provider="Beckenrode\VueGenerators\VueGeneratorsServiceProvider"

This will publish the following configuration file to config/vue-generators.php:

<?php

return [

    /*
    * Location of the stubs to use
    */
    //'component_stub' => __DIR__.'/component.stub',
    //'mixin_stub' => __DIR__.'/mixin.stub',

    /*
    * Location of where to generate the files
    */
    'components_path' => '/resources/assets/js/components/',
    'mixins_path'     => '/resources/assets/js/mixins/'

];

Examples

Vue Component

php artisan make:vue-component MyNewComponent

This will generate the following MyNewComponent.vue Vue component in /resources/assets/js/components/:

<template>

</template>

<script>
    export default {
        // Assets
        components: {},

        // Composition
        mixins: [],

        extends: {}

        // Data
        data() {
            return {}
        },

        props: {},

        propsData: {},

        computed: {},

        methods: {},

        watch: {},

        // Lifecycle Hooks
        beforeCreate() {},

        created() {},

        beforeMount() {},

        mounted() {},

        beforeUpdate() {},

        updated() {},

        activated() {},

        deactivated() {},

        beforeDestroy() {},

        destroyed() {}
    }
</script>

<style>

</style>

Vue Mixin

php artisan make:vue-mixin MyNewMixin

This will generate the following MyNewMixin.js Vue mixin in /resources/assets/js/mixins/:

export default {
    // Assets
    components: {},

    // Composition
    mixins: [],

    extends: {}

    // Data
    data() {
        return {}
    },

    props: {},

    propsData: {},

    computed: {},

    methods: {},

    watch: {},

    // Lifecycle Hooks
    beforeCreate() {},

    created() {},

    beforeMount() {},

    mounted() {},

    beforeUpdate() {},

    updated() {},

    activated() {},

    deactivated() {},

    beforeDestroy() {},

    destroyed() {}
}

Testing

Development

Want to contribute? Great!

License

The MIT License (MIT)

Free Software, Hell Yeah!

About

A Laravel package that provides two generators to speed up your Vue development process.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages