A simple Socialite implementation for Laravel Jetstream.

Related tags

Laravel socialstream
Overview

Build Status Total Downloads Latest Stable Version License

Introduction

Socialstream is a third-party package for Laravel Jetstream. It replaces the published authentication and profile scaffolding provided by Laravel Jetstream, with scaffolding that has support for Laravel Socialite.

If you are unfamiliar with Laravel Socialite, it is strongly advised that you take a look at the official documentation.

Installation

Getting started with Socialstream is a breeze. With a simple two-step process to get you on your way to creating the next big thing. Inspired by the simplicity of Jetstream's installation process, Socialstream follows the same 'installation':

composer require joelbutcher/socialstream

php artisan socialstream:install

The socialstream:install command will overwrite the Jetstream published files which are required for Socialstream to work.

Note: If you don't have Laravel Jetstream installed, the above command will walk you through the steps required to install it.

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:

<?php

return [
    'middleware' => ['web'],
    'providers' => [
        \JoelButcher\Socialstream\Providers::github(),
        \JoelButcher\Socialstream\Providers::facebook(),
        \JoelButcher\Socialstream\Providers::google()
    ],
    'features' => [
        // \JoelButcher\Socialstream\Features::rememberSession(),
    ],
];

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

'{provider}' => [
    'client_id' => env('{PROVIDER}_CLIENT_ID'),
    'client_secret' => env('{PROVIDER}_CLIENT_SECRET'),
    'redirect' => env('{PROVIDER}_REDIRECT'), // e.g. 'https://your-domain.com/oauth/{provider}/callback'
],

Generating the redirect.

In some cases, you may want to customise how Socialite handles the generation of the redirect to a provider. For example, you may wish to To do this, you may alter the GenerateRedirectForProvider action found in app/Actions/Socialstream. For example, you may need to define scopes, the response type (e.g. implicit grant type), or any additional request info:

/**
 * Generates the redirect for a given provider.
 * 
 * @param  string  $provider
 * 
 * @return \Symfony\Component\HttpFoundation\RedirectResponse
 */
public function generate(string $provider)
{
    return Socialite::driver($provider)
        ->scopes(['*'])
        ->with(['response_type' => 'token'])
        ->redirect();
}

Resolving users

By default, Socialstream will resolve user information from Socialite using the following logic:

Socialite::driver($provider)->user();

Returning an instance of \Laravel\Socialite\AbstractUser. However, you may wish to customise the way user resolution is done. For example, you may wish to use the stateless method available for some Socialite providers. Socialstream makes this easy for you and publishes a ResolveSocialiteUser action to you applications app/Actions/Socialstream directory. Simply customise this class with the logic required for your use-casee.

Handling Invalid State

To handle instances where Socialite throws an InvalidStateException a dedicated HandleInvalidState action is made available to you when you first install Socialstream. You are free to modify or extend this action according to your needs.

Alternatively, you may write your own action to handle the exception. To do so, you'll need to implement JoelButcher\Socialstream\Contracts\HandlesInvalidState and update the following line in App\Providers\SocialstreamServiceProvider

Socialstream::handlesInvalidStateUsing(HandleInvalidState::class);

Socialite Providers

If you wish to use the community driven socialiteproviders package with Socialstream, you may do so by following their documentation on installing the package into a Laravel project. There are a few configuration steps you will need to go through first.

To implement a custom provider, you will need to create an SVG icon file (e.g. twitter-icon.blade.php or TwitterIcon.vue) to be used in the authentication cards and the account management panel.

You will then need to alter the appropriate published components with your new icons and provider condition:

  • Connected Account component
  • Socialstream Providers component

Note: Some providers will not return a token in the callback response. As such, you will need to modify the 2020_12_22_000000_create_connected_accounts_table.php migration to allow the token field to accept NULL values

Changelog

Check out the CHANGELOG in this repository for all the recent changes.

Maintainers

Socialstream is developed and maintained by Joel Butcher

Credits

Socialstream has a strong community of contributors helping make it the best package for integrating Socialite into your application. You can view all contributers here

License

