PHPackages                             amish/laravel-s3-signed-route - 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. [File &amp; Storage](/categories/file-storage)
4. /
5. amish/laravel-s3-signed-route

ActiveLibrary[File &amp; Storage](/categories/file-storage)

amish/laravel-s3-signed-route
=============================

Upload to s3 from your frontend using a pre-signed route.

v0.1.0(3y ago)1562MITPHP

Since Jun 14Pushed 3y ago1 watchersCompare

[ Source](https://github.com/amishdev/laravel-s3-signed-route)[ Packagist](https://packagist.org/packages/amish/laravel-s3-signed-route)[ Docs](https://github.com/state/s3signedroute)[ RSS](/packages/amish-laravel-s3-signed-route/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (1)Dependencies (4)Versions (2)Used By (0)

S3SignedRoute
=============

[](#s3signedroute)

[![Latest Version on Packagist](https://camo.githubusercontent.com/78e4a3390107a19553477ea33e0848bcfe791d385ddc1d69c220bc8e7284c8bb/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f616d6973682f6c61726176656c2d73332d7369676e65642d726f7574652e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/amish/laravel-s3-signed-route)[![Total Downloads](https://camo.githubusercontent.com/cc1d841ae84fcd3ffd838949758ce600380589b7a7392db9cd8121af227b9507/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f616d6973682f6c61726176656c2d73332d7369676e65642d726f7574652e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/amish/laravel-s3-signed-route)[![Build Status](https://camo.githubusercontent.com/b5cefb116e34716f3b0a23ab88b4c7df64366f9f8e6ca876c5b880b2089899cb/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f616d6973682f6c61726176656c2d73332d7369676e65642d726f7574652f6d61737465722e7376673f7374796c653d666c61742d737175617265)](https://travis-ci.org/amish/laravel-s3-signed-route)

Use to securely upload directly to a s3 bucket from your frontend. This package was designed to upload to s3 with [Uppy](https://uppy.io/docs/aws-s3/#Generating-a-presigned-upload-URL-server-side) but it could be used with other libraries.

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

[](#installation)

Via Composer

```
composer require amish/laravel-s3-signed-route
```

Usage
-----

[](#usage)

Register the s3 signing route with the macro, then apply the middleware, etc. The route is registered with the name 's3-signed-route'.

```
Route::signedS3Route()->middleware(['auth', ...]);
```

### Usage with Uppy

[](#usage-with-uppy)

```
let uppy = new Uppy({
    allowMultipleUploads: false,
    debug: true,
    restrictions: {
        allowedFileTypes: ['*'],
        maxNumberOfFiles: 1,
        minNumberOfFiles: 1,
    },
}).use(AwsS3, {
    getUploadParameters: (file) => {
        // Send a request to our signing endpoint. route('s3-signed-route')
        return fetch(signingEndpoint, {
            method: 'post',
            // Send and receive JSON.
            headers: {
                accept: 'application/json',
                'content-type': 'application/json',
            },
            body: JSON.stringify({
                filename: file.name,
                contentType: file.type,
                directory: 'uploads',
                _token: document.querySelector('[name=csrf-token]').content,
            }),
        })
        .then(response => response.json())
        .then(data => {
            // Return an object in the correct shape.
            return {
                method: data.method,
                url: data.url,
                fields: data.fields,
                // Provide content type header required by S3
                headers: {
                    'Content-Type': file.type,
                },
            }
        })
    },
});
```

Refer to [Uppy's docs](https://uppy.io/docs/) for more configuration options.

Contributing
------------

[](#contributing)

Please see [contributing.md](contributing.md) for details and a todolist.

Security
--------

[](#security)

If you discover any security related issues, please email  instead of using the issue tracker.

Credits
-------

[](#credits)

- [Christian Pavilonis](https://github.com/amishdev)
- [All Contributors](../../contributors)

License
-------

[](#license)

MIT. Please see the [license file](license.md) for more information.

###  Health Score

22

—

LowBetter than 22% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity15

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity37

Early-stage or recently created project

 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

1429d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/cf7ca57075751c1182b311e5747c864dd4a4ab497073d10b51007a51cd573284?d=identicon)[ChristianPav](/maintainers/ChristianPav)

---

Top Contributors

[![ChristianPavilonis](https://avatars.githubusercontent.com/u/16183252?v=4)](https://github.com/ChristianPavilonis "ChristianPavilonis (8 commits)")

---

Tags

laravels3aws

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/amish-laravel-s3-signed-route/health.svg)

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

###  Alternatives

[aws/aws-sdk-php-laravel

A simple Laravel 9/10/11/12/13 service provider for including the AWS SDK for PHP.

1.7k35.6M75](/packages/aws-aws-sdk-php-laravel)[vinelab/cdn

Content Delivery Network (CDN) Package for Laravel

217240.8k1](/packages/vinelab-cdn)[unisharp/s3-presigned

An AWS S3 package for pre-signed upload purpose in Laravel and PHP.

151.8k](/packages/unisharp-s3-presigned)

PHPackages © 2026

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