PHPackages                             vineyard/s3-vectors-laravel - 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. vineyard/s3-vectors-laravel

ActiveLibrary[Caching](/categories/caching)

vineyard/s3-vectors-laravel
===========================

Laravel integration for AWS S3 Vectors with smart caching and batching.

v1.0(10mo ago)0226MITPHPPHP &gt;=8.1

Since Aug 13Pushed 10mo agoCompare

[ Source](https://github.com/zvineyard/s3-vectors-laravel)[ Packagist](https://packagist.org/packages/vineyard/s3-vectors-laravel)[ RSS](/packages/vineyard-s3-vectors-laravel/feed)WikiDiscussions main Synced today

READMEChangelogDependencies (2)Versions (2)Used By (0)

vineyard/s3-vectors-laravel
===========================

[](#vineyards3-vectors-laravel)

Laravel integration for **AWS S3 Vectors**: query/get/put/delete with smart caching (Redis tags or versioned keys) and batch helpers.

Install
-------

[](#install)

```
composer require vineyard/s3-vectors-laravel

php artisan vendor:publish --tag=config --provider="Vineyard\\S3Vectors\\S3VectorsServiceProvider
```

### Set .env

[](#set-env)

```
AWS_ACCESS_KEY_ID=...
AWS_SECRET_ACCESS_KEY=...
AWS_DEFAULT_REGION=us-east-2

S3V_REGION=us-east-2
S3V_BUCKET=your-vectors
S3V_INDEX=your-vectors-index

```

### Optional

[](#optional)

```
CACHE_STORE=redis
S3V_TTL_QUERY=300
S3V_TTL_GET=600
S3V_HASH_PRECISION=4
S3V_DEFAULT_TOPK=5

```

Usage
-----

[](#usage)

```
use Vineyard\S3Vectors\Facades\S3Vectors;

// Query (cached)
$hits = S3Vectors::query($vector, topK: 5); // returns ['vectors' => [['key' => '...', 'distance' => 0.12, 'metadata' => [...]], ...]]

// Get metadata by keys (cached)
$info = S3Vectors::getVectors(['vectors/key1', 'vectors/key2']);

// Put many vectors (invalidates cache for this index)
S3Vectors::putVectors([
    ['key' => 'vectors/key1', 'data' => ['float32' => $v1], 'metadata' => ['doc_id' => '123']],
    ['key' => 'vectors/key2', 'data' => ['float32' => $v2]],
]);

// Batched put (chunks to 500 by default)
S3Vectors::putVectorsBatched($bigArrayOfVectors, 500);

// Delete
S3Vectors::deleteVectors(['vectors/key1', 'vectors/key2']);

// Batched delete (chunks to 500 by default)
S3Vectors::deleteVectorsBatched($bigArrayOfVectors, 500);
```

### Caching details

[](#caching-details)

If the cache store supports tags (e.g., Redis), the package uses Cache::tags(\["s3vectors:index:{bucket}:{index}"\]) and flush() after writes.

Otherwise, it prefixes keys with a persistent version (e.g., v12345:) and bumps that version on writes to invalidate.

### Notes

[](#notes)

Your vector bucket and index must already exist in AWS S3 Vectors, and the IAM principal must have s3vectors:QueryVectors, s3vectors:GetVectors, s3vectors:PutVectors, s3vectors:DeleteVectors as needed.

Datatype (float32 vs float64) and vector dimension must match the index configuration.

For heavy loads, prefer putVectorsBatched() and add retry/backoff.

### License

[](#license)

MIT

###  Health Score

32

—

LowBetter than 69% of packages

Maintenance53

Moderate activity, may be stable

Popularity13

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity45

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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

Unknown

Total

1

Last Release

324d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/750586?v=4)[Zac Vineyard](/maintainers/zvineyard)[@zvineyard](https://github.com/zvineyard)

---

Top Contributors

[![zvineyard](https://avatars.githubusercontent.com/u/750586?v=4)](https://github.com/zvineyard "zvineyard (2 commits)")

### Embed Badge

![Health badge](/badges/vineyard-s3-vectors-laravel/health.svg)

```
[![Health](https://phpackages.com/badges/vineyard-s3-vectors-laravel/health.svg)](https://phpackages.com/packages/vineyard-s3-vectors-laravel)
```

###  Alternatives

[laravel/ai

The official AI SDK for Laravel.

1.0k3.2M194](/packages/laravel-ai)[illuminate/cache

The Illuminate Cache package.

12937.0M1.8k](/packages/illuminate-cache)[mike-bronner/laravel-model-caching

Automatic caching for Eloquent models.

2.4k91.0k1](/packages/mike-bronner-laravel-model-caching)[pressbooks/pressbooks

Pressbooks is an open source book publishing tool built on a WordPress multisite platform. Pressbooks outputs books in multiple formats, including PDF, EPUB, web, and a variety of XML flavours, using a theming/templating system, driven by CSS.

45444.2k1](/packages/pressbooks-pressbooks)[iazaran/smart-cache

Smart Cache is a caching optimization package designed to enhance the way your Laravel application handles data caching. It intelligently manages large data sets by compressing, chunking, or applying other optimization strategies to keep your application performant and efficient.

21111.6k](/packages/iazaran-smart-cache)

PHPackages © 2026

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