Socialstream — Laravel Socialite Meets Jetstream

Joel Butcher
2 min readDec 28, 2020

Earlier today I officially released the first version of Socialstream, a simple Laravel package that takes the scaffolding provided by Laravel Jetstream and integrates Laravel Socialite.

Jetstream is an application starter kit from the guys over at Laravel. It’s a frontend scaffold for the entire authentication layer of your application, providing registration & login, two-factor authentication, browser session management and optional team support, right out of the box. Jetstream is built on top of Laravel Fortify, a frontend agnostic authentication backend for Laravel. You can find the source code here:

Socialstream started as a PR into Jetstream that surfaced as a result of a Github feature request from the creator of Laravel Debugbar.

After a month of development and discussion, the pull request was closed by Taylor since he and the team simply couldn’t take on the maintenance burden of the feature on top of all the other packages and apps they maintain. Fair play to them, between the four of them, they do A LOT of work!

Installation

Installing Socialstream is as simple as installing Jetstream. Just composer require it and run the install command. Easy!

composer require joelbutcher/socialstreamphp artisan socialstream:install

Even though Socialstream requires Jetstream as a dependency, it doesn’t matter if you haven’t installed it. The command above will take you through all the necessary steps required to get you started with Jetstream and your preferred frontend stack.

Configuration & Setup

Once Socialstream is installed, it will publish a config file. In this config file, you can define whether or not the packages alterations should be shown, the middleware used to wrap the routes as well as the providers that you wish to use:

<?phpreturn [
'show' => true,
'middleware => ['web'], 'providers => [
'github',
'facebook',
'google'
],
];

Once you’ve defined your providers, you will need to provider client_id , client_secret and redirect keys for each in your services.php config file. E.g.

'github' => [
'client_id' => env('GITHUB_CLIENT_ID'),
'client_secret' => env('GITHUB_CLIENT_SECRET'),
'redirect' => env('GITHUB_REDIRECT'),
],

That’s it! Socialstream is installed, along with all goodness that ships with Jetstream. Head on over the to repo to checkout the docs and give it a spin:

--

--

Joel Butcher

I’m a full stack developer, specialising in Laravel. I prefer to use React, especially with Next.is, but can also develop in Vue. I’m also an amateur guitarist.