digitalnode / magiclogin-inertia
Integration of Magic Login in a Laravel + InertiaJS project
Requires
- php: ^8.2
- illuminate/contracts: ^10.0||^11.0
- inertiajs/inertia-laravel: *
- spatie/laravel-package-tools: ^1.16
Requires (Dev)
- laravel/pint: ^1.14
- nunomaduro/collision: ^8.1.1||^7.10.0
- orchestra/testbench: ^9.0.0||^8.22.0
- pestphp/pest: ^2.34
- pestphp/pest-plugin-arch: ^2.7
- pestphp/pest-plugin-laravel: ^2.3
README
magiclogin-inertia is a Laravel package that integrates magic.mk authentication with Laravel + Inertia.js projects. It simplifies the setup process, provides a ready-made controller, views, and migration, and allows seamless integration with your existing Laravel applications.
Features
- Easy integration of magic.mk authentication into Laravel + Inertia.js projects.
- Automatic setup of the User model and migration, controller, routes and Vue.js auth page.
Installation
You can install the package via Composer:
composer require digitalnode/magiclogin-inertia
After the installation, run this command to install the needed files:
php artisan magiclogin:install
Once the installation finishes, make sure to run the migrations:
php artisan migrate
After the installation, the /magic-login route leads to the magic login page.
The User model "password" and "name" field are now nullable, a nullable "phone" field is also added.
A user that has logged in through magic auth (using their mail) can later add a password form the Change Password option in their profile settings.
Remember to add the project id (slug) and project api key from your magic.mk project to your .env:
MAGIC_LOGIN_PROJECT_KEY="" MAGIC_LOGIN_API_KEY=""
Customization
Feel free to customize any of the files we install or change:
/database/migrations/..._make_name_password_email_nullable_in_users_table.php /database/migrations/..._add_phone_to_users_table.php /Http/Controllers/MagicAuthController.php /Actions/Fortify/MagicLoginUpdateUserPassword.php /Providers/FortifyServiceProvider.php /routes/web.php /resources/js/Pages/Auth/MagicAuth.vue /resources/js/Pages/magicmk_integration_ES6.js
Contributing
Contributions are welcome! Please feel free to submit a Pull Request or open an Issue if you find a bug or have a feature request.
Credits
Author: Dushan Cimbaljevic Email: dushan@digitalnode.com