PHPackages                             healthengine/laravel-easy-aws - 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. [Caching](/categories/caching)
4. /
5. healthengine/laravel-easy-aws

ActiveLibrary[Caching](/categories/caching)

healthengine/laravel-easy-aws
=============================

Cache dynamic AWS credentials

v4.0.1(3mo ago)1260.9k↑56.6%5MITPHPPHP ~8.2.0 || ~8.3.0CI failing

Since Mar 9Pushed 3mo ago4 watchersCompare

[ Source](https://github.com/HealthEngineAU/laravel-easy-aws)[ Packagist](https://packagist.org/packages/healthengine/laravel-easy-aws)[ RSS](/packages/healthengine-laravel-easy-aws/feed)WikiDiscussions master Synced 3d ago

READMEChangelog (10)Dependencies (24)Versions (27)Used By (0)

Laravel Easy AWS
================

[](#laravel-easy-aws)

[![Latest Stable Version](https://camo.githubusercontent.com/c96ca7ee9b20402d17ef2f1d3217dccb01ae5855ec7bd56426537dc3b8d64639/68747470733a2f2f706f7365722e707567782e6f72672f6865616c7468656e67696e652f6c61726176656c2d656173792d6177732f76657273696f6e)](https://packagist.org/packages/healthengine/laravel-easy-aws)[![Total Downloads](https://camo.githubusercontent.com/1f6abe8f94bd1b205a5407d62fe530409eea8544cbc415464a8d15384fc9e969/68747470733a2f2f706f7365722e707567782e6f72672f6865616c7468656e67696e652f6c61726176656c2d656173792d6177732f646f776e6c6f616473)](https://packagist.org/packages/healthengine/laravel-easy-aws)

This is an extension to the [Laravel AWS SDK](https://github.com/aws/aws-sdk-php-laravel) that provides cacheable dynamic credentials - such as those provided by the EC2 Metadata API. This is necessary if you want to `php artisan config:cache` whilst also not using hard coded credentials - since Laravel is unable to cache the Guzzle promise that resolves to credentials when used.

It also binds certain AWS client objects to the Laravel container so you can typehint the specific clients you need, instead of using the `AWS` facade. Clients are added as needed and we welcome PRs so if you need one that is missing, please contribute.

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

[](#installation)

```
composer require healthengine/laravel-easy-aws

```

Usage
-----

[](#usage)

There's not much to it. You can now typehint the `S3Client` directly and it will be resolved instead of having to use the facade to construct the S3 client:

```
// before
$s3 = AWS::createClient('s3');

// after
$s3 = app(Aws\S3\S3Client::class);
```

Credentials are resolved automatically using the default provider chain from the AWS SDK. The only difference is that they will be cached. This really only helps if that credentials chain ended up resolving credentials from the EC2 Metadata API, otherwise it would have been using hardcoded credentials of some kind and caching them doesn't help much.

You can configure which cache store to use by setting the environment variable `EASYAWS_CACHE_STORE` to any built in Laravel cache drivers.

Note
----

[](#note)

Caching credentials can be insecure. Be careful if you are going to use an external cache driver like Redis or database as the credentials are stored in plaintext.

SQS Client
----------

[](#sqs-client)

The queue configuration for AWS SQS has also been modified to use these cached credentials. This means you don't need to add a key or secret for that client - if using SQS as your queue driver. Also **please note** that the `prefix`configuration key is not used because it is redundant, you'll need to prepend the value of `prefix` to `queue`.

License
-------

[](#license)

Laravel Easy AWS is licensed under the MIT license.

###  Health Score

60

—

FairBetter than 98% of packages

Maintenance82

Actively maintained with recent releases

Popularity37

Limited adoption so far

Community17

Small or concentrated contributor base

Maturity86

Battle-tested with a long release history

 Bus Factor2

2 contributors hold 50%+ of commits

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 ~107 days

Recently: every ~34 days

Total

25

Last Release

93d ago

Major Versions

1.3.1 → 2.0.02020-03-10

v2.1.1 → v3.0.02023-09-07

v3.0.5 → v4.0.02026-03-18

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/15922667?v=4)[Thomas Spencer](/maintainers/tspencer244)[@tspencer244](https://github.com/tspencer244)

---

Top Contributors

[![yaohua-boey](https://avatars.githubusercontent.com/u/55773428?v=4)](https://github.com/yaohua-boey "yaohua-boey (10 commits)")[![tspencer244](https://avatars.githubusercontent.com/u/15922667?v=4)](https://github.com/tspencer244 "tspencer244 (9 commits)")[![dependabot-preview[bot]](https://avatars.githubusercontent.com/in/2141?v=4)](https://github.com/dependabot-preview[bot] "dependabot-preview[bot] (6 commits)")[![nathanblogs](https://avatars.githubusercontent.com/u/414153?v=4)](https://github.com/nathanblogs "nathanblogs (4 commits)")[![dependabot-support](https://avatars.githubusercontent.com/u/112581971?v=4)](https://github.com/dependabot-support "dependabot-support (1 commits)")

---

Tags

awscachecredentialslaravellaravelawscachecredentials

###  Code Quality

TestsPHPUnit

Code StylePHP CS Fixer

### Embed Badge

![Health badge](/badges/healthengine-laravel-easy-aws/health.svg)

```
[![Health](https://phpackages.com/badges/healthengine-laravel-easy-aws/health.svg)](https://phpackages.com/packages/healthengine-laravel-easy-aws)
```

###  Alternatives

[laravel/ai

The official AI SDK for Laravel.

1.0k3.2M194](/packages/laravel-ai)[spatie/laravel-responsecache

Speed up a Laravel application by caching the entire response

2.8k9.0M69](/packages/spatie-laravel-responsecache)[propaganistas/laravel-disposable-email

Disposable email validator

6023.0M7](/packages/propaganistas-laravel-disposable-email)[laravel/pulse

Laravel Pulse is a real-time application performance monitoring tool and dashboard for your Laravel application.

1.7k15.1M132](/packages/laravel-pulse)[psalm/plugin-laravel

Psalm plugin for Laravel

3355.3M346](/packages/psalm-plugin-laravel)[harris21/laravel-fuse

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

44855.7k](/packages/harris21-laravel-fuse)

PHPackages © 2026

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