Download the PHP package rzb/social-auth without Composer
On this page you can find all versions of the php package rzb/social-auth. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download rzb/social-auth
More information about rzb/social-auth
Files in rzb/social-auth
Package social-auth
Short Description Social authentication boilerplate.
License MIT
Homepage https://github.com/rzb/social-auth
Informations about the package social-auth
SocialAuth
Socialite wrapper that handles all the remaining social authentication boilerplate, exposing endpoints ready for use that enable multiple providers at once for any model(s) you need.
Installation
1) Require via Composer
2) Run auto-discovered migrations
3) Add the contracts and traits to the User model, or to whatever model(s) you need
4) (optional) If you need to authenticate any model(s) other than the User, add/remove providers or tweak the exposed Routes, publish the config file
How it works
By default, once installed the package automatically exposes 2 stateless endpoints and accepts Google, Facebook and Twitter providers for the User model. These routes expect the same 2 segments.
Routes
-
Returns the auth URL for the given provider, so your frontend can load the provider's auth page.
- Callback route that finds or creates the given sociable model and returns its JsonResource.
URL Segments
-
provider
- the provider name. e.g. google, facebook, etc. sociable
- the name of the sociable model as per your config file. e.g.user, customer, etc.
Customization
For most projects, you won't have to do anything at all after installation. If however you have different needs, you're free to tweak the configuration to add/remove models and providers, use your own controller or even implement your own DB logic.
Customize supported models and providers
You can support authentication for any model you want.
1) Add an entry to the sociables
key in the config file, indicating the model class and the providers you want to allow specifically for that model.
2) Next, make sure your model implements and uses the following contracts and traits.
Customize routes and controller
You can apply middlewares and route prefix to the package routes. Or even replace its controller with your own.
Customize DB logic
The Sociable
trait covers a basic User model with username and password. If your model has a different structure you may want to define your own createFromSocialUser
method.
Credits
- rzb
- All Contributors