innonazarene/laravel-inertia-js-kit
| Install | |
|---|---|
composer require innonazarene/laravel-inertia-js-kit |
|
| Latest Version: | 0.0.4 |
| PHP: | ^8.1 |
| License: | MIT |
| Last Updated: | Aug 10, 2026 |
| Links: | GitHub · Packagist |
Laravel Inertia JS Kit
One-command Laravel auth boilerplate for a pure Inertia + React + Tailwind monolith — no API, no tokens. Installs a session-based AuthController (register, login, logout, change password, forgot/reset password, email verification), wires up the routes, publishes matching React/TypeScript pages, and wires React + Tailwind into your build — all from a single artisan command.
This is the monolith counterpart to sanctum-auth-kit (which does the same thing for a token-based API).
Requirements
- PHP ^8.1
- Laravel ^10.0 | ^11.0 | ^12.0 | ^13.0
- A Laravel app with (or willing to add) Inertia.js —
inertiajs/inertia-laravelis installed automatically as a dependency of this package
Installation
composer require innonazarene/laravel-inertia-js-kit
php artisan inertia-js-kit:install
npm install
That single install command will:
- Publish
App\Http\Middleware\HandleInertiaRequests(or patch your existing one) so the authenticated user is shared with every page asauth.user— this replaces the API's/meendpoint. - Register that middleware in
bootstrap/app.php(Laravel 11+) orapp/Http/Kernel.php(Laravel 10). - Publish
App\Http\Controllers\AuthController. - Publish the auth form requests to
App\Http\Requests\Auth:LoginRequestRegisterRequestChangePasswordRequestForgotPasswordRequestResetPasswordRequest
- Publish
routes/auth.phpand require it fromroutes/web.php. - Publish React/TypeScript pages to
resources/js/Pages/Auth:Register,Login,ForgotPassword,ResetPassword,VerifyEmail,ChangePassword, plus sharedLayouts(GuestLayout,AuthenticatedLayout) andComponents(TextInput,InputLabel,InputError,PrimaryButton,TextLink), styled with Tailwind. - Publish
resources/js/app.tsx,resources/css/app.css, andresources/views/app.blade.phpif your app doesn't already have them. - Add
react,react-dom,@inertiajs/react,tailwindcss, and the Vite plugins for both topackage.json. - Wire the React and Tailwind Vite plugins into
vite.config.js/.ts.
Run php artisan migrate and npm run dev (or npm run build) afterwards.
Pass --force to overwrite files that already exist:
php artisan inertia-js-kit:install --force
Generated routes
Routes are published to routes/auth.php and required from routes/web.php — plain session-based web routes, no /api prefix.
| Method | URI | Auth required | Description |
|---|---|---|---|
| GET | /register |
Registration page | |
| POST | /register |
Register + log in | |
| GET | /login |
Login page | |
| POST | /login |
Log in | |
| GET | /forgot-password |
Forgot-password page | |
| POST | /forgot-password |
Send a password reset link | |
| GET | /reset-password/{token} |
Reset-password page | |
| POST | /reset-password |
Reset password via token | |
| GET | /verify-email/{id}/{hash} |
signed ✅ | Verify email address |
| GET | /verify-email |
✅ | Verify-email notice page |
| POST | /email/verification-notification |
✅ | Resend verification email |
| GET | /password/change |
✅ | Change-password page |
| PUT | /password |
✅ | Change password |
| POST | /logout |
✅ | Log out |
The AuthController redirects to a named dashboard route after login/register/email verification — make sure one exists in your app.
If routes/web.php doesn't exist yet, the installer creates it. Existing published files are left alone on re-run unless --force is passed.
All published files are plain Laravel and React code — edit them freely after installation, this package does not hook into them afterwards.
License
MIT
Related Packages
Minimal Laravel authentication scaffolding with React, Inertia and Tailwind CSS.
KoamiStarterKit - A modern Laravel 13 starter kit with Vue 3, Inertia.js, Tailwi...
Starter Kit Laravel 12 + React + Inertia + Tailwind + ShadCN UI + Spatie Permiss...
Typescript & Tailwind scaffolding for the Laravel framework. (inertia-ts)