Uh oh!
There was an error while loading.Please reload this page.
- Notifications
You must be signed in to change notification settings - Fork994
Laravel 12 with user authentication, registration with email confirmation, social media authentication, password recovery, and captcha protection. Uses offical [Bootstrap 4](http://getbootstrap.com). This also makes full use of Controllers for the routes, templates for the views, and makes use of middleware for routing. 5 Minutes Stand-up time.
License
MIT, Unknown licenses found
Licenses found
jeremykenedy/laravel-auth
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
Laravel Auth is a Complete Build of Laravel 12 with Email Registration Verification, Social Authentication, User Roles and Permissions, User Profiles, and Admin restricted user management system. Built on Bootstrap 4.
This project costs me $22/month to be hosted onVultr.
Please considersupporting my work if you use & find it useful. ❤️
If you like this, you will loveLaravel Auth Spa with configurable providers from an admin panel.
- About
- Features
- Installation Instructions
- Seeds
- Routes
- Socialite
- Other API keys
- Environment File
- Updates
- Screenshots
- File Tree
- Opening an Issue
- Laravel Auth License
- Contributors
Laravel 12 with user authentication, registration with email confirmation, social media authentication, password recovery, and captcha protection. Uses officialBootstrap 4. This also makes full use of Controllers for the routes, templates for the views, and makes use of middleware for routing. Project can be stood up in minutes.
| Laravel Auth Features |
|---|
| Built onLaravel 12 |
| Built onBootstrap 4 |
| UsesMySQL Database (can be changed) |
| UsesArtisan to manage database migration, schema creations, and create/publish page controller templates |
| Dependencies are managed withCOMPOSER |
| Laravel ScaffoldingUser andAdministrator Authentication. |
| UserSocialite Logins ready to go - See API list used below |
| Google Maps API v3 for User Location lookup and Geocoding |
| CRUD (Create, Read, Update, Delete) Themes Management |
| CRUD (Create, Read, Update, Delete) User Management |
| RobustLaravel Logging with admin UI using MonoLog |
| GooglereCaptcha Protection with Google API |
| User Registration with email verification |
| Makes use of LaravelMix to compile assets |
| Makes use ofLanguage Localization Files |
| Active Nav states usingLaravel Requests |
| Restrict User Email Activation Attempts |
| Capture IP to users table upon signup |
| UsesLaravel Debugger for development |
| Makes use ofPassword Strength Meter |
| Makes use ofhideShowPassword |
| User Avatar Image AJAX Upload withDropzone.js |
| User Gravatar usingGravatar API |
| User Password Reset via Email Token |
| User Login with remember password |
| UserRoles/ACL Implementation |
| Roles and Permissions GUI |
| Makes use ofLaravel's Soft Delete Structure |
| Soft Deleted Users Management System |
| Permanently Delete Soft Deleted Users |
| User Delete Account with Goodbye email |
| User Restore Deleted Account Token |
| Restore Soft Deleted Users |
| View Soft Deleted Users |
| Captures Soft Delete Date |
| Captures Soft Delete IP |
| Admin Routing Details UI |
| Admin PHP Information UI |
| Eloquent user profiles |
| User Themes |
| 404 Page |
| 403 Page |
| Configurable Email Notification viaLaravel-Exception-Notifier |
| Activity Logging usingLaravel-logger |
| Optional 2-step account login verfication withLaravel 2-Step Verification |
| UsesLaravel PHP Info package |
| UsesLaravel Blocker package |
- Run
git clone https://github.com/jeremykenedy/laravel-auth.git laravel-auth - Create a MySQL database for the project
mysql -u root -p, if using Vagrant:mysql -u homestead -psecretcreate database laravelAuth;\q
- From the projects root run
cp .env.example .env - Configure your
.envfile - Install composer, php-mysql, php-ext and php-dom (dependent on your distrubtion, For Debian run
apt install composer php-mysql php-ext php-dom) - Run
composer updatefrom the projects root folder - From the projects root folder run:
php artisan vendor:publish --tag=laravelroles &&php artisan vendor:publish --tag=laravel2step &&php artisan vendor:publish --tag=laravel-email-database-log-migration- From the projects root folder run
sudo chmod -R 755 ../laravel-auth - From the projects root folder run
php artisan key:generate - From the projects root folder run
php artisan migrate - From the projects root folder run
composer dump-autoload - From the projects root folder run
php artisan db:seed - Compile the front end assets withnpm steps oryarn steps.
- Install yarn (dependent on your distribution)
- From the projects root folder run
yarn install - From the projects root folder run
yarn run devoryarn run build
- From the projects root folder run
npm install - From the projects root folder run
npm run devornpm run build
- From the projects root folder run
php artisan config:cache
And thats it with the caveat of setting up and configuring your development environment. I recommendLaravel Homestead
- Unverified - Level 0
- User - Level 1
- Administrator - Level 5
- view.users
- create.users
- edit.users
- delete.users
| Password | Access | |
|---|---|---|
| user@user.com | password | User Access |
| admin@user.com | password | Admin Access |
- ThemesTableSeeder
- NOTE: A lot of themes render incorrectly on Bootstrap 4 since their core was built to override Bootstrap 4. These will be updated soon and ones that do not render correctly will be removed from the seed. In the mean time you can remove them from the seed or manaully from the UI or database.
| Slug | Name |
|---|---|
| ipAddress | IP Address |
| domain | Domain Name |
| user | User |
| city | City |
| state | State |
| country | Country |
| countryCode | Country Code |
| continent | Continent |
| region | Region |
| Type | Value | Note |
|---|---|---|
| domain | test.com | Block all domains/emails @test.com |
| domain | test.ca | Block all domains/emails @test.ca |
| domain | fake.com | Block all domains/emails @fake.com |
| domain | example.com | Block all domains/emails @example.com |
| domain | mailinator.com | Block all domains/emails @mailinator.com |
GET|HEAD / ..................................................................................................................... welcome › WelcomeController@welcome POST _ignition/execute-solution .................................................. ignition.executeSolution › Spatie\LaravelIgnition › ExecuteSolutionController GET|HEAD _ignition/health-check .............................................................. ignition.healthCheck › Spatie\LaravelIgnition › HealthCheckController POST _ignition/update-config ........................................................... ignition.updateConfig › Spatie\LaravelIgnition › UpdateConfigController GET|HEAD activate ....................................................................................................... activate › Auth\ActivateController@initial GET|HEAD activate/{token} ................................................................................ authenticated.activate › Auth\ActivateController@activate GET|HEAD activation ............................................................................... authenticated.activation-resend › Auth\ActivateController@resend GET|HEAD activation-required ...................................................................... activation-required › Auth\ActivateController@activationRequired GET|HEAD activity .................................................................... activity › jeremykenedy\LaravelLogger › LaravelLoggerController@showAccessLog DELETE activity/clear-activity ............................................ clear-activity › jeremykenedy\LaravelLogger › LaravelLoggerController@clearActivityLog GET|HEAD activity/cleared .................................................... cleared › jeremykenedy\LaravelLogger › LaravelLoggerController@showClearedActivityLog GET|HEAD activity/cleared/log/{id} .................................................. jeremykenedy\LaravelLogger › LaravelLoggerController@showClearedAccessLogEntry DELETE activity/destroy-activity ...................................... destroy-activity › jeremykenedy\LaravelLogger › LaravelLoggerController@destroyActivityLog POST activity/live-search ......................................................... liveSearch › jeremykenedy\LaravelLogger › LaravelLoggerController@liveSearch GET|HEAD activity/log/{id} ................................................................. jeremykenedy\LaravelLogger › LaravelLoggerController@showAccessLogEntry POST activity/restore-log .................................... restore-activity › jeremykenedy\LaravelLogger › LaravelLoggerController@restoreClearedActivityLog POST avatar/upload ................................................................................................... avatar.upload › ProfilesController@upload GET|HEAD blocker ................................... laravelblocker::blocker.index › jeremykenedy\LaravelBlocker\App\Http\Controllers\LaravelBlockerController@index POST blocker ................................... laravelblocker::blocker.store › jeremykenedy\LaravelBlocker\App\Http\Controllers\LaravelBlockerController@store GET|HEAD blocker-deleted .................. laravelblocker::blocker-deleted › jeremykenedy\LaravelBlocker\App\Http\Controllers\LaravelBlockerDeletedController@index DELETE blocker-deleted-destroy-all laravelblocker::destroy-all-blocked › jeremykenedy\LaravelBlocker\App\Http\Controllers\LaravelBlockerDeletedController@destroy… POST blocker-deleted-restore-all laravelblocker::blocker-deleted-restore-all › jeremykenedy\LaravelBlocker\App\Http\Controllers\LaravelBlockerDeletedController… GET|HEAD blocker-deleted/{id} .... laravelblocker::blocker-item-show-deleted › jeremykenedy\LaravelBlocker\App\Http\Controllers\LaravelBlockerDeletedController@show PUT blocker-deleted/{id} laravelblocker::blocker-item-restore › jeremykenedy\LaravelBlocker\App\Http\Controllers\LaravelBlockerDeletedController@restoreBlocke… DELETE blocker-deleted/{id} ...... laravelblocker::blocker-item-destroy › jeremykenedy\LaravelBlocker\App\Http\Controllers\LaravelBlockerDeletedController@destroy GET|HEAD blocker/create .......................... laravelblocker::blocker.create › jeremykenedy\LaravelBlocker\App\Http\Controllers\LaravelBlockerController@create GET|HEAD blocker/{blocker} ........................... laravelblocker::blocker.show › jeremykenedy\LaravelBlocker\App\Http\Controllers\LaravelBlockerController@show PUT|PATCH blocker/{blocker} ....................... laravelblocker::blocker.update › jeremykenedy\LaravelBlocker\App\Http\Controllers\LaravelBlockerController@update DELETE blocker/{blocker} ..................... laravelblocker::blocker.destroy › jeremykenedy\LaravelBlocker\App\Http\Controllers\LaravelBlockerController@destroy GET|HEAD blocker/{blocker}/edit ...................... laravelblocker::blocker.edit › jeremykenedy\LaravelBlocker\App\Http\Controllers\LaravelBlockerController@edit GET|POST|HEAD broadcasting/auth .............................................................................. Illuminate\Broadcasting › BroadcastController@authenticate GET|HEAD exceeded ...................................................................................................... exceeded › Auth\ActivateController@exceeded GET|HEAD home ................................................................................................................... public.home › UserController@index GET|HEAD images/profile/{id}/avatar/{image} ................................................................................... ProfilesController@userProfileAvatar GET|HEAD login .......................................................................................................... login › Auth\LoginController@showLoginForm POST login .......................................................................................................................... Auth\LoginController@login POSTlogout ...............................................................................................................logout › Auth\LoginController@logout GET|HEAD logs ............................................................................................. Rap2hpoutre\LaravelLogViewer › LogViewerController@index POST password/email .......................................................................... password.email › Auth\ForgotPasswordController@sendResetLinkEmail GET|HEAD password/reset ....................................................................... password.request › Auth\ForgotPasswordController@showLinkRequestForm POST password/reset ....................................................................................... password.update › Auth\ResetPasswordController@reset GET|HEAD password/reset/{token} ........................................................................ password.reset › Auth\ResetPasswordController@showResetForm GET|HEAD permission-deleted/{id} ...................... laravelroles::permission-show-deleted › jeremykenedy\LaravelRoles › LaravelpermissionsDeletedController@show DELETE permission-destroy/{id} ................... laravelroles::permission-item-destroy › jeremykenedy\LaravelRoles › LaravelpermissionsDeletedController@destroy PUT permission-restore/{id} .............. laravelroles::permission-restore › jeremykenedy\LaravelRoles › LaravelpermissionsDeletedController@restorePermission GET|HEAD permissions .............................................. laravelroles::permissions.index › jeremykenedy\LaravelRoles › LaravelPermissionsController@index POST permissions .............................................. laravelroles::permissions.store › jeremykenedy\LaravelRoles › LaravelPermissionsController@store GET|HEAD permissions-deleted ............................. laravelroles::permissions-deleted › jeremykenedy\LaravelRoles › LaravelpermissionsDeletedController@index DELETE permissions-deleted-destroy-all laravelroles::destroy-all-deleted-permissions › jeremykenedy\LaravelRoles › LaravelpermissionsDeletedController@destroyAll… POST permissions-deleted-restore-all laravelroles::permissions-deleted-restore-all › jeremykenedy\LaravelRoles › LaravelpermissionsDeletedController@restoreAll… GET|HEAD permissions/create ..................................... laravelroles::permissions.create › jeremykenedy\LaravelRoles › LaravelPermissionsController@create GET|HEAD permissions/{permission} ................................... laravelroles::permissions.show › jeremykenedy\LaravelRoles › LaravelPermissionsController@show PUT|PATCH permissions/{permission} ............................... laravelroles::permissions.update › jeremykenedy\LaravelRoles › LaravelPermissionsController@update DELETE permissions/{permission} ............................. laravelroles::permissions.destroy › jeremykenedy\LaravelRoles › LaravelPermissionsController@destroy GET|HEAD permissions/{permission}/edit .............................. laravelroles::permissions.edit › jeremykenedy\LaravelRoles › LaravelPermissionsController@edit ANY php ............................................................................................................... Illuminate\Routing › RedirectController GET|HEAD phpinfo .......................................................... laravelPhpInfo::phpinfo › jeremykenedy\LaravelPhpInfo › LaravelPhpInfoController@phpinfo GET|HEAD profile/create ................................................................................................. profile.create › ProfilesController@create GET|HEAD profile/{profile} .................................................................................................. profile.show › ProfilesController@show PUT|PATCH profile/{profile} .............................................................................................. profile.update › ProfilesController@update GET|HEAD profile/{profile}/edit ............................................................................................. profile.edit › ProfilesController@edit GET|HEAD profile/{username} ................................................................................................... {username} › ProfilesController@show DELETE profile/{username}/deleteUserAccount ..................................................... profile.deleteUserAccount › ProfilesController@deleteUserAccount PUT profile/{username}/updateUserAccount ..................................................... profile.updateUserAccount › ProfilesController@updateUserAccount PUT profile/{username}/updateUserPassword .................................................. profile.updateUserPassword › ProfilesController@updateUserPassword GET|HEAD re-activate/{token} ................................................................................ user.reactivate › RestoreUserController@userReActivate GET|HEAD register .......................................................................................... register › Auth\RegisterController@showRegistrationForm POST register ................................................................................................................. Auth\RegisterController@register GET|HEAD role-deleted/{id} ........................................ laravelroles::role-show-deleted › jeremykenedy\LaravelRoles › LaravelRolesDeletedController@show DELETE role-destroy/{id} ..................................... laravelroles::role-item-destroy › jeremykenedy\LaravelRoles › LaravelRolesDeletedController@destroy PUT role-restore/{id} ...................................... laravelroles::role-restore › jeremykenedy\LaravelRoles › LaravelRolesDeletedController@restoreRole GET|HEAD roles ................................................................ laravelroles::roles.index › jeremykenedy\LaravelRoles › LaravelRolesController@index POST roles ................................................................ laravelroles::roles.store › jeremykenedy\LaravelRoles › LaravelRolesController@store GET|HEAD roles-deleted ............................................... laravelroles::roles-deleted › jeremykenedy\LaravelRoles › LaravelRolesDeletedController@index DELETE roles-deleted-destroy-all ...... laravelroles::destroy-all-deleted-roles › jeremykenedy\LaravelRoles › LaravelRolesDeletedController@destroyAllDeletedRoles POST roles-deleted-restore-all ...... laravelroles::roles-deleted-restore-all › jeremykenedy\LaravelRoles › LaravelRolesDeletedController@restoreAllDeletedRoles GET|HEAD roles/create ....................................................... laravelroles::roles.create › jeremykenedy\LaravelRoles › LaravelRolesController@create GET|HEAD roles/{role} ........................................................... laravelroles::roles.show › jeremykenedy\LaravelRoles › LaravelRolesController@show PUT|PATCH roles/{role} ....................................................... laravelroles::roles.update › jeremykenedy\LaravelRoles › LaravelRolesController@update DELETE roles/{role} ..................................................... laravelroles::roles.destroy › jeremykenedy\LaravelRoles › LaravelRolesController@destroy GET|HEAD roles/{role}/edit ...................................................... laravelroles::roles.edit › jeremykenedy\LaravelRoles › LaravelRolesController@edit GET|HEAD routes .................................................................................................................. AdminDetailsController@listRoutes GET|HEAD sanctum/csrf-cookie ..................................................................... sanctum.csrf-cookie › Laravel\Sanctum › CsrfCookieController@show POST search-blocked .......................... laravelblocker::search-blocked › jeremykenedy\LaravelBlocker\App\Http\Controllers\LaravelBlockerController@search POST search-blocked-deleted ... laravelblocker::search-blocked-deleted › jeremykenedy\LaravelBlocker\App\Http\Controllers\LaravelBlockerDeletedController@search POST search-users .............................................................................................. search-users › UsersManagementController@search GET|HEAD social/handle/{provider} ............................................................................ social.handle › Auth\SocialController@getSocialHandle GET|HEAD social/redirect/{provider} ...................................................................... social.redirect › Auth\SocialController@getSocialRedirect GET|HEAD terms ....................................................................................................................... terms › TermsController@terms GET|HEAD themes .......................................................................................................... themes › ThemesManagementController@index POST themes .................................................................................................... themes.store › ThemesManagementController@store GET|HEAD themes/create ........................................................................................... themes.create › ThemesManagementController@create GET|HEAD themes/{theme} .............................................................................................. themes.show › ThemesManagementController@show PUT|PATCH themes/{theme} .......................................................................................... themes.update › ThemesManagementController@update DELETE themes/{theme} ........................................................................................ themes.destroy › ThemesManagementController@destroy GET|HEAD themes/{theme}/edit ......................................................................................... themes.edit › ThemesManagementController@edit GET|HEAD users ............................................................................................................. users › UsersManagementController@index POST users ....................................................................................................... users.store › UsersManagementController@store GET|HEAD users/create .............................................................................................. users.create › UsersManagementController@create GET|HEAD users/deleted ................................................................................................. deleted.index › SoftDeletesController@index GET|HEAD users/deleted/{deleted} ......................................................................................... deleted.show › SoftDeletesController@show PUT|PATCH users/deleted/{deleted} ..................................................................................... deleted.update › SoftDeletesController@update DELETE users/deleted/{deleted} ................................................................................... deleted.destroy › SoftDeletesController@destroy GET|HEAD users/{user} .................................................................................................. users.show › UsersManagementController@show PUT|PATCH users/{user} .............................................................................................. users.update › UsersManagementController@update DELETE users/{user} ............................................................................................. user.destroy › UsersManagementController@destroy GET|HEAD users/{user}/edit ............................................................................................. users.edit › UsersManagementController@edit GET|HEAD verification/needed .................. laravel2step::verificationNeeded › jeremykenedy\laravel2step\App\Http\Controllers\TwoStepController@showVerification POST verification/resend ........................................ laravel2step::resend › jeremykenedy\laravel2step\App\Http\Controllers\TwoStepController@resend POST verification/verify ........................................ laravel2step::verify › jeremykenedy\laravel2step\App\Http\Controllers\TwoStepController@verify
- Google Captcha API
- Facebook API
- Twitter API
- Google + API
- GitHub API
- YouTube API
- Twitch TV API
- Instagram API
- 37 Signals API
- See full list of providers:https://socialiteproviders.github.io
Go tohttps://socialiteproviders.github.io and select the provider to be added.
From the projects root folder, in the terminal, run composer to get the needed package.
- Example:
composer require socialiteproviders/twitchFrom the projects root folder run
composer updateAdd the service provider to
/config/services.php- Example:
'twitch' => [ 'client_id' => env('TWITCH_KEY'), 'client_secret' => env('TWITCH_SECRET'), 'redirect' => env('TWITCH_REDIRECT_URI'), ],Add the API credentials to
/.env- Example:
TWITCH_KEY=YOURKEYHERE TWITCH_SECRET=YOURSECRETHERE TWITCH_REDIRECT_URI=http://YOURWEBSITEURL.COM/social/handle/twitchAdd the social media login link:
Example:In file
/resources/views/auth/login.blade.phpadd ONE of the following:- Conventional HTML:
<a href="{{ route('social.redirect', ['provider' => 'twitch']) }}">Twitch</a>- Use Laravel HTML Facade withLaravel Collective:
{!! html()->a(route('social.redirect', ['provider' => 'twitch']), 'Twitch', array('class' => 'btn btn-lg btn-primary btn-block twitch')) !!}
Example.env file:
APP_NAME=LaravelAPP_ENV=localAPP_KEY=APP_DEBUG=trueAPP_URL=http://localhost:8000APP_PROJECT_VERSION=12LOG_CHANNEL=stackDB_CONNECTION=mysqlDB_HOST=127.0.0.1DB_PORT=3306DB_DATABASE=laravelDB_USERNAME=rootDB_PASSWORD=BROADCAST_DRIVER=pusherCACHE_DRIVER=fileSESSION_DRIVER=fileSESSION_LIFETIME=120QUEUE_DRIVER=syncREDIS_HOST=127.0.0.1REDIS_PASSWORD=nullREDIS_PORT=6379MAIL_MAILER=smtpMAIL_HOST=smtp.mailtrap.ioMAIL_PORT=2525MAIL_USERNAME=nullMAIL_PASSWORD=nullMAIL_ENCRYPTION=nullMAIL_FROM_ADDRESS=nullMAIL_FROM_NAME="${APP_NAME}"EMAIL_EXCEPTION_ENABLED=falseEMAIL_EXCEPTION_FROM="${MAIL_FROM_ADDRESS}"EMAIL_EXCEPTION_TO='email1@gmail.com, email2@gmail.com'EMAIL_EXCEPTION_CC=''EMAIL_EXCEPTION_BCC=''EMAIL_EXCEPTION_SUBJECT=''AWS_ACCESS_KEY_ID=AWS_SECRET_ACCESS_KEY=AWS_DEFAULT_REGION=us-east-1AWS_BUCKET=PUSHER_APP_ID=PUSHER_APP_KEY=PUSHER_APP_SECRET=PUSHER_APP_CLUSTER=MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"ACTIVATION=trueACTIVATION_LIMIT_TIME_PERIOD=24ACTIVATION_LIMIT_MAX_ATTEMPTS=3NULL_IP_ADDRESS=0.0.0.0DEBUG_BAR_ENVIRONMENT=localUSER_RESTORE_CUTOFF_DAYS=31USER_RESTORE_ENCRYPTION_KEY=USER_LIST_PAGINATION_SIZE=50LARAVEL_2STEP_ENABLED=falseLARAVEL_2STEP_DATABASE_CONNECTION=mysqlLARAVEL_2STEP_DATABASE_TABLE=laravel2stepLARAVEL_2STEP_USER_MODEL=App\Models\UserLARAVEL_2STEP_EMAIL_FROM=LARAVEL_2STEP_EMAIL_FROM_NAME="Laravel 2 Step Verification"LARAVEL_2STEP_EMAIL_SUBJECT='Laravel 2 Step Verification'LARAVEL_2STEP_EXCEEDED_COUNT=3LARAVEL_2STEP_EXCEEDED_COUNTDOWN_MINUTES=1440LARAVEL_2STEP_VERIFIED_LIFETIME_MINUTES=360LARAVEL_2STEP_RESET_BUFFER_IN_SECONDS=300LARAVEL_2STEP_CSS_FILE="css/laravel2step/app.css"LARAVEL_2STEP_APP_CSS_ENABLED=falseLARAVEL_2STEP_APP_CSS="css/app.css"LARAVEL_2STEP_BOOTSTRAP_CSS_CDN_ENABLED=trueLARAVEL_2STEP_BOOTSTRAP_CSS_CDN="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"DEFAULT_GRAVATAR_SIZE=80DEFAULT_GRAVATAR_FALLBACK=http://c1940652.r52.cf0.rackcdn.com/51ce28d0fb4f442061000000/Screen-Shot-2013-06-28-at-5.22.23-PM.pngDEFAULT_GRAVATAR_SECURE=falseDEFAULT_GRAVATAR_MAX_RATING=gDEFAULT_GRAVATAR_FORCE_DEFAULT=falseDEFAULT_GRAVATAR_FORCE_EXTENSION=jpgDROPZONE_JS_CDN=https://cdnjs.cloudflare.com/ajax/libs/dropzone/5.4.0/dropzone.jsLARAVEL_LOGGER_DATABASE_CONNECTION=mysqlLARAVEL_LOGGER_DATABASE_TABLE=laravel_logger_activityLARAVEL_LOGGER_ROLES_ENABLED=trueLARAVEL_LOGGER_ROLES_MIDDLWARE=role:adminLARAVEL_LOGGER_MIDDLEWARE_ENABLED=trueLARAVEL_LOGGER_USER_MODEL=App\Models\UserLARAVEL_LOGGER_PAGINATION_ENABLED=trueLARAVEL_LOGGER_PAGINATION_PER_PAGE=25LARAVEL_LOGGER_DATATABLES_ENABLED=falseLARAVEL_LOGGER_DASHBOARD_MENU_ENABLED=trueLARAVEL_LOGGER_DASHBOARD_DRILLABLE=trueLARAVEL_LOGGER_LOG_RECORD_FAILURES_TO_FILE=trueLARAVEL_LOGGER_FLASH_MESSAGE_BLADE_ENABLED=falseLARAVEL_LOGGER_JQUERY_CDN_ENABLED=falseLARAVEL_LOGGER_JQUERY_CDN_URL=https://code.jquery.com/jquery-2.2.4.min.jsLARAVEL_LOGGER_BLADE_CSS_PLACEMENT_ENABLED=trueLARAVEL_LOGGER_BLADE_JS_PLACEMENT_ENABLED=trueLARAVEL_LOGGER_BOOTSTRAP_JS_CDN_ENABLED=falseLARAVEL_LOGGER_BOOTSTRAP_JS_CDN_URL=https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.jsLARAVEL_LOGGER_FONT_AWESOME_CDN_ENABLED=falseLARAVEL_LOGGER_FONT_AWESOME_CDN_URL=https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.cssLARAVEL_LOGGER_BOOTSTRAP_CSS_CDN_ENABLED=falseLARAVEL_LOGGER_BOOTSTRAP_CSS_CDN_URL=https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.cssLARAVEL_BLOCKER_USER_MODEL=App\Models\UserLARAVEL_BLOCKER_AUTH_ENABLED=trueLARAVEL_BLOCKER_ROLES_ENABLED=trueLARAVEL_BLOCKER_FLASH_MESSAGES_ENABLED=falseLARAVEL_BLOCKER_JQUERY_CDN_ENABLED=falseLARAVEL_BLOCKER_BLADE_PLACEMENT_CSS='template_linked_css'LARAVEL_BLOCKER_BLADE_PLACEMENT_JS='footer_scripts'LARAVEL_BLOCKER_USE_TYPES_SEED_PUBLISHED=trueLARAVEL_BLOCKER_USE_ITEMS_SEED_PUBLISHED=true# Roles database informationROLES_DATABASE_CONNECTION=null# Roles Misc SettingsROLES_DEFAULT_SEPARATOR='.'# Roles GUI SettingsROLES_GUI_ENABLED=trueROLES_GUI_AUTH_ENABLED=trueROLES_GUI_MIDDLEWARE_ENABLED=trueROLES_GUI_MIDDLEWARE='role:admin'ROLES_GUI_BLADE_EXTENDED='layouts.app'ROLES_GUI_TITLE_EXTENDED='template_title'ROLES_GUI_LARAVEL_ROLES_ENABLED=trueROLES_GUI_DATATABLES_JS_ENABLED=falseROLES_GUI_FLASH_MESSAGES_ENABLED=falseROLES_GUI_BLADE_PLACEMENT_CSS=template_linked_cssROLES_GUI_BLADE_PLACEMENT_JS=footer_scripts# Google Analytics - If blank it will not render, default is falseGOOGLE_ANALYTICS_ID=#GOOGLE_ANALYTICS_ID='UA-XXXXXXXX-X'# NOTE: YOU CAN REMOVE THE KEY CALL IN app.blade.php IF YOU GET A POP UP AND DO NOT WANT TO SETUP A KEY FOR DEV# Google Maps API v3 Key - https://developers.google.com/maps/documentation/javascript/get-api-key#get-an-api-keyGOOGLEMAPS_API_STATUS=trueGOOGLEMAPS_API_KEY=YOURGOOGLEMAPSkeyHERE# https://www.google.com/recaptcha/admin#listENABLE_RECAPTCHA=trueRE_CAP_SITE=YOURGOOGLECAPTCHAsitekeyHERERE_CAP_SECRET=YOURGOOGLECAPTCHAsecretHERE# https://console.developers.google.com/ - NEED OAUTH CREDSGOOGLE_ID=YOURGOOGLEPLUSidHEREGOOGLE_SECRET=YOURGOOGLEPLUSsecretHEREGOOGLE_REDIRECT=https://YOURWEBURLHERE.COM/social/handle/google# https://developers.facebook.com/FB_ID=YOURFACEBOOKidHEREFB_SECRET=YOURFACEBOOKsecretHEREFB_REDIRECT=https://YOURWEBURLHERE.COM/social/handle/facebook# https://apps.twitter.com/TW_ID=YOURTWITTERidHERETW_SECRET=YOURTWITTERkeyHERETW_REDIRECT=https://YOURWEBURLHERE.COM/social/handle/twitter# https://github.com/settings/applications/newGITHUB_ID=YOURIDHEREGITHUB_SECRET=YOURSECRETHEREGITHUB_URL=https://YOURWEBURLHERE.COM/social/handle/github# https://developers.google.com/youtube/v3/getting-startedYOUTUBE_KEY=YOURKEYHEREYOUTUBE_SECRET=YOURSECRETHEREYOUTUBE_REDIRECT_URI=https://YOURWEBURLHERE.COM/social/handle/youtube# https://dev.twitch.tv/docs/authentication/TWITCH_KEY=YOURKEYHERETWITCH_SECRET=YOURSECRETHERETWITCH_REDIRECT_URI=https://YOURWEBURLHERE.COM/social/handle/twitch# https://instagram.com/developer/register/INSTAGRAM_KEY=YOURKEYHEREINSTAGRAM_SECRET=YOURSECRETHEREINSTAGRAM_REDIRECT_URI=https://YOURWEBURLHERE.COM/social/handle/instagram# https://basecamp.com/# https://github.com/basecamp/basecamp-classic-api37SIGNALS_KEY=YOURKEYHERE37SIGNALS_SECRET=YOURSECRETHERE37SIGNALS_REDIRECT_URI=https://YOURWEBURLHERE.COM/social/handle/37signals
- https://laravel.com/docs/master/authentication
- https://laravel.com/docs/master/authorization
- https://laravel.com/docs/master/routing
- https://laravel.com/docs/master/migrations
- https://laravel.com/docs/master/queries
- https://laravel.com/docs/master/views
- https://laravel.com/docs/master/eloquent
- https://laravel.com/docs/master/eloquent-relationships
- https://laravel.com/docs/master/requests
- https://laravel.com/docs/master/errors
- Update to Laravel 12
- Update to Laravel 10 (Major Changes)
- Update to Laravel 9
- Update to Laravel 8
- Update to Laravel 7See changes in this PR
- Update to Laravel 6
- Update to Laravel 5.8
- AddedLaravel Blocker Package
- AddedPHP Info Package
- Update to Bootstrap 4
- Update to Laravel 5.7
- Added optional 2-step account login verfication withLaravel 2-Step Verification
- Added activity logging usingLaravel-logger
- Added Configurable Email Notification usingLaravel-Exception-Notifier
- Update to Laravel 5.5
- Added User Delete with Goodbye email
- Added User Restore Deleted Account from email with secure token
- AddedSoft Deletes and Soft Deletes Management panel
- Added User Account Settings to Profile Edit
- Added User Change Password to Profile Edit
- Added User Delete Account to Profile Edit
- AddedPassword Strength Meter
- AddedhideShowPassword
- Added Admin Routing Details
- Admin PHP Information
- Added RobustLaravel Logging with admin UI using MonoLog
- Added Active Nav states usingLaravel Requests
- AddedLaravel Debugger with Service Provider to manage status in
.envfile. - Updated Capture IP not found IP address
- Added User Avatar Image AJAX Upload withDropzone.js
- Added User Gravatar using Gravatar API
- Added Themes Management.
- Add user profiles with seeded list and global view
- Major overhaul on Laravel 5.4
- Update from Laravel 5.1 to 5.2
- Added eloquent editable user profile
- Added IP Capture
- Added Google Maps API v3 for User Location lookup
- Added Google Maps API v3 for User Location Input Geocoding
- Added Google Maps API v3 for User Location Map with Options
- Added CRUD(Create, Read, Update, Delete) User Management
laravel-auth├── .editorconfig├── .env├── .env.example├── .env.travis├── .gitattributes├── .github│ ├── FUNDING.yml│ ├── ISSUE_TEMPLATE│ │ ├── bug_report.md│ │ ├── feature_request.md│ │ └── project-questions-and-help.md│ ├── dependabot.yml│ ├── labeler.yml│ └── workflows│ ├── changelog.yml│ ├── codeql.yml│ ├── dependency-review.yml│ ├── deploy.yml│ ├── gitguardian.yml│ ├── greetings.yml│ ├── labeler.yml│ ├── laravel.yml│ ├── node.js.yml│ ├── php.yml│ ├── sentry.yml│ └── stale.yml├── .gitignore├── .scripts│ └── deploy.sh├── .styleci.yml├── .travis.yml├── CODE_OF_CONDUCT.md├── LICENSE├── README.md├── _config.yml├── app│ ├── Console│ │ ├── Commands│ │ │ └── DeleteExpiredActivations.php│ │ └── Kernel.php│ ├── Exceptions│ │ ├── Handler.php│ │ └── SocialProviderDeniedException.php│ ├── Http│ │ ├── Controllers│ │ │ ├── AdminDetailsController.php│ │ │ ├── Auth│ │ │ │ ├── ActivateController.php│ │ │ │ ├── AuthenticatedSessionController.php│ │ │ │ ├── ConfirmablePasswordController.php│ │ │ │ ├── ForgotPasswordController.php│ │ │ │ ├── LoginController.php│ │ │ │ ├── NewPasswordController.php│ │ │ │ ├── PasswordController.php│ │ │ │ ├── PasswordResetLinkController.php│ │ │ │ ├── RegisterController.php│ │ │ │ ├── RegisteredUserController.php│ │ │ │ ├── ResetPasswordController.php│ │ │ │ └── SocialController.php│ │ │ ├── Controller.php│ │ │ ├── ProfilesController.php│ │ │ ├── RestoreUserController.php│ │ │ ├── SoftDeletesController.php│ │ │ ├── TermsController.php│ │ │ ├── ThemesManagementController.php│ │ │ ├── UserController.php│ │ │ ├── UsersManagementController.php│ │ │ └── WelcomeController.php│ │ ├── Kernel.php│ │ ├── Middleware│ │ │ ├── Authenticate.php│ │ │ ├── CheckCurrentUser.php│ │ │ ├── CheckIsUserActivated.php│ │ │ ├── EncryptCookies.php│ │ │ ├── PreventRequestsDuringMaintenance.php│ │ │ ├── RedirectIfAuthenticated.php│ │ │ ├── TrimStrings.php│ │ │ ├── TrustHosts.php│ │ │ ├── TrustProxies.php│ │ │ ├── ValidateSignature.php│ │ │ └── VerifyCsrfToken.php│ │ ├── Requests│ │ │ ├── Auth│ │ │ │ └── LoginRequest.php│ │ │ ├── DeleteUserAccount.php│ │ │ ├── UpdateUserPasswordRequest.php│ │ │ └── UpdateUserProfile.php│ │ └── ViewComposers│ │ └── ThemeComposer.php│ ├── Logic│ │ ├── Activation│ │ │ └── ActivationRepository.php│ │ └── Macros│ │ └── HtmlMacros.php│ ├── Mail│ │ └── ExceptionOccured.php│ ├── Models│ │ ├── Activation.php│ │ ├── Permission.php│ │ ├── Profile.php│ │ ├── Role.php│ │ ├── Social.php│ │ ├── Theme.php│ │ └── User.php│ ├── Notifications│ │ ├── ResetPasswordNotification.php│ │ ├── SendActivationEmail.php│ │ └── SendGoodbyeEmail.php│ ├── Providers│ │ ├── AppServiceProvider.php│ │ ├── AuthServiceProvider.php│ │ ├── BroadcastServiceProvider.php│ │ ├── ComposerServiceProvider.php│ │ ├── EventServiceProvider.php│ │ ├── LocalEnvironmentServiceProvider.php│ │ ├── MacroServiceProvider.php│ │ └── RouteServiceProvider.php│ ├── Traits│ │ ├── ActivationTrait.php│ │ ├── CaptchaTrait.php│ │ └── CaptureIpTrait.php│ └── View│ └── Components│ ├── AppLayout.php│ └── GuestLayout.php├── artisan├── bootstrap│ ├── app.php│ └── cache│ ├── .gitignore│ ├── packages.php│ └── services.php├── composer.json├── composer.lock├── config│ ├── app.php│ ├── auth.php│ ├── broadcasting.php│ ├── cache.php│ ├── cors.php│ ├── database.php│ ├── debugbar.php│ ├── exceptions.php│ ├── filesystems.php│ ├── gravatar.php│ ├── hashing.php│ ├── laravel2step.php│ ├── laravelPhpInfo.php│ ├── laravelblocker.php│ ├── logging.php│ ├── mail.php│ ├── queue.php│ ├── roles.php│ ├── sanctum.php│ ├── services.php│ ├── session.php│ ├── settings.php│ ├── usersmanagement.php│ └── view.php├── database│ ├── .gitignore│ ├── factories│ │ └── UserFactory.php│ ├── migrations│ │ ├── 2014_10_12_000000_create_users_table.php│ │ ├── 2014_10_12_100000_create_password_resets_table.php│ │ ├── 2016_01_15_105324_create_roles_table.php│ │ ├── 2016_01_15_114412_create_role_user_table.php│ │ ├── 2016_01_26_115212_create_permissions_table.php│ │ ├── 2016_01_26_115523_create_permission_role_table.php│ │ ├── 2016_02_09_132439_create_permission_user_table.php│ │ ├── 2017_03_09_082449_create_social_logins_table.php│ │ ├── 2017_03_09_082526_create_activations_table.php│ │ ├── 2017_03_20_213554_create_themes_table.php│ │ ├── 2017_03_21_042918_create_profiles_table.php│ │ ├── 2017_12_09_070937_create_two_step_auth_table.php│ │ ├── 2019_02_19_032636_create_laravel_blocker_types_table.php│ │ ├── 2019_02_19_045158_create_laravel_blocker_table.php│ │ ├── 2019_08_19_000000_create_failed_jobs_table.php│ │ ├── 2019_12_14_000001_create_personal_access_tokens_table.php│ │ └── 2023_02_26_001638_create_email_log.php│ └── seeders│ ├── BlockedItemsTableSeeder.php│ ├── BlockedTypeTableSeeder.php│ ├── ConnectRelationshipsSeeder.php│ ├── DatabaseSeeder.php│ ├── PermissionsTableSeeder.php│ ├── RolesTableSeeder.php│ ├── ThemesTableSeeder.php│ └── UsersTableSeeder.php├── eslint.config.mjs├── license.svg├── package-lock.json├── package.json├── phpunit.xml├── postcss.config.js├── public│ ├── .htaccess│ ├── build│ │ ├── .vite│ │ │ └── manifest.json│ │ └── assets│ │ ├── app-B7vS8Mbm.css│ │ ├── app-BG0_vVbD.js│ │ ├── app-BG0_vVbD.js.map│ │ ├── app-WPGwnzyH.css│ │ ├── app-legacy-DDUFYwBY.js│ │ ├── app-legacy-DDUFYwBY.js.map│ │ ├── app-legacy-Mb7mMJCE.js│ │ ├── app-legacy-Mb7mMJCE.js.map│ │ ├── fa-brands-400-D1LuMI3I.ttf│ │ ├── fa-brands-400-D_cYUPeE.woff2│ │ ├── fa-regular-400-BjRzuEpd.woff2│ │ ├── fa-regular-400-DZaxPHgR.ttf│ │ ├── fa-solid-900-CTAAxXor.woff2│ │ ├── fa-solid-900-D0aA9rwL.ttf│ │ ├── fa-v4compatibility-C9RhG_FT.woff2│ │ ├── fa-v4compatibility-CCth-dXg.ttf│ │ ├── fontawesome-webfont-B-jkhYfk.woff2│ │ ├── fontawesome-webfont-CDK5bt4p.woff│ │ ├── fontawesome-webfont-CQDK8MU3.ttf│ │ ├── fontawesome-webfont-D13rzr4g.svg│ │ ├── fontawesome-webfont-G5YE5S7X.eot│ │ ├── polyfills-legacy-Ci8jmAHT.js│ │ ├── polyfills-legacy-Ci8jmAHT.js.map│ │ ├── wink.png│ │ └── wink.svg│ ├── css│ │ └── app.css│ ├── favicon.ico│ ├── fonts│ │ ├── fontawesome-webfont.eot│ │ ├── fontawesome-webfont.svg│ │ ├── fontawesome-webfont.ttf│ │ ├── fontawesome-webfont.woff│ │ ├── fontawesome-webfont.woff2│ │ ├── glyphicons-halflings-regular.eot│ │ ├── glyphicons-halflings-regular.svg│ │ ├── glyphicons-halflings-regular.ttf│ │ ├── glyphicons-halflings-regular.woff│ │ └── glyphicons-halflings-regular.woff2│ ├── images│ │ ├── wink.png│ │ └── wink.svg│ ├── index.php│ ├── robots.txt│ └── web.config├── resources│ ├── assets│ │ ├── js│ │ │ ├── app.js│ │ │ ├── bootstrap.js│ │ │ └── components│ │ │ ├── ExampleComponent.vue│ │ │ └── UsersCount.vue│ │ ├── sass│ │ │ ├── _avatar.scss│ │ │ ├── _badges.scss│ │ │ ├── _bootstrap-social.scss│ │ │ ├── _buttons.scss│ │ │ ├── _forms.scss│ │ │ ├── _helpers.scss│ │ │ ├── _hideShowPassword.scss│ │ │ ├── _lists.scss│ │ │ ├── _logs.scss│ │ │ ├── _margins.scss│ │ │ ├── _mixins.scss│ │ │ ├── _modals.scss│ │ │ ├── _panels.scss│ │ │ ├── _password.scss│ │ │ ├── _socials.scss│ │ │ ├── _typography.scss│ │ │ ├── _user-profile.scss│ │ │ ├── _variables.scss│ │ │ ├── _visibility.scss│ │ │ ├── _wells.scss│ │ │ └── app.scss│ │ └── scss│ │ └── .gitkeep│ ├── lang│ │ ├── en│ │ │ ├── auth.php│ │ │ ├── emails.php│ │ │ ├── forms.php│ │ │ ├── modals.php│ │ │ ├── pagination.php│ │ │ ├── passwords.php│ │ │ ├── permsandroles.php│ │ │ ├── profile.php│ │ │ ├── socials.php│ │ │ ├── terms.php│ │ │ ├── themes.php│ │ │ ├── titles.php│ │ │ ├── usersmanagement.php│ │ │ └── validation.php│ │ ├── fr│ │ │ ├── auth.php│ │ │ ├── emails.php│ │ │ ├── forms.php│ │ │ ├── modals.php│ │ │ ├── pagination.php│ │ │ ├── passwords.php│ │ │ ├── permsandroles.php│ │ │ ├── profile.php│ │ │ ├── socials.php│ │ │ ├── titles.php│ │ │ ├── usersmanagement.php│ │ │ └── validation.php│ │ └── pt-br│ │ ├── auth.php│ │ ├── emails.php│ │ ├── forms.php│ │ ├── modals.php│ │ ├── pagination.php│ │ ├── passwords.php│ │ ├── permsandroles.php│ │ ├── profile.php│ │ ├── socials.php│ │ ├── themes.php│ │ ├── titles.php│ │ ├── usersmanagement.php│ │ └── validation.php│ └── views│ ├── auth│ │ ├── activation.blade.php│ │ ├── exceeded.blade.php│ │ ├── login.blade.php│ │ ├── passwords│ │ │ ├── email.blade.php│ │ │ └── reset.blade.php│ │ └── register.blade.php│ ├── emails│ │ └── exception.blade.php│ ├── errors│ │ ├── 401.blade.php│ │ ├── 403.blade.php│ │ ├── 404.blade.php│ │ ├── 500.blade.php│ │ └── 503.blade.php│ ├── home.blade.php│ ├── layouts│ │ ├── app.blade.php│ │ ├── guest.blade.php│ │ └── navigation.blade.php│ ├── modals│ │ ├── modal-delete.blade.php│ │ ├── modal-form.blade.php│ │ └── modal-save.blade.php│ ├── pages│ │ ├── admin│ │ │ ├── active-users.blade.php│ │ │ ├── home.blade.php│ │ │ └── route-details.blade.php│ │ ├── public│ │ │ └── terms.blade.php│ │ ├── status.blade.php│ │ └── user│ │ └── home.blade.php│ ├── panels│ │ └── welcome-panel.blade.php│ ├── partials│ │ ├── errors.blade.php│ │ ├── form-status.blade.php│ │ ├── nav.blade.php│ │ ├── search-users-form.blade.php│ │ ├── socials-icons.blade.php│ │ ├── socials.blade.php│ │ ├── status-panel.blade.php│ │ └── status.blade.php│ ├── profiles│ │ ├── edit.blade.php│ │ └── show.blade.php│ ├── scripts│ │ ├── check-changed.blade.php│ │ ├── datatables.blade.php│ │ ├── delete-modal-script.blade.php│ │ ├── form-modal-script.blade.php│ │ ├── ga-analytics.blade.php│ │ ├── gmaps-address-lookup-api3.blade.php│ │ ├── google-maps-geocode-and-map.blade.php│ │ ├── save-modal-script.blade.php│ │ ├── search-users.blade.php│ │ ├── toggleStatus.blade.php│ │ ├── tooltips.blade.php│ │ └── user-avatar-dz.blade.php│ ├── themesmanagement│ │ ├── add-theme.blade.php│ │ ├── edit-theme.blade.php│ │ ├── show-theme.blade.php│ │ └── show-themes.blade.php│ ├── usersmanagement│ │ ├── create-user.blade.php│ │ ├── edit-user.blade.php│ │ ├── show-deleted-user.blade.php│ │ ├── show-deleted-users.blade.php│ │ ├── show-user.blade.php│ │ └── show-users.blade.php│ └── welcome.blade.php├── routes│ ├── api.php│ ├── channels.php│ ├── console.php│ └── web.php├── tailwind.config.js├── tailwindcss-perspective.js└── vite.config.js
- Tree command can be installed using brew:
brew install tree - File tree generated using command
tree -a -I '.git|node_modules|vendor|storage|tests'
Before opening an issue there are a couple of considerations:
- You are all awesome!
- Please Read the instructions and make sure all steps werefollowed correctly.
- Please Check that the issue is notspecific to the development environment setup.
- Please Provideduplication steps.
- Please Attempt to look into the issue, and if youhave a solution, make a pull request.
- Please Show that you have made an attempt tolook into the issue.
- Please Check to see if the issue you arereporting is a duplicate of a previous reported issue.
Licensed under theMIT license. Enjoy!
- Thanks goes to thesewonderful people:
- Please feel free to contribute and make pull requests!
About
Laravel 12 with user authentication, registration with email confirmation, social media authentication, password recovery, and captcha protection. Uses offical [Bootstrap 4](http://getbootstrap.com). This also makes full use of Controllers for the routes, templates for the views, and makes use of middleware for routing. 5 Minutes Stand-up time.
Topics
Resources
License
MIT, Unknown licenses found
Licenses found
Code of conduct
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Sponsor this project
Uh oh!
There was an error while loading.Please reload this page.
Packages0
Uh oh!
There was an error while loading.Please reload this page.


























































