A demo illustrating Laravel's integration with the AWS suite (e.g. S3, Rekognition, Elastic Transcoder)
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
app
bootstrap
config
database
public
resources
routes
storage
tests
.env.example
.gitattributes
.gitignore
README.md
artisan
composer.json
composer.lock
package.json
phpunit.xml
server.php
webpack.mix.js
yarn.lock

README.md

Laravel AWS demo

aws-logo

A demo illustrating how to integrate Laravel with the AWS suite.

Services

These services (segmented via URIs) are currently available to test:

Method URI
POST aws/s3/upload
POST aws/s3/download_bucket
POST aws/rekognition/recognize_celebrities
POST aws/et/transcode
POST aws/et/transcode/subscriber

Requirements

  1. PHP 7.x
  2. SQLite 3.x

Initial set up

  1. Bootstrap the project

     composer create-project jpcaparas/laravel-aws-demo --prefer-dist
     
     touch database/database.sqlite
     
     php artisan migrate:refresh --seed
    
  2. Run tests (somewhat non-existent for the meantime)

     vendor/bin/phpunit
    
  3. Populate the .env file with your AWS credentials. Sign up for AWS if you haven't done so already.

All set? Trying it all out

📘 👉 Ready to roll? Head on over to the wiki.

Additional services used

  • Ngrok - A freemium service used to give your app a public-facing URL. This allows Amazon to send webhooks to your app.
  • Postman - A free tool for testing API endpoints. Support sending multipart requests (e.g. file uploads).

Disclaimer

A few commands issued throughout this demo are for *nix systems (e.g. macOS, Ubuntu), so your mileage may vary if you're using Windows.

Attributions

figured-logo

I am a product developer for Figured, Ltd, a cloud-based farm financial management software company disrupting the agriculture industry. We're headquartered at Victoria Street West, Auckland.

We leverage AWS as part of our development toolchain to offload complexity onto the cloud. This in turn makes us focus on building new features, leading to happy developers and a rapidly evolving product.