Socialstream is open-sourced software licensed under the MIT license.

Comments
  • How to redirect the page for AccountCompletion after the registration[bug]

    How to redirect the page for AccountCompletion after the registration[bug]

    Describe the bug I would like to generate a redirect if the account registration is not complete, but GenerateRedirectForProvider is not in app/Actions/Socialstream not sure what happened here.

    To Reproduce

    Expected behavior I would like the user to complete the Registration if username field is null etc

    I have edited the CreateUserFromProvider.php but not sure this work

    return DB::transaction(function () use ($provider, $providerUser) {
                return tap(User::create([
                    'name' => $providerUser->getName(),
                    'username' => $providerUser->getNickname(),
                    'email' => $providerUser->getEmail(),
                ]), function (User $user) use ($provider, $providerUser) {
                    $user->markEmailAsVerified();
    
                    // if username is null redirect to create username
                    if ($providerUser->getNickname() == null) {
                        return Socialite::driver($provider)
                            ->scopes(['*'])
                            ->with(['response_type' => 'token'])
                            ->redirect(route('register.complete'));
                    }
    
    

    Screenshots If applicable, add screenshots to help explain your problem.

    Environment context

    • Socialstream version: 3.4.1
    • Jetstream stack: Inertia
    • Laravel version: 9.6.0
    • PHP version: 8.1.2
    bug 
    opened by jameswong3388 10
  • [feature] optional auto_create setting to improve login UX

    [feature] optional auto_create setting to improve login UX

    This change/enhancement is based on UX optimisation consideration.

    Current Issue First-time guest visiting guarded pages will be redirected to login page. Clicking social media icons at login page will return an error, which is counter-intuitive from UX perspective.

    Enhancement First-time guest can quickly get onboard when they visited links that required authentication.

    opened by luiyongsheng 9
  • Support for customize OAuthController

    Support for customize OAuthController

    Hi could you give me a tip on how to overwrite OAuthController and routings ? I try with publishing socialstream-routes but maybe I'm doing something wrong. Thanks

    opened by illambo 9
  • SQLSTATE[HY000]: General error: 1364 Field 'password' doesn't have a default value

    SQLSTATE[HY000]: General error: 1364 Field 'password' doesn't have a default value

    I try to register with google account but I get error "SQLSTATE[HY000]: General error: 1364 Field 'password' doesn't have a default value"

    how to solve this issue? thank you

    opened by hilmihidyt 7
  • User should be able to delete his account even with no password set

    User should be able to delete his account even with no password set

    Is there a specific reason for the following modification?

    old

    <div v-if="$page.props.jetstream.hasAccountDeletionFeatures">
        <jet-section-border />
    
        <delete-user-form class="mt-10 sm:mt-0" />
    </div>
    

    new

    <div v-if="$page.props.socialstream.hasPassword">
        <jet-section-border />
    
        <delete-user-form class="mt-10 sm:mt-0" />
    </div>
    
    bug 
    opened by wassim 7
  • Multilingual site, issue with register route

    Multilingual site, issue with register route

    Hello, thank you for this very useful package.

    I am developing a multilingual site, I am using this package: https://github.com/mcamara/laravel-localization

    I have a problem with the registration. The path of the registration page can be for example: English side: www.mysite.com/en/register or Frensh side: www.mysite.com/fr/enregistrement

    But in OAuthController, there are these codes find if it's a registration:

    public function redirectToProvider(Request $request, string $provider)
    {
        session()->put('origin_url', back()->getTargetUrl());
        return Socialite::driver($provider)->redirect();
    }
    

    and

    public function handleProviderCallback(Request $request, string $provider, HandlesInvalidState $handler)
    {
    ...
      // Registration...
      if (session()->get('origin_url') === route('register')) {
      ...
      }
    ...
    }
    

    This test therefore does not work. In French for example, session()->get('origin_url') is equal to "fr/enregistrement", and route('register') is equal to "register"

    If we could save the previous route name in session, instead of the previous url, that might solve the problem, but I couldn't find a way to find the previous route name with Laravel.

    Another solution would be to add middleware on Route::get('/register') in Fortify. This middleware would just do: session()->flash('from_register', true); In OAuthController, we would then do if (session()->get('from_register')) {

    But there is surely a more elegant solution which does not cause any modification in the routes of Fortify.

    Please tell me if you have any other suggestion.

    opened by DonDiegoAA 7
  • [bug]  OAuthController always redirect to config('fortify.home')

    [bug] OAuthController always redirect to config('fortify.home')

    Login only redirects to config('fortify.home') and not the intended URL. Please add the intended helper to redirects in the handleProviderCallback method of LoginResponse class.

    Thank you

    bug testing 
    opened by opilo 6
  • Providers.php not published?

    Providers.php not published?

    Hi,

    In the README it says:

    To implement a custom provider, you will need to create an SVG icon file (e.g. twitter-icon.blade.php or TwitterIcon.vue) to be used in the authentication cards and the account management panel.

    You will then need to alter the appropriate published components with your new icons and provider condition:

    Connected Account component Socialstream Providers component

    This leads me to believe that I need to alter /joelbutcher/socialstream/Providers.php - which seems not to be published. I search my codebase for hasBitbucketSupport and the only place that the string is found is as above.

    Would appreciate any help you can provide with this.

    Many thanks

    bug 
    opened by sidewaysglance 5
  • [bug]

    [bug]

    Describe the bug On a register and login page, I catch errors like JSON with numbers. Screenshot: Screenshot from 2021-10-23 21-03-52

    I solve this problem: OAuthController (for example: handleUserAlreadyRegistered function) When the controller redirect you back with errors, you should replace: return redirect()->route('register')->withErrors( __('An account with that :Provider sign in already exists, please login.', ['provider' => $provider]), 'socialstream' ); to: return redirect()->route('register')->withErrors(["socialstream" => __('An account with that :Provider sign in already exists, please login.', ['provider' => $provider])]); and it should be replace in all places where you throw errors to the frontend.

    Maybe I just have this problem, but who knows

    Environment context

    • Socialstream version: 3.2
    • Jetstream stack: Inertia
    • Laravel version: 8.65
    • PHP version: 8.1
    bug help wanted good first issue 
    opened by icornman 5
  • Fix profile photos that return long urls

    Fix profile photos that return long urls

    Fix errors for images returned by OAuth2 that have too long of a URL. Every google account I tested with returns a URL over the max input for the column and what is supported by default with file_put_contents(). For reference, my GSuite account profile image URL returned was 821 characters long. To fix this I:

    Increased the avatar_path length to 1000 Replaced the temporary filename with UUID

    opened by aidanthewiz 5
  • Automatically login an existing account trying to register again. (Features::loginExistingAccountOnRegister)

    Automatically login an existing account trying to register again. (Features::loginExistingAccountOnRegister)

    What problem does this feature request solve?. Avoids displaying an error message to a user trying to register with an existing social account.

    Describe your proposed solution Instead, connect it automatically. I like the createAccountOnFirstLogin feature. It would be nice to have the reverse feature loginExistingAccountOnRegister. Does this cause security issues that I can't see?

    Describe alternatives you've considered

    Environment context

    • Socialstream version: 3.0.2
    • Jetstream stack: Livewire
    • Laravel version: 8.41.0
    • PHP version: 7.4.16
    opened by DonDiegoAA 5
  • [bug] This Google sign in account is already associated with your user.

    [bug] This Google sign in account is already associated with your user.

    Describe the bug When logging in using a gmail address that already exists in the system (created originally by logging in using Google) I am successfully logged in but redirected to the /user/profile/ page with the following error - "This Google sign in account is already associated with your user."

    To Reproduce See above

    Expected behavior Logged in without error

    Screenshots image

    Environment context

    • Socialstream version: 3.8
    • Jetstream stack: Livewire
    • Laravel version: 9.19
    • PHP version: 8.0.23
    bug 
    opened by eyalgrossdev 5
Releases(v3.8.1)
  • v3.8.1(Nov 4, 2022)

    What's Changed

    • Update Socialstream.php by @tinusg in https://github.com/joelbutcher/socialstream/pull/228

    New Contributors

    • @tinusg made their first contribution in https://github.com/joelbutcher/socialstream/pull/228

    Full Changelog: https://github.com/joelbutcher/socialstream/compare/v3.8.0...v3.8.1

    Source code(tar.gz)
    Source code(zip)
  • v3.8.0(Sep 19, 2022)

    What's Changed

    • [3.x] Ensure HTTP response for fetching avatar is successful by @Wit3 in https://github.com/joelbutcher/socialstream/pull/224
    • [3.x] Fix label component imports by @joelbutcher in https://github.com/joelbutcher/socialstream/pull/225

    New Contributors

    • @Wit3 made their first contribution in https://github.com/joelbutcher/socialstream/pull/224

    Full Changelog: https://github.com/joelbutcher/socialstream/compare/v3.7.6...v3.8.0

    Source code(tar.gz)
    Source code(zip)
  • v3.7.6(Sep 16, 2022)

    What's Changed

    • [3.x] Remote "Jet" component prefix by @joelbutcher in https://github.com/joelbutcher/socialstream/pull/220
    • [3.x] Update readme documentation by @joelbutcher in https://github.com/joelbutcher/socialstream/pull/221
    • [3.x] Use Http Client to fetch photo from URL by @howdu in https://github.com/joelbutcher/socialstream/pull/222

    New Contributors

    • @howdu made their first contribution in https://github.com/joelbutcher/socialstream/pull/222

    Full Changelog: https://github.com/joelbutcher/socialstream/compare/v3.7.5...v3.7.6

    Source code(tar.gz)
    Source code(zip)
  • v3.7.5(Aug 24, 2022)

  • v3.7.4(Aug 17, 2022)

    What's Changed

    • [3.x] Fix validation errors and connect account form by @joelbutcher in https://github.com/joelbutcher/socialstream/pull/215
    • [3.x] Rename provider icons folder. by @joelbutcher in https://github.com/joelbutcher/socialstream/pull/217
    • [3.x] Fix twitter icon bug in enabled providers in connected account form by @joelbutcher in https://github.com/joelbutcher/socialstream/pull/218

    Full Changelog: https://github.com/joelbutcher/socialstream/compare/v3.7.3...v3.7.4

    Source code(tar.gz)
    Source code(zip)
  • v3.7.3(Aug 13, 2022)

  • v3.7.2(Aug 9, 2022)

    What's Changed

    • [3.x] Fix Twitter OAuth 2.0 redeirect URL generation links by @WizardOfCodez in https://github.com/joelbutcher/socialstream/pull/208

    New Contributors

    • @WizardOfCodez made their first contribution in https://github.com/joelbutcher/socialstream/pull/208

    Full Changelog: https://github.com/joelbutcher/socialstream/compare/v3.7.1...v3.7.2

    Source code(tar.gz)
    Source code(zip)
  • v3.7.1(Aug 6, 2022)

    What's Changed

    • [3.x] Add support for Twitter OAuth 2 Provider by @joelbutcher in https://github.com/joelbutcher/socialstream/pull/206

    Full Changelog: https://github.com/joelbutcher/socialstream/compare/v3.7.0...v3.7.1

    Source code(tar.gz)
    Source code(zip)
  • v3.7.0(Aug 3, 2022)

    What's Changed

    • [3.x] Include feature test for provider callback by @joelbutcher in https://github.com/joelbutcher/socialstream/pull/204

    Full Changelog: https://github.com/joelbutcher/socialstream/compare/v3.6.0...v3.7.0

    Source code(tar.gz)
    Source code(zip)
  • v3.6.0(Jul 21, 2022)

    What's Changed

    • [3.x] Use Termwind by @joelbutcher in https://github.com/joelbutcher/socialstream/pull/199
    • [3.x] auto-install node and build frontend by @joelbutcher in https://github.com/joelbutcher/socialstream/pull/201
    • [3.x] Drop Laravel 8.x and PHP 7.3, 7.4 by @joelbutcher in https://github.com/joelbutcher/socialstream/pull/202

    Full Changelog: https://github.com/joelbutcher/socialstream/compare/v3.5.0...v3.6.0

    Source code(tar.gz)
    Source code(zip)
  • v3.5.0(May 29, 2022)

    What's Changed

    • Fix 'Attempt to read property "avatar_path" on null' error on "Use Avatar as Profile Photo" action by @aidanthewiz in https://github.com/joelbutcher/socialstream/pull/186
    • Change Inertia stubs to use Composition API by @ibnu-ja in https://github.com/joelbutcher/socialstream/pull/193
    • Added documentation for usage with Laravel Passport

    Full Changelog: https://github.com/joelbutcher/socialstream/compare/v3.4.2...v3.5.0

    Source code(tar.gz)
    Source code(zip)
  • v3.4.2(Apr 22, 2022)

    What's Changed

    • fixed Features class name in examples by @lsmith77 in https://github.com/joelbutcher/socialstream/pull/182
    • Fix account removal for non-databse sessions by @aidanthewiz in https://github.com/joelbutcher/socialstream/pull/187
    • fix: put OAuth errors into MessageBag by @ibnu-ja in https://github.com/joelbutcher/socialstream/pull/190

    New Contributors

    • @lsmith77 made their first contribution in https://github.com/joelbutcher/socialstream/pull/182
    • @ibnu-ja made their first contribution in https://github.com/joelbutcher/socialstream/pull/190

    Full Changelog: https://github.com/joelbutcher/socialstream/compare/v3.4.1...v3.4.2

    Source code(tar.gz)
    Source code(zip)
  • v3.4.1(Mar 9, 2022)

    What's Changed

    • Simple DocBlock improvement by @srdante in https://github.com/joelbutcher/socialstream/pull/179
    • [3.x] Check registration feature is enabled when handling errors by @joelbutcher in https://github.com/joelbutcher/socialstream/pull/181

    Full Changelog: https://github.com/joelbutcher/socialstream/compare/v3.4.0...v3.4.1

    Source code(tar.gz)
    Source code(zip)
  • v2.5.1(Mar 9, 2022)

    Changed

    • Check registration feature is enabled on error handling. If not, use the login route

    Full Changelog: https://github.com/joelbutcher/socialstream/compare/v2.5.0...v2.5.1

    Source code(tar.gz)
    Source code(zip)
  • v1.2.1(Mar 9, 2022)

    Changed

    • Check registration feature is enabled on error handling. If not, use the login route

    Full Changelog: https://github.com/joelbutcher/socialstream/compare/v1.2.0...v1.2.1

    Source code(tar.gz)
    Source code(zip)
  • v3.4.0(Jan 29, 2022)

    What's Changed

    • [3.x] Prevent multiple users connect the same social account by @sp4r74cus in https://github.com/joelbutcher/socialstream/pull/171
    • [3.x] Add features to README by @joelbutcher in https://github.com/joelbutcher/socialstream/pull/164
    • [3.x] fix provider avatar feature by @Sairahcaz in https://github.com/joelbutcher/socialstream/pull/169
    • [3.x] Add dynamic method calls for custom providers by @joelbutcher in https://github.com/joelbutcher/socialstream/pull/173
    • [3.x] Place OAuth errors into default MessageBag (#150) by @selfsimilar in https://github.com/joelbutcher/socialstream/pull/172

    New Contributors

    • @sp4r74cus made their first contribution in https://github.com/joelbutcher/socialstream/pull/171
    • @Sairahcaz made their first contribution in https://github.com/joelbutcher/socialstream/pull/169
    • @selfsimilar made their first contribution in https://github.com/joelbutcher/socialstream/pull/172

    Full Changelog: https://github.com/joelbutcher/socialstream/compare/v3.3...v3.3.1

    Source code(tar.gz)
    Source code(zip)
  • v3.3(Jan 13, 2022)

    What's Changed

    • fix file_put_contents bug on windows by @REJack in https://github.com/joelbutcher/socialstream/pull/156
    • [3.x] Laravel 9 support by @joelbutcher in https://github.com/joelbutcher/socialstream/pull/161

    New Contributors

    • @REJack made their first contribution in https://github.com/joelbutcher/socialstream/pull/156

    Full Changelog: https://github.com/joelbutcher/socialstream/compare/v3.2.3...v3.3

    Source code(tar.gz)
    Source code(zip)
  • v2.5.0(Jan 13, 2022)

    What's Changed

    • Apply fixes from StyleCI by @joelbutcher in https://github.com/joelbutcher/socialstream/pull/159
    • [2.x] Laravel 9 support by @joelbutcher in https://github.com/joelbutcher/socialstream/pull/162

    Full Changelog: https://github.com/joelbutcher/socialstream/compare/v2.4.1...v2.5.0

    Source code(tar.gz)
    Source code(zip)
  • v1.2.0(Jan 13, 2022)

    What's Changed

    • Apply fixes from StyleCI by @joelbutcher in https://github.com/joelbutcher/socialstream/pull/160
    • [1.x] Laravel 9 support by @joelbutcher in https://github.com/joelbutcher/socialstream/pull/163

    Full Changelog: https://github.com/joelbutcher/socialstream/compare/v1.1.3...v1.2.0

    Source code(tar.gz)
    Source code(zip)
  • v3.2.3(Dec 20, 2021)

  • 3.2.2(Sep 30, 2021)

  • v3.2.1(Sep 9, 2021)

    Fixes

    • fixes an issue with empty connected accounts being null when calling ->user_id in HasConnectedAccount
    • fixes an issue with photo’s returning long names in SetsProfilePhotoFromUrl
    • fixes GitHub nomenclature in button text
    Source code(tar.gz)
    Source code(zip)
  • v3.2.0(Aug 5, 2021)

  • v3.1.3(Jun 22, 2021)

  • v3.1.2(Jun 15, 2021)

  • v3.1.1(Jun 12, 2021)

  • v3.1.0(Jun 11, 2021)

    Added

    • Auto-login on registration (#118)

    Fixed

    • Show "Use Avatar as Profile Photo" now only appears if the feature is enabled (#121)
    • Improved the accessibility of icons on screen readers (#120)

    Removed

    • Removed {{ $attributes }} from Bitbucket Icon in Inertia stubs (#119)

    Changed

    • Moved the provider icons into the main Socialstream folder in Inertia (#120)
    Source code(tar.gz)
    Source code(zip)
  • v3.0.4(Jun 7, 2021)

  • v3.0.3(May 27, 2021)

    Fixed

    • Fixed an issue with the redirect response being hard-coded to fortify.home, this now uses Fortify's LoginResponse contract
    • Fixed an issue where banner messages looked like arrays (#114)
    Source code(tar.gz)
    Source code(zip)
  • v3.0.2(Apr 22, 2021)

    Fixed

    • Fixed ResolvesSocialiteUser not being published in install for Inertia stack (#106)
    • Fixed missing feature flag for delete account for (#107)
    Source code(tar.gz)
    Source code(zip)
Owner
Joel Butcher
I build awesome software for the web. I'm at home using Laravel with either VueJS or React and TailwindCSS is my preferred CSS framework.
Joel Butcher
Mollie API client wrapper for Laravel & Mollie Connect provider for Laravel Socialite

Mollie for Laravel Laravel-Mollie incorporates the Mollie API and Mollie Connect into your Laravel or Lumen project. Accepting iDEAL, Apple Pay, Banco

Mollie 289 Nov 24, 2022
Social login for Filament through Laravel Socialite

Social login for Filament through Laravel Socialite Add OAuth login through Laravel Socialite to Filament. Installation You can install the package vi

Dutch Coding Company 44 Dec 26, 2022
Jetstrap is a lightweight laravel 8 package that focuses on the VIEW side of Jetstream / Breeze package installed in your Laravel application

A Laravel 8 package to easily switch TailwindCSS resources generated by Laravel Jetstream and Breeze to Bootstrap 4.

null 686 Dec 28, 2022
Laravel Jetstream is a beautifully designed application scaffolding for Laravel.

Laravel Jetstream is a beautifully designed application scaffolding for Laravel. Jetstream provides the perfect starting point for your next Laravel application and includes login, registration, email verification, two-factor authentication, session management, API support via Laravel Sanctum, and optional team management.

The Laravel Framework 3.5k Jan 8, 2023
Specially customized Laravel jetstream's scaffolding for Frest html + laravel admin Template

frest-html-laravel-jetstream Specially customized Laravel jetstream's scaffolding for Frest html + laravel admin Template. It'll not work with any oth

PIXINVENT CREATIVE STUDIO 0 Apr 5, 2022
A quiz application with laravel 8, spatie permissions, livewire, jetstream, chartjs, tailwindcss and more!

Todo Currently busy with some other important things, will definately would like to imporove the app with 1. Multiple choices selection and mapping to

Baig 67 Nov 21, 2022
Utilizamos select2 con MySQL - Laravel 8 - livewire y jetstream

About Laravel Laravel is a web application framework with expressive, elegant syntax. We believe development must be an enjoyable and creative experie

Informática DP 1 Jan 4, 2022
Fast and simple implementation of a REST API based on the Laravel Framework, Repository Pattern, Eloquent Resources, Translatability, and Swagger.

Laravel Headless What about? This allows a fast and simple implementation of a REST API based on the Laravel Framework, Repository Pattern, Eloquent R

Julien SCHMITT 6 Dec 30, 2022
A simple wallet implementation for Laravel

Laravel Wallet A simple wallet implementation for Laravel. Installation You can install the package via composer: composer require stephenjude/laravel

Stephen Jude 216 Dec 29, 2022
Implementation Package Spatie/Laravel-Permission

About Laravel Laravel is a web application framework with expressive, elegant syntax. We believe development must be an enjoyable and creative experie

M Rizal 3 Sep 12, 2021
A lightway implementation of Laravel's belongs To many

A lightweigth implementation of Laravel's belongs To many relationship in cases you don't need pivot table.

Inani El Houssain 24 Nov 2, 2022
An easy-to-use virtual wallet implementation for Laravel

Laravel Wallet Some apps require a prepayment system like a virtual wallet where customers can recharge credits which they can then use to pay in app

Muath Assawadi 6 Sep 28, 2022
Repository Pattern implementation for Laravel

This is a Simple Repository Pattern implementation for Laravel Projects and an easily way to build Eloquent queries from API requests.

Ephraïm SEDDOR 1 Nov 22, 2021
A Gutenberg implementation for Laravel

Laraberg aims to provide an easy way to integrate the Gutenberg editor with your Laravel projects. It takes the Gutenberg editor and adds all the comm

Van Ons Internet Agency 1.2k Dec 22, 2022
Easy Laravel Server-Side implementation of PrimeVue Datatables

Laravel + PrimeVue Datatables This is a simple, clean and fluent serve-side implementation of PrimeVue Datatables in Laravel. Features Global Search i

Savannabits 11 Dec 29, 2022
🍩 SweetAlert 2 Implementation for Laravel

?? SweetAlert2 Support for Laravel Add beautiful alerts by SweetAlert directly into your Laravel application, with a simple setup, and handly helpers.

Wavey 38 Dec 12, 2022
An easy-to-use virtual wallet implementation for Laravel.

Laravel Wallet Some apps require a prepayment system like a virtual wallet where customers can recharge credits which they can then use to pay in app

Muathye 1 Feb 6, 2022
A straightforward implementation of the Circuit Breaker pattern for Laravel 9

Laravel Circuit Breaker A straightforward implementation of the Circuit Breaker pattern for Laravel Framework 9 (using Memcached). Installation You ca

Leonardo Vieira 2 Mar 22, 2022
This is a solution implementation for the coderbyte question, CLEAN GET REQUEST RESULT.

This is a solution implementation for the coderbyte question, CLEAN GET REQUEST RESULT. Two solutions are proposed, the first is a brute force approach while the other is an improved time complexity solution.

null 3 May 23, 2022