hobbii/laravel-cognito-client

A Laravel wrapper for hobbii/cognito-client

1.0.2 2022-04-04 11:56 UTC

This package is auto-updated.

Last update: 2024-05-24 16:50:43 UTC


README

Coverage Status Total Downloads Latest Version CI Workflow

A public composer pacakge, adding a Cognito Client for Laravel using hobbii/cognito-client

composer require hobbii/laravel-cognito-client

Installation

Add the following environment variables:

AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=
COGNITO_APP_CLIENT_ID=
COGNITO_APP_CLIENT_SECRET=
COGNITO_USER_POOL_ID=

Usage

Use the hobbii-driver with socialite:

<?php

use Illuminate\Http\Request;
use Hobbii\LaravelCognitoClient\Facades\Cognito;

class AuthController extends Controller
{
    public function login(Request $request)
    {
        $authSession = Cognito::authenticate($request->email, $request->password);
        
        if ($authSession->success()) {
            return redirect()->route('dashboard');
        }
        
        return back()->withErrors([
            'email' => 'Invalid email or password!'
        ]);
    }
}

Customisation

Publish the configuration file to customise settings, by running

php artisan vendor:publish --provider="Hobbii\LaravelCognitoClient\CognitoClientServiceProvider" --tag=config

Customise the configurations in config/hobbii-cognito.php.

Testing

You can find tests in the /tests folder, and you can run them by using ./vendor/bin/phpunit.

Static analysis

You can run PHPStan, by executing ./vendor/bin/phpstan analyse

License

All contents of this package are licensed under the MIT license.