PHPackages                             firevel/cloud-tasks-queue-driver - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Queues &amp; Workers](/categories/queues)
4. /
5. firevel/cloud-tasks-queue-driver

ActiveLibrary[Queues &amp; Workers](/categories/queues)

firevel/cloud-tasks-queue-driver
================================

Cloud Tasks queue driver for Laravel apps running inside Google App Engine.

0.1.1(7mo ago)411.6k↓50%MITPHP

Since Oct 8Pushed 4mo ago1 watchersCompare

[ Source](https://github.com/firevel/cloud-tasks-queue-driver)[ Packagist](https://packagist.org/packages/firevel/cloud-tasks-queue-driver)[ RSS](/packages/firevel-cloud-tasks-queue-driver/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (5)Dependencies (1)Versions (6)Used By (0)

Cloud Tasks Queue Driver for Laravel
====================================

[](#cloud-tasks-queue-driver-for-laravel)

A Laravel queue driver for [Google Cloud Tasks](https://cloud.google.com/tasks), enabling serverless job processing for applications running on Google App Engine or Google Cloud Run.

Compatible with both [Firevel](https://github.com/firevel/firevel) and standard Laravel applications.

Requirements
------------

[](#requirements)

- PHP 7.4+
- Laravel 8.x / 9.x / 10.x / 11.x / 12.x
- Google Cloud Project with Cloud Tasks API enabled

Installation
------------

[](#installation)

```
composer require firevel/cloud-tasks-queue-driver
```

The package auto-discovers and registers itself via Laravel's package discovery.

Configuration
-------------

[](#configuration)

Add the connection to your `config/queue.php`:

```
'connections' => [
    'cloudtasks' => [
        'driver' => 'cloudtasks',
        'project' => env('GOOGLE_CLOUD_PROJECT'),
        'location' => env('CLOUD_TASKS_LOCATION', 'us-central1'),
        'queue_name' => env('CLOUD_TASKS_QUEUE', 'default'),
        'route' => env('CLOUD_TASKS_ROUTE', '/_cloudtasks'),
        // App Engine specific (optional)
        'service' => env('GAE_SERVICE'),
        'version' => env('GAE_VERSION'),
        // Cloud Run specific (optional)
        'url' => env('CLOUD_TASKS_URL'),
    ],
],
```

Set your default queue connection in `.env`:

```
QUEUE_CONNECTION=cloudtasks
CLOUD_TASKS_LOCATION=us-central1
```

> **Note:** The `location` must match your App Engine or Cloud Run region.

### Configuration Options

[](#configuration-options)

OptionDescription`project`Google Cloud project ID`location`Cloud Tasks queue location (must match your compute region)`queue_name`Default queue name`route`HTTP endpoint path for task callbacks`service`App Engine service name (auto-detected from `GAE_SERVICE`)`version`App Engine version (auto-detected from `GAE_VERSION`)`url`Custom URL for Cloud Run or when behind a proxy/load balancerCloud Tasks Setup
-----------------

[](#cloud-tasks-setup)

Create a queue using `gcloud`:

```
gcloud tasks queues create default
```

Or via `queue.yaml`:

```
queue:
- name: default
  rate: 500/s
```

See the [Cloud Tasks documentation](https://cloud.google.com/tasks/docs/queue-yaml) for advanced queue configuration.

Usage
-----

[](#usage)

Use Laravel's standard queue API:

```
// Dispatch a job
dispatch(new ProcessOrder($order));

// Dispatch with delay
dispatch(new ProcessOrder($order))->delay(now()->addMinutes(5));

// Dispatch to a specific queue
dispatch(new ProcessOrder($order))->onQueue('orders');
```

Routing Behavior
----------------

[](#routing-behavior)

- **App Engine:** Tasks are routed to the specific service and version that dispatched them, ensuring version consistency during deployments.
- **Cloud Run:** Tasks are routed to the currently promoted revision.

License
-------

[](#license)

MIT

###  Health Score

42

—

FairBetter than 90% of packages

Maintenance71

Regular maintenance activity

Popularity29

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity48

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 88.9% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~458 days

Total

5

Last Release

216d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/3ef4a79c6f9a9afe04267a19b98fe0a5a45930c92d08fd720b233ab21ae102ca?d=identicon)[sl0wik](/maintainers/sl0wik)

---

Top Contributors

[![sl0wik](https://avatars.githubusercontent.com/u/2696038?v=4)](https://github.com/sl0wik "sl0wik (32 commits)")[![StyleCIBot](https://avatars.githubusercontent.com/u/11048387?v=4)](https://github.com/StyleCIBot "StyleCIBot (4 commits)")

---

Tags

laravelqueuefirevelcloud tasks

### Embed Badge

![Health badge](/badges/firevel-cloud-tasks-queue-driver/health.svg)

```
[![Health](https://phpackages.com/badges/firevel-cloud-tasks-queue-driver/health.svg)](https://phpackages.com/packages/firevel-cloud-tasks-queue-driver)
```

###  Alternatives

[stackkit/laravel-google-cloud-tasks-queue

Google Cloud Tasks queue driver for Laravel

84570.1k](/packages/stackkit-laravel-google-cloud-tasks-queue)[harris21/laravel-fuse

Circuit breaker for Laravel queue jobs. Protect your workers from cascading failures.

3786.5k](/packages/harris21-laravel-fuse)[pmatseykanets/artisan-beans

Easily manage your Beanstalkd job queues right from the Laravel artisan command

4482.1k](/packages/pmatseykanets-artisan-beans)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
