1.0.2 • Published 2 years ago

@tobytwigger/laravel-job-status-vue v1.0.2

Weekly downloads
-
License
ISC
Repository
github
Last release
2 years ago

Laravel Job Status (Vue 2)

Show users the progress of their jobs.

Latest Version Build Status

Buy me a coffee

Contents

About

You can find the full repository at https://github.com/tobytwigger/laravel-job-status.

example of job status in use

Laravel Job Status provides a simple way to track your jobs and show the progress to your users.

  • Show your users the ongoing progress of your job without refreshing the page.
  • Let users cancel running jobs
  • Customisable Vue component for displaying your own jobs

Docs

We've taken care over documenting everything you'll need to get started and use Laravel Job Status fully.

Check out the docs on our documentation site.

comment: <> (To build them locally, you'll need to have ruby (we'd recommend using rbenv) and the gem bundler (https://bundler.io/); installed. Run bundle install && bundle exec jekyll serve in the docs folder.)

Examples

Show users the status of their jobs

The following is enough to show a user the status of the 'process podcast' job for the podcast with the ID podcastId.

<job-status job="process-podcast" :tags="{podcast: podcastId}">
<template v-slot:default="{status, lastMessage, complete, cancel, signal}">

    <spinner v-if="complete === false"></spinner>
    <p>The status of the job is {{status}}</p>
    <p>{{lastMessage}}</p>
    <v-button @click="cancel" type="danger">Cancel</v-button>
</template>
<template v-slot:empty>
    Upload a podcast to get started
</template>
</job-status>

Track a job

Tracking is simple to enable on any job.

class ProcessPodcast
{
    use Trackable;

    protected Podcast $podcast;

    public function handle()
    {
        // Upload and process the podcast
    }

    public function tags(): array
    {
        return [
            'podcast' => $this->podcast->id,
            'user' => $this->user->id
        ];
    }

    public function alias(): string
    {
        return 'process-podcast';
    }

}

Installation

All you need to do to use this project is pull it into an existing Laravel app using composer.

composer require twigger/laravel-job-status

You can publish the configuration file by running

php artisan vendor:publish --provider="JobStatus\JobStatusServiceProvider"

Contributing

Contributions are welcome! Before contributing to this project, familiarize yourself with CONTRIBUTING.md.

Copyright and Licence

This package is copyright © Toby Twigger and licensed for use under the terms of the MIT License (MIT). Please see LICENCE.md for more information.

Contact

For any questions, suggestions, security vulnerabilities or help, email me directly at tobytwigger1@gmail.com

1.0.2

2 years ago

1.0.1

2 years ago

1.0.0

2 years ago

0.0.6

2 years ago

0.0.5

2 years ago

0.0.4

2 years ago

0.0.3

2 years ago

0.0.2

2 years ago

0.0.1

2 years ago